You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 21 Next »


Types of model output

 

This page describes how to control and change options for the model output. The model is capable of producing many fields on different vertical coordinates and surface quantities.

The model produces 3 basic types of output:

Prognostic variables: these are output at controllable write times. There is no provision in the model to accumulate averages.

Diagnostics variables: these are also output at specified write times, though there are some exceptions like wind gust or maximum and minimum 2m temperature which represent a max/min value over a period of time.

Cumulative variables or fluxes: these are typically fields such as precipitation which are accumulated from the start of the model run.

The sections below describe how to change and control the model output in more detail. Please contact openifs-support@ecmwf.int in case of difficulty or any questions.

Diagnostics & postprocessing software: Full-Pos

Full-Pos is the name of the code inside OpenIFS that produces the model output and 'in-model' diagnostics. We gratefully acknowledge permission from MeteoFrance to include it in OpenIFS.

More documentation about Full-Pos is available through the links below, though note that not all of the options discussed apply to OpenIFS which does not support any stretched grids or Arpege format output.

ECMWF use additional namelist variables to control output as described in the sections below.

GRIB output files

OpenIFS only produces GRIB format files as output and they are named similarly to the input files. e.g.

% ls ICM*+*
ICMGGepc8+000000  ICMGGepc8+000100  ICMSHepc8+000000  ICMSHepc8+000100

The output files all begin with 'ICM' and end in '+'00xxxx'. The number on the end refers to the timestep.

ICMGG files contain gridpoint fields, ICMSH files contain spectral fields.

The model can output at regular or irregular intervals according to the namelist settings.

OpenIFS appends to existing files

The model I/O will append to existing files and not overwrite existing files of the same name. If the model is run twice without moving the output files, the same data would be written to the previous output. The script that runs the model should take this into account and delete or move the files. See the run script provided.

GRIB parameters

Model output variables are specified in the namelists by using GRIB field codes. GRIB is a WMO standard concise data format.

There are two versions of the GRIB format, known as GRIB edition 1 (released in 1994) and GRIB edition 2 (released in 2003).

