RFM File Formats

.svd File: Look Up Tables

11JUL17

Type
Input(s), optional if LUT Flag enabled.

Description
SVD (Singular Vector Decomposition)-compressed Look Up Tables of absorption coefficient [m2/mole] for particular spectral range and absorber, generated for the MIPAS/Envisat instrument.

Filename(s)
Specified in *LUT section of Driver Table

Structure
(also described in ESA document PO-TN-OXF-GS-0011.txt)
DATE TIME
#CMNT
MWCODE ID[.ISO] TAB
NL NV V1 DV NP P1 DP NT T1 DT
U(IV,1) U(IV,2) ...
... U(IV,NL) Repeat for IV=1,NV
K(1,IX) K(2,IX) ...
... K(NL,IX) Repeat for IX=1,NX
[eof]

Fields
FieldTypeDescriptionRange
DATE C*11 File creation Date, as dd-mmm-yyyy (ignored)
TIME C*15 File creation Time, as hh:mm:ss.mmmmmm (ignored)
#CMNT C*80 At least one comment record Records start with '#'
MWCODE C*8 Microwindow Label Matches LABSPC
IDX I HITRAN Index of absorber See List of Absorbers
.ISO I (optional) '.' then HITRAN Isotope# See List of Isotopes
TAB C*3 Tabulation Function 'LIN', '4RT' or 'LOG'
NL I No. of Singular Values >0
NV I No. of Wavenumber Points >0
V1 R*8 Lowest Wavenumber [cm-1]
DV R*8 Wavenumber Increment [cm-1]
NP I No. of -ln(p) Points >0
P1 R*4 Lowest -ln(p) (p in [mb])
DP R*4 -ln(p) increment
NT I No. of Temperature Points >0
T1 R*4 Lowest Temperature [K]
DT R*4 Temperature increment [K]
U R*4 U(NV,NL) Matrix
K R*4 K(NL,NX) Matrix, NX=NP*NT

Notes
  1. These files are generated for MIPAS - for other purposes, the .tab format look-up tables are recommended instead.
  2. The File Header (ESA rather than RFM format) consists of 2 records, the first of which is the 'time stamp' and the second is equivalent to an RFM comment record. For this reason, the first two records of any .lut files are written to the rfm.runlog file rather than just the usual first (comment) record.
  3. The MWCODE ... record is read with specific formats:
    • (A8,X,I2,X,A3) (not isotopic)
    • (A8,X,I2,X,I1,X,A3) (isotopic)
    Which of these two formats is used depends on whether there is a '.' character in position 12
  4. The value NL > 0 is actually what is used to determine that this is a SVD-compressed LUT, a value 0 would indicate a .tab file.
  5. The absorption coefficient is intrinsically a 3 dimensional table with wavenumber, pressure and temperature axes. However for the purposes of Singular Value Decomposition the p,T indices are combined into a single X index: (P1,T1), (P1+DP,T1), ... (P1+(NP-1)*DP,T1+(NT-1)*DT)
  6. To reconstruct the absorption coefficient first the matrix is reconstructed as
    F(IV,IX) = SUM ( U(IV,IL) * K(IL,IX) )
    The relationship between F and the absorption coefficient is determined by TAB (for MIPAS, TAB is usually LOG so Abs.Coeff = exp(F))
  7. The K Matrix is actually written in the file in the natural form for the transpose of K - this has the minor advantage of maintaining a constant length (NL) for each 'row' of both the U and K matrices.

Example
01-NOV-2002 12:00:00.000000
# MIPAS SVD-compressed LUT created by LUTINI v.16MAR02
PT__0001  1 LOG
    7 6701   686.225    0.0005    9  -3.40120   1.00080    9   180.000    16.000
 -1.4469028E-02  1.5561746E-02 -1.6158378E-03 -7.6377830E-05  6.6569343E-04
 -1.3192989E-03 -2.3304068E-03
 -1.4468588E-02  1.5558815E-02 -1.6167151E-03 -7.6754986E-05  6.6715060E-04
 -1.3191579E-03 -2.3323591E-03
.... 
[eof]