*TAN Section

RFM Driver Table Sections: Ray Path

20DEC23

Type
Primary Section#6

Description
Definition of ray-path. The original RFM was for limb-viewing so the section was used to specify TANgent height, but now used as a generic section header for specifying some aspect of ray path which depends on viewing geometry.

Format
Generally: Multiple fields of the same type, any order, except for
*DIM Section/TAB Flag - see [specific page].
The allowed range depends on whether the observer is outside (External, set by default) or within (Internal, set by OBS Flag) the atmosphere.
Field Type Section Flags Description Units Ext. Range Int. Range
TANFIL C200 (any) (any) Name of a Data File [1]
Circular Geometry (Limb-viewing)
TAN R *TAN Actual tangent height [2] km BOA : TOA BOA : HgtObs[5]
GEO R *GEO Projected tangent height [3] km −RadCrv[4] : TOA −RadCrv[4] : HgtObs[5]
ELE R *ELE OBS[5] Elevation angle[6] deg −90 : TOA −90 : +90
Plane Parallel Geometry
SEC R *SEC NAD/ZEN sec(zenith angle)[7][8] ≥1.0 ≥1.0
ELE R *ELE NAD Elevation angle[6][8] deg −0.1 : −90 −0.1 : −90
ZEN Elevation angle[6][8] deg +0.1 : +90 +0.1 : +90
HGT R *LEV[10] FLX Output level[9] km BOA : TOA n/a
Homogeneous Paths
LEN R *LEN HOM Path length[11][13] km >0 n/a
UNITS=UNITS C2 *LEN HOM Units for path length[12] ∈ {'km', 'm', 'cm','mm'}
Type: I=Integer; R=Real; D=Double Precision; Cn=character string, length n.
BOA = Bottom of the Atmosphere; TOA = Top of the Atmosphere

