RFM Driver Table Sections

*ATM Section: Atmospheric Profiles

02OCT18

Type
Primary Section#5

Description
Atmospheric profile data.

Format
Multiple fields, order is significant.
FieldTypeDescription
FILATM C200 Name of an .atm file

QualifierTypeDescriptionRange
(PSI) R*4 Horizontal angle [deg] -90:+90

Notes
  1. The first profile in the first file should be either *HGT (height, km) or *PRE (pressure, hPa), and this defines the internal vertical grid to be used by the RFM, the first (lowest) grid point, not necessarily 0km, defining the surface and the last (highest) grid point defining the top of the atmosphere. For this reason you may find it convenient to have this first file just contain a single *HGT or *PRE profile just to define the grid.
  2. Having established whether a height or pressure grid is used, all subsequent files must also contain a profile of the same type (not necessarily as the first profile) to allow the RFM to interpolate to the internal grid.
  3. For the vertical interpolation, Temperature, height/ln(p) and ln(VMR) are assumed to vary linearly with the vertical coordinate ln(p)/height. The LIN Flag forces VMR rather than ln(VMR) to vary linearly with vertical coordinate.
  4. All data in subsequent files replaces any previously loaded data, e.g. if *TEM (temperature) profiles appear in the first and second files, the value in the second file will be used.
  5. If subsequent .atm files include profiles specified over smaller vertical ranges than the internal grid, the end values of the short profiles are duplicated, i.e., the short profiles are extended over the full vertical range assuming the end values remain constant (except for pressure, which is extrapolated in log space from the pair of end values).
  6. Extra profile levels may be added by the JAC, LAY, LEV or OBS Flags.
  7. The PRF Flag can be used to write out the actual profile that ends up being used in the RFM.
  8. The header record of each accepted profile, plus *END markers, are written to the rfm.log file, together with notification if this replaces an existing profile.
  9. After all .atm files are read, there is a check that profiles of Temperature, Pressure and VMR for absorber specified in the *GAS section have been found (& extinction profile for aerosol), otherwise a fatal error message results.
  10. A pressure profile is always required but, with a pressure grid, altitude is only required for limb-viewing calculations, if the HYD flag is used, or to identify levels for perturbations (JAC flag) or output levels (LEV or FLX flags).
  11. Isotopes: if isotopes are specified in any input files (eg by having *CH4(1) as one of the profiles) then the RFM treats these as separate gases - one gas for each specified isotopic profile plus one gas for the remaining isotopes (even if profiles have been supplied for all isotopes). Any subsequent profiles for just *CH4 will not overwrite the isotopic profile.
    2D Atmospheres
  12. Angles PSI are defined as subtended at the local centre of curvature, which is approximately the same as the spacing of degrees of latitude, i.e., PSI=1 corresponds to a distance of around 111 km on the surface of the earth. Direction is defined so that the observer is at high values looking towards low values, i.e. so that profiles with lower values of PSI are further away. Tolerance for distinguishing different PSI angles (fixed by PSITOL parameter in prfgra.for) is 1E-3 deg, approximately 100m along the surface. [simple geometry also tells you that any variation in elevation angle of the observation will also move the tangent point location, PSI, by the same angle]
  13. Absolute PSI values are defined in one of two ways, depending on whether the OBS flag enabled
    • OBS flag enabled (usual case): PSI values are defined relative to the observer location PSIOBS in the *OBS section.
    • OBS flag disabled: PSI=0 is defined as the location of all the tangent points either refracted or geometric according to the specification of the *TAN section.
  14. When the GRA Flag is enabled, a two dimensional atmosphere is established so that profiles are written (or overwritten) at each location PSI independently, sharing only the height grid established by the first .atm file in the *ATM section. However, it is not necessary to supply profiles for all absorbers at all locations since, after all profiles have been read, there is an interpolation step to fill in any missing profiles from those that have been supplied. Suggested use is that the atmosphere is fully defined for PSI=0, and only the horizontally varying profiles are supplied at other locations.
  15. If no profile is explicitly supplied at PSI=0, then a reference profile at PSI=0 is created by interpolating the supplied profiles.

Examples
One-dimensional atmosphere
*ATM                
     hgtgrd.atm     ! Define altitude grid for calculation (z only)
     std.atm        ! US Std Atmosphere (z,p,T,H2O,CO2,O3,N2O,CO,CH4,O2)
     minor.atm      ! Minor species (HNO3, etc)
     co2_2005.atm   ! Replace US Std. CO2 vmrs with 2005 concentrations
Two-dimensional atmosphere, defined at 3 locations
*ATM
     std.atm(0)     ! US Std Atm, all species, at PSI=0 
     t_near.atm(2)  ! "near" side temperature profile at PSI=2 deg
     p_near.atm(2)  ! Pressure profile, also at PSI=2 deg
     t_far.atm(-1)  ! "far" side temperature profile, at PSI=-1 deg
     minor.atm(2)   ! Minor species, initially placed at PSI=2
                    ! All std and minor species apart from p,T will be 
                    ! duplicated at PSI=-1, 0 and +2. 
                    ! The std p profile at PSI=0 will be duplicated at PSI=-1

Bugs
Bug#109 (Fixed v4.34)
Bug#82 (Fixed v4.31)
Bug#81 (Fixed v4.29)
Bug#21 (Fixed v4.11)