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 0E (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

"

NUM(27)

Unit number of output grid point diagnostics.

53

"

NUM(28)

Number of layers for climatological nudging.

3

"

NUM(29)

Unit number of output diabatic heatig rate for initialization.

75

"

NUM(32)

Unit number of input sigma climatology for nudging. If zero, then no nudging done.

0

"

NUM(33)

Unit number of input F3D

 

"

NUM(34)

Unit number of input F2D

 

"

NUM(35)

Unit number of output F3D

 

"

NUM(36)

Unit number of output F2D

 

"

NUM(37)

Unit number of output F2D diagnostics at FHOUR=0.,

90

"

NUM(41) *

Buffering unit number for surface field.

71

"

NUM(42) *

Buffering unit number for surface field.

72

"

NUM(43) *

Buffering unit number for physics field.

73

"

NUM(44) *

Buffering unit number for physics field.

74

"

NUM(45) *

Buffering unit number for Diagnostics 1.

75

"

NUM(46) *

Buffering unit number for Diagnostics 1.

76

"

NUM(47) *

Buffering unit number for Diagnostics 2.

77

"

NUM(48) *

Buffering unit number for Diagnostics 2.

78

"

NUM(98)

Debug print switch for GLOOP (1 is on and 0 is off).

0

integer

NUM(99)

Debug print switch for GWATER.

0

"

NUM(100)

Kuo convection switch : -1 = no Kuo , 0 = nonvectorized Kuo , and 1 = vectorized Kuo.

1

"

NUM(101)

Lowest parcel lifting level for Kuo.

2

"

NUM(102)

Highest parcel lifting level for Kuo.

3

"

NUM(200)

Switch for shallow convection , where -1 = no call to shallow convection.

0

"

NUM(300)

Switch for large-scale condensation , where -1= no call to large-scale.

0

"

NUM(400)

Switch for dry convective adjustment , where -1= no call to dry adjustment.

-1

"

NUM(500) (4)

Switch for radiation , where :

1

"

 

-1 = no radiation

 

 

 

0 = no diurnal variation

 

 

 

-1 = diurnal cycle aprroximation

 

 

NUM(501) (4)

Switch for cloud specification , where :

1

"

 

0 = no clouds

 

 

 

1 = zonally averaged clouds

 

 

 

2 = zonally asymmetric clouds

 

 

NUM(503) (4)

Switch for LW deep cloud adjustment , where 0 = off and 1 = on.

1

"

NUM(504) (4)

Number of iterations for surface heat balance calculation (calculated onl;y at FHOUR = 0.) If zero no balance calculation.

1

"

NUM(599) (4)

Debug print switch for radiation (1 is on).

0

"

NUM(600)

Switch for horizontal diffusion , where -1 = no diffusion and 0 = diffusion.

1

"

NUM(700)

Switch for vertical diffusion , where -1 = no diffusion and 0 = diffusion.

0

"

NUM(701)

Switch for smoothing of diffusion coefficient in the vertical , where :

0

"

 

0 = no vertical smoothing

 

 

 

1 = smoothing with proper weighting

 

 

 

2 = smoothing without proper weighting

 

 

NUM(702)

Switch for time scheme of vertical diffusion coefficient , where :

2

integer

 

0,10 = implicit

 

 

 

1,11 = predictor-corrector

 

 

 

2,12 = implicit and 4 Dt time smoothing

 

 

 

If NUM(702) is less than 10, the routine will increment tendencies. If 10 or larger, routine returns tendency only (should be used for versions 5 and up).

 

 

NUM(703)

Switch for control of diffusion towards saturated levels , where :

1

"

 

0 prohibits diffusion towards saturated levels.

 

 

 

1 permits diffusion towards saturated levels.

 

 

NUM(706)

Switch for control of diffusion towards saturated surface , where :

1

"

 

0 prohibits diffusion towards saturated surface.

 

 

 

1 permits diffusion towards saturated surface.

 

 

NUM(750)

Switch for gravity wave drag , where -1 is off and 0 is on.

0

"

NUM(751)

Starting level of gravity wave deposition.

2

"

NUM(752)

Beginning level of linear deposition. If =0, then linear deposition throughout.

2

"

NUM(789)

Maximum number of points for debug print of gravity wave drag.

5

"

NUM(798)

Debug print switch for gravity wave drag.

0

"

NUM(799)

Switch for vertical diffusion and gravity wave drag diagnostics , where :

1

"

 

0 = vertical diffusion only

 

 

 

1 = both vertical diffusion and gravity wave drag

 

 

 

2 = gravity wave drag only

 

 

NUM(800)

Switch for surface parameter prediction , where :

0

"

 

-1 = no prediction of surface temperature,TG1,TG2

 

 

 

0 = predict surface temperature,TG1,TG2

 

 

 

 

 

 

NUM(801)

Choice of time scheme for surface processes (subroutine PROGTN)

2

integer

 

-1 = original implicit scheme

 

 

 

0 = Dt time smoothing when unstable

 

 

 

1 = Dt time smoothing at all times

 

 

 

2 = Dt time smoothing

 

 

NUM(810)

Switch for snow depth prediction , where -1 = snow not predicted and 0 = snow predicted

0

"

NUM(820)

Switch for soil moisture prediction , where -1 = soil moisture not predicted and 0 = soli moisture predicted

0

"

NUM(1001) (1)

Longitude grid point for debug print

0

"

NUM(1002) (1)

Latitude grid point for debug print

0

"

NUM(1010)

Number of grid points for grid-point-diagnostics (maximum of 5)

0

"

NUM(1011) (2)

First longitude grid point for grid-point-diagnostics

0

"

NUM(1012)

Same for second point

0

"

NUM(1013)

Same for third point

0

"

NUM(1014)

Same for fourth point

0

"

NUM(1015)

Same for fifth point

0

"

NUM(1016)

First latitude point for grid-point-diagnostics

0

"

NUM(1017)

Same for second point

0

"

NUM(1018)

Same for third point

0

"

NUM(1019)

Same for fourth point

0

"

NUM(1020)

Same for fifth point

0

"

NUM(1021)

Switch for debug print of constants,steps,etc (0=off and 1=on)

0

"

NUM(1022)

Switch for debug print of variances at various steps (0=off and 1=on)

0

"

NUM(1023)

Time-step interval of zonal average diagnostics

NUM(7)

"

NUM(1024)

Switch for zonal average diagnostics of diabatic heating calculation step (0=off and 1=on)

0

"

NUM(1025)

Switch for zonal average diagnostics of initialized data (0=off and 1=on)

0

"

NUM(1026)

Switch for initialization (0=off and 1=on)

0

"

CON(1)

Time-step in seconds. If zero, then compute from wave resolution assuming 720 seconds for R40

0.0

real

CON(4)

Frequency cutoff for Normal Mode Initialization

27502.

"

CON(6)

Reference constant temperature

300.

"

CON(7)

Number of hours to be predicted in the inner loop when NUM(7)=0

12.

"

CON(11)-CON(28)

Relaxation constants for climatolaogical nudging for layers 1-18

0.0

"

CON(101)

Vertical extent of convection allowed in KUO, in units of sigma thickness

1.0

"

CON(102)

Top sigma level for moisture convergence calculation in KUO

0.3

"

CON(103)

KUO convection moisture convergence threshold

2.x10-6

"

CON(104)

Minimum value allowed for specific humidity in KUO

1.x10-6

"

CON(105)

Relative humidity factor used in KUO

1.0

"

CON(106)

Evaporation factor in KUO, where 0.0=none and 1.0=full

0.0

"

CON(501)(7)

Time interval (hours) between radiation calculations

12.0

"

CON(601)-CON(618)(4)

Horizontal diffusion coefficient for divergence, layers 1-18

8.x1015

"

CON(621)-CON(638)(4)

Horizontal, diffusion coefficient for vorticity, layers 1-18

6.x1015

"

CON(641)-CON(658)(4)

Horizontal diffusion coefficient for temperature, layers 1-18

6.x1015

"

CON(661)-CON(678)(4)

Horizontal diffusion coefficient for moisture, layers 1-18

6.x1015

"

CON(701)

Predictor-corrector weighting in MONIN3

0.5

"

CON(702)

Mixing length at infinitely large geopotential height

250.

"

CON(703)

Countergradient heat flux parameter, 0=none

0.0

"

CON(704)

Background vertical diffusion coefficient

0.1

"

CON(750)

Height in sigma of base level for gravity-wave drag.

0.7

"

CON(751)

l* for gravity-wave drag

4x10-4

"

CON(752)

Multiplication factor at top levels (gravity-wave drag)

1.0

real

CON(789)

Maximum acceleration needed to activate diagnostic print in gravity-wave drag code

5x10-3

"

CON(800)

Time filtering weight

0.5

"

CON(801)

When nonzero, value of HZKMAX in PROGTN

0.0

"

CON(802)(7)

Factor multiplying the beta parameter over land

1.0

"

CON(803)(7)

Heat capacity of the soil. If negative, then pcs becomes function of soil moisture and ABS(CON(803)) is pcs at soil moisture=0, where pcs is soil density

0.57

"

CON(804)

Soil diffusivity

0.003

"

CON(805)(3)

Resistance for evaporation (sec m-1)

0.0

"

CON(900)(4)

Time filter parameter for surface pressure

0.92

"

CON(901)-CON(918)(4)

Time filter parameter for divergence, layers 1-18

0.92

"

CON(921)-CON(938)(4)

Time filter parameter for vorticity, layers 1-18

0.92

"

CON(941)-CON(958)(4)

Time filter parameter for temperature, layers 1-18

0.92

"

CON(961)-CON(978)(4)

Time filter parameter for moisture, layers 1-18

0.92

"

 

Note : * Valid for version 3 and 3x only.

Note : (1) Southern hemisphere point, NUM(1001) = IDIM + longitude number and NUM(1002) = JDIM - latitude row + 1, where IDIM,JDIM are east-west , north-south gaussian grid dimensions respectively.

Note : (2) The diagnostic grid point is given in ordinary manner for both hemispheres , i.e. longitude between 1,IDIM and latitude between 1,JDIM, where longitude=1 is Greenwich and latitude=1 is adjacent to north pole.

Note : (3) Valid for version 3X and up.

Note : (4) Valid for version 4 and up.

Note : (7) Valid for version 7 and up.

Table 8.9 Namelist file for post processor program

 

Parameter

Reference

Default

Type

NFILES

Number of files to post process

1

integer

NIFILE

Unit numbers (up to 15) of input sigma coefficients

17

integer array

NOFILE

Unit numbers (up to 15) of output pressure coefficients

27

integer array

NRESO

Output resolution (spectral) equal to input resolution if NRESO=0

0

integer

LOMEGA

Control of omega output , where 0=no, 1=yes

1

"

LSNDRY

Control of sundry data (e.g. tropopause) output

1

"

LSRAIN

Control for precipitation output on polar stereographic grid

1

"

LGRAIN

Control for precipitation on gaussian grid

1

"

ITRUN(1)

Type of wave truncation for output file , where 0=triangular, 1=rhomboidal--same as input file if ITRUN<0

-1

"

RAINMAX(1)

Maximum precipitation amount

0.127

real

ICHECK(1)

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

0

integer

LATDBG(1)

Latitude point of debug print

0

"

LONDBG(1)

Longitude point of debug print

0

"

 

Note : (1) Not available for version 3.

1.4. Resolution and Wavenumber Truncation

The forecast programs are written generally enough so that their horizontal resolution may be modified with minimum effort.

The forecast programs may be run with a maximum resolution of rhomboidal 40 truncation, with full diagnostics and up to triangular 80 truncation without diagnostics (not tested). Up to the time of this writing, resolutions of R40, R30, Rl6, and T40 have been successfully tested.

In order to change the resolution, the variables in Table 8.10 should be modified in the parameter statements and the entire program re-compiled.

Table 8.10 Parameter statement variables

 

Variable

Description

IDIM

Number of gaussian gridpoints (east-west)

JDIM

Number of gaussian gridpoints (north-south)

MWAVE

Maximum wavenumber

IROMB

Truncation type (1=rhomboidal, 0=triangular)

KDIM

Number of vertical layers , except moisture

KDIMQ

Number of moisture layers

KDIMS

Number of layers affected by shallow convection

NSCRCH

Size of thework array. Should be greater than (KDIM+1+KDIM*23+KDIMQ*5+7)*IDIM*2

NVADM

Number of parameters saved for each gridpoint diagnostic

NPTDM

Number of gridpoints in the gridpoint diagnostics

NSTDM

Number of time-steps per 12-hour forecast for the gridpoint diagnostics

NDIAG

Switch for physical diagnostics, where 0 = no diagnostics and 1 = diagnostics

NGRID

Switch for gridpoint diagnostics, where 0 = no diagnostics and 1 = diagnostics

 

An example for R40 with diagnostics is:

IDIM=l28, JDIM=l02, MWAVE=40, IROMB=l, KDIM=l8, KDIMQ=l2, KDIMS=l2, NSLRCH=262l40, NVADM=200, NPTDM=5, NSTDM=60, NDIAG=l, NGRID=l

1.5. Flow Charts

1.5.1. Pre-processor (SMI)

1.5.2. Surface Merge

1.5.3. Radiation (see Chapter 3, Fig. 3.1)

1.5.4. Forecast

 

1.5.5. Post Processor

1.6. Other Programs

1.6.1. General Conversion Program

This program converts CYBER forecast file to IBM format files or vice versa. The conversion is controled by the following namelist parameters (NAMELIST/NAMIN/).

 

Parameter

Description

Default

Type

I32C32

.true. when converting from IBM 32-bit word to CYBER 32-bit word

.false.

logical

C32I32

same as above, except from CYBER 32-bit word to IBM 32-bit word

.false.

logical

ON85

.true. if first record is an NMC Office Note 85 label

.false.

logical

NREC

Number of records

 

integer

NWORD

Number of words in the record

 

"

INTGRF

Starting address for the integer

0

"

INTFRL

Ending address for the integer

0

"

ICHARF

Starting address for the characters

0

"

ICHARL

Ending address for the characters

0

"

 

1.6.2. MFLINK Program

This program finds file name to be MF-linked from the forecast hour. Input unit numer is l and output goes directly to the front end computer.

The NAMELIST/NAMLNK/ parameters are listed below.

 

Parameter

Description

Default

Type

LDSN1

First prefix of the file

 

character

NDSN1

Number of characters of LDSN1

 

integer

LDSN2

Second prefix of the file

 

character

NDSN2

Number of characters of LDSN2

 

integer

LDSN3

Last prefix of the file

 

character

NDSN3

Number of characters of LDSN3

 

integer

BHOUR

-see below-

12.

real

IADD

-see below-

0

integer

NOABORT

Switch for job abort when error occurs: =1 do not abort ; =0 abort

0

integer

 

The file name constructed from this program will be shown as follows:

LDSNl.LDSN2XX.LDSN3

where XX=INT(FHOUR/BHOUR+IADD).

Appendix 8A: Forecast Model Versions

Version 3: DERF model

Version 3X: Consistency of surface fluxes incorporated

Version 4: Extension to triangular truncation

Version 5: One scan spherical transform with time splitting for physics

Version 6: Inline radiation code

Version 7: Extension for possibility of using extensive IO. Full diagnostics are possible for T80 and higher resolution.

Appendix 8B: Diagnostic Data

There are three forms of diagnostic quantities available from the MRF model. These diagnostics concentrate on the physical parameterizations. This section will describe them:

I.Physical fields

a.Description of the fields.

The contents of the physical field diagnostics are outlined in Table 8B.1. Since the radiative heating is computed separately from the remainder of the MRF code, it was convenient to make separate files for those quantities . Furthermore, we chose to separate boundary fields from three dimensional values. Therefore, a total of four physical diagnostic files results. The acronyms associated with the four files are noted in the table: radiative heating (H2D, H3D); the remainder of the MRF (F2D, F3D).

A list of idiosyncrasies pertaining to these field follows:

* Radiative fields are 24-hour averages taken of two twelve-hour computations.

* Surface temp., soil moisture, snow depth, soil temperatures, and zorl are instantaneous.

* The rainfalls are 24-hour accumulations.

* The remaining fields are averages over 24 hours.

* The momentum, latent and sensible heat fluxes are computed by assuming that upper boundary fluxes are zero and asumming mass weighted layer tendencies in each vertical column.

* The diagnostics were added to the R40 model in January 1986 in preparation for the DERF I experiments. At the time the model functioned without a diurnal cycle, and therefore there are no measures of the diurnal temperature wave at the surface (e.g. maximum and minimum temperatures)

* The shortwave radiation diagnostics with the diurnal cycle are currently incorrect. This error will be corrected when the radiation becomes a subroutine of the model and radiation and prediction model diagnostic can be merged.

* The diagnostics presently do not include contributions to the tendencies from horizontal and vertical advection or from horizontal diffusion.

Table 8B.1 Physical Field Diagnostics

 

Radiation (H2D)

Forecast (F2D)

record

data

record

data

 

1

O.N. 85 label

1

O.N. 85 label

 

2

fhour,idate

2

fhour,idate

 

3

surface albedo

3

surface temperature ( deg K )

 

4

LW up (TOA)

4

soil moisture (mm)

 

5

SW up (TOA)

5

snow depth (mm)

 

6

SW down (TOA)

6

soil temperature 1 ( deg K )

 

7

SW down (SFC)

7

soil temperature 2 ( deg K )

 

8

SW up (SFC)

8

soil temperature 3 ( deg K )

 

9

LW down (SFC)

9

zorl ( non-dimensional)

 

10

LW up (SFC)

10

total precipitation (m)

 

records 4-10 in Watts/m2

11

convective precipitation (m)

 

 

 

12

surface sensible heat flux (W/m2)

 

 

 

13

surface U-wind stress (N/m2)

 

 

 

14

surface V-wind stress (N/m2)

 

 

 

15

surface latent heat flux (W/m2)

 

Radiation (H3D)

Forecast (F3D)

record

data

record

data

 

1

O.N. 85 label

1

O.N. 85 label

 

2

fhour,idate

2

fhour,idate

 

3-20

SW heating ( deg K/sec) for layers 1-18

3-14

large-scale precipitation heating (deg K/sec) for layers 1-12

 

21-38

LW heating ( deg K/sec) for layers 1-18

15-32

deep convective heating (deg K/sec) for layers 1-18

 

 

 

33-44

convective moistening (g/g/sec) for layers 1-12

 

 

 

45-56

shallow convective heating (deg K/sec)-layers 1-12

 

 

 

57-68

shallow convective moistening (g/g/sec)-layers 1-12

 

 

 

69-86

diffusive heating (deg K/sec) - layers 1-18

 

 

 

87-104

diffusive U-wind acceleration (m/sec2)-layers 1-18

 

 

 

105-122

diffusive V-wind acceleration (m/sec2)-layers 1-18

 

 

 

123-134

diffusive moistening (g/g/sec)-layers 1-18

 

 

b.Coding considerations

Subroutines that manipulate the F2D and F3D diagnostic arrays are :

FLSDIA (fields to strips)

READIA (zeroes)

SAVDIA (writes to disk in strip form)

S2FDIA (strips to fields)

STODIA (vector storage)

WRIDIA (writes to disk in field form)

ZERDIA (zeroes)

All are called from the main program SMF.

The majority the diagnostics are designed to accumulate over a specified (NUM25 = NUM(25), number of hours. At the beginning of a prediction, and at multiples of NUM25, subroutine ZERDIA will zero out the diagnostic arrays. During the course of a prediction the F3D diagnostics are stored in double-latitude by sigma strip arrays.

After 12 hours of prediction, NUM25 is again checked to see if the forecast hour FHOUR is an exact multiple of NUM25. If it is not then the diagnostic arrays are to be written to disk by subroutine SAVDIA so that they may b e read back in when the prediction resumes following the radiative heating rate computation. When FHOUR is a multiple of NUM25, then subroutine S2FDIA is called to transform the arrays from strips to double-latitude fields.

Then subroutine WRIDIA is called to perform any necessary averaging and scaling before it separates the double rows by calling subroutine ROWSEP and writes out the fields.

Following the separation of physical processes into subroutines FIDI and GWATER, the storage of the diagnostics fields were separated into two common block /COMFDA/ and /COMGWA/. The former appears in FIDI as:

COMMON / COMFDA /

DTVRDF (NFX,NFK,NFY) ,

DQVRDF (NFX,NFK,NFY) ,

DUVRDF (NFX,NFK,NFY) ,

DVVRDF (NFX,NFK,NFY) ,

DTSFC (NFX,NFY) ,

DQSFC (NFX,NFY) ,

DUSFC (NFX,NFY) ,

DVSFC (NFX,NFY)

DTVRDF,DQVRDF,DUVRDF,DVVRDF are accumulator arrays for the vertical diffusion tendencies of temperature, moisture, westerly and northerly wind components, respectively, computed in MONIN3. The values are accumulated within MONIN3 and passed to and from FIDI via the call list.

DTSFC, DQSFC, DUSFC, DVSFC are the corresponding surface fluxes diagnosed in MONIN3.

In subroutine GWATER one finds

COMMON / COMDGA /

DTLARG (NGX,NGK,NGY) ,

DTCONV (NGX,NGK,NGY) ,

DQCONV (NGX,NGK,NGY) ,

DTSHAL (NGX,NGK,NGY) ,

DQSHAL (NGX,NGK,NGY) ,

BNGESH (NGX,NGY)

DTLARG, DTCONV, and DTSHAL are accumulator arrays for the time tendencies of thermodynamic temperature due to large scale condensation and evaporation, Kuo convection, and shallow convection, respectively. DQCONV an DQCONV are the corresponding arrays for the latter two processes. It was assumed that the moisture tendencies of large scale precipitation could be viewed by appropriately scaling the temperature tendency. BENGSH is the rainbuck et for Kuo convective precipitation.

II.Zonal Averages

a.Model dependent variables

b.Physical quantities

c.Breakdown by latitude bands and underlying surface

The physical field diagnostics were directed toward archiving global fields and examining them with graphics after the run. Kanamitsu's additions provide a means to more closely monitor summaries of not only the physical di agnostic fields but some of the dynamical fields as well. Moreover, the provided summaries are cross reference by latitude bands and by the nature of the underlying surface (ocean,land,ice,snow,...,etc.).

A layout of the Kanamitsu subroutines is as follows:

ZNLWGT computes the area averaged weighting facorts
ZNLAVM computes weighted averages for multi-level fields
ZNLAVS computes weighted averages for single level fields
ZNLOPH prints values for the physics fields
ZNLODY prints values for the dynamics fields
DELLNP coefficient-to-grid transform subroutines
.
.
.

Latitude bands :

1 GLOBAL AVERAGE

2 60N - 90N

3 30N - 60N

4 30S - 30N

5 60S - 30S

6 90S - 60S

Underlying surfaces:

1 GLOBAL SURFACE AVERAGE

2 BARE LAND

3 SNOW COVERED LAND

4 BARE ICE

5 SNOW COVERED ICE

6 OPEN SEA

Diagnosed variables:

 

multi-level dynamics

single level dynamics

multi-level physics

single level physics

u

sfc p

convective heating

supersat precipitation

v

sfc T

supersat heating

convective precipitation

Tv

soil moisture

shallow conv heating

surface sensible heat flux

q

snow depth

vertical diffusion heating

surface latent heat flux

vort**2

TG1

convective moistening

surface u-momentum flux

div**2

TG2

shall conv moistening

surface v-momentum flux

sfc p * Ds

TG3

vertical diffusion moistening

total precipitation coverage

temp

high cloud

vertical diffusion U

convective precipitation coverage

rh

middle cloud

vertical diffusion V

 

KE

low cloud

 

 

SW heating

albedo

 

 

LW heating

sfc net SW flux

 

 

 

sfc net LW flux down

 

 

 

BL rh

 

 

 

BL Tv

 

 

 

BL T

 

 

 

BL q

 

 

 

ZORL

 

 

 

sea/land mask

 

 

 

III.Gridpoint values

a. Campana's method

The third form of diagnostics creates time traces of model variables at up to 5 specified grid locations for mapping on the VERSATEC.

The dat is stored in

COMMON / COMGPD /

SVDATA (NVA,NPT,NST) ,

IGRD (NPT) , JGRD (NPT) ,

ITNUM , NPOINT , ISAVE

where the parameters are

NVA = 200, the maximum number of variables

NPT = 5, the maximum number of gridpoints

NST = 60, the number of time steps per 12 hr.

The variable descriptions are:

SVDATA - storage array

IGRD - east - west locations on Gaussian grid

JGRD - north-south locations on Gaussian grid

ITNUM - counter

NPOINT - number of points

ISAVE - on/off switch (0 - off, 1 - on)

Table of SVDATA storage :

 

Index

Description

1

gaussian grid location , east-west

2

gaussian grid location , north-south

3

surface pressure

4

surface temperature

5

soil temperature , upper layer

6

soil temperature , middle layer

7

net surface radiation

8

net surface SW radiation

9

surface downward LW radiation

10

soil moisture

11

snow depth

12

surface temperature storage (time tendency of surface temperature)

13

residual ( difference of index=12 and forcing ; should be zero)