1.                     USER'S GUIDE TO THE FORECAST MODEL

1.1.                  Introduction

The NMC Spectral Model became operational in l980.  The original code, designed by J. Sela, was developed for the IBM computer and has been documented in detail (J. Sela, l980, 1982).  Major revision of the code was made in the period between l984 and l986 to adopt the model to the Cyber 205 vector machine, and to incorporate the GFDL physics package.

 Recently, the code has been modified to incorporate various diagnostics on dependent variables, surface parameters and physical processes for the Dynamical Extended Range Forecast (DERF) experiments.  This documentation explains Version 3 of the DERF.  Future (planned) modification to the code is presented in Appendix 8A.

1.2.                  Programs

 In order to perform forecasts, several programs are needed to pre-process the input analysis field, prepare the surface field and post-process the predicted results.  These programs also require some documentation in this section.

1.2.1.              Pre-processor (SMI)

This program is needed only when initial states are available on pressure levels.  In the operational system, analysis increments on the standard pressure levels are interpolated and incremented directly on the model sigma level initial guess field so that this program step is not required. The major function of the program is to convert the initial pressure level spherical coefficient data to grid point values, interpolate to sigma levels and convert back to the spherical coefficients.

1.2.2.              Surface Merge (ASTC)

The program creates and/or merges surface data fields from climatology, analyzed sea surface temperature, and predicted surface fields.  It also interpolates the monthly climatology to the date and time specified, and perfor ms the SST correction for spectrally truncated topography.

1.2.3.              Radiation (HEAT)

 The program computes long wave and short wave radiative heating rates and short and long wave flux at the surface and passes them to the forecast program.  It also computes land-surface temperature from an energy balance at the surface for dead start.  Inputs to the program are the sigma file generated either by the analysis or by the pre-processor program, and the surface fields created by the surface merge program.  Outputs of the program are the short wave and long wave heating rates on the model Gaussian grids, modified surface fields (surface temperature and deep soil temperatures) for the dead start and two types of diagnostic files.  This program is normally executed every l2 forecast hours but this interval can be modified by a change in the job control structure.

1.2.4.              Forecast (SMF)

The program performs time integration and initialization.  Input files to this program are the three output files from the radiation, i.e. sigma level dependent variables, surface fields and the radiative heating.  The program also requires normal modes for the initialization.  The outputs of the program are the predicted dependent variables, predicted surface parameters and four types of diagnostic fields.

1.2.5.              Post Processor (SMP)

 The predicted fields on the model sigma levels are interpolated to the standard pressure levels in this program.  The input file consists of the sigma level dependent variables and the output file consists of the pressure level variables, which can be used as input to the preprocessor program (see 8.2.l).  The file also contains several processed arrays (e.g. boundary layer parameters and tropopause parameters).

1.3.                  Input and Output

The files used in the forecast system are classified into the following types:

      - Forecast/diagnostic files

      - Constant files

      - Namelist files

1.3.1.              Forecast/Diagnostic Files

The Forecast/Diagnostic files contain the fields produced by the analysis/forecast system and are listed as follows:

 l.  Pressure file

Contains atmospheric variables on standard pressure surfaces; input to pre-processor and output of the post processor; created from sigma files (require model sigma levels and orography).  (See Table 8.1  for the detailed structures.)

 2.  Sigma file

Contains atmospheric variables on sigma surface and model sigma levels as well as topography; input to the radiation and forecast program; output from forecast program; created by the model integration.  (See Table 8.2 for the file structure.)

3.  Surface file

Contains surface parameters;  output from the surface merge program and from the forecast program; created from surface climatology and sea surface temperature analysis at the initial time and modified by the forecast pr ogram.  (See Table 8.3 for the file structure.)

1.3.2.              Diagnostic Files

There are six kinds of diagnostic files; two (H2D and H3D) are outputs from the radiation program and the rest are from the forecast program.  The structure of the files is presented in Appendix 8B.

  l.    H2D:  Various radiative fluxes, i.e. short wave and long wave at the surface and at the top of the model.

  2.    H3D:  Three dimensional radiative cooling rates for short and long waves.

  3.    F2D:  Surface parameters, precipitation, surface fluxes and stresses.

  4.    F3D:  Three dimensional distribution of latent heating and moistening due to various physical processes

  5.    Zonal:  Zonally averaged sigma level variables and physical diagnostics.

  6.    Grid point file:  Time series of various and physical diagnostics for given grid points.

