- Created by Marcus Koehler, last modified on Dec 19, 2025
Please note that nudging in OpenIFS is an experimental research tool and therefore may change between model versions. We are describing on this page the use of the NAMRLX nudging scheme in the IFS.
The model source code permits nudging of a number of model fields. In practice, for simulating synoptic scale meteorology, we only relax towards analysed relative vorticity and temperature, and we will only provide support for nudging for these two parameters.
1. Newtonian Relaxation
OpenIFS uses initial and boundary conditions to calculate its own model dynamics, i.e. meteorological variables that are resolved on the grid scale. It is however possible to constrain the model dynamics with external data. Newtonian relaxation, sometimes referred to as "nudging", is a simple form of data assimilation which allows the user to constrain or "force" the model's meteorological fields with reanalysis data. This is sometimes referred to as running the model in "offline" mode. In nudged configuration the model's dynamics is continually nudged towards the meteorological reanalysis independent of the run length of the experiment.
This method relaxes the model state towards gridded re-analysis data (or towards output from another atmospheric model, or gridded observational data) by adding a non-physical relaxation term to the model equations (Jeuken et al., 1996). In the equation below X represents a prognostic model variable and Fmodel the model forcing which determines the evolution of X. The relaxation term G (Xobs - X) includes the relaxation coefficient G (in s-1) which determines the "tightness" of the nudging.
\[ \frac{\partial X}{\partial t} = F_{model}(X) + G(X_{obs} - X) \]This method can be useful, for instance, in sensitivity studies which aim to isolate the model physics or chemistry while preventing feedbacks to the model dynamics. Another example for its use is to align a climate model simulation closer to historic meteorology for comparison with measurements.
1.1. The NAMRLX code in the IFS
The IFS contains several codes that facilitate nudging/relaxation. The code which is described here is controlled by the NAMRLX namelist in fort.4.
Some of the variables that the models can use for nudging are in spectral space, others are in grid point space. Since cycle 43R1 of the IFS the scheme makes use of NRLXSMAX, which limits the nudging of spectral fields up to a certain spectral wave number after which there is a sharp cut-off.
It is possible to impose a geographical and vertical regional limitation to where nudging is applied. Given the global nature of spectral data, the way it works is that first the nudging is applied in spectral space (up to NRLXSMAX). Then the nudged fields are transformed to grid point space, where the original un-nudged fields are also available. The final field is then a combination of the nudged field within the defined geographical nudging region, and the original (un-nudged) field elsewhere. There is some smoothing applied across a transition zone, and namelist variables control the width of this transition.
By default, IFS reads nudging information every 6 hours during the model experiment.
2. Planning the Experiment
For the preparation of a nudged model experiment the following points should be considered:
2.1. Nudged variables
The current model version permits nudging of the following 9 prognostic variables that are stored in two external forcing files (one gridpoint file and one spectral file) for each nudging step:
- Vorticity,
- divergence,
- temperature,
- surface pressure,
- specific humidity,
- ice water contents,
- liquid water contents,
- cloud fraction,
- and stratospheric ozone.
Please note that we only support nudging of relative vorticity and temperature, hence the OpenIFS Data Hub only generates relaxation files with these two parameters.
The decision on which of these variables should be nudged will depend on the scientific objectives of the experiment. In most applications, it will not be necessary to nudge all the variables, however as a minimum we recommend to constrain vorticity and temperature.
In this context disk space usage will become a consideration as an increasing number of nudged variables will result in larger forcing files. At T255L60, for instance, forcing files that contain all 9 variables require 70 MB for each time step (47 MB for the grid point file and 23 MB for the spectral file). This amounts to approximately 8.5 GB for one month with 6-hourly nudging.
2.2. Relaxation coefficients
The relaxation coefficient is set in the NAMRLX model namelist as parameter XLRX??, with ?? referring to the nudged variable (see the relevant Section below). The units for the relaxation coefficient are "per hour". Therefore a value of 0.5 would correspond to 2 hours, and 0.0833 would be 12 hours as a timescale during which the model is nudged to the forcing value.
As a default all relaxation coefficients are initially set to 0.5 (2 hours) which results in a relatively "tight" nudging to the external data. Satisfactory results have previously been achieved with 0.0833 (12 hours) when nudging temperature and vorticity.
The relaxation values can be adjusted for each parameter and each experiment according to its objectives. Frequently the best results are obtained when different relaxation coefficients are used, specific to each nudged variable. The external analysis data is updated every six hours and the model linearly interpolates in time between these data points. Too tight nudging can result in unrealistic behaviour in the freely calculated model variables.
2.3. Grid resolution
One of the strengths of OpenIFS is its ability to operate with a wide range of grid resolutions. The model is however not capable of spatial interpolation of the gridded forcing file data. Therefore the forcing files need to be prepared at the horizontal and vertical resolution of the model experiment. ERA-Interim re-analyses have a native horizontal resolution of T255 (79 km globally) with 60 levels and ERA-5 re-analyses are at T639 (31 km globally) with 137 levels. ECMWF can provide a workflow to generate relaxation forcing files at the desired horizontal resolution and vertical level number. Please contact OpenIFS support if you need forcing files generated.
2.4. Data storage
The spectral and gridpoint forcing files need to be accessible to the model at runtime, i.e they must not be read from an offline tape archive. Depending on the length of the model experiment (e.g. for a seasonal forecasts or in climate model configuration) it is conceivable that several months or even years of 6-hourly forcing files need to be prepared. This will have implications for the available disk space. At T255 with 60 levels one year of forcing files can require up to 100 GB disk space (depending on the number of variables the files contain). Once the forcing files have been created their long-term storage may need to be considered.
3. Relevant Source Code Files
In OpenIFS 48r1 the source code required for nudging is included by default. This section points out some of the relevant files within the source code, however in order to simply enable nudging this part is not essential to understand as the only changes that need to be applied are in the namelist file. The following part How to Enable Nudging describes the required namelist changes.

