MODTRAN4 INSTALLATION AND I/O FILES
This file outlines the steps required to obtain, install and
execute MODTRAN4 on a UNIX system. It also describes the input/output
(I/O) file structure for MODTRAN. This file should be read even if
one has already installed the code, or is familiar with the installation
process. This file is duplicated as the 'README' file in the MODTRAN
distribution tar file.
The top-level directory for MODTRAN4 is Mod4v1r1/, i.e. MODTRAN4
version 1, revision 1.
For installation questions, contact:
gail.anderson@hanscom.af.mil,
ganderson@cmdl.noaa.gov, or
jim.chetwynd@hanscom.af.mil
With technical questions, contact:
gail.anderson@hanscom.af.mil,
ganderson@cmdl.noaa.gov, or
lex@spectral.com
NEW FEATURES
MODTRAN4 adds the following features (references are in the user manual):
Two Correlated-k (CK) options: the standard option which uses 17 k
values (absorption coefficients) per spectral bin and a slower, 33 k
value option primarily for upper-altitude (>40 km) cooling rate and
weighting function calculations (CARD 1);
An option to include azimuth dependencies in the calculation of DISORT
solar scattering contributions (CARD 1A);
Upgraded ground surface modeling including parameterized forms for
spectral BRDFs (Bidirectional Reflectance Distribution Functions) and an
option to define a ground target surface (H2) different from its
surrounding surface.
A high-speed option, most appropriate in short-wave and UV spectral
regions, that uses 15 cm-1 band model parameters (CARD 1A);
Scaling options for water vapor and ozone column amounts (CARD 1A);
Improved, higher spectral resolution, cloud parameter database; and
More accurate Rayleigh scattering and indices of refraction.
Both Correlated-k options permit more accurate calculation of molecular
absorption in the presence of multiple scattering. Without the azimuth
dependent DISORT option, the multiple (not single) scatter solar
contributions included in MODTRAN line-of-sight calculations are
averaged over azimuth. The BRDFs are fully coupled into the Isaacs multiple
scattering model; upon release of the recently developed BRDF-dependent DISORT,
MODTRAN4 BRDF's will be coupled to that code. The dual surface option enables
modeling of adjacency effects. The updated Rayleigh scattering algorithm
models the spectral dependence of the depolarization factor, and the refractivity
(equal to one minus the real part of the index of refraction) now varies
not only with water density but also with CO2 partial pressure
(Bodhaine, et al., 1999).
All MODTRAN3.5 and MODTRAN3.7 input files are fully compatible with
MODTRAN4. Minimally, six input cards (1, 1A, 2, 3, 4, and 5) are required
to run MODTRAN for a given problem. For specific problems, combinations
of several additional optional control cards are possible.
INSTALLATION STEPS
1) Contact Gail Anderson (email: gail.anderson@HANSCOM.AF.MIL)
or Jim Chetwynd (jim.chetwynd@hanscom.af.mil) and obtain the code
(bundled into a single UNIX tar file and compressed to save space).
2) Untar the file: 'tar xvf Mod4v1r1.tar'; this will build the
MODTRAN4 directory structure. The top-level directory, Mod4v1r1/, will
contain these sub-directories: DATA/, docs/, mie/, mod4_obj/, mod4_src/,
novam/, novam/src/, novam/test/, PC/, PC/DATA/, PC/mod4_obj/,
PC/mod4_src/, PC/TEST/ PC/TEST/SAVE/, TEST/ and TEST/SAVE,
3) Create Correlated-k binary data files in the DATA/ subdirectory.
In that directory, compile CKBIN.f (f77 CKBIN.f -o CKBIN.exe). Run
CKBIN.exe; you will be prompted for a Correlated-k ASCII file name.
Reply 'CORK15.ASC'. This file should have been placed in the DATA/
directory during the untar process. You will then be prompted for a
binary name; reply with 'CORK15.BIN'. The program should announce a
successful write and place the file in the DATA/ directory. Repeat
for 'CORK01.ASC'.
4) Create band model parameter files. Compile and run MOLBMP.f.
Select an ASCII-to-binary conversion. Although entering names of
ASCII files is possible, the current files of interest should appear
in the menu: BMP99_15.ASC and BMP99_01.ASC. Another menu permits
choosing output file names; select the corresponding .BIN names.
The outputs of the conversions specify the value, for your computer,
of the RECL parameter. Note this number for the following step.
5) In the mod4_src/ subdirectory, edit the file openbm.f. Find
the 'RECL=' specification in the OPEN statement, and change its value
to that specified by MOLBMP.exe for your platform and compiler. For
an HP 9000/735, for example, the value will be 60; for an SGI, 15; for
GNU and PC (Lahey and WATCOM) compilers, it is also 60.
6) The command 'make -f Makefile' will run the FORTRAN compiler
(using 'Makefile') to create the executable file Mod4v1r1.exe. Object
files will be placed in the mod4_obj/ directory. You may need to edit
the makefile to set compiler parameters as needed by your compiler.
Most likely, editing will not be needed.
7) This version of MODTRAN (version 3.7 and higher) has the
ability to use the Navy Oceanic Vertical Aerosol Computer Model (NOVAM).
If you need to use this code, NOVAM must be compiled and run before
MODTRAN, producing output files for use when needed. The NOVAM files are
located in the novam/ subdirectory tree under the top MODTRAN directory.
Not all users will require NOVAM. MODTRAN is independent of NOVAM.
To prepare using NOVAM, go to the novam/ subdirectory. Execute
the UNIX script file createnovamexecutable, which will create the
NOVAM executable, novam.exe. NOVAM (novam.exe) reads input from
novam.in, and writes output to novam.out. Three test case inputs are
located in the novam/test/ subdirectory. Copy one into the novam.in
file name, or create one, and use 'novam.exe' to create novam.out.
Copy that to NOVAM.OUT (upper case) in the topmost MODTRAN directory,
which contains Mod4v1r1.exe, for use in runs requiring NOVAM data.
8) The TEST subdirectory holds a number of input files designed
to exercise various parts of MODTRAN4. The input files are named in
the pattern *.tp5; output files have .tp6, .tp7, .tp8, .7sc, .7sr,
.plt, .psc, .clr, .chn, and .flx extensions. Copy a *.tp5 file into
tape5 in the top-level directory, and then 'Mod4v1r1.exe' will run that
case. The other way of running MODTRAN and naming I/O files make use
of the file 'modroot.in' or 'MODROOT.IN' as described below. For
MODTRAN4, the *.tp6 output files shipped were created on a UNIX platform.
9) The subdirectory 'PC/' contains an executable, and binary
files, for a PC. You need not compile the DATA/ files for the PC.
I/O FILES
An attempt has been made in MODTRAN4 to make it easier for
the users to keep track of input and output (I/O) files. The need for
easier file handling is evident to anyone who runs MODTRAN using
different tape5's and wants to save the corresponding output files
(the tape6's, pltout's, tape7's and so on). The problem is that every
MODTRAN input file must be called 'tape5' and that earlier I/O files
must be renamed to avoid overwriting them with newer files. The need
for renaming is now avoided by creating a new MODTRAN input file
(referred to as the root name file) called modroot.in or MODROOT.IN.
If 'modroot.in' does not exist, 'MODROOT.IN' is looked for. If
neither exists, MODTRAN I/O files are the usual ones: 'tape5',
'tape6', 'tape7', 'tape8', etc. If the root name file exists and
contains a non-null string (maximum length is 80 characters), this
string is treated as a prefix. It is suggested that this string
contain no blanks other than leading and trailing ones. If the string
consists of all blanks or is a null string, the I/O files are the
usual ones. Otherwise, this string, stripped of all leading and
trailing blacks, is used as a prefix for the I/O files whose names
have mnemonic suffixes listed below. As an example, if the string is
'case1', the MODTRAN I/O files will have these names:
case01.tp5 (corresponding to tape5)
case01.tp6 (corresponding to tape6)
case01.tp7 (corresponding to tape7)
case01.tp8 (corresponding to tape8)
case01.7sc (corresponding to tape7.scn
case01.7sr (corresponding to tape7.scr)
case01.plt (corresponding to pltout)
case01.psc (corresponding to pltout.scn)
case01.clr (corresponding to clrates in MODTRAN4)
case01.chn (corresponding to channels.out in MODTRAN4)
case01.flx (corresponding to specflux.out in MODTRAN4)