1.3.3.              Constant Files

The major components of the constant files are the surface climatologies, the sea surface temperature analysis, and the model normal modes.  Topography is also included in one of these files although it is also included in t he sigma file.  The model sigma levels comprise another set of important constants but are specified in the program using a DATA statement.  The list of the constant files and their structures are given in Table 8.4.

1.3.4.              Namelist Files

 The execution of the programs can be controlled by the namelist input parameters.  Under normal conditions, it is not necessary to specify any namelist parameters since default values are set for standard runs.  Details of t he namelist parameters for the major programs are listed in Table 8.5 to 8.9.

Table 8.1  Structure of a Pressure File

 

Pressure File (record number)

Contents

Length (bytes)

Type

1

see NMC Office Note 85

32

binary

2

forecast hour

4

real

 

initial hour , month , day , year

4(each)

integer

3

Spherical Coefficients of Geopotential , Z , at  1000 mb 

MDIM(1) * 4

real

4

U-wind component at 1000 mb

MDIMV(2) * 4

real

5

V-wind component at 1000 mb

MDIMV(2) * 4

real

...

at standard p-levels

"

"

36,37,38

Same at 50 mb

"

"

39,...,

Spherical Coefficients of Relative Humidity at 1000 mb(4) , then next five standard levels ending at...

MDIM * 4

real

44

300 mb

"

"

45

Temperature at 1000 mb

"

"

...

at standard p-levels

"

"

56

... at 50 mb

"

"

57

w at 1000 mb(5)

"

"

...

at standard p-levels

"

"

66

... at 100 mb

"

"

67

Surface pressure (mb)

"

"

68

Mean RH between surface and 500 mb

"

"

69

Mean RH between model layers 2,3

"

"

70

Mean RH between model layers 4,5

MDIM * 4

real

71

Total precipitable water (up to 300 mb)

"

"

72

Potential temperature in lowest model layer

"

"

73

Temperature at surface , extrapolated from lowest 2 model layers

"

"

74

w in lowest model layer

"

"

75

Specific humidity in lowest model layer

"

"

76

Tropopause temperature (6)

"

"

Pressure File (record number)

Contents

Length (bytes)

Type

77

Tropopause pressure (6)

"

"

78

u in lowest model layer

"

"

79

v in lowest model layer

"

"

80

Tropopause u (6)

"

"

81

Tropopause v (6)

"

"

82

Tropopause vector wind shear (6)

"

"

83

N.H. precipitation (7,8)

65 x 65 x 4

"

84

Global precipitation (8)

IDIM x JDIM x 4(9)

"

 

l)  MDIM is the number of spherical coefficients for scalar fields, i.e.                                  (MWAVE+l)*(MWAVE+l)*2 when MWAVE is the maximum wave resolution (rhomboidal truncation).

2)  MDIMV is the number of spherical coefficients for wind component (MWAVE+l)*(MWAVE+2)*2.

3)  Standard pressure levels for z, u, v, and T are l000, 850, 700, 500, 400, 300, 200, l50, l00, 70, 50 mb.

4)  Relative humidity is available at l000, 850, 700, 500, 400 and 300 mb.

5)  Omega is available at l000, 850, 700, 500, 400, 300, 250, 200, l50, and l00 mb.

6)  All the tropopause quantities are evaluated from standard pressure level quantities.

7).  Precipitation over Northern Hemisphere is on the polar stereographic projection (65x65 grid).

8)  Upper limit of precipitation is set (0.l27 mm) for graphics purposes.

9)  I and J dimensions of model computational grid (changes with horizontal truncation)

Table 8.2  Structure of a Sigma File

 

Sigma File (record number)

Contents

Length (bytes)

Type

1

see NMC Office Note 85

32

binary

2

forecast hour

4

real

 

initial hour

4

integer

 

initial month

