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 C80 Comment record(s) (optional) Record starts with '!'
NLEV I Number of profile levels 1:MAXATM (in rfmsiz.inc) Unlimited for RFM v5
*PRF C20 Profile Type *HGT, *TEM, *PRE, *AEROSOL, *[gas], *[gas][iso], *[gas][iso][vib]
DAT R 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 C20 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 RFM requires a *HGT or *PRE profile somewhere in each file, according to whether altitude or pressure grid is used.
  6. Any profile label that isn't *HGT, *PRE, *TEM or *AEROSOL is tested to see if it is recognised as a molecular species [gas] and, if not, then it is ignored. So it is OK to have arbitrarily labelled profiles in the file.
  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.log file when this occurs.
  9. Isotopic profiles can be specified by adding an optional qualifier immediately after the molecule name *[gas](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 [see Notes]. So, for example an HDO concentration of 3ppmv with an H2O(1) concentration of 6ppmv means that HDO is half its nominal surface concentration relative to H2O(1) (which happens to be 3 x 10-4, so in this case HDO absolute concentration would be 3ppmv x 3 x 10-4 = 9 x 10 -4 ppmv)
    Vibrational Temperatures
  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)