Opened 6 years ago

Closed 3 years ago

Last modified 3 years ago

#1332 closed Task (fixed)

UKMO 2014 workplan task 4 (CF-1.5 compliance)

Reported by: hadcv Owned by: hadcv
Priority: low Milestone: 2015 release-3.6
Component: OCE Version: trunk
Severity: Keywords: 2014 CMIP6 IOM* UKMO WP XIOS release-3.6
Cc: sebastien.masson@… Review:
MP ready?:


A twofold development relating to preparatory work for CMIP6.

  • Amendments to the XIOS namelists to ensure CF-compliant output (will require XIOS r482).
  • Implementation of additional CMIP5 diagnostics if required during this development cycle.

The first task is expected to comprise most or all of the development.

Reviewer: Sebastien Masson

Commit History (2)


Merge of branches/2014/dev_r5134_UKMO4_CF_compliance (r5350, ticket #1332) into the trunk.


#1332: Create branch for the CF compliance development work

Change History (15)

comment:2 Changed 5 years ago by hadcv

  • Keywords IOM added
  • Milestone set to 2015 nemo_v3_6_STABLE
  • Status changed from new to assigned
  • Summary changed from UKMO 2014 workplan task 4 (CF/MOCF compliance and further implementation of CMIP5 diagnostics) to UKMO 2014 workplan task 4 (CF-1.5 compliance)
  • Version changed from nemo_v3_6_alpha to trunk

Change in task description:

The development aims to make NEMO-XIOS output CF-1.5 compatible. This will be done through a combination of proposed changes to both XIOS (via XIOS dev team) and the NEMO IO modules.

Development branch:

comment:3 Changed 5 years ago by hadcv

Summary of changeset [5363]

In commit:

  • Changes to the XIOS namelists
    • Added standard_name entries to field_def.xml
      • Defined where possible except for biogeochemistry variables or some ice variables. It would be useful for expert consortium members to review these when they come to build their CMIP6 experiments
    • Corrected units in the field_def.xml file (and for axes in the iodef.xml files) to conform to the UDUnits package
    • Renamed coupled variable “calving” to “calving_cea” since it clashed with the “calving” variable in ICB
    • Removed long_name entries from some iodef.xml namelists where they already exist in field_def.xml, except when a variable has been redefined by an operation (e.g. standard deviations)
    • Made corrections/modifications to some long_name entries in field_def.xml
    • Added a new variable definition for Barrier layer depth “BLT” in field_def.xml
    • Added axis declarations for the 20C and 28C isotherms
    • Missing axis declarations have been added to iodef.xml namelists where needed
    • Removed some commented out variables for traadv_mle in iodef.xml files
    • Removed some duplicate entries and corrected some grid references in field_def.xml
  • Changes to NEMO
    • Added cell bounds information to output files
      • The main change is a new subroutine “set_grid_bounds” in iom.F90. The method of defining the cell bounds is to refer to coordinates on the corresponding grid (e.g. T bounds = F points).
      • Some incorrect cells (where the cell point lies outside the cell bounds) exist on the north fold and Mediterranean / Persian Gulf areas (ORCA2 only). The latter can be cut out (set to zero area cells) with a hand edit. This is untidy, but my concern is that conservative regridding routines might get confused here due to the land cells overlapping ocean cells. If they make use of land masks however, this should not be a problem.
      • At closed boundaries the cell bounds are set equal to cell points, so that they have zero area
      • At the north fold / symmetric equator the cells are rotated / inverted so that the cell bounds are contiguous
    • Added a new namelist entry in namrun: “ln_cfmeta”
      • This will also control output of the cell bounds, areas and other metadata information that significantly increases the file size
    • Added axis definitions for the 20C and 28C isotherms
    • Removed the “BLT” iom_put call in DIA/diahth.F90, replacing it with a definition in field_def.xml
    • Renamed sbccpl.F90 iom_put variable id “calving” to “calving_cea”

Planned for 10th:

  • Requiring NEMO changes after XIOS development
    • Add output of cell areas to file (under ln_cfmeta namelist parameter)
    • Add output of depth bounds to file
  • Requiring XIOS development
    • Add a cell_methods attribute to describe the time operation
    • Rename and remove some attributes

Not a planned part of the development:

  • Currently the metadata for the following variable types is incorrect:
    • Station timeseries data
      • The data output by the FLO section provides coordinate information as time-varying output variables. There is no infrastructure in XIOS to allow this information to be provided as multiple coordinates on a shared sampling axis. This will probably come in XIOS-2.0.
    • Scalar data produced by spatial operations (e.g. global averages)
      • We use a fake domain to output scalar data, which is a zoom of the T grid at the moment; this is not representative of the global domain. This can be worked around by defining better coordinates and bounds for the fake domain.

We are also missing a cell_methods attribute to describe spatial operations performed in NEMO prior to data being passed to XIOS. This may be implemented in a future version of XIOS.

Finally, we do not have a means of specifying complex geographical regions (e.g. Fram Strait) for some of the section diagnostics for CMIP5/6. In the CF standard this is done using label axes (coordinate variables with character strings as values). This may also be implemented in a future version of XIOS.

comment:4 Changed 5 years ago by hadcv

XIOS requirements of this branch

The recommended version of XIOS to use with this branch is XIOS-1.0 r618

Last edited 5 years ago by hadcv (previous) (diff)

comment:5 Changed 5 years ago by hadcv

Final commit to the trunk for this development made at [5415] to implement some of the additional functionality listed above.

comment:6 Changed 3 years ago by lovato

  • Resolution set to fixed
  • Status changed from assigned to closed

The changes described in this ticket were all included in the code of NEMO v3.6 Stable and trunk.

comment:7 Changed 3 years ago by nemo

  • Type changed from Development to Task

Remove 'Development' type

comment:8 Changed 3 years ago by nemo

  • Keywords IOM* added; IOM removed

comment:9 Changed 3 years ago by nemo

  • Keywords 2014 4 UKMO compliance) task workplan added

comment:10 Changed 3 years ago by nemo

  • Keywords 4 removed

comment:11 Changed 3 years ago by nemo

  • Keywords WP added; workplan removed

comment:12 Changed 3 years ago by nemo

  • Keywords compliance) task removed

comment:13 Changed 3 years ago by nemo

  • Keywords release-3.6* added

comment:14 Changed 3 years ago by nemo

  • Keywords release-3.6 added

comment:15 Changed 3 years ago by nemo

  • Keywords release-3.6* removed
Note: See TracTickets for help on using tickets.