4

"

 

initial day

4

"

 

initial year

4

"

 

sigma levels (1)

(KDIM + 1) x 4

real

 

sigma layers (2)

KDIM x 4

"

3

Orography in meters (spherical coefficients)

MDIM x 4

"

4

Spherical coefficients of ln (ps) , where ps is surface pressure (cb)

"

"

5-22

Temperature (°K) in model layers 1-18 (spherical coefficients)

"

"

23,24

Divergence and Vorticity alternating through layer 1....

"

"

...57,58

....thru layer 18

"

"

59-70

Specific humidity  in model layers 1-18 (spectral coefficients)

"

"

 

Note all the spherical coefficients are stored in this order:  real part, imaginary part, N-S index and E-W wavenumber.

l)  Sigma levels are the level starting from  s =l at the surface and ending at  s =0 at the top.  Only derived quantities, (vertical velocity, various fluxes) are defined on these levels.

2)  Sigma layers are where dependent variables (T, D, z , u, v, q) are defined

Table 8.3  Structure of a Surface File

 

Surface File (record number)

Contents

Length (bytes)

Type

1

see NMC Office Note 85

32

binary

2

Forecast hour

4

real

 

Initial hour

4

integer

 

Initial month

4

"

 

Initial day

4

"

 

Initial year

4

"

3

Surface temperature

IDIM x JDIM x 4

real

4

Soil wetness

"

"

5

Snow depth

"

"

6

Sub-surface temperature , layer 1 (TG1)

"

"

7

Sub-surface temperature , layer 2 (TG2)

"

"

8

Sub-surface temperature , layer 3 (TG3)

"

"

9

Surface roughness length

"

"

10

Surface background albedo(1)

"

"

11

Surface-type mask(2)

"

"

12

High cloud fraction

"

"

13

Middle cloud fraction

"

"

14

Low cloud fraction

"

"

 

 Note: All  are gaussian gridded arrays of IDIM x JDIM, where I=1 is 0°E (then eastward) and J=1 is near              the North Pole (then southward).

(l)  Albedo is the background albedo that is modified by snow cover.

(2)  Ocean = 0., land = l., and sea ice = 2.

Table 8.4  List and Structure of the Constant Files

 

Constant file-type

Record number

Contents

Length (bytes)

Type

Sea surface temperature analysis

1

Drag coefficient (not used)

IDIM x JDIM x 4

real

 

2-13

SST (all records contain the same array)

"

"

Climatological SST

1-12

January-December

"

"

Climatological soil wetness

1

Number of grid points in E-W direction

4

integer

 

 

Number of grid points in N-S direction

4

integer

 

 

Month

4

integer

 

 

January mean soil wetness

IDIM x JDIM x 4

real

 

2,...11,

...

"

"

 

12

Same as soil wetness record 1 , except for December

"

"

Climatological albedo

1-12

Same structure as for soil wetness

"

"

Climatological sea ice mask

1-12

Same structure as for soil wetness, where sea ice =1 and other data=0

"

"

Climatological snow depth

1-12

same structure as for soil wetness

"

"

Annual mean deep soil temperature

1

Number of grid points in E-W direction

4

integer

 

 

Number of grid points in N-S direction

4

integer

 

 

Zero

4

integer

 

 

Soil temperature at a depth of 5 cm

IDIM x JDIM x 4

real

 

2

Same as record 1 , except for a depth of 50 cm

"

"

 

3

Same as record 1 , except for a depth of 500 cm

"

"

Annual mean surface roughness

1

Number of grid points in E-W direction

4

integer

Constant file-type

Record number

Contents

Length (bytes)

Type

 

 

Number of grid points in N-S direction

4

integer

 

 

Zero

4

integer

 

 

Annual mean surface rouighness

IDIM x JDIM x 4

real

Land-Sea mask

1

Same structure as for surface roughness ,where land=1 and sea=0

"

"

Orography

1

Surface elevation

"

"

Climatological cloud fraction(1)

1

Number of grid points in E-W direction

4

integer

 

 

Number of grid points in N-S direction

4

integer

 

 

Month

4

integer

 

 

January high cloud fraction