In order to control the model's nudging configuration the following files of the source code are relevant:
namrlx.nam.h– the namelist block which appears in the fort.4 file. These variables allow to customise the model's nudging behaviour without recompiling the model source code.yomrlx.F90– in this module the variables in the namelist block are defined.surlx.F90– this is the setup routine for the namelist variables, which includes their initialisation with default values and consistency checks.updrlxref.F90– this subroutine updates the reference fields for the relaxation.
The nudging code in OpenIFS 43r3v1 differs from that in IFS CY43R3 insofar that the variables CLPSHRLX and CLPGGRLX have been added to the namelist. These two variables allow to specify the location of the directory with the forcing files on the file system. If these are not set then the model will expect to find the forcing files in the experiment directory.
The relaxation to the analyses involves code in further routines (e.g. yomsrlx.F90, relaxgp.F90, stepo.F90, stepo_oops.F90, su0yomb.F90, and updtim.F90) however this part does not need to be changed if the existing nudging capability of the model is to be used. The code in relaxgp.F90 performs the actual relaxation in grid point space.
4. How to Enable Nudging
To enable nudging the namelist NAMRLX will need to be included in the namelist file fort.4. No further modifications should be necessary.
Keep the relaxation files that are required for your experiment in a subdirectory, e.g. here named rlxml, in your experiment directory (where the initial data files are located). Alternatively, create a symbolic link rlxml@ that points to the location of the relaxation files.
The values below show one possible configuration reflecting standard settings. When nudging towards temperature and vorticity the following namelist should be added:
&NAMRLX
LRLXG=true,
LRLXVO=true,
LRLXTE=true,
XRLXVO=0.0833,
XRLXTE=0.0833,
CRLXPATHSH="rlxml/",
/
4.1. Overview of namelist settings
Below we show a more comprehensive example of the variables and switches that are available in NAMRLX.
As described previously, the question of which variables should be relaxed to the external analysis, the model grid domain where relaxation is applied, and the tightness of the nudging, controlled by the relaxation coefficient, are very much dependent on the objective of the model experiment.
&NAMRLX
LRLXG=true, ! Master switch to enable nudging
LRLXVO=true, ! vorticity
LRLXDI=false, ! divergence
LRLXTE=true, ! temperature
LRLXQ=false, ! specific humidity
LRLXQL=false, ! liquid water
LRLXQI=false, ! ice water
LRLXQC=false, ! cloud fraction
LRLXLP=false, ! log surf pressure
LRLXO3=false, ! ozone
NFRLXG=2, ! number of analysis time steps in memory
NFRLXU=6, ! interval between two references fields (in hours) - this is equal to NFRHIS in nudging
NRLXLMIN=1, ! top model level for nudging
NRLXLMAX=60, ! bottom model level for nudging (for entire vertical domain set either to 60, 91, or 137)
NRLXLMINU=-1, ! uppermost model level for velocity variables (-1 sets to NRLXLMIN)
NRLXLMAXU=-1, ! lowermost model level for velocity variables (-1 sets to NRLXLMAX)
XRLXVO=0.0833, ! relaxation coefficients
XRLXDI=0.5,
XRLXTE=0.0833,
XRLXQ=0.5,
XRLXO3=0.5,
XRLXLP=0.5,
ALATRLX1=90, ! latitude domain for nudging
ALATRLX2=-90,
ALONRLX1=0, ! longitude domain for nudging
ALONRLX2=360,
AXRLX=-0.5, ! smoothing parameter for lon, lat and in the vertical
AYRLX=-0.5,
AZRLX=1.0,
CRLXPATHSH='../rlxml/sh/', ! relative path to spectral forcing files
CRLXPATHGG='../rlxml/gg/', ! relative path to gridpoint forcing files
/
5. References
- Jeuken, A., et al. (1996) On the potential of assimilating meteorological analyses in a global climate model for the purposes of model validation, J. Geophys. Res., 101, 16,939–16,950. doi:10.1029/96JD01218.