... | ... | @@ -9,3 +9,63 @@ We will continue to do it by hand with MEDUSA, at least for now, but of course, |
|
|
|
|
|
# MEDUSA on SETTE
|
|
|
|
|
|
when adding `MEDUSA` to nemo using `add_msa_to_nemo`, all necessary MEDUSA files and bit of scripts are automatically added in the `nemo/sette` directory.
|
|
|
it enables to test different MEDUSA and non-MEDUSA configurations :
|
|
|
* `ORCA2_MEDUSA` : Normal MEDUSA- online
|
|
|
* `ORCA2_OFF_MEDUSA` : MEDUSA Offline
|
|
|
* `ORCA2_MED_OFF_TRC` : CFCs and C14 Offline (No-MEDUSA)
|
|
|
* `ORCA2_MED_NO_TOP` : NEMO-ice without passive tracers
|
|
|
* `C1D_MED_PAPA` : NEMO-MEDUSA 1D
|
|
|
* `ORCA2_PAC_MED` : MEDUSA-PAC online
|
|
|
|
|
|
when available we'll add a river-nutrients config to be tested.
|
|
|
|
|
|
# How to Run the tests.
|
|
|
|
|
|
Running the tests requires very little work.
|
|
|
|
|
|
A detailed [How-to page](https://sites.nemo-ocean.io/user-guide/sette.html) explaining SETTE tests has already been written, but to be short :
|
|
|
|
|
|
1. Set your local environment.
|
|
|
* make sure you've `module loaded` all needed modules to compile NEMO (see the relevant how-to page : [how-to run on ANEMONE](How-to-run-on-ANEMONE) or [on Archer2](How-to-run-on-ARCHER2)).
|
|
|
* in the `nemo/sette/` directory add a `local_settings.sh` files that should look like the following :
|
|
|
``` sh
|
|
|
#!/bin/bash
|
|
|
export SETTE_COMPILER=X86_ARCHER2-Gnu_4.2
|
|
|
export SETTE_BATCH_CMD=sbatch
|
|
|
export SETTE_BATCH_STAT=squeue
|
|
|
export SETTE_FORCING_DIR=/work/n01/shared/nemo/FORCING/SETTE_inputs/r4.2.0
|
|
|
export SETTE_NEMO_VALIDATION_DIR=/work/n01/n01/julpal/NEMO/MEDUSA_dev/nemo/sette
|
|
|
```
|
|
|
This is an example file for Archer2. make sure to adapt to your environment, and make sure you have the apropriate compiler in `nemo/arch/`
|
|
|
2. A little tweak
|
|
|
That should not remain for long, but in `nemo/sette/BATCH_TEMPLATE/`, the SETTE scripts looks for a `batch-mpmd-${your-compiler-name}` file. it's not really used as, as you can see, the files are only comments. just copy a similar file with the right name. that does the trick.
|
|
|
|
|
|
Once these steps are done, you're ready to run your test! \
|
|
|
3. Running :
|
|
|
In `nemo/sette/`, run :
|
|
|
```sh
|
|
|
./sette.sh
|
|
|
```
|
|
|
it will test all the configs listed above. If you wish to only test one config, run instead
|
|
|
```sh
|
|
|
./sette.sh -n ${your_config_name}
|
|
|
```
|
|
|
# Check the results
|
|
|
|
|
|
what it does, in case it does not work and you need to check and debug : \
|
|
|
SETTE will create a new config in `nemo/cfgs` named `${your_config}_ST` \
|
|
|
* there, your config is compiled and the different runs are done. \
|
|
|
there are a LONG and a SHORT run; the SHORT run starting from a middle restar of the LONG one. \
|
|
|
If both ended identically, the restartability test succeeds
|
|
|
* Then there are also a REPRO4_8 and a REPRO8_4 runto test the different decomposition of the grid soes not change the results. if both ends identically, the reproducibility test succeeds.
|
|
|
All runs are normal runs, with their usual ocean.output,... files to check how they are doing.
|
|
|
|
|
|
To see if your tests succeed, in `nemo/sette/`, run :
|
|
|
```sh
|
|
|
./sette_rpt.sh
|
|
|
```
|
|
|
and if it succeeds, you should see something similar appearing : \
|
|
|
![image](uploads/4314d990e0516f0278608837af3c612a/image.png)
|
|
|
|
|
|
Here, all tests were successful. That's what you are looking for. (it shows the 1D reproducibility test being incomplete, but that's because it's 1D, we can't run a reproducibility test 1D.) |