FLEXPART Model/FLEXPARTLibraries
Flexpart has already been compiled on sverdrup.uio.no and Abel.
To check which version is available on abel:
module avail flexpart
To set-up your environment on Abel:
module load flexpart
This will load the default version of flexpart. The default version of flexpart may not be the latest version. If you want to load another version:
module load flexpart/9.2
FLEXPART_HOME: directory where flexpart has been compiled/installed. You will find the source code for FLEXPART.
FLEXPART_WINDS: directory where FLEXPART windfields are stored. This directory contains windfields necessary to run all our tutorials/examples.
FLEXPART_EXAMPLES: directory where FLEXPART examples can be found.
Running tutorials
To run FLEXPART examples, the best is to copy them in your own directory:
cp -R $FLEXPART_EXAMPLES . cd HelloWorld mkdir outputs FLEXPART
The name of the main executable is FLEXPART. FLEXPART uses an input file called pathnames where you shall specify the options directory, the output directory and the location of AVAILABLE file for WINDFIELDS.
For instance for HelloWorld example:
cat pathnames /cluster/software/VERSIONS/flexpart/9.02/examples/HelloWorld/options/ ./outputs/ /cluster/software/VERSIONS/flexpart/9.02/examples/HelloWorld/AVAILABLE
Running "large" FLEXPART simulations
All our tutorials/examples are very short simulations and can be run interactively (less than 30 minutes CPU). However, in most cases, you will be using more than 30 minutes CPU and will have to use Abel batch system. A batch system enforces limits on runtime (walltime) as well as the number of jobs running at one time (both total and per user). You need to write a small job script and use the batch system. Here is a small example for FLEXPART:
#!/bin/bash # Job name: #SBATCH --job-name=running_flexpart# # Project (to be changed if you have nortur allocations): #SBATCH --account=geofag # # Wall clock limit (to be adjusted depending on your needs) #SBATCH --time=10:0:0 # # Max memory usage per core (MB): #SBATCH --mem-per-cpu=4G # # ## Set up Abel job environment source /cluster/bin/jobsetup ### Set up your environment for FLEXPART on Abel module load flexpart ### Run FLEXPART (see tutorials/examples) in a temporary directory # copy pathnames in your working directory cp pathnames /work/users/$UID cd /work/users/$UID FLEXPART # Please note that your output results are in a temporary directory! # copy them back to your local workstation using rsync
To submit your job script:
sbatch job_flexpart.sh
For more information on Abel see The Abel compute Cluster.
If you need a newer/different version, please let us know.
FORTRAN Issues
- Using and compiling with the GRIB_API Fortran/GribApi
- Makefile - Absoft Compiler Options for FLEXPART Fortran/Absoft
- Makefile - gfortran Compiler Options for FLEXPART Fortran/GNU
- DDD debugger for Fortran Fortran/DDD
- Creating a Fortran Library Fortran/LIB
- Conversion and bit swapping for binary I/O: http://orion.math.iastate.edu/burkardt/f_src/raw_io/raw_io.html