Version 4 (modified by jpaul, 9 years ago) (diff) |
---|
Objectives
Create a configuration manager demonstrator. Evaluate the requirements of a Configuration Manager and define a development plan to realise it.
Existing tools
MERCATOR have developed SIREN, a tool that allows users to create regional configuration from an existing larger scale configuration. The regional configuration appears embedded within the parent configuration by merging the coarse bathymetry of the parent configuration with the finer resolution bathymetry of the regional configuration at the boundaries. This tool has been recently demonstrated in a regional set up of the Indonesian archipelago , INDESO, employing the ORCA12 grid.
NERC have developed generic method to provide boundary data for use by BDY code in NEMO. The original code for these tools was written in Matlab and had been written in an ad-hoc manner to service projects as and when the need arose. It is currently in the process of being formalised and ported to Python for wider distribution and to facilitate any future development.
Mercator: current status
a new set of Fortran routines was developped from scratch in order to:
- allow user to choose method to be used for each variable (interpolation...)
- manage tracers/ice/dynamics data (to be tested)
- be AGRIF compliant (to be tested)
- allow to create a band of latitude
- allow to use odd and even refinment factor
This new SIREN is comprised of five Fortran programs that create the input files required for setting up and running a regional NEMO configuration (see below). It allows even or odd refinement from one ORCA grid to another. At present there are three interpolation methods available: cubic, linear or nearest. see documentation (coming soon) for more information.
These routines have also been successfully tested with several compilers: ifort(version 12.0.4), gfortran(version 4.7.2 20121109), and pgf95(version 13.9-0) compilers.
By the end of the year a final validation of the code will be performed and documentation on SIREN written.
What follows is a summary of each of the routines employed in SIREN. For each, a NEMO-style namelist is provided that contains information about: the coarse grid coordinate file, the fine grid coordinate and bathymetry, refinement factor and files of variables to be used.
create_coord
method: Variables are extracted from the input coordinates coarse grid file, and interpolated to create fine grid coordinates files.
Note: interpolation method could be different for each variable
how to: ./SIREN/bin/create_coord create_cood.nam
create_bathy
method: Bathymetry could be extracted from fine grid Bathymetry file, or interpolated from coarse grid Bathymetry file.
how to: ./SIREN/bin/create\_bathy create\_bathy.nam
merge_bathy
method: Coarse grid Bathymetry is interpolated on fine grid. Then fine Bathymetry and refined coarse bathymetry are merged at boundaries, using a weighting function dependant on distance from the boundary and boundary size.
how to: ./SIREN/bin/merge\_bathy merge\_bathy.nam
create_restart
method: Variables could be extracted from fine grid file, interpolated from coarse grid file or restart file. Then they are split over new decomposition.
Note:method could be different for each variable
how to: ./SIREN/bin/create_restart create_restart.nam
create_boundary
method: Variables are interpolated from coarse grid file on fine grid boundaries.
Note: method could be different for each variable
how to: ./SIREN/bin/create_boundary create_boundary.nam
SIREN limits
SIREN currently can not: -create a global configuration -handle north fold -change number of vertical levels -change z-coordinates to s-coordinates -change grid (ex: ORCA grid to regular grid)
For more information contact julien Paul (julien.paul@…)
NERC: current status
Both the Matlab and Python code currently have the capability to produce boundary data for the BDY open boundary conditions in NEMO v3.2 onwards. The code works using a NEMO-style namelist to initiate BDY configuration. Current features of the code include:
- Automatic identification of BDY points from a user chosen or predefined mask.
- KDTree nearest neighbour matchup between the identified BDY points and the associated locations on source grid.
- Data are first interpolated (horizontally) from source grid to destination BDY points using: Bi-linear, Guessian or nearest neighbour interpolation. Then in the vertical: linear interpolation only at present.
- Output in NEMO v3.2/3.3 and 3.4/3.6 forms.
- Time stretching used to accommodate mismatch in source and destination calendars.
- Optional smoothing along the boundary.
- Handles rotation of vector quantities and can accommodate rotated grids (e.g. pan arctic).
- At present is only coded to use TPXO7.2 inverse tidal model to provide tidal boundary conditions
- Can produce generic tracer boundary conditions (e.g. for ecosystem boundary conditions).
Future code development in Python will provide users with a generic method to access remote non-native data sets such as the climate model databases from CMIP3 and CMIP5 that were used in recent IPCC reports. \newline
For more information contact james Harle (jdha@…)