Notes
  1. TANFIL The type of field is identified by first using the Fortran INQUIRE statement to see if it is a file (assumed to be a .dat file), in which case the file is opened and the numbers read from the file as if they were directly inserted within the section at that point. This can be used in combination with actual numerical fields.

  2. TAN Tangent height allowing for refraction, ie minimum altitude of the ray path. This altitude has to be within the atmosphere, with min/max allowed values set by the BOA (Bottom of the Atmosphere) and TOA (Top of the Atmosphere), representing the min/max values of the height profile specified in the *ATM section.
    While such paths, by definition, cannot intersect the surface, if FOV convolution is included (FOV Flag) it is is possible that some of the additional ray paths will intersect the surface, in which case SFC Flag will be required (you can always included the SFC flag anyway, just in case).

  3. GEO Geometric tangent height, ie tangent height of the path if there were no refraction (which will always be higher than the actual tangent point). This can also be used to specify paths which intersect the surface, with a minimum value of -(Radius of Curvature) corresponding to a path directed from space towards the centre of the earth (i.e. vertically downwards).
  4. Radius of Curvature is set by RADCRV in phyadj_dat.f90, and can be modified using the RADCRV parameter in the *PHY section.
  5. If the observer is within the atmosphere (OBS Flag) the maximum tangent height is the observer altitude (corresponding to a horizontal line-of-sight). If you need higher angles use the *ELE specification. Conversely, specifying a line-of-sight by elevation angle with the Circular Geometry requires that the observer altitude is specified (whether inside or above the atmosphere).
  6. ELE Elevation angles are measured relative to the observer horizontal, upward being positive (so +90 deg for zenith, −90 for nadir). With the plane-parallel geometry the hemisphere is further restricted by the NAD or ZEN flag, while elevation angles close to zero, representing infinite length paths, are forbidden (limted by ELEMIN in subroutine chknad_sub.f90)
  7. SEC: Zenith angle is the angle from the vertical, between 0 and 90 degrees, so sec(zen.ang)=1 for a vertical path. The same (+ve) definition is used for both NAD and ZEN directions, although a purist might argue SEC values should be negative for downward-viewing. sec(zen.ang) is also the 'air mass factor', i.e. the factor by which the ray-path exceeds that of a direct vertical path.
  8. With the Plane Parallel Geometry, in the absence of the OBS Flag, the NAD/ZEN flag determines whether the observer is assumed to be above/below the atmosphere.
  9. HGT: For flux (ie hemispherically-integrated) calculations the user specifies the set of altitude levels for which outputs are generated, eg if you want fluxes at the TOA one of the HGT levels would be the maximum height of the atmospheric profile.
    Extra profile levels will be interpolated for any specified HGT values which are not existing internal height profile levels.
  10. Confusingly (I couldn't think of any meaningful alternative) there are two different types of *LEV section. The one here is a primary section and requires the FLX Flag to be enabled. The other is a secondary section linked to the LEV Flag, which generates intermediate output levels for a ray path calculation. Since the FLX and LEV Flags are mutually exclusive there is no ambiguity in the interpretation of the *LEV section.
  11. LEN For homogeneous path calculations, path length is the only variable.
    For radiative (rather than the usual transmittance) calculations for a homogeneous path, the SFC Flag may be used to set 'backplate' conditions. Otherwise it is assumed (effectively) that the far end of the path is a black body at zero Kelvin.
  12. UNITS: By default path lengths are defined in km (set by UNITAN in tancom_dat.f90), but the *LEN section accepts a PARAM=VALUE pair to redefine the units, eg UNITS=CM (upper or lower case, but no spaces either side of the '=' sign).
  13. Setting LEN = 2428.9 km with a concentration of 1 ppmv generates an optical depth spectrum (OPT) χ with numerical values equivalent to absorption coefficient in m2/mole.

    The derivation is as follows: optical depth χ is related to absorption coefficient k by
    χ = k ρ s
    where ρ is the absorber density and s is the path length. The aim is to set ρs =1 mole/m2, so that, numerically, χ=k.

    Expanding ρ= vp/(RT), at temperature T=296 K and standard atmospheric pressure p, assuming a volume mixing ratio of v=1 ppmv (keep the concentration low to return air-broadened k rather than self-broadened)

    s = (1 mole m-2 ) ( R T )/( v p )
    = (1 mole m-2 ) ( 8.3145 J mole-1 K-1 × 296 K) / ( 10-6 × 1013.25 Pa )
    = 2.4289 × 106 m = 2428.9 km

    General Comments

  14. Zenith paths, or limb paths which do not intersect the surface, view 'space' beyond the atmosphere. For radiative (as opposed to transmissive) calculations, a cosmic background temperature 2.7 K is assumed, set by parameter TEMSPA in phyadj_dat.f90 (modified using the *PHY section). This provides negligible radiance in the infrared or shorter wavelengths.
  15. Tangent heights, elevation angles and path lengths must generally be distinct to 5 significant figures so that they give distinct output filenames (eg 1m below 100km, 0.001 deg elevation, but note: 1 km above 100km) otherwise a 'Repeated Tan.Hgt' fatal error message results.
  16. The use of *TAN, *ELE or *GEO section labels also has an impact on the interpretation of the data in the .fov file.
  17. With the GRA Flag enabled (limb-viewing with horizontal gradients), the location of the tangent point is either (OBS Flag) determined by the observer location PSI=PSIOBS, or taken at the reference profile, PSI=0.0 as defined in the *ATM section.
  18. While a direct nadir view for a circular geometry (ie using *GEO or *ELE) and plane parallel geometry (NAD flag) are physically the same thing, the RFM uses different algorithms for the Curtis-Godson integrations for the two geometries (basically numerical integration for the Circular and analytic expressions for the Plane Parallel) so spectra will differ slightly.

Examples
Normal use as list of actual tangent heights for limb path calculations
*TAN paths.tan ! list of tangent heights from a standard scan pattern. 40 41 42 ! additional paths at 40, 41, 42 km,
Nadir-viewing calculations for plane-parallel atmosphere (NAD Flag).
*SEC 1 ! Direct nadir view only
Set of elevation angles for a balloon observations (OBS Flag)
*ELE -90, -1.5, -0.5, 0.0, 0.5, 1.5 ! [deg] nadir, plus views towards limb
Homogenenous path (HOM Flag), specifying length in cm
*LEN UNITS=cm 50.3 ! Output filenames will be, eg tra_50300.asc

Bugs
Bug#10 (Fixed v5.02)
Bug#2 (Fixed v5.01)