New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
2021WP/IOM-02_Ford_OBS – NEMO
wiki:2021WP/IOM-02_Ford_OBS

Version 3 (modified by dford, 3 years ago) (diff)

--

Name and subject of the action

Last edition: Wikinfo(changed_ts)? by Wikinfo(changed_by)?

The PI is responsible to closely follow the progress of the action, and especially to contact NEMO project manager if the delay on preview (or review) are longer than the 2 weeks expected.

  1. Summary
  2. Preview
  3. Tests
  4. Review

Summary

Action Improvements to OBS interface
PI(S) David Ford, Matt Martin, Davi Carneiro, Rob King
Digest Make OBS interface more generic, add observation operator for SI3 and surface currents, improve SLA observation operator
Dependencies None
Branch source:/NEMO/branches/{YEAR}/dev_r{REV}_{ACTION_NAME}
Previewer(s) Giovanni Ruggiero
Reviewer(s) Giovanni Ruggiero
Ticket #2700

Description

Error: Failed to load processor box
No macro or processor named 'box' found

There are four strands to this work, the first being the most major. The remaining three are more minor and reliant on the first, hence being grouped together here. A different PI will take the lead on each.

  1. Make the NEMO observation operator interface more generic (David Ford)
  2. Implement assimilation interface for SI3 for sea-ice concentration and thickness required for the Met Office and ECMWF systems in OBS and ASM (Davi Carneiro)
  3. Implement observation operator for surface velocity data (Matt Martin)
  4. Improvements related to SLA data in OBS and ASM and other fixes to the OBS code which we have made in a 3.6 branch (Rob King)

Each is described in more detail below:

  1. Currently, the OBS interface in diaobs.F90 has separate logical switches for each observation type that could be run through the observation operator. Each then has separate associated variables specifying input file names and various options. If extra observation types are to be added, for instance for biogeochemistry, this approach will quickly become unmanageable for both users and developers. Furthermore, there is limited flexibility in terms of grouping multiple variables from the same observation source (e.g. Argo, BGC-Argo, ocean colour). Currently, temperature and salinity profiles and U & V velocity profiles must be grouped together, other variables must be separate. This work aims to make it much simpler to add new observation types, with as little observation-type specific code as possible - ideally, just an entry in a CASE statement specifying which model variable to associate it with. Furthermore, it will be possible to group multiple variables in a single (set of) input file(s) with ease. The plan is to allow users to specify multiple namelists, each specifying a (set of) input file(s), which variables are to be found in them, and any associated options such as surface/profile, interpolation method, observation footprint, etc. This is similar to how the BDY interface works, allowing users to specify options for multiple lateral boundaries. It is also similar to recent developments to NEMOVAR.
  1. This will add sea ice concentration and thickness OBS and ASM code, following what has previously been done for CICE and LIM3. If (1) is successful, the required OBS changes should be minor.
  1. This will add an observation operator for surface currents. Again, if (1) is successful the required changes should be minor.
  1. This will implement improvements to the handling of sea level anomaly observations.

Implementation

Error: Failed to load processor box
No macro or processor named 'box' found

The main changes will be to diaobs.F90, which is the main OBS interface, with some more minor changes to obs_write.F90. If appropriate, a new module will be created with routines related to namelist reading and matching observation types to model variables, separating out some of the current functionality of diaobs.F90.

Documentation updates

Error: Failed to load processor box
No macro or processor named 'box' found

Update description of OBS interface.

Preview

Error: Failed to load processor box
No macro or processor named 'box' found

...

Tests

Error: Failed to load processor box
No macro or processor named 'box' found

...

Review

Error: Failed to load processor box
No macro or processor named 'box' found

...