GEISA format for line transition parameters 

The format of each entry is described in the following Table 1.

A reader in Fortran is available here.

Each entry is a 252 character record to describe the 31 spectroscopic line parameters.

First line of Table 1: the 31 Spectroscopic line parameters are listed in the 31 columns and their description is given below. Line 2 and line 3 display the field length and the FORTAN format descriptor, respectively. Line 4 displays the standard default values associated to each parameter. Line 5 displays a cumulative index indicating the position of the last character of the record associated to each of the 31 spectroscopic line parameters.

  • The standard default values for fields «O’», « T » and « T’ », have been set to “zero”. These modifications, since the GEISA-2011 edition, were made to avoid potential misunderstanding and thus improper use of these parameters in some applications especially related to forward radiative transfer.

It has to be noted that:

  • Fields E1, E2, E3, E4 correspond to the rovibrational identification parameters
  • Fields K and L (high-lightened in grey) are HITRAN specific for the users’ easier possible interface between the two databases.
  • Value in field M is given only if directly provided by the author of the spectroscopic line entry.

Table -1-

Parameter A B C D E1 E2 E3 E4 F G I J
Field length 12 11 6 10 25 25 15 15 4 3 3 3
Fortran descriptor F12.6 1PD11.4 0PF6.4 F10.4 A25 A25 A15 A15 F4.2 I3 I3 A3
Undefined values NR -9.9999D-01 -.9999 -0.9999 * * * * -.99 -99 -99 *
Record counting 12 23 29 39 64 89 104 119 123 126 129 132

 

K L M N O R A’ B’ C’ F’
2 1 10 7 9 6 10 11 6 4
I2 I1 1PE10.3 0PF7.4 F9.6 F6.4 F10.6 1PD11.4 0PF6.4 F4.2
-9 0 -9.999E-01 -9.9999 0.000000 -.9999 -0.999999 -9.9999D-01 -.9999 -.99
134 135 145 152 161 167 177 188 194 198

 

