Interfaces and Tools

Assimilation (TAM) and Observations (OBS)

The assimilation interface to NEMO is split into three modules.

  • OBS for the observation operator
  • ASM for the application of increments and model bias correction (based on the assimilation increments).
  • TAM the tangent linear and adjoint model.

Please see the NEMO reference manual for more details including information about the input file formats and the namelist settings.

Inputs-Outputs server (XIOS) and Coupler (OASIS)

The NEMO framework provides interfaces both to XIOS (for I/O management) and to OASIS (for coupling NEMO with other model components).

XIOS allows to address some challenges related to the treatment of the large volume of data produced by the model (e.g. in CMIP experiments). In details, XIOS:

  • increases the flexibility in I/O management and data definition. User can describe incoming data flow from the NEMO model, the workflow to be applied to it and the data flow end point through the use of an external XML file. This means that workflow and output definition can be modified without recompiling the NEMO code
  • improves I/O performance through a dedicated parallel and asynchronous I/O server which allows to overlap I/O and computation and to avoid the rebuild process after the simulation
  • integrates internal and parallel post-processing performed ‘in-situ’ though the workflow described in the XML file as a full graph of parallel tasks.

The NEMO framework allows several ocean related components of the Earth System to work together. It is also interfaced with some external components (e.g. atmosphere, land surfaces, …) via the OASIS coupler.

OASIS ensures cross-component communications through the setup of a parameter file where the characteristics of coupling for each exchanged quantities, such as ID, coupling frequency, interpolation are defined.
NEMO provides interface also for OASIS-MCT, which allows all transformations, to be performed in parallel on the set of source or target component processes and all coupling exchanges to be executed in parallel directly between the component processes.

Mesh refinement (AGRIF)

Online grid refinement is made possible thanks to the AGRIF library (AGRIF: Adaptive Grid Refinement in Fortran).

This software allows for the seamless two-way coupling of nested sub-models within the NEMO framework as long as these are defined on subsets of the original root grid. An arbitrary integer ratio of the root horizontal and time resolution has to be chosen which, in practice, does not exceed 5 to guaranty proper coupling. If needed, successive embedding can be used to refine the solution even further.

A simple text-file describing the overall grid hierarchy has to be defined, the user being still free to assign specific namelist parameters, or forcing files do each subset as exactly done for the root model. A specific tool to ensure proper geometric matching of sub-domains is available in the pre-processing package.

The use of AGRIF is fully compatible with sea-ice (LIM), passive tracer and biogeochemical (TOP/PISCES) components. Grid adaptivity (i.e. the capacity to having moving nests according to a time-varying criterion) is potentially handled by the library, but not allowed yet.

Configuration Manager

NEMO Configuration Manager supports the ability to create new model configurations and applications though a suite of numerical procedures, aiming to define the main components of a NEMO-based configuration and exploiting new numerical modeling capabilities.
The tool helps an ocean modeller at defining input files – geometry, forcing, initial conditions, boundary conditions – for NEMO regional configurations.

SIREN is the first release of the configuration management tool, available since 2016, allowing scientists to define their own regional configuration embedded in a wider one, through the creation of:

  1. Regional grid coordinates, refined from an ORCA grid
  2. Regional grid bathymetry, extracted or refined from parent one, or merged with parent grid bathymetry at boundaries
  3. Initial ocean state from coarse grid restart or standard outputs
  4. Boundary conditions from parent configuration output fields.

You can find more informations on the page ‘Setup a new configuration‘ in the forge wiki.