The multilevel fields in OpenIFS (sometimes called 'upper air' fields) are written as GRIB edition 2 messages, whilst other fields are written as GRIB edition 1. GRIB parameter IDs are the same in GRIB1 and GRIB2 (this is why the environment variable GRIB_SAMPLES_PATH in the example job script points to a file '.../ifs_samples/grib1_mlgrib2; the 'mlgrib2' means multilevel fields are GRIB2).

OpenIFS mostly uses grib codes from table 128 and will be 3 digits. If you see 6 digit codes specified in a model namelist, the first 3 digits refer to the GRIB table and the last 3 digits are the field code.

A complete list of GRIB parameter IDs is available at: http://apps.ecmwf.int/codes/grib/param-db. NOTE!  Not all grib codes listed here can be output by the model. Please see tables below.

A list of the GRIB fields in the operational datasets from ECMWF can be found here in the description of the HRES forecast output.

Controlling output with namelist NAMFPC

This is the namelist for controlling the post-processing. The model will not output any fields unless requested in the appropriate namelist variable.

If you find the model output does not provide what you need, please contact openifs-support@ecmwf.int who can advise on the namelist settings to use.

Model variables may be output as 3D or 2D, either gridpoint or spherical harmonic forms and on model, pressure, theta, PV or height levels.

Gridpoints fields are output to the ICMGG files, spectral fields are output to the ICMSH files.

The following tables shows what variables are output on which levels and in what form:

3D dynamics output fields available

These grib codes can be used in the namelist NAMFPC for the following variables (see below for more details of these variables):

MFP3DFS - fields on model levels,            MFP3DFP - fields on pressure levels,
MFP3DFT - fields on theta levels,              MFP3DFV - fields on PV levels,
MPF3DFH - fields on height levels

 

All tables are sortable by column, click in the header column.

Long nameShort nameUnitsFormatGRIB codeDescription
Potential temperatureptKSpectral3-
Montgomery geopotentialmontm2s-2Spectral53Takes the role of geopotential in an isentropic vertical coordinate
PressurepresPaSpectral54-
Potential vorticitypvK.m2.kg-1.s-1Gridpoint60-
Specific rain water contentcrwckg.kg-1Gridpoint75Grid-box mean specific precipitating rain water content from stratiform cloud (mass of condensate / mass of moist air).
Specific snow water contentcswckg.kg-1Gridpoint76Grid-box mean specific snow water content(representing aggregated ice particles) from stratiform cloud (mass of condensate / mass of moist air).
Eta-coordinate vertical velocityetadots-1Spectral77

Total time derivative of the hybrid vertical coordinate η. This is the vertical velocity used in the vertical advection in the ECMWF model, because eta is used as vertical coordinate.

Geopotentialzm2s-2Spectral129At the surface, equivalent to orography
TemperaturetKSpectral130-
U component of windum.s-1Spectral131-
V component of windvm.s-1Spectral132-
Specific humidityqkg.kg-1Gridpoint133Grid box mean (mass of water vapour / mass of moist air)
Vertical velocitywPa.s-1Spectral135Pressure vertical velocity dp/dt. In the model equations it is usually denoted by the Greek letter omega.
Vorticity (relative)vos-1Spectral138-
Divergenceds-1Spectral155Relative divergence.
Relative humidityr%Spectral157Relative humidity is defined with respect to saturation of the mixed phase, i.e. with respect to saturation over ice below -23C and with respect to saturation over water above 0C. In the regime in between a quadratic interpolation is applied.
Ozone mass mixing ratioo3kg.kg-1Gridpoint203-
Specific cloud liquid water contentclwckg.kg-1Gridpoint246Grid-box mean specific cloud liquid water content (mass of condensate / mass of moist air)
Specific cloud ice water contentciwckg.kg-1Gridpoint247Grid-box mean specific cloud ice water content (mass of condensate / mass of moist air)
Cloud covercc(0-1)Gridpoint248

Horizontal fraction of the grid box covered by cloud

2D dynamical output fields available

It is strongly recommended these fields are always enabled in the output in order for the post-processing to work correctly. Note these fields can also be output as gridpoint fields in MFPPHYS.

These GRIB codes are for use with the NAMFPC variable: MFP2DF.

Long nameShort nameUnitsFormatGRIB codeDescription
Geopotentialzm2.s-2Spectral129 Surface orography.
Surface pressurespPaSpectral134-
Logarithm of surface pressurelnspdimensionlessSpectral152-

2D physical output fields available

These variables are for the MFPPHY variable in namelist NAMFPC.

Note that some fields are accumulated from the beginning of the forecast.

Long nameShort nameUnitsFormatGRIB codeDescription
Sea-ice coverci(0-1)Gridpoint31Fraction of grid box that is covered with sea ice (kept constant during forecast)
Snow albedoasn(0-1)Gridpoint32Albedo of the snow covered part of the grid box
Snow densityrsnkg.m-3Gridpoint33Snow mass per unit of volume
Sea surface temperaturesstkKGridpoint34Temperature of the sea water (bulk SST), as specified by external analysis (skin temperature is equal to bulk SST before 01/10/2008)
Ice temperature layer 1istl1KGridpoint35Sea ice top layer, 0-7 cm
Ice temperature layer 2istl2KGridpoint36Sea ice layer 2: 7-28 cm
Ice temperature layer 3istl3KGridpoint37Sea ice layer 3: 28-100 cm
Ice temperature layer 4istl4KGridpoint38Sea ice layer 4: 100-150 cm
Volumetric soil water layer 1swvl1m3m-3Gridpoint39Top soil layer: 0-7 cm
Volumetric soil water layer 2swvl2m3m-3Gridpoint40

Soil layer 2: 7-28 cm

Volumetric soil water layer 3swvl3m3m-3Gridpoint41Soil layer 3: 28-100 cm
Volumetric soil water layer 4swvl4m3m-3Gridpoint42Soil layer 4: 100-289 cm
Snow evaporationesm of water
equivalent
Gridpoint44Accumulated field. Evaporation from snow averaged over the grid box (to find flux over snow, divide by snow fraction).
Snow meltsmltm of water
equivalent
Gridpoint45Accumulated field. Melting of snow averaged over the grid box (to find melt over snow, divide by snow fraction).
10 metre wind gust since previous post-processing10fgm.s-1Gridpoint49Maximum 3 second wind at 10 m height as defined by WMO. Parametrization represents turbulence only before 01/10/2008; thereafter effects of convection are included. The 3 s gust is computed every time step and the maximum is kept since the last postprocessing.
Large-scale precipitation fractionlspfsGridpoint50Accumulated field. Fraction of the grid box that is covered by large-scale precipitation.
Downward UV radiation at the surfaceuvbJ.m-2Gridpoint57Accumulated field. Ultra-violet band 0.20-0.44 um.
Photosynthetically active radiation
at the surface
parJ.m-2Gridpoint58Accumulated field. 0.44-0.70 um.

Convective available potential energy

capeJ.kg-1Gridpoint59For computational efficiency CAPE is computed as the vertical integral of excess of equivalent potential temperature of an undilute updraught compared to the saturated equivalent potential temperature of the environment. The results tends to be about 20% higher than the CAPE based on virtual temperature.

Total column liquid water

tclwkg.m-2Gridpoint78Vertical integral of cloud liquid water content
Total column ice watertciwkg.m-2Gridpoint79Vertical integral of cloud ice water content
Maximum temperature at 2 metre in the last 6 hoursmx2t6KGridpoint121 
Minimum temperature at 2 metre in the last 6 hoursmn2t6KGridpoint122 
10 metre wind gust in the 6 hours10fg6m.s-1Gridpoint123 
Surface emissivityemisdimensionlessGridpoint124 
Vertically integrated total energyviteJ.m-2Gridpoint125 
Geopotentialzm2.s-2Gridpoint129Surface orography
Total column watertcwkg.m-2Gridpoint136Vertically integrated total water (vapour + cloud water + cloud ice)
Total column water vapourtcwvkg.m-2Gridpoint137Vertically integrated water vapour
Soil temperature level 1stl1KGridpoint139

Top soil layer: 1-7 cm.

Snow depthsdm of water
equivalent
Gridpoint141 
Large-scale (stratiform) precipitation (rain+snow)lspmGridpoint142Accumulated field. Precipitation from the cloud scheme (which also takes detrained water/ice from the convection scheme as input).
Convective precipitation (rain+snow)cpmGridpoint143Accumulated field. Precipitation from updraughts in the convection scheme.
Snowfallsfm of water equivalentGridpoint144Accumulated field. Convective + stratiform snowfall.
Boundary layer dissipationbldJ.m-2Gridpoint145Accumulated field. Conversion of kinetic energy of the mean flow into heat by turbulent diffusion (vertically integrated).
Surface sensible heat fluxsshfJ.m-2Gridpoint146Accumulated field. Exchange of heat with the surface through turbulent diffusion (by model convention, downward fluxes are positive).
Surface latent heat fluxslhfJ.m-2Gridpoint147Accumulated field. Exchange of latent heat with the surface through turbulent diffusion (by model convention, downward fluxes are positive)
Charnock parameterchnkdimensionlessGridpoint148Charnock parameter as returned by the wave model. Note wave model must be active.
Mean sea-level pressuremslPaSpectral151 
2 metre dewpoint temperature2dKGridpoint168 
Soil temperature level 2stl2KGridpoint170Soil layer 2: 7-28 cm
Soil temperature level 3stl3KGridpoint183Soil layer 3: 28-100 cm.
Total precipitation (rain+snow)tpmGridpoint228Accumulated field. Convective precipitation + stratiform precipitation (CP +LSP).

 

How to control output frequency

The namelist variables that control the output from the model as it runs are:

Namelist : NAMCT0

LFPOS - this should be set TRUE in order to turn on model output and diagnostics.

NFRHIS   - this is the output frequency of the 'history' files, that is, the model's variables on the model levels.
NFRPOS
  - this is the output frequency of the model variables.

It's recommended these are set the same.

If NFRHIS/NFRPOS are positive, the units are in model timesteps. If a negative value is used, the units are in hours.

NPOSTS & NHISTS - these are integer arrays that control the write times of the history files.  They can be used for non-regular output intervals.

Examples

Regular output at fixed timesteps

NFRHIS=4,
NFRPOS=4,
NPOSTS=0,
NHISTS=0,

This simple example will cause the model to produce history file output every 4 timesteps.

Make sure that NPOSTS/NHISTS is set to zero for regular output because irregular output (NPOSTS /= 0) takes precedence.

For this to work correctly, NFRHIS * timestep must equal an integer number of hours. Output will not work correctly if this isn't the case.

Non-regular output

NFRHIS=1,
NFRPOS=1,
NHISTS(0)=-3,
NHISTS(1:3)=0,-3,-9,
NPOSTS(0)=-3,
NPOSTS(1:3)=0,-3,-9,

The minus sign indicates the units are in hours rather than timesteps. NFRHIS/NFRPOS in this case must be set to 1. The 0th element of NHISTS/NPOSTS determines how many outputs are produced in total by the model, the first to nth elements determine the actual output times (hours in this case because of the negative values used).

In this example, the model will write 3 separate output files at the first timestep (0hrs), 3hrs and 9hrs and then no more regardless of how long the model runs for.

Model, pressure, theta, PV and height level output

Output levels: Model output can be produced on different vertical coordinates: model levels, pressure, height, potential temperature and PV levels. Output on each vertical coordinate is controlled by 3 namelist variables for each type: the number of fields, the grib codes of the fields and the levels to output on.

Namelist NAMFPC: This is the main namelist for the post-processing. Variables in this list can be sensitive to changes as many combinations are possible but not all work.

If you find the model output does not provide what you need, please contact openifs-support@ecmwf.int who can advise on the namelist settings to use.

The *FP3D and *FP2D namelist variables are reserved for the prognostic (or derived) variables from the dynamics/numerics.

The "PHY" group of variables is for variables from the physics routines.

NAMCT0: LFPOS. To enable post-processing make sure LFPOS=true in the NAMCT0 namelist.

 

To output on pressure, PV or theta level output you must also enable output of the 2D spectral orography, surface pressure & log surface pressure.
i.e. also set:
             &NAMFPC
                  NFP2DF=3,
                  MFP2DF=129,134,152,

Model level output

To control model level output the following namelist variables (in NAMFPC) are used:

NRFP3S - list of the model levels on which post-processed output is required.
                e.g. for a 60 level model run where output on all levels was required set:
                NRFP3S=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,
                For a 91 level model, this would give output on the first 60 levels (top level first).

NFP3DFS - number of 3D fields to be output on model levels. Must equal number of entries in MFP3DFS.
MFP3DFS - list of grib codes of 3D variables to be output on model levels. See table above for valid codes.

               e.g
               NFP3DFS = 4,
               MFP3DFS = 130, 135, 138, 155,
               would output the temperature (130), vertical velocity (135), relative vorticity (138), divergence (155) on model levels.

Pressure level output

RFP3P - list of pressure levels (units Pascals) on which post-processed output is required.
e.g.
       RFP3P=100000.,85000.,70000.,50000.,
      
would produce output on 100hPa, 850hPa, 700hPa and 500hPa.

NFP3DFP - number of 3D fields to be output on pressure levels. Must equal number of entries in MFP3DFP.
MFP3DFP - list of grib codes of 3D variables to be output on pressure levels. See table above for valid codes.

Theta level output

RFP3TH - real array in units of Kelvin, of the theta levels on which post-processed output is required.
e.g.
               RFP3TH=330,375,400,450,
               would produce output on 330K, 375K, 400K and 450K levels.

NFP3DFT - number of 3D fields to output to theta levels. Must equal number of GRIB codes listed in MFP3DFT.
MFP3DFT - list of GRIB codes of 3D variables to be output on theta levels. See table above for valid codes.

PV level output

RFP3PV - real array in PV units of the potential vorticity levels on which post-processed output is required.
e.g.
                RFP3PV=2E-6,3E-6,
                would give output on the +/- 2 and +/- 3 PVU surfaces.

NFP3DFV - number of 3D fields to output to PV levels. Must equal number of GRIB codes listed in MFP3DFV.
MFP3DFV - list of GRIB codes of 3D variables to be output on PV levels. See table above for valid codes.

Height level output

RFP3H - real array in units of metres of height levels above orography for which post-processed output is required.
e.g.
           RFP3H=200,1000,5000,
           would give output on 200m, 1km and 5km height surfaces

NFP3DFH - number of 3D fields to output to height levels. Must equal number of GRIB codes listed in MFP3DFH.
MFP3DFH - list of GRIB codes of 3D variables to be output on height levels. See table above for valid codes.

The height level output is not encoded correctly to GRIB and may appear as model 'hybrid' levels.

Example namelist

An annotated example NAMFPC namelist can be downloaded.

Spectral fit of dynamic fields

If you wish to post-process surface or upper-air dynamically fields on pressure, theta or PV levels, it is possible to perform a spectral fit between the vertical interpolation and the horizontal interpolation. Although this adds to the cost of the model, the spectral fit will remove numerical noise generated by the vertical interpolation beyond the model truncation and is normally recommended.

The NAMFPC namelist variables to set are:

LFITP - enables spectral fitting of post-processed fields on pressure levels.

LFITT - enables spectral fitting of post-processed fields on theta levels.

LFITV - enables spectral fitting of post-processed fields on PV levels.

LFIT2D - enables spectral fitting of 2D post-processed fields.

It is not possible to spectral fit upper air dynamic fields on height levels or hybrid model levels because the horizontal interpolations are performed before the vertical interpolation in order to respect the displacement of the planetary boundary layer.

Dynamic fields not represented by spectral coefficients in the model will not be spectrally fitted even if the corresponding namelist variable above is set .TRUE. Post-processed dynamical fields which are represented by spectral coefficients in the model are spectrally fitted only when the variables above are TRUE.

Several fields can be smoothed via tunable spectral filters. For further information on this advanced usage, please see section 3.1.2 in the Full-Pos Users Guide.

How to change output at every output instance

(to be done: describe use of postins/dirlist)

Other NAMFPC namelist variables

CFPFMT - this character string controls the format of the output files. For OpenIFS this should always be set to 'MODEL'.

NFPCLI - this integer variable is used to control the use of climatology data in improving the accuracy of the upper air fields and several surface fields when interpolated on surface-dependent levels.
               For OpenIFS, the default is 0 (i.e. off). For more information on this option and the use of climatology data, see section 3.1.3 in the Full-Pos Users Guide.
               You may see other NAMFPC variables like: RFPCORR, LFPMOIS which are related to the use of climatology data. Again, for more details see the Users Guide.

LFPQ - this logical variable controls the interpolation of relative or specific humidity on height or model levels. The recommended value is .FALSE.
           Relative humidity has better conservative properties than mixing ratio when interpolating even if it's not a conservative quantity.
           If set FALSE (recommended) the relative humidity is interpolated then specific humidity is subtracted. If TRUE, specific humidity is first interpolated.

 


 

 

 

 

On this page

 

 

Links to more information on GRIB...

 

 

Example FULLPOS namelist

Download an example, annotated, NAMFPC namelist to see how to configure OpenIFS output.

 

 

 

 

Code Hints

GRIB codes OpenIFS knows are defined in the file:
              ifs/module/yom_grib_codes.F90

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Potential vorticity and theta surfaces

More information about theta & PV output can be found here:
http://www.ecmwf.int/products/data/archive/descriptions/other/isentropic_PV.html

PV levels. Note that specifying 2E-6 in the namelist implies both a positive PV surface in the northern hemisphere and the negative PV surface in the southern hemisphere.

PV surfaces may not always be found. Each surface is constructed by searching down from the model level closest to 96hPa. Values at this model level are used where no PV values specified can be found.

Theta levels. Care must also be taken in selecting theta levels as in the troposphere, theta levels dip towards the surface.

Tropopause. The dynamical tropopause is often defined by the 1.5 - 2 PVU surface outside the tropics, with the tropical tropopause layer (TTL) approximately  between 340K - 380K.

  • No labels