3.1 Create the supplemental programs
a. Create the fortran library libcsv
This library is used for reading csv data files. The original source code can be found on GitHub under https://github.com/jacobwilliams/fortran-csv-module
Choose a Fopts
file in the directory LOCAL
and copy it to the base directory of libcsv (here we choose Fopts.dkrz-levante
as an example):
$ cd ${SPDIR}/src/fortran-csv-lib
$ cp LOCAL/Fopts.dkrz-levante Fopts
Adopt the Fopts
file to your system and type:
After successful compilation you find the libcsv
in ${SPDIR}/src/fortran-csv-lib/lib
.
b. Create the cfu
executable
The climate fortran utilities contain several functions needed in the runtime environment.
Choose a Fopts
file in the directory LOCAL
and copy it to the base directory of libcsv (here we choose Fopts.dkrz-levante
as an example):
$ cd ${SPDIR}/src/cfu
$ cp LOCAL/Fopts.dkrz-levante Fopts
Adopt the Fopts
file to your system and type:
After successful compilation you find the cfu
executable in ${SPDIR}/src/cfu/bin
c. Create additional conversion programs
The programs are used to convert COSMO-CLM caf-files to ICON-CLM compatible caf-file (ccaf2icaf
) and to correct the netCDF output of ICON-CLM (correct_cf
).
Choose a Fopts
file in the directory LOCAL
and copy it to the base directory of libcsv (here we choose Fopts.dkrz-levante
as an example):
$ cd ${SPDIR}/src/utils
$ cp LOCAL/Fopts.dkrz-levante Fopts
Adopt the Fopts
file to your system and type:
After successful compilation you find the executables ccaf2icaf
and correct_cf
in ${SPDIR}/src/utils/bin
If you intent not to run ICON-CLM at DKRZ or DWD you have to perform some adoptions. First, find out which batch system comes nearest to your system. DKRZ uses SLURM (i.e. SBATCH commands) and DWD uses the Portable Batch Commands (i.e. PBS commands). Lets suppose as an example in the following that you use SLURM on your computing system and therefore you use "dkrz" as a template.
a. Change into the configure_scripts directory:
$ cd ${SPDIR}/configure_scripts
b. Adopt the dkrz part in the system_settings.tmpl
file to the settings on your system.
c. Run the config.sh
script:
$ cd ${SPDIR}/configure_scripts
$ ./config.sh -s dkrz-levante
This will create two directories including the basic scripts. You find them under ${SPDIR}/chain/gcm2icon/sp001
and ${SPDIR}/chain/icon2icon/sp002
Now comes the hardest part: you have to dive into the scripts in the directories and adopt the scripts to your system (e.g. modify batch commands, program calls etc.). Start with adopting the experiment ${SPDIR}/chain/gcm2icon/sp001
.
Run the test examples
There are two tests, one for testing ICON with GCM or reanalysis data as initial and boundary conditions (${SPDIR}/chain/gcm2icon/sp001
) and one for testing ICON with coarse grid ICON data as initial and boundary conditions (${SPDIR}/chain/icon2icon/sp002
). Actually sp001
creates the necessary input data for sp002
.
SP001
is a two month simulation, 50 km / Europe / driven bei ERAInterim
SP002
This experiment is a two month simulation, 3km / region around Hamburg / driven by ICON output of sp001
.
Before you start the experiment look for the following environment variables in the job_settings
of and adopt them to your needs.
PROJECT_ACCOUNT= # your project account, if necessary on your system
NOTIFICATION_ADDRESS= # your email of nofification address if you want to get information when your job crashes or finishes
BINARY_ICON= # ICON executable including full path
ECRADDIR= # path to the ECRAD data directory, if you plan to use the ECRAD radiation scheme
Adopt the input directory of the ERAInterim data
GCM_DATADIR=/pool/data/CCLM/reanalyses/ERAInterim
and probably the de-tar part in prep.job.sh.
Now you should be ready to start the first experiment:
$ cd ${SPDIR}/chain/gcm2icon/sp001
$ ./subchain start
In SPICE the scripts are called in the order prep.job.sh, conv2icon.job.sh, icon.job.sh, arch.job.sh, post.job.sh. If your job crashes in one of the scripts you do not have to run all the successful scripts again, but can start this script again after you made the corrections by submitting the appropriate command from the following list:
./subchain prep
./subchain conv2icon
./subchain icon noprep
./subchain arch
./subchain post
After successful completion of the SP001
experiment adopt the scripts in SP002
and start this experiment:
$ cd ${SPDIR}/chain/icon2icon/sp002
$ ./subchain start