Home

Awesome

Juelich Rapid Spectral Simulation Code

The Juelich Rapid Spectral Simulation Code (JURASSIC) is a fast infrared radiative transfer model for the analysis of atmospheric remote sensing measurements.

logo

release (latest by date) commits since latest release (by SemVer) last commit top language code size in bytes codacy codecov tests docs license doi

Features

Getting started

Prerequisites

This documentation describes the installation of JURASSIC on a Linux system. A number of standard tools (gcc, git, make) and software libraries are needed to install JURASSIC. The GNU Scientific Library is required for numerical calculations. A copy of this library can be found in the git repository.

Start by downloading the source code from the git repository:

git clone https://github.com/slcs-jsc/jurassic.git

To update an existing installation use:

git pull https://github.com/slcs-jsc/jurassic.git

Installation

First, compile the GSL library needed for JURASSIC by using the build script:

cd jurassic/lib
./build.sh

Next, change to the source directory, edit the Makefile according to your needs, and try to compile the code:

cd jurassic/src
emacs Makefile
make

The binaries will be linked statically, i.e., they can be copied and run on other machines. Sometimes this causes problems. In this case remove the '-static' flag from the CFLAGS in the Makefile and compile again.

By default we use rather strict compiler warnings. All warning messages will be turned into errors and no binaries will be produced. This behavior is enforced by the flag '-Werror'.

The binaries will remain in the jurassic/src/ directory.

To run the test cases to check the installation, please use:

make check

This will run sequentially through a set of tests. The execution of the tests will stop if any of the tests fails. Please inspect the log messages.

Run the examples

JURASSIC provides a project directory for testing the examples and also to store other experiments:

cd jurassic/projects

This shows how to run the example for the nadir sounder:

cd nadir
./run.sh

This shows how to run the example for the limb sounder:

cd ../limb
./run.sh

In both examples, we generate an observation geometry file,

cat obs.tab

a standard atmosphere for mid-latitudes,

cat atm.tab

and conduct radiative transfer calculations for two or three detector channels:

cat rad.tab

The output of the simulation is verified by comparing it to reference data. Additionally, gnuplot is used to create plots of the radiance data:

<p align="center"><img src="projects/limb/plot_rad.png" width="45%"/> &emsp; <img src="projects/nadir/plot_rad.png" width="45%"/></p>

Kernel functions are calculated using a finite difference method:

<p align="center"><img src="projects/limb/plot_kernel_temperature_792.png" width="45%"/> &emsp; <img src="projects/nadir/plot_kernel_temperature_668.5410.png" width="45%"/></p> <p align="center"><img src="projects/limb/plot_kernel_H2O_792.png" width="45%"/> &emsp; <img src="projects/nadir/plot_kernel_CO2_668.5410.png" width="45%"/></p>

Further information

More detailed information for new users and developers of JURASSIC is collected in the GitHub wiki.

These are the main references for citing the JURASSIC model in scientific publications:

Please see the citation file for further information.

Contributing

We are interested in sharing JURASSIC for operational or research applications. Please do not hesitate to contact us, if you have any further questions or need support.

License

JURASSIC is distributed under the GNU General Public License v3.0.

Contact

Dr. Lars Hoffmann

Jülich Supercomputing Centre, Forschungszentrum Jülich

e-mail: l.hoffmann@fz-juelich.de

website: https://www.fz-juelich.de/ias/jsc/slcs