...
Section | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
How to configure restarts
The namelist NAMRES
controls model restarts (see ifs/namelist/namres.h
). The most useful variables in this namelist are: NFRRES
and NRESTS
.
...
The first value for NRESTS must indicate the number of valid restarts required and be of the same sign as the rest of the entries. See examples below.
Examples
Code Block | ||||
---|---|---|---|---|
| ||||
&NAMRES NFRRES=-24, / |
...
The value of NFRRES is normally set to 1 if using NRESTS. If NFRRES is set > 1 it is multiplied to the restart time. In the above example, if NFRRES was changed to 2, the model would still give 3 restart files but this time at 96hrs, 240hrs and 384hrs.
Files created
Restart files
The output files all begin with the name 'srf'. One file will be created per MPI task. The files are written as unformatted binary (not GRIB) in order to preserve precision.
The file name includes a date as : srfddddhhmm, where dddd is the day number of the run, hh is the hour and mm is the minutes. e.g. srf00000120.0002 would be for day 1 and 20mins into the run written from MPI task 2.
Wave model restart files
If the wave model is active, it writes its own restart files (the wave model acts as a sub-model inside OpenIFS). The wave model is active if the logical variable LWCOU is set .true. in the model namelist fort.4.
The wave model restart files begin with the names 'LAW' and 'BLS', each followed by a date substring. A small text file 'waminfo' is also created.
Deletion of old restart files
By default, old restart files are not deleted which might be a concern at high resolutions. One . This might cause problems with limited file quotas e.g. one restart file at T1279 is approx 500Mb when using 128 MPI tasks, giving a total restart file requirement of approx 64Gb per output instance. Changing
To change this behaviour is not possible via NAMRES
. Instead, edit the namelist file ifs/setup/sures.F90
fort.4
and change the default value of LDELRES
to TRUE
. This will be changed for a future release of OpenIFS.e.g.
Code Block |
---|
&NAMRES
LDELRES=.true.,
/ |
Restart namelist
A file, 'rcf' will be created by the model at each timestep when the restart files are written. This file contains the NAMELIST NAMRCF that informs the model what it needs to know to restart the model.
Info |
---|
If the file rcf is present in the same directory as the restart files (srf*), the model will always assume it is doing a restart. |
Do not delete this file, otherwise the model will be unable to restart - regardless of whether the actual restart files (those beginning with srf) are present.
Conversely, if you don't want to run a restart but want to repeat the run, do delete rename the rcf file (e.g. rcf.old) or delete it (and the srf files). If you don't the model will attempt to continue the run according to the namelist in the rcf file as this takes precedence over the namelists read from fort.4.
Changing location or name of restart files
The restart file by default is written to the same directory as the model grib output files. The files all begin with the prefix 'srf'.
To change this prefix or the directory the files are written to, use the CIOSPRF
character variable in the namelist NAMIOS
:
Code Block |
---|
&NAMIOS
CIOSPRF='./myrestarts/srf',
CFRCF='./myrestarts/rcf',
/ |
Note that the location of the 'rcf' file, which contains the restart namelist, is also changed for consistency (recommended).
Continuing the forecast
Namelist changes
There is only 1 change required to the model namelist, fort.4, in order to continue the forecast.
Increase the value of NSTOP
in NAMCT0
to ensure the model runs past the timestep of the last restart. If this is not done the model will start but see that NSTOP
matches the time of the restart it's using and immediately finish.
Note the model will still expect to find the initial files in the experiment directory. It reads these files to get information about the grid.
How to use a specific restart
This can be done by careful editing of the NAMELIST NAMRCF
contained in the 'rcf' file and best explained by an example. In order to restart successfully you must have all the restart files for the model tasks; there is one restart file per task.
...
- if restarting from an earlier restart, the model will overwrite any existing output and restart files for the subsequent timesteps.
- always keep the 'rcf' and 'srf' files together. The rcf namelist contains important information about the grid decomposition and mass fixes to ensure an exact restart.
Model code
The key subroutines for restarts are:
monio.F90
- sets up the internal arrays to determine write times.
wrresf.F90
- calls the I/O subsystem to write out the restart files. If you add more arrays to the model and want them to appear in restart files, change this routine.
reresf.F90
- calls the I/O subsystem to read the restart files. Counterpart to wrresf.F90. Any changes to wrresf must be mirrored by changes to reresf.F90
...
...
.
...
Excerpt Include | ||||||
---|---|---|---|---|---|---|
|