Rose configuration

extraUm.scr

Rather than gradually evolving a rose suite, I've written a script ~mstringe/bin/rose/extraUm.scr to modify existing rose suites. This script creates the files I want from scratch each time. I've done it this way because

  • it's easy to add one change at a time
  • the scripts shows the changes
  • it's possible to copy whole directories and run sed on whole files
  • if the template suites are a poor choice, it should be relatively easy to switch to better choices

Changes to suite.rc

This requires new sections

  • fcm_make_um
  • fcm_make_um2
  • recon2
  • ATMOS2, which used the variables ATM_PROCX2, ATM_PROCY2, UM_ATM_NPROCX2, UM_ATM_NPROCY2 and IOS_NPROC2.
and the dependies need adding in for these sections

The rose-app.conf for fcm_make_um and fcm_make_um2

The fcm_make_um app is responsible for creating the scripts, input and building the code for the senior UM - while fcm_make_um2 does the same for the junior UM. To run a 2UM coupled run, fcm_make_um requires

  • a new script, um-coupled_2um, adding to the build targets (um-coupled_2um comes from the vn9.2_2UMs source branch).

And fcm_make_um2 requires

  • a different executable name, e.g. um2-atmos.exe, before the main executable can run concurrenly with the senior UM executable.

These properties are specified in the fcm-make/inc/um-atmos-common.cfg file and the location of this is given by value of the config_root_path variable found in app/fcm_make_um/rose-app.conf and app/fcm_make_um2/rose-app.conf. Normally this is set as

config_root_path=fcm:um_tr

when it would just use the standard version from the trunk. Both rose-app.conf files require `config_revision' set to blank (so that head of branch is used), and setting `config_root_path' to fcm:um_br/dev/mstringe/vn9.2_snr_build_cfg and fcm:um_br/dev/mstringe/vn9.2_jnr_build_cfg.

Extra meta data for `rose edit' gui

There are a few extra variables needed when running the coupled UMs, such as l_senior and l_junior. Unless they're added into the meta data these fields are adding into menu -> namelist -> Top Level Model Control.

Meta data for them can be added by either editing app/<app name>/meta/rose-meta.conf, or - as this file usually begins with a line like

import=um-atmos/vn9.2

the file rose-meta/um-atmos/vn9.2/rose-meta.conf which is points to can be modified. By default this is in directory ~fcm, but it can changed with a command like

export ROSE_META_PATH=~mstringe/um/rose-meta

which will point it to ~mstringe/um/rose-meta/um-atmos/vn9.2/rose-meta.conf