MRGHIT |
|
|
| Source: [Fortran90 (20Mar20)] [Python (07Jan25)] | 18JAN26 | |
The tricky part is identifying and avoiding duplicating lines which are common to both datasets but not necessarily at identical wavenumbers.
This program assumes that all
data from the second-named file will be used, and
any duplicate lines the first-named file removed, without
any distinction between molecules. So, for example, you can't use it
to replace just
the ozone data in HITRAN 2012 with the ozone from HITRAN 2016
(if you wanted to do this you could first run
SUBHIT
to extract the ozone data from HITRAN 2016, then use
If using the Fortran version, compile with any generic Fortran compiler, eg
gfortran mrghit.f90 -o mrghit
which will create the executable mrghit
A typical run might be
(
The program takes a few minutes to complete.mrghit R-MRGHIT: Running MRGHIT v2.01 Wavenumber range (cm-1) [<CR>=all]:700 750 [1] Input files to be merged, <CR>=finished [2] File# 1:HITRAN2016.par File# 2:01_700-800_HITEMP2010.par [3] File# 3:02_625-750_HITEMP2010.par File# 4:<CR> Output filename:newfile.par I-MRGHIT: Record# 100000 Wavenumber= 702.022100 I-MRGHIT: Record# 200000 Wavenumber= 704.060800 I-MRGHIT: Record# 300000 Wavenumber= 706.109100 I-MRGHIT: Record# 400000 Wavenumber= 708.133200 ... I-MRGHIT: Record# 2200000 Wavenumber= 744.321500 I-MRGHIT: Record# 2300000 Wavenumber= 746.355500 I-MRGHIT: Record# 2400000 Wavenumber= 748.388600 I-MRGHIT Summary: [4] No.lines: included excluded File# 1 131890 12512 File# 2 1936086 0 File# 3 401338 0 Total: 2469711 12512 STOP R-MRGHIT: Successful completion
Notes
You may be wondering (a) why this is set to .FALSE. in the supplied code, and/or (b) what would happen if you ran this test with the HITRAN 2012 database.
The answer to (b) is that it identifies and rejects 43 lines as duplicates, the first of which is for molecule 23 (HCN) where it finds a pair of lines with identical vib/rot levels at 2.971603 and 2.971652 cm-1 (although different line strengths). Now, I have no idea whether this is an error or there really are two such distinct lines, but I'm giving the benefit of the doubt to the HITRAN compilers, which answers (a).