![]() |
CHAPTER 3: Installation of
|
| Execute/ | docu/ | tests/ |
| tools/ | data/ | lapack/ |
| loadmaps/ |
In order to complete the installation process the following steps have to be performed:
The following NUMERICAL RECIPES Fortran 77 routines [34] have to be compiled in file gt_utilities_nr.f in directory ~/Execute/ (again: this file and the corresponding routines that are assumed to be contained in this file are not included in the SCIATRAN Version 1.2 package):
| SUBROUTINE GAULEG | |
| SUBROUTINE LUBKSB | |
| SUBROUTINE LUDCMP | |
| SUBROUTINE MPROVE | |
| FUNCTION DFRIDR | |
| FUNCTION PLGNDR |
make (or "gmake": depending on your system )
in subdirectory Execute/ in order to compile all subroutines and link them to the executable file (SCIATRAN_*.exe) in subdirectory Execute/.
Note that by typingmake debug=true
an (non-optimised) executable compiled with the -g flag is created for source code debugging purposes (executable name SCIATRAN*_dbx.exe).If GNU Make is not available the information contained in the Makefile should allow the user to perform this exercise ``by hand'' or by making the GNU Makefile compatible with the local Make system.
Two user interface files have predefined filenames:
control.inp and control2.inp.
control.inp is the main user interface file. control2.inp contains only those input settings which are not supposed to change frequently, e.g., convergence critera. Both files have to be located in the current directory (usually Execute/). These ASCII files have to be edited manually in order to set several switches (e.g., trace gas selection, scattering mode), and to set various computational parameters, to specify the wavelength range of interest, etc.
Four other input files are necessary (usually in subdirectory Execute/):
Filenames (incl. path, if required) of these three files have to be specified in control.inp. The structure of these files is identical with the structure of the ``control''-files, i.e., mainly key words followed by parameters that can be modified by the user (details see chapter 4).
Before the program can be executed the user has to set the appropriate paths in control.inp (x-section files, altitude grid files, etc.; see corresponding key words, for example `` X-section path''. Please note that this has to be done also for all input files (control.*) necessary to run the predefined test sequences described below. Note that for convenience all paths and filenames are set in control.inp.
The SCIATRAN internal altitude grids (``net'') stored in NET*.DAT files and the corresponding settings in gt_net.inp have been optimised and usually need not to be changed. However, how good these altitude grids are depends on several items. Therefore, the user has to check carefully if the predefined grids are appropriate for his/her specific application (diagnostic: spectral radiance jumps at net boundaries, i.e., at the specific wavelength where one net range finishes and the next net becomes valid, see gt_net.inp file). In general the distances between the atmospheric levels have to be ``sufficiently small'' (diagnostic: further decreasing the distanc between levels should not significantly change the results).
Six control.* files are included. One file in Execute/ and five files for test purposes in directory tests/.
After SCIATRAN has been sucessfully installed the program can be executed by typing, for example on SUN,
SCIATRAN_SUN.exe
in ~/Execute/ after the required input settings have been selected in the user interface files (mainly control.inp and low_aer.inp or scia_aer.inp).
If a directory different from ~/Execute/ should be used to run SCIATRAN this is, of course, possible. Call SCIATRAN with the appropriate path or set a convenient alias or link.
Only the user interface files control.inp and control2.inp are locally required, that is, they have to be in the current directory. File control.inp should contain the (absolute or relative) paths to all other input files (trace gas absorption cross-section files etc.).
Important note concerning the memory requirements for SCIATRAN: It might be necessay to increase or to decrease certain constants which determine the maximum length of arrays used in SCIATRAN, e.g., the maximum number of spectral points or altitude levels. These constant are specified in the *.PARS files located in directory ~/Execute/.
Selecting smaller values might be necessary to significantly reduce the required memory. Note: especially max_gt_strms (maximum number of ``streams'', see annexed mathematical description), max_gt_layers (maximum number of altitude levels) and max_gt_specpts (maximum number of spectral points), which are specified in GOMETRAN.PARS, significantly determine the size of the required memory.
Once one of these parameters has been changed the program has to be recompiled and linked using the GNU-Makefile (type: make in directory ~/Execute/).
Note that even if max_gt_specpts is a rather small number it is possible to create output files containing much more spectral points without starting the program more than once. The program automatically splits the wavelength grid into packages of up to max_gt_specpts spectral points and processes one package after the other. This, however, requires to read all input data from scratch for each package to be processed.
In order to check if SCIATRAN has been correctly installed some reference input files have been defined and some reference output files created (on SUN !). All relevant test input and output files are located in directory /tests/.
A first test can be made using /tests/*.ref files. The current directory should be ~/Execute/. Please, perform the following steps:
cp ../tests/control.ref control.inp
Note that the paths specified in control.inp might have to be adjusted.
Please note that this test run and also the test sequence described below will use the following user input files which already exist in Execute/ as well as in tests/:
| control2.inp | |
| low_aer.inp | |
| xsections.inp | |
| gt_net.inp | |
| esft.inp |
| intensity.dat |
| radiance.dat |
| weightfn.dat |
| tg_amf.dat |
| tg_vod.dat |
| SCIATRAN_SCENARIO.OUT |
| AEROSOL.OUT |
| errors.log |
A comparison can easily be made using the UNIX diff command. Type, for example
diff intensity.dat ../tests/intensity.ref
ksh ../tools/sciatran_test.sh
This script essentially copies the ~/tests/control.t0* files into the current directory (as control.inp!) and starts SCIATRAN.
Please note again, that you have to adjust the paths specified in the ~/tests/control.t0* files.
The script performs four tests based on the ~/tests/control.t0i (i = 1,..., 4) input files. After each execution of SCIATRAN the corresponding intensity.t0i reference files in ~/tests/ and the newly generated intensity.t0i files in ~/Execute/ are compared using the diff command. All output files are stored in the current directory (i.e. ~/Execute/) and contain the extension of the corresponding test sequence (i.e. ~/Execute/*.t0i).
For all tests the basic scenario is the same. They only differ in wavelength settings, scattering mode selection, and w.r.t. clouds (clouds are only present in test number 4; this test is the most time consuming).