Surface Forcing for NEMO

The surface forcing used at ESSC is derived mostly from atmospheric reanalysis (e.g. ERA40) and satellite products (e.g. ISCCP). In general, we use atmospheric fields and bulk formula to determine surface fluxes rather than taking the fluxes determined by the atmospheric reanalysis themselves. There are three principle sources for the data we use: ECMWF (ERA40 and Interim reanalysis), the Common Ocean Reference Experiment (CORE, and the modifications to these two datasets (e.g. DFS3) produced by the DRAKKAR Group (of which ESSC is a member).

It is relatively straightforward to setup a new forcing dataset, or to extend a current one (e.g. ERA-Interim). The instructions which follow assume you will be using bulk forcing ( key_flx_core ).

First, download the forcing; NEMO requires the following fields:

  • Surface Air Temperature (t10): The bulk formula assume this is the 10m air temperature, although for some datasets only 2m temperature is available (e.g. ECMWF operational analyses, ECMWF Interim). While NEMO does have a logical flag in the namelist to take into account the difference in height, I've found this to cause some problems, and so I prefer to simply use the 2m temperature fields and the 10m bulk formula. The error imposed due to this difference is quite small. Although it would be preferable to retune the bulk formula for 2m height.
  • Surface Air Humidity (q10): This is also assumed to be at 10m, although the height will follow temperature.
  • Winds (u10, v10): These are always at 10m. One has to be careful that winds are correctly rotated, especially near the north pole, when interpolating (see InterpolationScripts ).
  • Shortwave radiation (qsw)
  • Longwave radiation (qlw)
  • Precipitation and Snow (precip, snow)

Although the bulk forcing routine in NEMO ( flx_core.h90 in NEMO v2.3), allows some flexibility about the frequency of these fields, currently we use 6hrly for t,q,u,v, daily values for qlw, qsw and monthly-means for precip and snow.

Once you have the forcing (in NetCDF format), its time to interpolate. Although an online interpolation package is now available for NEMO, we currently use the int2df package of Laurent Brodeau. For more details, see InterpolationScripts.

The final step is simply to ensure namelist settings in 'namcore' section of namelist correspond to the variable names and frequencies of your forcing.

Note: if the variable names do not match, NEMO will continue to run and assume a value of zero, so some care is required here.

More information about the datasets we use, and where we keep them can be found in ForcingDatasets .

More Information

-- GregSmith - 21 Nov 2008

Topic revision: r3 - 25 Nov 2008 - 23:14:58 - GregSmith
 
This site is powered by the TWiki collaboration platformCopyright &© by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback