*ATM Section

RFM Driver Table Sections: Atmospheric Profile Data

10MAR24

Type
Primary Section#5

Description

Format
Multiple fields, order is significant.
FieldTypeDescription
FILATM C200 Name of an .atm file
PARAM=VALUE C=R Explicit assignment of a constant value to a profile [12]

QualifierTypeDescription Units Range
(PRF) C Profiles to be included/excluded [6]
(PSI) R Horizontal angle (for 2D atmospheres) deg −90 : +90
Type: R=Real; Cn=character string, length n.

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 it may be convenient to have this first file contain just a single *HGT or *PRE profile to define the internal grid.

  2. Having established whether a height or pressure grid is used, all subsequent files must also contain a profile of the same type (although not necessarily as the first profile in the file) 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. Hence the order matters.

  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. The exception is pressure, which is linearly extrapolated on ln(p) from the pair of end values.

  6. (PRF) Qualifier: Normally all profiles within a file would be used, however it is also possible to list specific profiles either for inclusion or for exclusion from the file, eg
    file.atm(TEM;CO2;H2O) (note use of ';' as separator)
    Include only TEM, CO2, and H2O profiles from file.atm
    file.atm(-O3;PRE) (note single '-' sign at start)
    Exclude only O3 and PRE profiles from file.atm (i.e. use everything else)
    The case doesn't matter but the name has to match the label used in the file, eg if the file contains *F14 (ie CFC-14) then (-f14) will exclude this but (-cf4) will have no effect.

  7. Apart from the initial user-defined grid, extra profile levels may be inserted by use of the JAC, LAY, LEV or OBS Flags.

  8. The PRF Flag can be used to write out the actual profile that ends up being used in the RFM.

  9. 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.

  10. 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.

  11. 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).

  12. The PARAM=VALUE format, where PARAM represents any parameter that might be found in an .atm file (without the initial '*' character, e.g. TEM=280) can be used as a shorthand for setting a constant profile value. This is also useful for setting homogeneous path conditions (HOM Flag).

  13. 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

  14. The default is to assume 1-dimensional atmospheres, i.e. no variation in atmospheric parameters along profile surfaces. The GRA flag enables 2D atmospheres, and profile files then require an extra coordinate, PSI to define the horizontal location and (usually) the OBS flag to specify the observer's horizontal location (as PSIOBS — see *OBS section).

  15. Angles ψ are defined as subtended at the local centre of curvature, which is approximately the same as the spacing of degrees of latitude, i.e., ψ=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 ψ are further away. Tolerance for distinguishing different ψ angles (fixed by PSITOL parameter in prfgra.for) is 0.001 deg, approximately 100 m along the surface. [simple geometry also tells you that any variation in elevation angle of the observation will also move the tangent point location, ψ, by the same angle]

  16. Absolute ψ values are defined in one of two ways, depending on whether the OBS flag enabled
    • OBS flag enabled (usual case): ψ values are defined relative to the observer location PSIOBS in the *OBS section.
    • OBS flag disabled: ψ=0 is defined as the location of all the tangent points either refracted or geometric according to the specification of the *TAN section. In this case, multiple tangent paths implies multiple observer locations.

  17. When the GRA Flag is enabled, a two dimensional atmosphere is established so that profiles are written (or overwritten) at each location ψ independently, sharing only the vertical 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 ψ=0, and only the horizontally varying profiles are supplied at other locations.

  18. If no profile is explicitly supplied at ψ=0, then a reference profile at ψ=0 is created by interpolating the supplied profiles.

Examples
Zero-dimensional atmosphere (i.e., homogeneous path)
*ATM TEM=296 pre=1013.25 H2O=100 ! 100ppmv of water vapour
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
[none recent]