IDIM x JDIM x 4

real

 

2,...,11,

...

"

"

 

12

Same structure as record 1 , except for December high cloud fraction

"

"

 

13

Same structure as record 1 , except for January middle  cloud fraction

"

"

 

14,...,23,

...

"

"

 

24

Same structure as record 1 , except for December middle cloud fraction

"

"

 

25

Same structure as record 1 , except for January low cloud fraction

"

"

 

26,...,35,

...

"

"

 

36

Same structure as record 1 , except for December low cloud fraction

"

"

 

(1) from 6 years of NIMBUS-7 monthly mean data.

Table 8.5 Namelist file for pre-processor

 

NUM parameters

Reference

Default

Type

NUM(1)

Unit number of orography

0

integer

NUM(2)

Unit number of input pressure coefficients

0

"

NUM(3)

Unit number of output sigma coefficients

0

"

 

NOTE : For the DERF version (Version 3), the NUM parameters are not read in as a namelist but are read in using formatted read of 28I2.  For the newer versions NUM should be specified as namelist /NAMSPI/ parameter.

Table 8.6 Namelist file for surface merge program

 

Parameter

Reference

Default

Type

CSSTS

Weights(1) for blending forecast value and climatology for surface temperature over ocean

1.0

real

CSSTL

Forecast/Climatology (F/C) weights for surface temperature over land and sea ice

0.0

"

CALBL

F/C weight for albedo over land and sea ice

0.0

"

LWETL

F/C weight for wetness over land and sea ice

0.0

"

CSNOL

F/C weight for snow depth over land and sea ice

0.0

"

CZOL

F/C weight for surface roughness over land and sea ice

0.0

"

CTG1

F/C weight for soil temperature at 5 cm

0.0

"

CTG2

F/C weight for soil temperature at 50 cm

0.0

"

CCHI

F/C weight for high cloud fraction

0.0

"

CCMI

F/C weight for middle cloud fraction

0.0

"

CCLO

F/C weight for low cloud fraction

0.0

"

NOTINT

Control for interpolating climatology to date : 1=yes, 0=no

0

integer

LFMERGE

Control for merging predicted array and climatology : 1=merge at any forecast hour, 0=merge only for forecast hour >0

2

"

ICHECK

Control for debugging : 1=debug print, 0=no debug print

0

"

RLAPSE

Temperature lapse rate used for correcting sea surface temperature

6.5 x 10-2

real

SLLND

Value of land-sea mask over land

1.0

"

SLSEA

Value of land-sea mask over ocean

0.0

"

AICICE

Value of sea ice mask over ice

1.0

"

AICSEA

Value of sea ice mask over land and ocean

0.0

"

ALBMAX

Maximum possible albedo(2) over the globe

0.8

"

ALBMIN

Minimum possible albedo(2)

0.06

"

ALBSEA

Albedo over ocean(3)

0.059

"

ALBICE

Albedo over sea ice(3)

0.5

"

ALBSNO

Albedo over snow(3)

0.6

"

WETMAX

Maximum wetness (mm) (2)

150.

"

WETMIN

Minimum wetness(2)

0.0

"

WETSEA

Wetness over ocean

150.

"

WETICE

Wetness over sea ice

150.

"

WETSNO

Wetness over snow

150.

"

SNOMAX

Maximum snow depth (cm) (2)

5100.

"

SNOMIN

Minimum snow depth(2)

0.0

"

SNOSEA

Snow depth over ocean

0.0

"

SNOICD

Snow depth over sea ice poleward of 60°

20.

"

ZOMAX

Maximum roughness (2)

250.

"

ZOMIN

Minimum roughness (2)

1. x 10-4

"

ZOSEA

Roughness over ocean(4)

1. x 10-4

"

ZOICE

Roughness over sea ice

1.0

"

ZOSNO

Roughness over snow

0.1

"

SSTMAX

Maximum surface temperature(2)

310.

"

SSTMIN

Minimum surface temparature(2)

271.16

"

SSTLND

Surface temperature over land(3)

290.

"

SSTICE

