Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Section
Column

SST in the initial files

The OpenIFS initial file that contains the sea-surface temperature (SST) is the ICMCL file. The SST is represented as the parameter "soil temperature layer 1" (top soil layer 1-7cm), grib parameter STL1, grib code 139 where the land-sea mask defines a sea gridpoint. STL1 also contains the representation of the sea-ice field, grib parameter CI.

Manipulating the SST for the model involves changes the STL1 field but masking should be used to maintain the values over the land points.

The land-sea mask, grib parameter LSM, grib code 172, is contained in the ICMGG*INIT file. Values of lsm >= 0.5 are treated as land points, values < 0.5 are treated as sea-points.

Column
Panel
titleOn this page...

 

Table of Contents

 

Metview script: sst_modif.mv

A metview script has been provided that will allow changing the SST.

...

Code Block
cd scratch/inidir/ob01/2015110100		    # go to directory with the initial files for the experiment 
cp ~/metviewmv/sst_modif.mv .               # copy the metview script

Description of sst_modif.mv

The script can be used in various ways to alter the SST field in the GRIB parameter STL1. The script takes care of the masking of the land values.

...

Code Block
languagebash
titleResult of applying perturbation SST over sea-points
  STL[result] = STL[fRef] + ( 1STL[fPert] - w.box) + STL[fPertfRef] ).w.box

where STL[result] is the resultant SST values, w is the weight applied to the perturbation and "box" represents the mask created in the sst_modif.mv script (see below). The values of 'box' will be 1 in the defined rectangular mask, otherwise 0.

...

Date range: Other options exist in the script to make the modification apply only to certain dates, using the startDate and endDate values.

Example 1: Replacing the observed SST in the tropics with the climatology

In this example, we replace all the observed SSTs values in the tropics with the climatological SST.

...

This will replace the SST values in the tropical band 20N-20S, for all longitudes, with the climatological SST from the ERA-Interim file. The change in SST will be merged to the reference value over a 'halo' of 5 degrees latitude. Note that if the weight was set to zero, this would effectively not make any change to the SST in this tropical band.

By changing the value of 'weight' the observed SST values can be changed to be a fraction

To replace the SST with climatology over a limited range of longitudes, say, just the central and east Pacific:

Code Block
box=[10,-180,-10,-80]  #  N, W, S, E

 

Example 2: Increasing the SST anomaly in the Pacific

In this example, we increase the Pacific SST anomaly compared to the climatology by

...

a factor of 2.

This requires changes to the script as follow:

Code Block
languagebash
titleIncrease Pacific SST anomaly...
fInit="ICMCLob01INIT"
fRef="ICMCLob01INIT"
fPert="/perm/rd/openifs/oifs_workshop_2017/expts-inidata/erai-climate-sst/sst.ci.stl1.erai.climatology.grb"
fLsm="ICMGGob01INIT"
weight=-1				# !!! not 2 !!!
box=[10,-180,-10,-80]  #  N, W, S, E
halo=5

The value of -1 for weight means the modified values of SST, inside the box mask become (referring to the equation above):

Code Block
STL[result] = STL[fRef] + ( STL[fPert] - STL[fRef] ).(-1)
            = STL[fRef] + ( STL[fRef] - STL[fPert] )

so that the SST anomaly with respect to the climatology is added to the existing SST field over the Pacific, effectively doubling the strength of the El Nino signal there.

More complex scenarios

If more complex scenarios are necessary than supported by the above equation, the relevant code in sst_modif.mv to change is:

Code Block
      g= g*lsmGrb +                                        # STL1 values over land points; provided by fInit
         ref[idxRef]*(1-lsmGrb) +                          # STL1 values over sea points, outside AND inside box mask
         (pert[idxPert]-ref[idxRef]) * maskGrb * weight    # weighted difference added to STL1 values INSIDE box mask

 

Running the script

To run the script, type the command:

Code Block
metview -b sst_modif.mv

This will may generate some warning messages which can be ignored. If the script completes successfully:

...

Info

Note that the metview command on cca only supported batch processing - no interactive display or plotting is possible. Do not set 'DoPlotDiff=1' if using this script on the HPCF (host 'cca').

Rename ICMCL files to run!

Final and important step, once the sst_modif.mv script has completed and you are satisfied with the changes in the SST field, remember to rename the files to replace the original, so that the model uses the modified file when starting:

...