revert back to the
stephen.pring authored
2141fdbe

MEDUSA for 4.2.x

This repository contains the additions and changes needed to add MEDUSA as an optional BGC model in the NEMO system. All the new resources are kept in the medusa_resources subdirectory and maintained through this GitLab service. Cloning this repository will also retrieve the main NEMO source as a submodule. At any point the MEDUSA code should be compatible with the retrieved version of the NEMO trunk but both code sets are kept distinct so that remote changes to NEMO may be tracked.

As well as code only related to MEDUSA, medusa_resources contains some OCE and TOP modules that have been modified to support MEDUSA. These files reside in the medusa_resources/cfgs/SHARED_MEDUSA/MY_SRC directory ready to be symbolically linked from the MY_SRC directory of any new configuration that wishes to use MEDUSA. The script: compare_msa_my_src can be used to obtain a quick overview of the differences compared to the equivalent files in the nemo submodule. This will need to be checked and the SHARED_MEDUSA/MY_SRC files updated, if necessary, when the submodule is updated to later versions of the trunk. The current list of differences is provided in the last_patchset file. This is simply the output of the compare_my_src script run just before the last commit.

The script: add_msa_to_nemo can be used to symbolically include the parts of medusa_resources in the nemo tree so that new configurations using MEDUSA can be built and run. Any added files are listed in ./nemo/.gitignore so that they do not interfere with the main source and good visibility of any changes to NEMO code outside of MEDUSA is maintained. The script adds links to the source code and adds a new reference configuration: ORCA2_MEDUSA which can be used as a basis for new configrations which wish to use MEDUSA.

Since the new reference configuration is part of the medusa_4.2.x repository, it is best not to work directly in this configuration but to create a new configuration that will not be tracked by git. In fact, if you have run the add_msa_to_nemo script, then a wildcard: *MEDUSA* will have be added to the .gitignore file and so anything with MEDUSA in its name will be automatically ignored.

So to get started the recipe is simply:

git clone --recurse-submodules git@git.noc.ac.uk:acc/medusa_4.2.x.git
cd medusa_4.2.x

# put MEDUSA at the right places :
./add_msa_to_nemo

# compile :
cd nemo
./makenemo -r ORCA2_MEDUSA -n MY_NEW_MEDUSA -m x86-64_Anemone -j 8