Skip to content

jhan_JaC_Redux_JaCFeb2021_front_end_differences

JhanSrbinovsky edited this page Feb 23, 2021 · 9 revisions

JULES-5.9 (WITH CABLE)

The files that are added/changed here represent files that exist in the coupled/ directory in CABLE-3. The params/ directory is common to offline CABLE and JAC. The coupled/util/ directory in CABLE-3 finds its way to both the util/cable and control/cable/util directories in JAC, depending on how it is used within JAC, i.e. per tilmestep or at IO.

View Changes in JAC implementation onto of [email protected]+

Per directory:

  1. io/

There are 3 brand new files here ONLY. These are too declare prognostics, declare and arrange reading of nameless to get CABLE surface types and to set some model grid constants for CABLE which can eventually be upgraded to namelist status.

  1. params/

At the initialisation stage some of the parameters/constants defined here are needed, however we have added the whole directory here in the aim of maximizing this submission. There are two files moved to a params/cable/ specific directory. "cable_types" in particular requires revision later on as this is not entirely appropriate.

  1. util/

There are 3 brand new files here AND cable_pack...() moved to control/cable/util/ as it is used per tilmestep in the interface between JULES and CABLE. "cable_common" requires review at a later date. "cable_runtime_opts" declares and defines values which were other wise defined through cable.nml. This requires elevating to namelist status at a later date.Placement of cal_masks within the directory structure at this present time represents a static definition of the masks, however this has evolved to being called per tilmestep during testing. This needs to be reviewed at a later date.

  1. control/

In general we avoided including the changes in here that are necessary to fully couple CABLE, in an effort to seperate the changes needed to the front end."cable_prognostic_info mod" and "cable_surface_types" have been migrated to io/cable/. "cable_pack_mod" has been moved from util/. The required directory structure has been added without being populated. The ONLY file that is added AND is needed in the initialisation stage is cal_activeTile_mask" to determine CABLE's vector length, "mp".

  1. initialisation/

This is where A LOT of work is done.

Two files are removed. "allocate_cable_arrays" was not appropriate and replaced by several more specific and comprehensive files. "init_cable_mod" has been moved out of the initialisation/standalone/ application directory, revised and put in the initialisation/cable directory.

Six JULES files are edited

This is where it all starts - init()

Clone this wiki locally