O’ R’ N’ S S’ T T’ U U’
9 6 7 4 4 8 8 4 4
F9.6 F6.4 F7.4 F4.2 F4.2 F8.6 F8.6 F4.2 F4.2
0.000000 -.9999 -9.9999 -.99 -.99 0.000000 0.000000 -.99 -.99
207 213 220 224 228 236 244 248 252

 

  • A : wave number (cm-1) of the line
  • B : intensity of the line in (cm-1/(molecule.cm-2) at 296K
  • C : Air broadening pressure halfwidth (HWHM) (cm-1atm-1) at 296K
  • D : Energy of the lower transition level (cm-1)
  • Ei (i=1,2,3,4) : Transition quantum identifications for the lower and upper state of the transition
    • E1 : upper state vibrational identification
    • E2 : lower state vibrational identification
    • E3 : upper state rotationnal identification
    • E4 : lower state rotationnal identification
  • F : temperature dependence coefficient n of the air broadening halfwidth
  • G : identification code for isotopologue as in GEISA
  • I : identification code for molecule as in GEISA
  • J : Internal GEISA code for the data identification
  • K : Molecule number as in HITRAN
  • L : isotopologue number (1=most abundant, 2= second…etc) as in HITRAN
  • M : Einstein A-coefficient
  • N : self broadening pressure halfwidth (HWHMself) (cm-1atm-1) at 296K
  • O : air pressure shift of the line transition (cm-1) at 296K
  • R : temperature dependence coefficient of the air pressure shift
  • A’ : estimated accuracy (cm-1) on the line position
  • B’ : estimated accuracy on the intensity of the line in (cm-1/(molecule.cm-2)
  • C’ : estimated accuracy on the air collision halfwidth (HWHM) (cm-1atm-1)
  • F’ : estimated accuracy on the temperature dependence coefficient of the air-broadening halfwidth
  • O’ : estimated accuracy on the air pressure shift of the line transition (cm-1) at 296K
  • R’ : estimated accuracy on the temperature dependence coefficient of the air pressure shift
  • N’ : estimated accuracy on the self-broadened (HWHM) (cm-1atm-1) at 296K
  • S : temperature dependence coefficient of the self-broadening halfwidth
  • S’ : estimated accuracy on the temperature dependence coefficient of the self-broadening halfwidth
  • T : self-pressure shift of the line transition (cm-1) at 296K
  • T’ : estimated accuracy on the self-pressure shift of the line transition (cm-1) at 296K
  • U : temperature dependence coefficient of the self-pressure shift
  • U’ : estimated accuracy on the temperature dependence coefficient of the self-pressure shift

As shown in line 4 of Table 1- GEISA undefined values are attributed to the line parameter entries when no value is available from the data provider (missing data).


Fortran data reader.

program read_transition_GEISA
! read ACII format
real(kind=8)                       :: waveNb                   ! A
real(kind=8)                       :: intensity                ! B
real                               :: AirBroadHW               ! C
real                               :: energyLowerLevel         ! D
character(len=25)     :: E1, E2                   ! vibrational identifications
character(len=15)      :: E3, E4                   ! rotational identifications
real                               :: temperatureDependence    ! F
integer                            :: isotopeId                ! G
integer                            :: moleculeId               ! I
character(len=3)          :: internalGeisaCode        ! J
integer(kind=2)            :: hit_moleculeId           ! K
integer(kind=2)            :: hit_isotopeId            ! L
real                               :: hit_EinsteinACoeff       ! M
real                               :: selfBroadHW              ! N
real                               :: APS                      ! O
integer(kind=2)         :: hit_HAI                  ! P
integer                         :: hit_indLookUp            ! Q
real                               :: temperatureDependenceAPS ! R
real(kind=8)               :: accWaveNb                ! A’
real(kind=8)               :: accIntensity             ! B’
real                               :: accAirBroadHW            ! C’
real                               :: accTemperatureDependence ! F’
real                               :: accAPS                   ! O’
real                               :: accTempDepAPS            ! R’
real                               :: accSelfBroadHW           ! N’
real                               :: temperatureDependenceSBH ! S
real                               :: accTempDepSBH            ! S’
real                               :: selfPressShift           ! T
real                               :: accSelfPressShift        ! T’
real                               :: temperatureDependenceSPS ! U
real                               :: accTempDepSPS            ! U’
integer                            :: indReferenceHit(6)
! OTHER DECLARATION
integer                            :: n_arg,iargc,nbr_transitions
integer                            :: unit_input_file
character(len=250)                 :: prog,ascii_file_geisa  !
unit_input_file=10
nbr_transitions=0
n_arg=iargc()
call getarg(0,prog)
if(n_arg.lt.1) then
write(*,*)’Syntax error ‘//trim(prog)//’ : give GEISA ASCII filename’
stop
endif
call getarg(1,ascii_file_geisa)
open(unit_input_file, file=trim(ascii_file_geisa),form=’formatted’)
!
10    read(10,100,end=901,err=902) &
waveNb, intensity, AirBroadHW, energyLowerLevel, E1,E2,E3,E4, temperatureDependence, &
isotopeId,moleculeId,internalGeisaCode,hit_moleculeId,                &
hit_isotopeId,hit_EinsteinACoeff,selfBroadHW,              &
APS,temperatureDependenceAPS,        &
accWaveNb,accIntensity,accAirBroadHW,accTemperatureDependence,            &
accAPS,accTempDepAPS,accSelfBroadHW,temperatureDependenceSBH,  &
accTempDepSBH,selfPressShift,accSelfPressShift,                       &
temperatureDependenceSPS,accTempDepSPSnbr_transitions=nbr_transitions+1
if(mod(nbr_transitions,10000).eq.1) write(*,101) ‘Line’,nbr_transitions,waveNb,intensity
goto 10
901 write(*,*) ‘End of reading ASCII format’
write(*,*) ‘There are :’,nbr_transitions,’ lines in this file’
stop
100 format(f12.6,1P,d11.4,0P,f6.4,f10.4,a25,a25,a15,a15,f4.2,i3,i3,a3,i2,i1,1P,e10.3,0P,f7.4,f9.6, &
f6.4,f10.6,1P,d11.4,0P,f6.4,f4.2,f9.6,f6.4,f7.4,f4.2,f4.2,f8.6,f8.6,f4.2,f4.2)
101 format(a4,i8,1x,f12.6,1P,d11.4)
902 write(*,*) ‘reading error in the GEISA file:’
write(*,*) TRIM(ascii_file_geisa)
end