# OpenIFS AMIP runs
## Background
OpenIFS 40r1 is based on IFS from ECMWF. Simply put, it is the atmosphere forecast model in IFS, i.e. without data assimilation, ocean model, parallel I/O server etc. OpenIFS is available to those with a license and GEOMAR has an institute-wide license.
OpenIFS is run with ESM-Tools. Therefore, you must first install ESM-Tools before installing OpenIFS. ESM-Tools is a set of scripts that will take care of compiling code, fetching input data, processing output data, and restarting the model.
## How to install
First, obtain ESM-Tools
```bash
module load git
git clone https://<yourdkrzusername>@gitlab.dkrz.de/esm-tools/esm-tools.git
cd esm-tools
./install.sh
```
Then you need to switch to the "focioifs" branches
```bash
cd esm-master
git checkout focioifs
cd esm-runscripts
git checkout focioifs
cd ../esm-environment
git checkout focioifs
cd ..
```
Now you are ready to compile. ESM Tools may ask you to input your DKRZ username and password. It will also ask you where simulations should be stored.
```bash
make get-oifscl
make comp-oifscl
```
## How to run a first test (on HLRN-IV "Emmy")
With the model compiled, you should now create a directory where you store your runscripts, and then copy a standard runscript from ESM-Tools which you can modify later.
The example is for HLRN-IV Emmy, but you only need to modify the runscript slightly to make it work on DKRZ Mistral or JSC JUWELS.
```bash
mkdir my_runscripts
cp esm-runscripts/runscripts/oifscl/oifscl_t159_initial_monthly_hlrn4.run my_runscripts/.
cd my_runscripts
```
Have a look at the runscript you just copied. It will run a 1 month test on HLRN4 using 7 compute nodes (280 cores) and run a postprocessing job after completion.
Make sure the FUNCTION_PATH, MODEL_DIR, BASE_DIR and the NAMELIST_DIR further down all point to the right places.
Now you can test the runscript
```bash
./oifscl_t159_initial_monthly_hlrn4.run -e oifs_test_1 -U -c
```
This will set up a run named "oifs_test_1", but will not submit a job (the -c flag).
Make sure this runscript completes without errors. You may find that "cf_table" or "t159_red.txt" are missing. This is fine.
Then run
```bash
./oifscl_t159_initial_monthly_hlrn4.run -e oifs_test_1 -U
```
If you store stuff in the standard places you will find the output in
```bash
/scratch/usr/${USER}/esm-experiment/oifs_test_1/outdata/oifs/
```