RFM File Formats

.atm File: Atmospheric Profiles


Mandatory Input(s)

Atmospheric profile data.

Specified in *ATM section of Driver Table

!CMNT [optional comment records]
*PRF(i) [start repeat for each profile i]
DAT(1,i) DAT(2,i) ...
... DAT(NLEV,i) [end repeat for each profile]

!CMNT C*80 Comment record(s) (optional) Record starts with '!'
NLEV I Number of profile levels 1:MAXATM (in rfmsiz.inc) Unlimited for RFM v5
*PRF C*20 Profile Type *HGT, *TEM, *PRE, *AEROSOL, *[gas], *[gas][iso], *[gas][iso][vib]
DAT R*4 Profile Data depends on PRF:
*HGT Altitudes [km] Increase monotonically
*PRE Pressures [mb] >0, Decrease monotonically
*TEM Temperature [K] >0
*AEROSOL Aerosol ext. [/km] (no limits)
*[gas], *[gas][iso] Gas VMR [ppmv] 0:1E6
*[gas][iso][vib] Vib.Tem - Kin.Tem (no limits)
*END C*20 End-of-File marker optional, case-insensitive

  1. Comment records !CMNT may be inserted anywhere except between *PRF records and end of corresponding DAT values
  2. NLEV is read from the first non-comment record, any subsequent text on the same record are ignored (so comments may be added)
  3. The value NLEV=1 indicates a homogeneous atmosphere (see HOM Flag). Normally a minimum value NLEV=2 is expected.
  4. A profile label *PRF (case-insensitive) record is identified by the first character being '*' and the label extends as far as the first space or end-of-record (so comments may be added after the space)
  5. The first profile type in each .atm file must be '*HGT'. All other profiles are optional. RFM v5: *HGT need not be the first profile, but either *HGT or *PRE is mandatory somewhere in the file according to whether altitude or pressure grid is used.
  6. Any profile label that isn't *HGT, *PRE, *TEM or *AEROSOL is assumed to be a molecular species [gas]
  7. The RFM uses a definition of VMR=(no.molec.species)/(total no.molec.), thus VMRs [ppmv] of all gases cannot be greater than 1E6 (there is a check for this). Note that there are other definitions of VMR using either (total molecules of dry air), or (total molecules of other gases) as the denominator, but these become infinite for paths of, say, pure H2O.
  8. *AEROSOL extinction is allowed to be negative but a warning message is printed to the rfm.runlog file when this occurs.
  9. Isotopic profiles can be specified by adding an optional qualifier immediately after the molecule name *PRF(ISO) (no spaces) where ISO is the HITRAN isotopic index, eg H2O(4) for HDO.
  10. Isotope abundances are implicity scaled to the total molecule number, not expressed in absolute terms (which requires knowing the isotope strength scaling used in the HITRAN database). So, for example if isotope#3 is given half the mixing ratio (in ppmv) of the main molecule, its concentration will be half of its default value had no separate profile been specified.
  11. Vibrational temperature profiles (actually Vib-Kinetic Temp difference profiles) can also be entered using the molecule name with two additional qualifiers identifying isotopologue and Vibrational Level (and the NTE Flag has to be enabled), e.g. *CO2(1)(2) for the '0 1 1 01' vibrational level (ID=2) of the major 622 isotopologue (ID=1) of CO2.

! Modified CO2 profile using 360 ppmv to 80km, reduced to 250 ppmv at 120km
3  = Number of profile levels
*HGT  [km]
              0.0    80.0   120.0
*CO2  [ppmv]
            360.0   360.0   250.0
*CO2(2) different profile shape for Isotope#2
            360.0   360.0   200.0
See RFM Downloads for usable examples.

Bug#111 (Fixed v4.34)
Bug#109 (Fixed v4.34)
Bug#81 (Fixed v4.29)
Bug#82 (Fixed v4.31)