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.
2009WP/2009Stream1 – NEMO
wiki:2009WP/2009Stream1

Version 4 (modified by rblod, 15 years ago) (diff)

--

2009 Stream 1 : User Interface


Last edited Timestamp?


This is a continuing stream for which, in 2008, we have simplified the forcing interface (SBC module + on-the-fly interpolation) and the TOP interface. The major actions in 2009 will be to introduce an easy and efficient way to add/remove model output fields (new IOM for output) and the starting of 2 years work on a simplification of the new configurations settings (Configuration manager). The actions of the stream are:

Substream 1.1: IOM for outputs


Description and participants

The strategy defined is built on the use of catalogues that are dynamically created and written once for all at the end of step. The temporal mean is no more performed in the IO library, but is done in NEMO. The write itself will use the new IOIPSL module, or a dimg module. There is many improvements associated with this strategy. One example, a call to iom_put (i.e. a write into a catalogue) can be done anywhere in the code. This will greatly improve the code readability and will allow easy output of local variable.
Work :

(1) beta version expected in mid-February for the ocean (v3.2)
(2) Add a user-friendly interface (namelist or xml file) + a documentation (v3.2)
(3) introduce IOM in the other components (LIM, TOP) (v3.2)
(4) assessment of IOM behaviour on mpp computers (v3.3)

Advancement

(1) beta version expected in mid-February for the ocean (v3.2) : OK
(2) Add a user-friendly interface (namelist or xml file) + a documentation (v3.2) : OK
(3) introduce IOM in the other components (LIM, TOP) (v3.2) : OK
(4) assessment of IOM behaviour on mpp computers (v3.3) : to be done


Substream 1.2: NetCDF4 IO options


Description and participants

NetCDF4 offers the opportunity to employ dataset chunking and compression algorithms to greatly reduce the volume of data written out by NEMO without any loss of precision. NetCDF4.0.1 is the latest, full release of the library and this has been successfully tested for use in NEMO by NOCS. Even with severe tests, involving ORCA025 configurations with biogeochemical tracers, there are no run-time performance issues of any concern. In fact on some I/O limited clusters a speed enhancement is achieved because the benefits of writing out fewer data outweigh the computational costs of in-memory compression. The great benefit though is in the reduction of filesizes, for example:

File name   Disk usage for netCDF3.X (MBytes) Disk usage for netCDF4.0 (Mbytes) Reduction factor
*grid T*.nc         1500                                586                        2.56
*grid U*.nc          677                                335                        2.02
*grid V*.nc          677                                338                        2.00
*grid W*.nc         3300                                929                        3.55
*icemod*.nc          208                                145                        1.43

Table 11: Effect of chunking and compression on the size of the NEMO 3.0 output files.
For each file name the usage is the sum of all 221 individual processor output files.

The code changes required to use netcdf4 within NEMO are relatively straight-forward and involve minor changes to: iom_def.F90, iom.F90, iom_nf90.F90 and restart.F90 in the NEMO code and: histcom.f90 in IOIPSL. Changes are also required in the relevant makefiles to link in the netcdf4 library (-lnetcdff -lnetcdf) and the HDF5 and compression libraries that underlie netcdf4 (-lhdf5_fortran -lhdf5 -lhdf5_hl -lz). The need to make changes to IOIPSL routines makes providing a solution which supports both netcdf3 and netcdf4 difficult (preprocessor keys are not used in IOIPSL). This requires some discussion. The uptake of netcdf4 in NEMO may also be restricted by slow uptake of 3rd party software providers. Any compilable code can simply be relinked to the new libraries. Existing utilities will then be able to read netCDF4 files (and write netCDF3 files). Code changes are only necessary if it is required to write new netCDF4 files. However, commercial packages, such as IDL, will need netCDF4 support provided by the vendor (planned for early 2010). Other packages may fare better; NOCS has been able to compile netCDF4-compatible versions of Ferret and a netCDF4-compatible version of the mexnc toolkit for use with matlab (versions 2008a onwards). Details are available on request.

Advancement


Substream 1.3 : Configuration manager


Description and participants

Create the configuration tools (CFG-tools): user-friendly interface, the tools, and the documentation associated to the creation of a new model configuration, and especially configurations defined as a zoom of an ORCA configuration. The tools include the generation of a grid, a bathymetry, an initial state, a forcing data set, and open boundary conditions. Manpower will be demanded in the My_Ocean FP7 European project (MCS) to build the tool.
Work:

(1) collect the existing tools (OPABAT, ROMS-tools, etc
(2) Define the structure and implement a 1st version of the CFG-tools. (v3.3)

Advancement

beginning August the first, within MyOcean? (Brice Lemaire position)


Substream 1.4 :bio interfaces


Description and participants

Interface for other bio-models in TOP

Advancement


Substream 1.5 : reference manuels


Description and participants

LIM and TOP (TRP) paper documentation using Latex (similar to the NEMO ocean engine documentation.
Work:

(1) write TRP documentation (2 w) (v3.3)
(2) participate to the writing of LIM3 documentation realised at UCL (1 w) (v3.3)
(3) review of the TRP and LIM3 documentation by NOCS team (2 w) (v3.3)

Advancement


Substream 1.6 :Reference configurations


Description and participants

Add new standard configurations to be used as NEMO tutorial, developer validation and benchmark purposes in order to illustrate the existing system potentiality.
Work:

(1) illustration of the on-the-fly interpolation (v3.3)
(2) illustration of the different type of vertical coordinate (v3.3)
(3) illustration of AGRIF zoom with sea-ice (v3.3)
(4) illustration of off-line tracer computation (v3.3)

Advancement