Surface temp[erature over sea ice(3)

271.16

"

SSTSNO

Surface temperature over snow

273.16

"

 

(l)  The value of l.0 weights l00% to the forecast and 0.0 weights l00% to the climatology.

(2)  If these values are exceeded, they are reset to the specified maximum or minimum.

(3)  To be modified in the radiation program.

(4)  To be modified in the forecast program.

Table 8.7 Namelist file for radiation program

 

Parameter

Reference

Default

Type

IDIURN

Switch for diurnal (>0) or nondiurnal (<0)

1

integer

KCLDS

Switch for clouds, where:

1

"

 

0=no clouds

 

 

 

1=zonal mean

 

 

 

2=zonal assymmetric

 

 

IDCC

Switch for deep cloud correction (LW radiation) , where 0=off, 1=on

1

"

KTBAL

Switch for obtaining initial  land/sea ice surface temperature from an energy balance, where 0=no, 1=yes

1

"

ITSC1

Number of iterations for initial surface temperature energy balance calculation

1

"

KGDAS

Switch for diagnostics output file, where 0=no, 1=yes

0

"

IRADDG

Forecast interval (hours) of diagnostic output

12

"

ICHECK

Switch for  code debug print, where 0=no, 1=yes

0

"

LATDBG

Latitude point for debug print

0

"

LONDBG

Longitude point for debug print

0

"

 

Note : All  radiation namelist parameters are absorbed into the forecast namelist parameters for version 4 (and higher) of the model.

Table 8.8 Namelist file for forecast program

Namelist parameters for the forecast model use integer array NUM and real array CON , and they are classified by their addresses , where :

1. File unit number, forecast hour control, initialization options (1-80).

2. Switches for model physics (100-899) - Convection (100-199), Shallow convection          (200-299), Large-scale condensation (300-399), Dry convective adjustment (400-499),      Radiation (500-599), Horizontal diffusion (600-699), Vertical diffusion (700-799), Surface     physics (800-899).

3. Switches for diagnostics and debugging code (1000-1100).

 

Parameter

Reference

Default

Type

ENDHOUR

Control word to end forecast loop. Job aborts with fatal error if input FHOUR (forecast hour) greater than ENDHOUR.

24

real

NUM(1)

Unit number of input sigma coefficients at time t

18

integer

NUM(2)

Unit number of input sigma coefficients at time t-Dt: if zero then set to 18 when FHOUR=0., and set to 19 when FHOUR > 0.

0

"

NUM(3)

Unit number of output sigma coefficients at time t

20

"

NUM(4)

Unit number of output  sigma coefficients at time t-Dt

21

"

NUM(5)

Initialization options : 0= no initialization

-1

"

 

1= adiabatic initialization

 

 

 

2= diabatic initialization

 

 

 

-1= if FHOUR=0 then diabatic initialization, but if FHOUR > 0 then no initialization.

 

 

NUM(6)

Number of time-steps of diabatic heating calculations for initialization

7

"

NUM(7)

Number of time integration steps to perform. If zero, then its computed from specified forecast period , CON(7) , and the time increment , CON(1).

0

"

NUM(8)

Number of CON(7) hour forecast steps to be performed during one execution of forecast code.

1

"

NUM(9) *

Horizontal diffusion coefficient for divergence specifier. Coefficient is expressed as NUM(9) x 10.**NUM(10)

8

"

NUM(10) *

 

15

"

NUM(11)

Number of files used for normal modes

1

"

NUM(12)

Unit number for input eigenvectors.

80

integer

NUM(13)

Unit number of output zonal-average diagnostics

54

"

NUM(14)

Unit number of output  initialized sigma coefficients. If zero, then no output.

22

"

NUM(18)

Number of vertical modes to be initialized.

4

"

NUM(19)

Number of iterations to be performed during inialization.

2

"

NUM(20) *

Horizontal diffusion specifier for temperature, vorticity, and moisture. Coefficient is expressed as NUM(20) x 10.**NUM(21)

6

"

NUM(21) *

 

15

"

NUM(23)

Unit number of input surface fields.

10

"

NUM(24)

Unit number of output surface fields.

11

"

NUM(25)

Output interval of diagnostics (hours)

24

&qu