0% found this document useful (0 votes)
111 views33 pages

Tutorial Latihan Eta Model

This document provides instructions for setting up and running the Eta model on a workstation. It describes downloading and extracting the necessary files, compiling libraries and code, configuring settings, obtaining input data, and running the model. Initial setup involves creating libraries, compiling codes, extracting topography data, and configuring compiler settings and model dimensions. Instructions are provided for obtaining input data from various sources to initialize the model run. Details are also given on configuring and running the model by editing namelist files and running executable programs.

Uploaded by

Rye Deux
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
111 views33 pages

Tutorial Latihan Eta Model

This document provides instructions for setting up and running the Eta model on a workstation. It describes downloading and extracting the necessary files, compiling libraries and code, configuring settings, obtaining input data, and running the model. Initial setup involves creating libraries, compiling codes, extracting topography data, and configuring compiler settings and model dimensions. Instructions are provided for obtaining input data from various sources to initialize the model run. Details are also given on configuring and running the model by editing namelist files and running executable programs.

Uploaded by

Rye Deux
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 33

A Guide to the Eta Model

Matthew E. Pyle, Vladimir Djurdjević, and Fedor Mesinger

Update of
A Guide to the Workstation Eta, by Matthew E. Pyle
July 2002 version and various “Latest News” posted on the NCEP’s
“Workstation Eta” web site

Updated for the workshop on


"Design and Use of Regional Weather Prediction Models"
Abdus Salam International Centre for Theoretical Physics (ICTP), Trieste,
Italy,
29 September - 7 October 2008

by Vladimir Djurdjević (merged text, and revisions plus subsequent


updates)

and Fedor Mesinger (Eta summary and updated references)

ICTP, Trieste, September 2008


Initial Setup

1) Extract the contents of the tar file with the following command:

tar zxf worketa.tgz


This will extract the contents of this file into a directory named
worketa_all.

2) Go to the worketa_all directory and set up a few items that are machine
dependent by running the setup script with either DEC, LINUX, or NORMAL
as an argument for the script. NORMAL should cover all users not using DEC
or LINUX machines.

EXAMPLE: If setting up the model on an LINUX workstation, then the


command is setup LINUX.

3) Edit the file make.inc in worketa_all/dprep/src/configure to specify the


compiler name (FC) and compiler flags (FFLAGS, often used to set the level of
optimization). Appropriate examples for certain machines are contained in
this directory.

4) Create the software libraries used when compiling other codes.

a) go to worketa_all/libraries/bacio.source (note: portions of pathnames


before worketa_all will not be included in this manual, as they are unique to
each user).

* define the computer system being used in the file clib.h.

For machines not included in the list, try the SGI and HP settings. The
compilations in steps 5 and 10 link with the bacio library and are the real test
of whether an appropriate version has been created.
* Edit the file comp.com to uncomment (lines beginning with # are treated
as comments by the script) one of the three options for compiling the C
portion of the code. Special compiler flags are required to compile on HP and
DEC machines. Once the file has been edited, enter comp.com to create the
file bacio in worketa_all/libraries.

b) go to worketa_all/libraries/ and enter the command make_ip_w3 to create


the w3lib, iplib, and bufrlib libraries.

c) go to the dummyMPI subdirectory.

For HP workstations, enter make -f Makefile.hp; for IBM workstations,


enter make -f Makefile.ibm; for LINUX machines use make -f Makefile.linux;
others can simply enter make.

5) Change directories to worketa_all/dprep/install and enter the command:


build_dprep

This script builds the dprep (data preparation) executables.


If the compiler complains about unresolved references to items such as
bacio_, try changing the system definition in the bacio library. Remake the
bacio library, and then try reruning the build_dprep job.

6) Extract the topography data

If the topography data have been downloaded, they should now be placed
into worketa_all/eta/static/topo. If not, the data can be retrieved from
http://www.emc.ncep.noaa.gov/mmb/wrkstn_eta/topo.html
The data are grouped into tiles covering 30º of latitude by 60º of longitude.

The file names (e.g., U20N130W) give the coordinates of the southwest corner
of the 10º X 10º region covered by the file.

7) Land/sea data information

The package defaults to use a 30" land/sea mask dataset. This dataset is
broken up by latitude, with each tile covering 5º. The data needed for a given
domain will automatically be copied into worketa_all/eta/bin/ and
uncompressed by a script when initializing the model (described below). The
naming convention is that the northernmost file is smask.30s.01 and the
southernmost file is smask.30s.36.

The other two datasets (global_4m.ieee, global_8m.ieee) have 4 minute and 8


minute resolution, respectively, and are of poorer quality than the 30" data. If
using the 4 or 8 minute data, uncompress the appropriate file in
worketa_all/eta/bin and specify the proper SEARES value when editing the
ETAIN file (step #1 of "Setting up and running the model") below.

8) Change directories to worketa_all/eta/src/configure and edit the make.inc


file to set the compiler names and options. Examples from several
workstation platforms are included in this directory. The -DLITTLE flag is
critical for DEC and LINUX users, and the -DDEC flag is needed for DEC
users.

9) Change directories to worketa_all/eta/install and edit the set_parmeta


script. This script sets information later used to compile the model, and
installs some resolution-dependent files.

IM: Number of mass grid points along the first row, essentially half the
total number of grid points in the west-east direction due to the horizontal
staggering of mass and wind points (i.e., an IM=50, JM=99 grid is a square
domain).

JM: Number of rows in the north-south direction (NOTE: MUST BE ODD).

LM: Number of vertical levels. For Eta vertical coordinate model runs it
must be set to 38, 45, 50, or 60 to work with the included deta and radiation
files. Sigma vertical coordinate runs require that LM be set to 25, 30, 38, or 45
to work with the included radiation files.
LSM: Controls the number of output levels for isobaric data (discussed
below in "The post-processor" section). Should not require changing.

PT: The top pressure of the model atmosphere; 25 hPa is the value used at
NCEP, and it must be set to 25 or 50 to work with the included radiation files.

HVAL: Character string used for symbolic links between files and
FORTRAN unit numbers. Most machines need HVAL="fort.", but HP uses
HVAL="ftn".

INPES, JNPES: These define how the model grid will be distributed over
multiple processors (the model integrates on INPES x JNPES processors).
Users running the model on a 1-CPU machine or a machine without MPI
should set these equal to one.

10) Go to worketa_all/eta/install and enter the command: buildall

This script will set paths, use the information from the set_parmeta file to
configure several items, and ultimately compile the model code, codes used to
initialize the model, and codes that post-process model output.

11) You are now done with the initial set up.
Changing the model dimensions (IM, JM, LM) or the number of CPUs
(INPES, JNPES) requires repetition of steps 9 and 10.

Getting the input data

1) Go to worketa_all/dprep/bin and decide on an input data set. The


workstation Eta can be initialized from global GFS grib2 data, from the Eta
model on grids 104, 212, 218 (always in tiled form), and 221 (usually in tiled
form), or from NCEP global reanalysis data. There are appendices with
details on: the WAFS form of the AVN ("WAFS input data"), tiled grid 221
("tiled 221 input data"), tiled grid 218 ("tiled 218 input data") and global
reanalysis data ("Reanalysis input data"). The areas covered by the Eta output
grids and the operational 12 km Eta domain are shown in regions.gif. Scripts
have been included to get the data via FTP and put it into the format needed
to initialize the model. The scripts are used in the following way:

inputdata.scr input1 input2 input3 input4

input1 is the model cycle (00, 06, 12, or 18). It assumes the current day.

input2 is the final forecast hour of model data to get, effectively setting a limit
on the length of the workstation Eta forecast.

input3 is the interval in hours between input model forecasts (sets the
frequency at which the lateral boundary conditions can be updated; typically
3 or 6).

input4 is the form of data to get (gfs2, AVN, wafs, 104, 212, 221, tile, or
tile218).
EXAMPLE: If the user wanted GFS grib2 data for a 24 hour model run based
on the 00Z cycle with boundary condition updates every 6 h, the following
command would be entered:

inputdata.scr 00 24 06 gfs2

2) Surface fields

Descriptions of the included time-independent fields located in


worketa_all/eta/bin:

islope_1d_ieee, isltyp_1d_ieee, ivgtyp_1d_ieee :


These specify the slope, soil, and vegetation types.

alb1_ieee, alb2_ieee, alb3_ieee, alb4_ieee :


These are seasonal albedo files which are interpolated in time to get a starting
value of albedo. This initial albedo value is refined by code that considers
surface characteristics, such as snow cover and vegetation type.

maxsnoalb.bin :
A global file containing a maximum albedo for snow-covered surface. For
example, a coniferous forest (with dark trees rising above the snow) will have
a lower maximum snow albedo than snow-covered grassland.

veg.eta.grb :
This file contains vegetation fractions, stored as monthly values and
interpolated in time to obtain the appropriate fractions for the day of the
model run.

imsmask.ascii :
This file contains the land/sea mask used when processing the IMS snow
data (a high-resolution NESDIS product that defines snow and ice cover, but
not depth).

rfusaflw_ieee:
This file contains the land/sea mask used when processing the U.S. Air Force
snow data (a lower-resolution product used to define the model snowdepth).

Setting up and running the model

1) Go to worketa_all/eta/bin and edit the namelist file ETAIN to set some


details about the model run. NOTE: only edit the ETAIN file located in
worketa_all/eta/bin; the ETAIN file in worketa_all/eta/runs is copied from
this file.

TLM0D,TPH0D: These are the center longitude (ºE positive, ºW negative)


and latitude of the model domain.

IM,JM,LM: The dimensions of the computational domain. These values


were defined in set_parmeta in worketa_all/eta/install and should not be
changed here.
PTINP: The model top pressure in Pa; the value was set in set_parmeta
and should not be changed here.

DLMD,DPHD: The grid spacing in degrees in the east-west and north-


south directions within the rotated lat-lon coordinate of the Eta model. An
approximate relationship between horizontal grid spacing and DLMD &
DPHD values is given below in the description of DT.

DT: The fundamental time step of the model (in seconds), which is a
function of horizontal resolution. Some standard values used at NCEP are
given below; they should provide computational stability for all flows. An
overly long time step leads to model instability, typically apparent as a
dramatic, non-physical oscillation in surface pressure. Note that the given
values of DT divide evenly into 3600 so the proper number of
physics/adjustment steps will be performed each hour.

DLMD,DPHD appx. hor. res. (km) DT(s)


.067,.066 10 20
.099,.097 15 30
.154,.141 22 60
.222,.205 32 90
.333,.308 48 120
.577,.538 80 200

IDTAD: The frequency of advection time steps (should remain 2, which


means that advection is called every other fundamental time step).

IMONTH,IDATE,IYEAR,ISTRTIM: Together these specify the initial time


of the run.
ISTRTIM is the hour of the starting time (e.g., a run based on 12Z data has
ISTRTIM=12)

NSOIL: The number of soil levels (should remain 4).

NINIT: The number of input data files.

TBOCO: Interval in hours between successive input forecast files (typically


3 or 6).

INIT_IN(#):
The names of the input data files. The naming convention is
YYMMDDCCHHH.ETAmod,
where YYMMDD is the year, month and day, CC is the cycle time, HHH is
the hour of the forecast, and mod is the extension given to the particular input
dataset (104, 212, 221, wrk, _avn, _tile, _wafs, _rnl). It is possible to set up an
automated system to automatically specify these file names if running in real-
time (see Appendix: Automating the process). This list should contain NINIT
file names.
INIT_OUT: The directory where the initial and boundary condition files
will be written (should not require modification).

TOPO_IN: Location where the raw (10º x 10º) topo files are stored.

TOPO_OUT: Output file of topography data on the current model


domain.

SEARES: The resolution of the land/sea mask data to use (30, 4, or 8).
Refer to step #7 in "Initial setup".

FRACLK: A parameter set between 0 and 1 to help limit/encourage the


inclusion of small bodies of water in the land/sea mask. Smaller values will
tend to reduce inclusion of smaller lakes and ponds. Most critical when using
the 30" data, which has incredible levels of detail.

GRIBSOIL:
If .TRUE. then soil temperature and moisture are initialized from the input
GRIB dataset.
If .FALSE. then soil fields are initialized from the sfcanl file.
This must be set to .FALSE. if initializing from the WAFS form of the
AVN! Described more in the appendix "WAFS input data".

SIGMA: This logical switch defines the vertical coordinate to be used.


When SIGMA is set to .false. the Eta coordinate is used; when SIGMA is .true.
the sigma coordinate is used.

REAN: A logical switch. If .TRUE. , then surface characteristics will be


read from the REAN_SFC file. Should remain .FALSE. unless initializing from
NCEP global reanalysis files.

REAN_SFC: Path of the reanalysis file to be used to initialize surface and


soil characteristics. Only relevant when using NCEP global reanalysis data
and REAN=.TRUE.

2) enter the command: new_prep.sh

This script runs programs that generate a topography file and the initial and
lateral boundary conditions. The topography needs to be generated only once
per domain, so the line of the script running etatopo.exe can be commented
out if multiple runs are made on the same domain. This script generates two
files of standard output, topo.out and initbc.out.

A new function of this script is to create a station list used when generating
hourly BUFR output (described more fully in Appendix: BUFR output). The
included list of possible stations only contains stations located within the U.S.
operational Eta domain.

One can add their own stations by following the format within the file
eta_staids.parm in the worketa_all/staids directory. Here is a sample line:
724060 39.18N 76.67W KBWI 10 BALTIMORE/WASH_INTL MD 47 == TAF
2-99

724060 is the WMO Index number with a zero at the end


39.18N is the latitude (always a positive number, followed by N or S)
76.67W is the longitude (always a positive number, followed by E or W)
KBWI is the ICAO identifier
10 helps control which grid point gets selected. Only the first digit is
relevant. A "0" takes the nearest gridpoint regardless of whether it is land or
sea, a "1" forces the nearest land point to be selected, and a "2" forces selection
of the nearest water point.
BALTIMORE/WASH_INTL MD is a description of the location.
47 is the station elevation in meters, which is only a description.
== TAF 2-99 is another description that is not used by the code.

NOTE: Make sure the added rows have columns which line up with the
current entries in the file; this formatting is important.

3) enter the command: cd ../runs

4) edit the fcstdata.meso file, which controls details of the model run.

&FCSTDATA
TSTART=00.0,TEND=24.00,TCP=99.0,RESTRT=.FALSE.,SINGLRST=.TRUE.,
SUBPOST=.FALSE.,
NMAP=5,TSHDE=00.0,06.0,12.0,18.0,24.0,99.0,99.0,99.0,99.0,99.0,
99.0,99.0,99.0,99.0,99.0,99.0,99.0,99.0,99.0,99.0,
99.0,99.0,99.0,99.0,99.0,99.0,99.0,99.0,99.0,99.0,
99.0,99.0,99.0,99.0,99.0,99.0,99.0,99.0,99.0,99.0,
99.0,99.0,99.0,99.0,99.0,99.0,99.0,99.0,99.0,
SPL=10000.,15000.,20000.,25000.,30000.,35000.,40000.,45000. ,50000.,
55000.,60000.,65000.,70000.,75000.,80000.,85000.,90000. ,92500.,
95000.,100000.
NPHS=8,NCNVC=8,NRADSH=1,NRADLH=2,NTDDMP=1,
TPREC=6.0,THEAT=6.0,TCLOD=6.0,
TRDSW=6.0,TRDLW=6.0,TSRFC=6.0
NEST=.FALSE.,HYDRO=.TRUE.,SPLINE=.TRUE.
&END

TSTART: Sets the beginning forecast hour (=0.0 unless restarting a forecast
as discussed in Appendix: Restarting a forecast).
TEND: Sets the ending forecast hour.
RESTRT: Logical switch that tells the model whether it is starting from an
initial condition file (if =.FALSE.) or from a model restrt file (if =.TRUE.).
Typically set to .FALSE.; an example of when it might be true is given in the
appendix ("Restarting a forecast").
SINGLRST: Should always be .TRUE. for what is described in this manual.
NMAP: Specifies the number of times at which the model will generate
output.
TSHDE: List of the forecast hours for which the model will generate
output. The model considers the first NMAP values in the list. NOTE: Must
generate output at every forecast hour if planning on generating BUFR output
(forecasts at specific points, see "Appendix: BUFR output" for more details).
SPL: These are the pressure levels (in Pa) at which isobaric output can be
generated by the post-processor. The number of levels defined should be the
LSM value defined in set_parmeta in step #9 of the "Initial setup" section.
NPHS: The physics package is called every NPHS time steps. The surface
physics are usually run about every 10 minutes of forecast time (NPHS set to
an even integer such that NPHS x DT 600). For example, a 15 km resolution
run using a 30 s time step should use NPHS = 20. Runs with high resolution
in the horizontal and vertical may wish to run with NPHS set such that the
physics are called about every 300 s.
NCNVC: The frequency of calls to the convective parameterization.
Should be the same value as NPHS.
NRADSH,NRADLH: The interval in hours between calls to the radiation
schemes (shortwave and longwave). These values are typically 1 and 2,
respectively.
NTDDMP: The frequency at which the divergence damping is applied
(typically 1, i.e., at every time step).

The next six values specify the number of hours over which the following
types of parameters accumulate prior to being reset to zero. They should be
set considering the frequency at which output is generated (i.e., resetting
precipitation totals every 2 h will be problematic if output is generated every
3 h).

TPREC: precipitation
THEAT: average latent heating associated with precipitation
TCLOD: average cloud fractions
TRDSW: short wave radiation
TRDLW: long wave radiation
TSRFC: surface fluxes (e.g., average sensible heat flux)

NEST: should remain .FALSE. for workstation Eta purposes.

HYDRO: .TRUE. uses the default hydrostatic dynamics, while .FALSE.


invokes Janjic's nonhydrostatic extensions to the Eta model. Note: Running in
nonhydrostatic mode adds significantly to the run time (in some cases around
a 50% increase), and will have a larger forecast impact at resolutions finer
than 10 km.

SPLINE: Only relevant when running with the sigma coordinate. If .TRUE.
a spline fit is used when producing output. This technique produces much
smoother underground fields (such as reduced sea-level pressure), but has
little impact at above-ground output levels. Recommendation is to set the
switch to .TRUE.

5) Running the model:

enter the command: run.com_mpi possibly with the following option:

kf - will run the model using Kain-Fritsch (KF) convection rather than
Betts-Miller-Janjic (BMJ) convection. Due to the significantly different
approaches taken by these convection schemes, large differences in
precipitation and low-level temperatures are possible when switching from
one to the other.

If no option is given after the command, BMJ convection will be used.

As the model runs, it will generate restrt files [with names such as
restrt000.quilt.t00s if running the model on a 1-CPU computer, or
restrt000.t00s if the model is run on more than (INPES x JNPES) CPUs] at each
specified output time. These restrt files contain the model forecast, but must
be post-processed to be useful.

The post-processor

1) Run the post-processor with the following command:

outjob_special stime etime tint type

where stime is the starting time (typically 00), etime is the final forecast
hour, tint is the time interval between forecast output files, and type is an
argument set to latlon or lmbc to interpolate to a latitude-longitude or
Lambert Conformal output grid, respectively.

This script will perform a number of functions: "quilt" the restrt files
(primarily calculate a reduced sea-level pressure, which is not done in the
integration of the model) if needed, run the post-processor to create GRIB
output on the model's native grid, and interpolate the GRIB output onto a
standard projection (if the fourth argument type is set to either latlon or
lmbc).

As described more fully in the appendix (BUFR output), the job


outjob_special_bufr should be run in place of outjob_special if generating
hourly BUFR output.

The remaining discussion in this section is fairly detailed, and not critical for
the first-time user. It describes how to control which data gets output by the
post (i.e., fields, levels) and how to specify a specific output grid.
Controlling the post

The cntrl.parm file (unit 14) controls the fields and levels that are written to
the output GRIB file. Each parameter is controlled by two lines in this file.
(TEMP ON PRESS SFCS ) Q=( 16), S=( 8), SCAL=(-3.0), SMTH=(00 00 00)
L=(00000 00000 00000 00000 00000 11111 11111 11110 00000 00000 00000
00000)

The first line describes the field, sets the Q and S values (no longer used), and
defines the precision and smoothing.

SCAL defines the precision that is written out to the GRIB data. Positive
values denote decimal scaling (maintain that number of significant digits),
while negative values denote binary scaling (precise to ; SCAL=-3.0 gives
output precise to the nearest ). Higher resolution runs should output the data
with more precision if performing complex diagnostics on the data that use
higher order derivatives (e.g., Q vectors, vorticity advection).

The final item on the first line is the smoothing block SMTH. The first
value sets the number of smoothing passes applied to the staggered (where
mass and wind points are separate) grid and the second value sets the
number of smoothing passes applied to the filled grid (the post "fills" the
native grid so there are mass and wind data at all grid points). The third value
activates a 25-point Bleck filter on the output grid, which for the workstation
post is the filled grid. The Bleck filter removes small scale features and largely
preserves extrema in the data even after multiple applications. As seen in the
cntrl.parm file, smoothing typically is not performed on most fields.

The second line controls the output levels (and whether a field will be created
at all) by providing on/off switches for the output.

For multi-level data the switches (1 = output, 0 = do not output) control


which levels to create output for, with the lowest pressure level (furthest from
ground) controlled by the leftmost element of the string. This ordering can be
reversed by using 2's in place of 1's; 2's control output from the ground up.
For isobaric data the levels being switched on and off correspond to the SPL
values in the fcstdata.meso file, and the first LSM values in the string are
used. For single level data, the leftmost number is used as the switch (1 =
output, 0 = do not output).

Examples (assuming LSM=39, with SPL values defined every 25 hPa from 50
hPa to 1000 hPa):

(MESINGER MEAN SLP ) Q=( 8), S=( 138), SCAL=(-0.1), SMTH=(00 00 00)
L=(10000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000
00000)

(TEMP ON PRESS SFCS ) Q=( 16), S=( 8), SCAL=(-3.0), SMTH=(00 00 00)
L=(00000 00000 00000 00000 00000 11111 11111 11110 00000 00000 00000
00000)

(TEMP ON PRESS SFCS ) Q=( 16), S=( 8), SCAL=(-3.0), SMTH=(00 00 00)
L=(22222 22222 22220 00000 00000 00000 00000 00000 00000 00000 00000
00000)

Translations: The first output field is a mean sea level pressure reduction
designed for use with the Eta model. SCAL=-0.1 specifies that the value is
stored to a precision of , or pretty close to the nearest Pa.

The second example is isobaric temperature. The initial 25 0's suppress the
output of this field between 50 hPa and 650 hPa, while the subsequent 14 1's
generate output between 675 hPa and 1000 hPa. SCAL=-3.0 writes out the
data to the nearest 0.125.

The third output field is identical to the second, but by using 2's instead of 1's
it is clearer that output is being generated for the 14 output pressure levels
closest to the ground.
Adding a field

More fields are included in the file cntrl.example; the easiest way to add a
field is to copy one of these into the cntrl.parm file. The file AVBLFLDS in
worketa_all/post_new lists all fields available for posting, but in a different
format.

Suppose highest freezing level data is desired. Searching through the


AVBLFLDS file finds the proper two lines.
DATA IFILV(165),AVBL(165),IQ(165),IS(165) &
/1,'HIGHEST FREEZE LVL ',007,204/
The crucial piece of information from above is actually the character string
in quotes on the second line. The numbers listed after the character string give
the GRIB specification of the field. The first value is the GRIB parameter
number (007 = geopotential height) and the second is vertical coordinate (204
= highest tropospheric freezing level; a special NCEP definition). The number
preceding the character string is a switch that indicates whether the variables
are stored on mass (1) or wind (0) grid points.

To add this field into the cntrl.parm file, this character string (including
any spaces) is placed between parenthesis on the first line of the cntrl file.
Proper formatting is crucial in the cntrl.parm file; make sure any lines added
match the format of the other lines in the file. Q and S can be set to any value
as they will be replaced by the GRIB definitions described above as the
program runs. Scaling and smoothing are set to their desired values, and
since this is single level data, only the leftmost element of the second line is
set to 1. The lines added to the cntrl.parm file would look something like this:

(HIGHEST FREEZE LVL ) Q=( 7), S=( 204), SCAL=(-2.0), SMTH=(00 00 00)
L=(10000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000
00000)

Interpolation to other grid projections

The workstation post creates GRIB output on the native e-grid (files with
names like EGRD3Dhhh.t00s), but this output on the rotated latitude-
longitude projection of the Eta model is not readily degribbed by most
software packages. The outjob_special script uses the included GRIB utility
copygb to interpolate the native grid data onto regular lat-lon (latlon_hhh)
and Lambert Conic Conformal grids (lmbc_hhh), where hhh represents the
forecast hour. These interpolated GRIB files on standard map projections
should be much easier to degrib.

One item to point out about copygb is that the binary precision specified in
the cntrl.parm file will not automatically carry over to the copygb output files.
The copygb lines within the outjob_special script specify a scaling though the
"-s" flag, but this scaling is applied equally to all fields. This indiscriminate
scaling might make the lmbc and latlon files unnecessarily large. A way to
maintain control over the precision of various fields is to use more decimal
scaling (SCAL > 0) in the cntrl.parm file. Decimal scaling from the original
EGRD3D file will automatically carry over to the interpolated GRIB fields
without using a "-s" option. A possible solution is given in the cntrl.dec file
which avoids using binary scaling. To use decimal scaling exclusively the
following changes would need to be made to the outjob_special file: 1) change
the symbolic link from cntrl.parm to cntrl.dec; 2) remove the -s"2,-3" from the
copygb.x lines. This purely decimal scaling option was not thoroughly tested,
so it may require some tuning by the user.

The post generates the files outjob_input_lat and outjob_input_lmbc that


define the destination grids for copygb. The values in these files are
appropriate for the domain and resolution of the model, but they could be
modified by the user if desired. (NOTE: The post will overwrite these files
each time it runs, so save to another file name if making modifications)

The file outjob_input_lat contains a string of numbers beginning with 255 that
describes the lat-lon output domain. These numbers have the format:

255 0 IDIM JDIM LAT1 LON1 128 LAT2 LON2 DLAT DLON 64

where

IDIM, JDIM: The dimensions of the output regular lat-lon grid.

LAT1, LON1: The latitude and longitude of the southwest corner of the
output grid expressed in millidegrees. For example, a corner point at 15ºN,
112.5ºW would be expressed as 15000 -112500.

LAT2, LON2: As with LAT1, LON1, but for the northeast corner of the
output grid.

DLAT, DLON: These are the spacings between output grid points in
millidegrees of latitude and longitude.

The file outjob_input_lmbc has a slightly different string of numbers:

255 3 IDIM JDIM LAT1 LON1 8 CLON DX DY 0 64 TLAT1 TLAT2

where

IDIM, JDIM: These are the dimensions of the Lambert Conformal grid.

LAT1, LON1: The southwest corner specified as in the lat-lon output grid.

CLON: The center longitude of the lambert conformal projection. It will


default to be the same as TLM0D (the center longitude of the model).

DX,DY: These are the grid spacings at the true latitude in the X and Y
directions. Values are expressed in meters, and default to the approximate
spacing of the filled native e-grid (with both mass and wind data at all
points).
TLAT1, TLAT2: These are the "true latitudes" of the lambert conformal
projection. By default they both are equal to the center latitude of the model.

These values should provide sufficient information to "degrib" the data


regardless of the software package being used.

Aside for GEMPAK users:

A simple degribbing script for GEMPAK is included in the package. Running


outjob_special with five arguments instead of four will automatically degrib
either the lmbc or latlon data into a GEMPAK datafile in the directory
worketa_all/gem_out. The fourth argument is either lmbc or latlon, and the
fifth argument is the name of the GEMPAK datafile.

EXAMPLE: To post-process 12 h of model data at a 3 h interval, interpolate to


a Lambert Conformal grid, and finally degrib into the GEMPAK file
lmbc_test.grd, the following command would be used:

outjob_special 00 12 03 lmbc lmbc_test.grd

Additional features
Time dependent data

For downloading of time dependent data go to directory


worketa_all/data and run script get_data.sh. Script will download global GFS
forecast data set on standard pressure levels in grib2 format up to 48h of
forecast with 6h interval and for actual date.

If you want to download GFS forecast up to 72 or more hours open script and
edit line

for ftime in 00 06 12 18 24 30 36 42 48;do

appending more forecast hours.

Script will also download actual data for surface time dependent variables,
snow and sea surface temperature. Some of surface data will be removed
from NCEP servers during September and December 2008, please track
changes on page
http://www.nco.ncep.noaa.gov/pmb/docs/GRIB1_to_GRIB2.shtml.

Reanalysis input data

This version incorporates code that allows Eta model runs to be made starting
from NCEP global reanalysis data. Two types of reanalysis files are utilized:
Isobaric analyses (filenames of type pgb.f00yymmddhh, where yymmddhh is
an eight-digit number specifying year, month, date, and hour), and surface
fields on a gaussian grid (filenames of type grb2dyymmddhh, with
yymmddhh having the same meaning as above). "pgb" files must span the
entire length of the desired Eta model forecast, while a "grb2d" file is needed
only for the initial model time. These files should be placed in the
worketa_all/data/grib/ directory for processing.

The script etagrib_reanalysis.sh script processes the "pgb" files. It requires


three line arguments. Example:

etagrib_reanalysis.sh stime etime int,

stime is the starting date and time (yymmddhh),

etime is the ending date and time (yymmddhh),

int is the interval in hours between reanalysis files (hh, should be 06)

In the ETAIN file in the worketa_all/eta/bin/ directory, be sure to set


REAN=.TRUE., and specify your "grb2d" file in the definition of REAN_SFC.

Forecasts generated from global reanalysis data may be of lower quality than
those initialized from other data sources. The data are coarser than the real-
time sources, particularly for surface characteristics such as snow cover, and
soil temperature and moisture.

Nesting

Nesting within the Eta model is one way (the higher-resolution nest does not
influence the lower resolution "parent" domain). Nesting within a domain,
rather than simply running a higher resolution domain from downloaded
input grids, offers potential advantages in the resolution and time frequency
of lateral boundary conditions. The process outlined below differs from the
nesting done at NCEP, but allows for easier implementation (no additional
codes needed) within the workstation Eta.

The parent domain is run first, and output should be generated every hour if
possible. It is also important to generate isobaric output every 25 hPa from 50
hPa down to 1000 hPa, as well as soil temperature and moisture at all four soil
levels. This initial run should be postprocessed, with Lambert Conformal
(lmbc) output generated, as the lmbc grid closely matches the grid of the
model domain. Go to the worketa_all/dprep/bin/ directory and run the
inputdata.scr job with "lmbc" as the grid type. For example, inputdata.scr 00
24 01 lmbc, would process 24 h worth of the parent run at a 1 h interval. This
will process the output from you parent run in the same way it would process
an operational Eta or AVN run. The output files in worketa_all/data/prep/
will have filenames ending in "ETAwrk"

One must then return to worketa_all/eta/bin/ and edit the ETAIN file to
define the higher-resolution nest run to be initialized with the "ETAwrk" files.
At this point it becomes another normal model run, which is initialized with
the new_prep.sh job and run with the run.com_mpi script as described in the
main body of this manual.
Long-range forecasts (beyond 256 hours)

The post-processor code will have problems processing forecasts beyond 256
h. A slight code modification enables longer forecasts. In the post code
worketa_all/post_new/, the routine GRIBIT.f needs a one-line change. The
definition of ID(17) on about line 181. When ID(17)=1, the output time unit is
one hour. Setting ID(17)=10 changes the output time unit to three hours,
allowing proper processing out to 3 x 256 = 768 hours. Setting ID(17)=11
changes the output time unit to six hours, allowing processing out to 1536
hours, but going beyond 999 hours will cause other problems.

BUFR output

In addition to the more familiar GRIB-based output, where output is


interpolated onto a grid covering a region, BUFR-formatted output can also
be generated. These BUFR-formatted output data are not interpolated onto a
grid; they represent information directly from a model gridpoint at an hourly
interval. Thus it provides highly detailed information for a specific location.

IMPORTANT: Generating BUFR output requires output of restrt files at each


forecast hour.

The new_prep.sh script generates a binary file containing information about


the stations in the model domain. After the model has run, the special post-
processing job outjob_special_bufr is run. It generates GRIB output like the
standard outjob_special job, then runs two additional programs to create the
class1.bufr.t00s file. The class1.bufr.t00s file contains the hourly station data in
BUFR format.

Automating the process

When the workstation Eta is run in real-time over the same domain, the
editing process on the ETAIN file becomes tedious. After all, the only items
being changed are date specifications. A crude sample of how the process can
be automated is included with the files ETAIN_raw and new_prep.sh_auto in
the worketa_all/eta/bin directory. The script new_prep.sh_auto uses the sed
command to substitute the current date for variables in the ETAIN_raw file,
and output an ETAIN file. To facilitate running new_prep.sh_auto as a
crontab job it was required to change directories to an explicit path
(equivalent to worketa_all/eta/bin) so the relative paths in the rest of the
script would make sense. Similar directory specifications are needed for the
"data_prep" job in worketa_all/dprep/bin and with run.com_mpi in
worketa_all /eta/runs.

The digital filter

The Eta model has a filter that can be applied at the beginning of the forecast
to give smoother fields over the first few hours of the forecast. To use it, the
call to DIGFILT in worketa_all/eta/src/etafcst_all/EBU.F needs to be
uncommented. Then in worketa_all/eta/src/etafcst_all/DIGFILT.F the
parameter NTIM needs to be set. NTIM is the number of time steps that the
model will integrate forward and backward from the 0 h forecast time while
filtering. Larger values of NTIM cut off lower-frequency phenomena and
cause more smoothing. Overly large values of NTIM cause the model to fail.
A good starting point for NTIM is a value that will give NTIM x DT 2400 s.
Filtering is most useful when going from a coarse initial analysis to a very
high resolution Eta model run. Filtered and unfiltered forecasts converge
fairly quickly; filtered runs may give more aesthetically pleasing results
during the initial 3-6 h of the forecast.

Restarting a forecast

This option would primarily be useful if for some reason the model could not
be run over a single block of time. Maybe there is a conflict with other users
on a shared computer resource. In any case, one recent addition to the model's
capabilities (courtesy of T. Black) is a "true" restart capability. For example, an
intended 24 h forecast has only integrated 12 h when the model run must be
halted. Rather than starting again from scratch, the run can be restarted at the
12 h forecast point and integrated to completion. The code has the intelligence
to skip the necessary records in the lateral boundary condition file. (NOTE:
This new capability will create problems if the user tries to restart the model
as has been done in the past with multiple lateral boundary condition files).

To use this option, the TSTART value in the fcstdata.meso file should be
changed to the hour where the model will be restarted, and RESTRT should
be set to .TRUE. The values of TSHDE should reflect the output desired from
the restarted run. Run outjob_special on the initial portion of the run; this step
is important to "quilt" the file to be restarted from, assuming the run is being
made on a single processor. The run.com_mpi file needs to be modified in
two ways: the removal of restrt* files near the top should be removed or
commented out, and the link to init.file should be changed to a link to the
appropriate restrt file.

WAFS input data

The WAFS form of AVN has global data divided into 8 90º x 90º octants:

a) The region covered by each octant is shown in the GIF image


wafs_octs.gif in worketa_all/dprep/bin.

b) The user of this dataset may wish to edit the list of octant numbers to
process found near the end of process_grib.scr. This list must end with the
number -9.

c) WAFS files are small for two main reasons: they contain 11 isobaric
levels (the full AVN grids have 26), and the data is "thinned" near the poles to
counter the convergence of meridians. The resolution is 1.25º x 1.25º near the
equator.

d) sfcanl is the surface analysis from an AVN model run; it must be used
for soil field information when using WAFS data, as the WAFS grids
themselves do not have soil information. The script that processes WAFS data
automatically downloads the appropriate sfcanl file. The logical switch
GRIBSOIL in the file ETAIN specifies whether GRIB-based or sfcanl-based
soil fields will be used. The sfcanl file is a "big-endian" binary file, so
LINUX/DEC users will have to modify the program READSFC.f in
worketa_all/eta/src/prep/initbc where the sfcanl file is opened and read. A
sample open statement is provided in the code.

Tiled 221 input data

Special comments about the grid 221 data, which is obtained in "tiled" form:

a) The region covered by each of the 36 tiles is displayed on the webpage


http:// www.emc.ncep.noaa.gov/research/tiles.221.html. Some tiles along
the boundary of this region are not completely filled with data, as this output
grid extends beyond the computational domain of the operational Eta along
part of the boundary.

b) The user of this dataset will have to edit the "tilelist" string in the
get_data.scr file to obtain the tiles needed for a particular domain. The code
which merges these tiles is fairly general, so any normal square/rectangular
region should work.

c) The tiled grid 221 dataset provides 32 km horizontal resolution data,


and due to the tiling a limited volume of data will cover a typical workstation
domain. The region covered includes essentially the entire computational
domain of the operational Eta, opening up a vast region to workstation Eta
runs.

Tiled 218 input data

Special comments about the grid 218 data, which is obtained in "tiled" form:

Most comments above describing the tiled 221 files apply here, with
important differences being that the resolution is 12 km, there are 54 tiles, the
region covered is a limited subset of the Eta domain, and a map of what is
covered by each tile is available in worketa_all/dprep/bin/218_tiles.gif

The Eta: brief history, summary, results, discussion

Fedor Mesinger
Earth System Science Interdisciplinary Center (ESSIC), University of
Maryland, College Park, Maryland, and
NCEP Environmental Modeling Center, Camp Springs, Maryland

The Eta model is a descendent of the original code that I wrote in early
1973. The approach followed was to use to the extent possible the schemes
and ideas of Akio Arakawa, in a limited area model on the E grid, but with an
improved grid coupling scheme (Mesinger 1973). That very first code already
had features that remained in the “standard” Eta model and also in that of the
Eta “sibling” NCEP’s NMM (Nonhydrostatic Mesoscale Model) code until the
present time: the Lorenz-Arakawa first and second moment conserving
vertical advection scheme (e.g., Arakawa and Lamb 1977), and a lateral
boundary conditions (LBC) scheme (Mesinger 1977). This LBC scheme has
variables defined along a single outer line of grid points, with one less
condition specified at the outflow than at the inflow points – as required by
the mathematical nature of the equations being solved (e.g., Charney 1962).
At the outflow points tangential velocity components are extrapolated from
inside of the model domain; thus, there is no “boundary relaxation” that
became almost universally used a few years later and remains so at present.
Having learned at a meeting in May 1973 of the scheme I called “forward-
backward”, that seemed ideal for the application of the 1973 grid coupling
method (Mesinger 1974), this very first code was rewritten now with the
participation of Janjic, so as to use the grid coupling within the forward-
backward scheme. The grid coupling scheme suppresses separation of
solutions on two C-subgrids of the model’s E-grid. Janjic has extended the
1974 grid coupling scheme to the 3D case (Janjic 1979). The scheme is used in
a split mode, with short “adjustment” gravity-inertia time steps, yet for
stability twice as long as the leapfrog scheme would permit; and steps for
advection twice as long as the adjustment steps. Janjic has also added a
“minimum” dry physics. The first short report in English on the use of the
resulting 3D code emphasized the successful performance of the grid
coupling in combination with the lateral boundary condition scheme in
controlling the lateral boundary noise (Mesinger and Janjic 1974).
Over the years numerous improvements and code rewritings followed.
The major ones in terms of being either unique or pioneering in its
implementation in the Eta, and in remaining in the code until present, might
be listed as follows – roughly in the chronological order.
• Arakawa-type momentum advection scheme for the E/B grid of Janjic
(1984). The scheme conserves enstrophy and energy, as defined on the C-
grid, in horizontal advection within the nondivergent barotropic part of the
flow. As a result it maintains average wavenumber within the horizontal
nondivergent flow, thereby enforcing a strong constraint on the false
systematic cascade of energy toward smaller scales. Thus, it very effectively
suppresses the spurious generation of noise in the advection process;
• The eta vertical coordinate (Mesinger 1984) that achieves approximately
horizontal coordinate surfaces, and thus prevents pressure gradient and other
errors due to steep topography that can occur with terrain-following systems.
The approach of Simmons and Burridge (1981) was generalized in Mesinger
(1984) to the eta to conserve energy in transformations between the potential
and the kinetic energy in space differencing; and generalized further to the 3D
case by D. Zupanski, then Gavrilov (Mesinger et al. 1988). The material of
Mesinger (1984) is included in a review paper by Mesinger and Janjic (1985).
• Numerous features of the comprehensive physics package, put together
originally by Janjic (1990, 1994). The package includes
- a modified Betts-Miller convection with the scheme choosing its
reference moisture profiles depending on a nondimensional “cloud
efficiency” (Janjic 1994; see also a convection scheme essay written for
participants who want to do lab problems using the scheme);
- an explicit parameterization of the molecular sublayer over water
surfaces with three regimes according to Liu et al. (1979), Janjic (1994);
- Mellor-Yamada 2.5 turbulence scheme with a unique treatment of its
realizability problem (Mesinger 1993; Janjic 2002);
- wind direction dependent form drag scheme (Mesinger et al. 1996);
- Zhao (Zhao and Carr 1997; Zhao et al. 1997) or, in later versions, Ferrier
(Ferrier et al. 2002) cloud physics scheme. The code using the Zhao scheme
can be found on the DVD that accompanied the March 2006 issue of the
Bulletin of the American Meteorological Society, since this code was used for
the North American Regional Reanalysis (NARR, Mesinger et al. 2006). The
Zhao scheme version of the Eta, being more efficient, may also be a good
choice for seasonal forecasting and regional climate applications of the model;
- Noah land-surface scheme (Chen et al. 1996; Ek et al. 2003).
• An option to run the model as nonhydrostatic, using the scheme of Janjic
(Janjic et al. 2001). The scheme approximates the vertical acceleration by time-
differencing the hydrostatically computed vertical velocity, thus avoiding an
extra prognostic equation for the vertical velocity as needed in conventional
nonhydrostatic models.
While the “Betts-Miller-Janjic” (BMJ) scheme can be considered a
“standard” Eta convection scheme, an option to use the Kain-Fritsch scheme
(Kain and Fritsch 1993; Kain 2004) is available and tends to be a popular Eta
lab problem.
The Eta model officially became the operational NCEP regional forecasting
model in 1993, having demonstrated skill considerably superior to that of the
previous U.S. NMC (National Meteorological Center) regional operational
models LFM (Limited-area Fine Mesh) and the NGM (Nested Grid Model).
This increased skill was demonstrated to derive to a significant degree from
the use of the eta coordinate (e.g., Mesinger and Black 1992). A two-year
parallel in the mid- to late nineties showed a substantial superiority of the Eta
also over the so-called Regional Spectral Model (RSM), e.g., Mesinger (2000).
An Eta downstream windstorm result much worse than that of the sigma
system MM5 model, and a subsequent paper by Gallus and Klemp (2000) led
however to a rather widespread belief that the eta coordinate is “ill suited for
high resolution prediction models”. Statements that the Eta was doing worse
than the MM5 in placing precipitation over the U.S. mountainous Pacific
northwest were also published (Colle et al. 1999). This led NCEP’s
Environmental Modeling Center (EMC) to decide on the sigma coordinate
when developing in the early two-thousands its version of the so-called
Weather Research and Forecasting (WRF) model, the NMM. The NMM was
developed from the Eta so that it shares most features with the Eta, which is
the basis of its having been referred to above as the Eta “sibling” model. It
should be pointed out though that the main motivation for the development
of the WRF model was the coding structure, meant to enable running the
model with user choices of routines and in fact as it eventually turned out
also of the dynamical core itself. The belief of the present author however is
that progress in NWP skill comes not so much by using various routines as
user choices, but more by understanding and improving individual routines
and schemes, an approach that the WRF project was not designed to
encourage.
The development of the Eta was nevertheless continued, partly with the
support of NCEP’s EMC. Specifically, a refinement of the eta discretization
was developed (Mesinger and Jovic 2004) so as to address the “Gallus-
Klemp” problem the original step-topography discretization had of
separation of flow in the lee of a bell-shaped (“Witch of Agnesi”) mountain.
The solution arrived at can be considered a simplification of the “shaved
cells” method of Adcroft et al. (1997). Using the refinement (the “slopes”
option) vertical steps are replaced by topography descending, if decided
appropriate, one layer thickness in between four neighboring height points.
This and several other code improvements are present in the Eta code that
was used in the preceding 2005 ICTP Regional Weather Predictability and
Modelling workshop, posted at the CPTEC’s (Center for the Weather
Prediction and Climate Studies, Cachoeira Paulista, SP, Brazil) Eta web site,
http://www.cptec.inpe.br/etaweb/. The site contains a list of developments
compared to the standard NCEP Eta code.
As to the second alleged eta coordinate problem of the placement of
precipitation less accurate than that using the sigma coordinate,
overwhelming evidence has accumulated since this suggestion was made
strongly supporting precisely the opposite. As to the most recent and very
comprehensive results in that sense, precipitation plots in DiMego (2006) and
Mesinger (2008) can be referred to, in particular the latter as it shows the
precipitation placement skill of the Eta vs that of the sigma system models
NMM and NCEP GFS (Global Forecasting System) separately for the U.S.
mountainous western “hi res window” (“West”) and the much flatter eastern
one (“East”). Accordingly, in contrast to NCEP, several major modeling
groups have recently moved from sigma towards eta or eta-like coordinates,
including the European Consortium led by the German Weather Service
(Deutscher Wetterdienst, DWD), Steppeler et al. (2006), and Goddard Institute
for Space Studies (GISS), Russell (2007), with the authors cited reporting on
significant improvements compared to sigma; note in particular the title of the
latter.
Subsequent to the ICTP 2005 workshop a problem was noticed of
unrealistically low temperatures occasionally occurring in some Eta basins
and was identified as due to a problem of the Lorenz-Arakawa vertical
advection that was used for slantwise advection along basin slopes. Since the
scheme includes information on how much mass is being exchanged the
slantwise advection was replaced by a conserving Lagrangian scheme, which
removed the problem. This improved code is also posted on the CPTEC Eta
site.
The original NCEP Eta OI data assimilation scheme was eventually
replaced by an Eta 3D-Var scheme (EDAS), that over the years was made
more and more and finally completely self-cycling and independent of the
NCEP Global Data Assimilation System (GDAS), Rogers et al. (1995, 1996,
2001). However, it was inadvertently noted in the early two-thousands that a
simple space interpolation off the GDAS initial condition results in an Eta
skill dramatically increased compared to that of forecasts initialized by EDAS;
see, e.g., page 44 of Mesinger (2004). In other words, EDAS was in fact quite
detrimental to the Eta skill compared to a simple space interpolation off the
GDAS, something that would have been available operationally had the GFS
been running first, or had the two been running at the same time, neither of
the two being in place at NCEP. This surprising result was assumed to be
due to difficulties EDAS developers had with the eta coordinate, but very
recently a similar result was obtained with the NMM data assimilation
system, GSI, even though the NMM is using the sigma coordinate. Thus, the
reason for the EDAS unimpressive showing remains a mystery. The
experience of the NARR project (Mesinger et al. 2006) in which EDAS was
used at 3 h intervals in a continuous data assimilation mode points to a
considerable level of noise out of EDAS. Presumably, a still greater level of
noise should be expected following a space interpolation off another model’s
system, e.g., GFS. This is clearly okay as far as synoptic-type forecasts at 24 h
or even 12 h are concerned; but if precipitation during the first 3 h is
important, the noise cannot be harmless. Thus, for such purposes digital
filtering or the Lazic Matsuno-type time filtering (Lazic 2008) should be
useful.
The Eta model is used nowadays in very many countries and institutions,
for a variety of purposes: operational day to day forecasting, research,
applications (e.g., sand, dust and contaminant transport), and as of recently
seasonal forecasting (e.g., Chou et al. 2005), and regional climate change
studies (e.g., Djurdjevic and Rajkovic 2008).
The Eta code used at the previous ICTP Regional Weather Predictability
and Modeling (RWPM) workshop, in 2005, is posted at
http://www.cptec.inpe.br/etaweb/. The site also contains a list of upgrades
that this “ICTP 2005” Eta code contains compared to the standard NCEP Eta
code. An additional upgrade was available at the site but it is not available at
the time of this writing: a change in the scheme to do temperature advection
along sloping eta surfaces. This change eliminated a problem of occasional
too low temperatures in some mountain basins, identified as due to
unrealistic vertical advection from below ground when a centered finite
difference scheme is used. This change will be included in the ICTP 2008
code.
In addition, the following new features are planned to be available in the
ICTP 2008 code:
• An option to use piecewise linear vertical advection (Mesinger and Jovic
2002) of the dynamical variables, velocity and temperature, instead of the
finite difference scheme in use in the standard Eta code. Note that this makes
the Eta dynamics very nearly finite volume;
• An option to have vertical momentum flux included within the Kain-
Fritsch convection scheme;
• A further refinement of the BMJ convection, as explained in greater detail
in a separate write up (“An Essay on the Eta Cumulus Convection (BMJ)
Scheme”);
• Output of the 10 m winds at the wind points, as opposed to the standard
Eta postprocessing scheme in which 10 m winds are output at “h” (pressure)
points (the issue brought up and code written by S. Morelli, University of
Modena and Reggio E., Italy).

References

Eta dynamics/ numerics:

Arakawa, A., and V. R. Lamb, 1977: Computational design of the basic


dynamical processes of the UCLA general circulation model. Methods in
Computational Physics, Vol. 17, J. Chang, Ed., Academic Press, 173-265.
Janjic, Z. I., 1979: Forward-backward scheme modified to prevent two-grid-
interval noise and its application in sigma coordinate models. Contrib.
Atmos. Phys., 52, 69-84.
Janjic, Z. I., 1984: Non-linear advection schemes and energy cascade on semi-
staggered grids. Mon. Wea. Rev., 112, 1234-1245.
Janjic, Z. I., J. P. Gerrity Jr., and S. Nickovic, 2001: An alternative approach to
nonhydrostatic modeling. Mon. Wea. Rev., 129, 1164-1178.
Mesinger, F., 1973: A method for construction of second-order accuracy
difference schemes permitting no false two-grid interval wave in the height
field. Tellus, 25, 444-458.
Mesinger, F., 1974: An economical explicit scheme which inherently prevents
the false two-grid-interval wave in the forecast fields. Proc. Symp.
"Difference and Spectral Methods for Atmosphere and Ocean Dynamics
Problems", Academy of Sciences, Novosibirsk, 17-22 September 1973; Part
II, 18-34.
Mesinger, F., 1977: Forward-backward scheme, and its use in a limited area
model. Contrib. Atmos. Phys., 50, 200-210.
Mesinger, F., 1984: A blocking technique for representation of mountains in
atmospheric models. Riv. Meteor. Aeronaut., 44, 195-202.
Mesinger, F., 2004: Dynamical core design: A neglected thrust toward
increasing NWP skill several days ahead. The First THORPEX
International Science Symposium, Montreal, Canada, 6-10 December 2004.
[Available online at
http://box.mmm.ucar.edu/uswrp/thorpex/symposium_Dec2004/monda
y/monday.html.]
Mesinger, F., and Z. I. Janjic, 1974: Noise due to time-dependent boundary
conditions in limited area models. The GARP Programme on Numerical
Experimentation, Rep. No. 4, WMO, Geneva, 31-32.
Mesinger, F., and Z. I. Janjic, 1985: Problems and numerical methods of the
incorporation of mountains in atmospheric models. Large-Scale
Computations in Fluid Mechanics, B. E. Engquist, S. Osher, and R. C. J.
Somerville, Eds. Lectures in Applied Mathematics, 22, 81-120.
Mesinger, F., and D. Jovic, 2002: The Eta slope adjustment: Contender for an
optimal steepening in a piecewise-linear advection scheme? Comparison
tests. NCEP Office Note 439, 29 pp. [Available online at
http://www.emc.ncep.noaa.gov/officenotes.]
Mesinger, F., and D. Jovic, 2004: Vertical coordinate, QPF, and resolution. The
2004 Workshop on the Solution of Partial Differential Equations on the
Sphere, Frontier Res. Center for Global Change (FRCGC), Yokohama,
Japan, CD-ROM, Vol. 2. [Available online at
http://www.jamstec.go.jp/frcgc/eng/workshop/pde2004/agenda.html.]
Mesinger F. and L. Lazic, 2004: Water vapor sources and sinks, and
hydrometeor loading in the Eta Model. Research Activities in Atmospheric
and Oceanic Modelling, 34, 5.21-5.22 [Available online at
http://collaboration.cmc.ec.gc.ca/science/wgne/.]
Mesinger, F., Z. I. Janjic, S. Nickovic, D. Gavrilov and D. G. Deaven, 1988: The
step-mountain coordinate: Model description, and performance for cases of
Alpine lee cyclogenesis and for a case of an Appalachian redevelopment.
Mon. Wea. Rev., 116, 1493-1518.

Eta physics:

Betts, A. K., 1986: A new convective adjustment scheme. Part I: Observational


and theoretical basis. Quart. J. Roy. Meteor. Soc., 112, 677-691.
Betts, A. K., and M. J. Miller, 1986: A new convective adjustment scheme. Part
II: Single column tests using GATE wave, BOMEX, ATEX and Arctic air-
mass data sets. Quart. J. Roy. Meteor. Soc., 112, 693-709.
Betts, A. K., F. Chen, K. E. Mitchell, and Z. I. Janjic, 1997: Assessment of land
surface and boundary layer models in two operational versions of the
NCEP Eta model using FIFE data. Mon. Wea. Rev., 125, 2896-2916.
Chen, F., K. Mitchell, J. Schaake, Y. Xue, H.-L. Pan, V. Koren, Q. Y. Duan, M.
Ek and A. Betts, 1996: Modeling of land surface evaporation by four
schemes and comparison with FIFE observations. J. Geophys. Res., 101,
7251-7268.
Ek, M. B., K. E. Mitchell, Y. Lin, E. Rogers, P. Grunmann, V. Koren, G. Gayno,
and J. D. Tarpley, 2003: Implementation of Noah land surface model
advances in the National Centers for Environmental Prediction operational
mesoscale Eta model. J. Geophys. Res., 108, 8851, doi:10.1029/2002JD003296.
Fels, S. B., and M. D. Schwarzkopf, 1975: The simplified exchange
approximation: A new method for radiative transfer calculations. J. Atmos.
Sci., 32, 1475-1488.
Ferrier, B. S., Y. Jin, Y. Lin, T. Black, E. Rogers, and G. DiMego, 2002:
Implementation of a new grid-scale cloud and precipitation scheme in the
NCEP Eta Model. 19th Conf. on Weather Analysis and Forecasting/15th Conf.
on Numerical Weather Prediction, San Antonio, TX, Amer. Meteor. Soc., 280-
283.
Janjic, Z. I., 1990: The step-mountain coordinate: physical package. Mon. Wea.
Rev., 118, 1429-1443.
Janjic, Z.I., 1994: The step-mountain Eta coordinate model: further
developments of the convection, viscous sublayer, and turbulence closure
schemes. Mon. Wea. Rev., 122, 927-945.
Janjic, Z. I., 2002: Nonsingular implementation of the Mellor-Yamada Level
2.5 scheme in the NCEP Meso model. NCEP Office Note No. 437, 61 pp.
[Available online at http://www.emc.ncep.noaa.gov/officenotes.]
Kain, J. S., 2004: The Kain–Fritsch convective parameterization: An update. J.
Appl. Meteor., 43, 170–181.
Kain, J. S., and J. M. Fritsch, 1993: Convective parameterization for mesoscale
models: The Kain–Fritsch scheme. The Representation of Cumulus Convection
in Numerical Models. Meteor. Monogr., 24, Amer. Meteor. Soc., 165–170.
Lacis, A. A., and J. E. Hansen, 1974: A parameterization of the absorption of
solar radiation in the earth's atmosphere. J. Atmos. Sci., 31, 118-133.
Liu, W. T., K. B. Katsaros, and J. B. Businger, 1979: Bulk parameterization of
air-sea exchanges of heat and water vapor including the molecular
constraints at the interface. J. Atmos. Sci., 36, 1722-1735.
Mellor, G. L., and T. Yamada, 1974: A hierarchy of turbulence closure models
for planetary boundary layers. J. Atmos. Sci., 31, 1791-1806.
Mellor, G. L., and T. Yamada, 1982: Development of a turbulence closure
model for geophysical fluid problems. Rev. Geophys. Space Phys., 20, 851-
875.
Mesinger, F., 1993: Forecasting upper tropospheric turbulence within the
framework of the Mellor-Yamada 2.5 closure. Res. Activities in Atmos. and
Oceanic Modelling, Rep. No. 18, WMO, Geneva, 4.28-4.29.
Mesinger, F., R. L. Wobus, and M. E. Baldwin, 1996: Parameterization of form
drag in the Eta Model at the National Centers for Environmental
Prediction. Preprints, 11th Conf. Numerical Weather Prediction, Norfolk, VA,
Amer. Meteor. Soc., 324-326.
Zhao, Q., and F. H. Carr, 1997: A prognostic cloud scheme for operational
NWP models. Mon. Wea. Rev., 125, 1931-1953.
Zhao, Q., T. L. Black, M. E. Baldwin, 1997: Implementation of the cloud
prediction scheme in the Eta model at NCEP. Wea. Forecasting, 12, 697-712.

Eta analysis and data assimilation, postprocessing, documentation, results:

Black, T. L., 1988: The step-mountain, Eta coordinate Regional Model: A


documentation. NWS/NMC Washington, 47 pp. [Available from NCEP,
5200 Auth Road, Camp Springs, MD 20746.]
Black, T., 1994: The new NMC mesoscale Eta model: Description and forecast
examples. Wea. Forecasting, 9, 265-278.
Chou, S. C., J. F. Bustamante, and J. L. Gomes, 2005: Evaluation of seasonal
precipitation forecasts over South America using Eta model. Nonlin. Proc.
Geophys., 12, 537-555.
Chuang, H.-Y., G. Manikin, and R. E. Treadon, 2001: The NCEP Eta Model
Post Processor: A documentation. NCEP Office Note 438, 52 pp. [Available
online at http://www.emc.ncep.noaa.gov/officenotes.]
Dey, C. H., 1996: The WMO format for storage of weather product
information and the exchange of weather product messages in gridded
binary (GRIB) format. Office Note 388, NOAA/NWS/NCEP. [Available
online at http://www.emc.ncep.noaa.gov/officenotes.]
DiMego, G., 2006: WRF-NMM & GSI Analysis to replace Eta Model & 3DVar
in NAM Decision Brief. 115 pp. [Available online at
http://www.emc.ncep.noaa.gov/WRFinNAM/.]
Djurdjevic, V, and B. Rajkovic, 2008: Verification of a coupled atmosphere-
ocean model using satellite observations over the Adriatic Sea. Annales
Geophysicae, in press.
Lazic, L., 2008: Initialization of the Eta model using a backward-first version
of the iterative Matsuno style scheme. Meteor. Atmos. Phys., 99, 247-256.
Mesinger, F., 2000: Numerical methods: The Arakawa approach, horizontal
grid, global, and limited-area modeling. General Circulation Model
Development: Past, Present and Future. International Geophysics Series, Vol.
70, D. A. Randall, Ed., Academic Press, 373-419.
Mesinger, F., 2008: Bias adjusted precipitation threat scores. Adv. Geosciences,
16, 137-143. [Available online at http://www.adv-
geosci.net/16/index.html.]
Mesinger, F., and T. L. Black, 1992: On the impact of forecast accuracy of the
step mountain (eta) vs. sigma coordinate. Meteor. Atmos. Phys., 50, 47-60.
Mesinger, F., and R. E. Treadon, 1995: "Horizontal" reduction of pressure to
sea level: Comparison against the NMC's Schuell Method. Mon. Wea. Rev.,
123, 59-68.
Mesinger, F., G. DiMego, E. Kalnay, K. Mitchell, P. C. Shafran, W. Ebisuzaki,
D. Jovic, J. Woollen, E. Rogers, E. H. Berbery, M. B. Ek, Y. Fan, R.
Grumbine, W. Higgins, H. Li, Y. Lin, G. Manikin, D. Parrish, and W. Shi,
2006: North American Regional Reanalysis. Bull. Amer. Meteor. Soc., 87, 343-
360.
Rogers, E., D. G. Deaven, and G. J. DiMego, 1995: The regional analysis
system for the operational Eta model: Original 80 km configuration, recent
changes, and future plans. Wea. Forecasting, 10, 810-825.
Rogers, E., T. L. Black, D. G. Deaven, G. J. DiMego, and others, 1996: Changes
to the operational "early" Eta analysis/forecast system at the National
Centers for Environmental Prediction. Wea. Forecasting, 11, 391-413.
Rogers, E., M. Ek, Y. Lin, K. Mitchell, D. Parrish, G. DiMego, 2001: Changes to
the NCEP Meso Eta analysis and forecast system: Assimilation of observed
precipitation, upgrades to land-surface physics, modified 3DVAR analysis.
[Available online at
http://www.emc.ncep.noaa.gov/mmb/mmbpll/spring2001/tpb/.]

Other:

Adcroft, A., C. Hill, and J. Marshall, 1997: Representation of topography by


shaved cells in a height coordinate ocean model. Mon. Wea. Rev., 125, 2293-
2315.
Charney, J. 1962: Integration of the primitive and balance equations. Proc.
Intern. Symp. Numerical Weather Prediction, Tokyo, Japan Meteor. Agency,
131-152.
Colle, B. A., K. J. Westrick, and C. F. Mass, 1999: Evaluation of MM5 and Eta-
10 precipitation forecasts over the Pacific Northwest during the cool
season. Wea. Forecasting, 14, 137-154.
Gallus, W. A., Jr., and J. B. Klemp, 2000: Behavior of flow over step
orography. Mon. Wea. Rev., 128, 1153-1164.
Russell, G. L., 2007: Step-mountain technique applied to an atmospheric C-
grid model, or how to improve precipitation near mountains. Mon. Wea.
Rev., 135, 4060–4076.
Simmons, A. J., and D. M. Burridge, 1981: An energy and angular-momentum
conserving vertical finite-difference scheme and hybrid vertical
coordinates. Mon. Wea. Rev., 109, 758-766.
Steppeler, J., H. W. Bitzer, Z. Janjic, U. Schättler, P. Prohl, U. Gjertsen, L.
Torrisi, J. Parfinievicz, E. Avgoustoglou, and U. Damrath, 2006: Prediction
of clouds and rain using a z-coordinate nonhydrostatic model. Mon. Wea.
Rev., 134, 3625–3643.

Belgrade, September 24, 2008


SHORT HOW2RUN ETA MODEL Trieste, 2008

SHORT HOW2RUN
ETA MODEL
--- UNZIP AND UNTAR MODEL -------------------- --- INPUT FILES DECODING ------------------------
GRIB-decoding program compilation:
tar zxvf worketa.tgz
in ... worketa_all/dprep/install
This will create directory worketa_all run ... ./build_dprep

--- SET UP MODEL ENVIRONMENT -------------- GFS (grib2) files decoding:

in ... worketa_all in ... worketa_all/dprep/bin


run ... ./setup LINUX run ... ./inputdata.scr 00 48 06 gfs2

--- CHECK FORTRAN COMPILER ---------------- This will create files:


For preprocessing in file:
worketa_all/data/prep/YYMMDD000hh.ETA_avn
worketa_all/dprep/src/configure/make.inc YY = year
MM = month
set : DD = day
hh=00,06,12,18,...
FC = pgf90
--- MODEL RUN -----------------------------------------
For model in file: Build model:

worketa_all/eta/src/configure/make.inc in ... worketa_all/eta/install


run ... ./buildall
set :
Run model pre-processor
FC = pgf90
MPI_FC=mpif90 in ... worketa_all/eta/bin
CC = /lib/cpp -traditional-cpp run ... ./new_prep.sh
FFLAGS = -fast -DLITTLE
Run model:
--- LIBRARIES COMPILATION ---------------------
Libraries compilation: in ... worketa_all/eta/runs
run ... ./run.com_mpi
in ... worketa_all/libraries/bacio.source/
run ... ./comp.com Run post-processor:
in ... worketa_all/libraries/
run ... ./make_ip_w3 in ... worketa_all/eta/runs
in ... worketa_all/libraries/dummyMPI/ run ... ./outjob_special 00 48 06 latlon
run ... make -f Makefile.linux
Make figures in Grads:
This will create files:
in ... worketa_all/eta/runs
worketa_all/libraries/bacio run ... ./plot.sh HHH
worketa_all/libraries/iplib
worketa_all/libraries/w3lib HHH = 000,006,012,...048
worketa_all/libraries/bufrlib
worketa_all/libraries/dummyMPI/libmpi.a
Suggestions for Lab Exercises, ICTP 2008

•  Test the impact of the replacement of the Lorenz­Arakawa finite difference vertical 
advection of the dynamic variables (T, v) by the piecewise linear scheme described in 
NCEP Office Note 439,  online at http://www.emc.ncep.noaa.gov/officenotes 
(replacement VTADV available)

•  Test the impact of the replacement of the diagnostic as used in the “standard” Eta 
postprocessor to obtain the 10 m winds at h points, by a scheme obtaining 10 m winds 
at wind points (Sandra Morelli).

•  Test the impact of changing the parameters FSS (“factor to obtain the slow profiles”) 
and fefi (“function of efi”) of the Eta Betts­Miller­Janjic cumulus convection scheme. 
For values of interest check the values used in the “standard” (NCEP) Eta code, and 
those of the ICTP 2005 code (on CPTEC web site).

•  Test the impact of using or not using the code’s option to have slopes in eta steps in 
an area where you might expect this to make a difference.

•  Having a precipitation “spin­up” in the beginning of a model run is a usual NWP 
problem because of a very hard to avoid inconsistency of the initialization, including 
excitement of gravity waves, and the model’s precipitation schemes.  Test if that 
problem is identifiable (e.g., differences between precipitation at 0­3 hr and that of 3­6 h 
that do not seem meteorologically justified), and if so to what extent, if any, it gets 
reduced by using digital filtering, and/or the Lazic Matsuno­style initialization. 

To be edited, and expanded . . . . 
1 BMJ x KF
2 KF + KF MFx
3 NH  x H
4 Viscous sublayer (zeta calculate from Rr)
Resolution change, domain size
that will take you one directory up the hierarchy (back to (Note: The directory /vol/examples/tutorial/ is an area to only alphanumeric characters, that is, letters and
ONE PAGE LINUX your home directory). Try it now. which everyone in the school has read and copy access. numbers, together with _ (underscore) and . (dot).
If you are from outside the University, you can grab a
Tutorial Note: typing cd with no argument always returns you to copy of the file here. Use 'File/Save As..' from the menu File names conventionally start with a lower-case letter,
your home directory. This is very useful if you are lost in bar to save it into your unixstuff directory.) and may end with a dot followed by a group of letters
the file system. (Remember, if you get lost, type cd by indicating the contents of the file (file extension). For
1.1 Listing files and directories
itself to return to your home-directory) example, all files consisting of FORTRAN code may be
1.6 Removing files and directories
named with the ending .f, for example, prog1.f . Then in
ls (list) order to list all files containing FORTRAN code in your
1.4 Pathnames rm (remove), rmdir (remove directory) home directory, you need only type ls *.f in that directory.
When you first login, your current working directory is
your home directory. To find out what is in your home pwd (print working directory) To delete (remove) a file, use the rm command. As an
directory, type 1.8 Unzip archive
example, we are going to create a copy of the
Pathnames enable you to work out where you are in science.txt file then delete it.
% ls relation to the whole file-system. For example, to find out tar zxvf (archive name)
the absolute pathname of your home-directory, type cd Inside your unixstuff directory, type
The ls command lists the contents of your current to get back to your home-directory and then type Files with extensions .tgz, .tar.gz or .tar.Z are linux
working directory. There may be no files visible in your % cp science.txt tempfile.txt archives (like .zip on Windows). To unzip this files use
home directory, in which case, the UNIX prompt will be % pwd % ls tar command. If you have archive with name file.tgz, try
returned. Alternatively, there may already be some files % rm tempfile.txt this:
inserted by the System Administrator when your account The full pathname will look something like this - % ls
was created. %tar zxvf file.tgz
/home/its/ug1/ee51vn You can use the rmdir command to remove a directory
1.2 Making Directories (make sure it is empty first). Try to remove the backups 1.9 Displaying the contents of a file
which means that ee51vn (your home directory) is in the directory. You will not be able to since UNIX will not let
sub-directory ug1 (the group directory),which in turn is you remove a non-empty directory. less
mkdir (make directory)
located in the its sub-directory, which is in the home sub-
directory, which is in the top-level root directory called " / The command less writes the contents of a file onto the
We will now make a subdirectory in your home directory. 1.7 Wildcards
". screen a page at a time. Type
To make a subdirectory called unixstuff in your current
working directory type The ʻ*ʼ wildcard
1.5 Copying Files % less science.txt
% mkdir unixstuff The character * is called a wildcard, and will match
Press the [space-bar] if you want to see another page,
cp (copy) against none or more character(s) in a file (or directory)
To see the directory you have just created, type and type [q] if you want to quit reading.
name. For example, in your unixstuff directory, type
cp file1 file2 is the command which makes a copy of
% ls file1 in the current working directory and calls it file2 % ls list*

What we are going to do now, is to take a file stored in This will list all files in the current directory starting with
1.3 Changing to a different directory
an open access area of the file system, and use the cp list....
command to copy it to your unixstuff directory.
cd (change directory) Try typing
First, cd to your unixstuff directory.
The command cd directory means change the current % ls *list
working directory to 'directory'. The current working % cd unixstuff
directory may be thought of as the directory you are in, This will list all files in the current directory ending
i.e. your current position in the file-system tree. Then at the UNIX prompt, type, with ....list

To change to the directory you have just made, type % cp /vol/examples/tutorial/science.txt . 1.7 Filename conventions
% cd unixstuff Note: Don't forget the dot . at the end. Remember, in
We should note here that a directory is merely a special
UNIX, the dot means the current directory.
Type ls to see the contents (which should be empty), type of file. So the rules and conventions for naming files
and if you type apply also to directories.
The above command means copy the file science.txt to
the current directory, keeping the name the same.
% cd .. In naming files, characters with special meanings such
as / * & % , should be avoided. Also, avoid using spaces
within names. The safest way to name a file is to use
time gives info about time settings scatter Scatter graph plot
GrADS reference card version 1.7 fwrite print name of fwrite ouput file shaded Shaded contour plot
(GrADS Version 1.7 beta 7) compiled by Karin Meier-Fleischer, DKRZ ([email protected])
string s gives the width of string s stat Display information about data
defval v1 i j gives the value of a defined variable v1 at point i,j stream Streamline plot
GrADS program executables
udft list the user defined function table tserwx Plot time series of weather symbols at a point (1-D sta-
grads link to one of the following executables lats state of the GrADS-LATS interface tion)
gradsnc grads with netCDF enabled xy2w v1 v2 XY coords to world coords tserbarb Plot time series of wind barbs at a point (1-D)
gradshdf grads with HDF enabled xy2gr v1 v2 XY coords to grid coords value Plot station values
gradsc grads “classic”, without netCDF/HDF/Athena GUI, etc. w2xy v1 v2 world coords to XY coords vector Vector wind arrows
w2gr v1 v2 world coords to grid coords wxsym Plot weather symbols at station
Command line options gr2w v1 v2 grid coords to world coords
Program: grads [-lbpC] [-c ‘command’] gr2xy v1 v2 grid coords to XY coords Default colors, line styles and marker types
-c ‘command’ execute ‘command’ when starting GrADS ll2xy lon lat LON/LAT coords to XY coords
pp2xy ppx page coords to XY coords colors used by many settings (i.e. ccolor, line, string button, clopts, lfcols, .....):
-b run grads in batch mode. ppy 0 black 1 white
No graphics output window is opened.
2 red 3 green
-l run grads in landscape mode. set imprun script automatically executes script before every display command
The orientation question is not asked. 4 blue 5 cyan
run file-name <params>
-p run grads in portrait mode. 6 magenta 7 yellow
load and run a GrADS script (with parameters)
The orientation question is not asked. exec fname <arg0,..,arg9> 8 orange 9 purple
-C enable automatic setting of century for years < 100 executes a sequence of GrADS commands from file fname. If a clear 10 yellow/green 11 med.blue
command is encountered, GrADS waits until enter is pressed before 12 dark yellow 13 aqua
clearing and continuing with command processing 14 dark purple 15 grey
General settings
help gives a summary list of operations clear <option> c <option> clear the display; option are:
c <option> line styles used by many settings (i.e. cstyle, line, mpt, map, grid, ...):
set grads on | off enable/disable display of the GrADS logo
events flush event buffer 0 none 1 solid
set display <option <color>> graphics clear graphic, not widgets 2 long dash 3 short dash
sets the mode of the display. options are: hbuff clear display buffer, when in double buffer mode 4 long short dash 5 dots
grey|greyscale sets the mode to greyscale. 6 dot dash 7 dot dot dash
reset <option> initializes GrADS to its initial state with following
color shading and contouring is done with rainbow colors. Default. exceptions: 1) No files are closed. 2) No defined objects are
<black|white> released. 3) The ‘set display’ settings are not modified. Options are: marker types used by many settings (i.e. cmark, mark, .....):
set frame <option> events; graphics; hbuff; norset 0 none 1 cross
control the frame on a plot. options are: reinit same as reset, and in addition closes all open files and releases all 2 open circle 3 closed circle
defined objects
on plots a rectangular frame around clipped region 4 open square 5 closed square
quit quit - to leave GrADS
off plots no frame 6 X 7 diamond
!shell-command runs a shell command on GrADS command line. The output will not
circle plots a rectangular frame for lat-lon projections, plots a circular frame be returned to the script, only displayed. 8 triangle 10 open circle with vertical line
for a polar plot at the outermost latitude.Whole hemisphere plots only.
9 none 11 open oval
set background ic set background color to color or color index ic Dimension environments
display expression display data via the graphics output window; the simplest expression is set lon val1 <val2> sets longitude to vary from val1 to val2
d expression a variable abbreviation Graphics options
set lat val1 <val2> sets latitude to vary from val1 to val2
open filename open descriptor file set clip xlo xhi ylo yhi clipping area for drawing graphics primitives
set lev val sets the level to val - fixed dimension
sdfopen file.nc <template #timesteps> set ccolor index sets the contour color to index, see Default colors and line
set t val1 <val2> sets time to the “val” time in the data set styles. You can also issue:
opens a netCDF or HDF-SDS format file that conforms to the
COARDS conventions. The optional arguments are for string a time- set x val1 <val2> set x values or fix it to one value rainbow - rainbow color sequence
series of files together as one GrADS data object. set y val1 <val2> set y values or fix it to one value revrain - reversed rainbow color sequence
xdfopen file opens a non-COARDS-conformant netCDF or HDF-SDS file via a data set z val1 <val2> set z values or fix it to one value set cstyle style sets the contour or line style, see Default colors and line
descriptor file similar to those used with the ‘open‘ command. styles. (gxout = contour, only style 1,2,3 and 5 available).
close file# close the last descriptor file opened. Page control set cmark marker sets line marker, see Default colors and line styles .
set dfile number change to descriptor file number for current file set vpage off real page is equal to “virtual page”; default state set cterp on | off turns spline smoothing on or off
define var=expr create new variable, which then can be used in subsequent expressions set vpage xmn xmx ymn ymx defining one “virtual” page set clab on | off | forced | string | auto
var=expr set parea xmn xmx ymn ymx control the area within the virutal page controls contour labeling
undefine var free the resources used by the defined variable set clopts col <thick <size>> contour line options
Graphic types set clskip val skip val contour lines when labelling
modify varname <time type>
set cthick thckns sets the line thickness for the contours [1-10]
define variable, which is climatological. varname is the defined grid. set gxout graphic-type where graphic-type could be:
Time types are: set csmooth on | off | linear interpolate to a finer grid using cubic or linear interpolation
seasonal monthly or multi-monthly means bar Bar chart set cint value sets the contour interval to the specified “value”
diurnal over some time period less than a day barb Plot wind barb at station set cmax value contours not drawn above this value
contour Contour plot set cmin value contours not drawn below this value
query <option> query options are: set clevs lev1 lev2 ... sets specified contour levels
q <option> errbar Error bar
fgrid specific value grid fill plot set ccols col1 col2 ... sets specified color for clev levels
config list GrADS configuration information
findstn Find closest station to x,y point set line col <style> <thick> sets current line attributes. thickness range 1 - 6 (see
files lists open files Default colors and line styles).
file n gives info on particular file fwrite Write data to file instead of displaying
set lfcols col1 col2 set color below and above lines (gxout linefill)
define lists currently defined variables grfill Filled grid boxes
set black off | val1 val2 contours not drawn within this interval
dims gives current dimension environment grid Grid boxes with values
set rbcols c1 c2 <c3 ... cn> specifies a new ‘rainbow’ color sequence
gxinfo gives graphics environment info line Line graph
set rbcols <auto> built in rainbow sequence is used
shades gives colors and levels of shaded contours linefill Color fill between two lines
set rbrange low high range of values used to determine which values acquire
pos waits for mouse click, returns the position model Plot station model which rainbow color
set grid on | off | <style> <color> | horizontal | vertical off same as scaled, but no map is drawn and lables are not interpreted as lat/ draw dropmenu number x y width height text
draw grid lines using the specified options or not lon labels display a dropmenu similar to ‘draw button’ command widget number (0 to
set bargap val sets the gap between bars in percent 64); x and y are the center location for the ‘base’ of the dropmenu; width and
set barbase value | bottom | top bar rises from or falls from value set mpt type off | <<col> <style> <thick>> height are the size of the ‘base’ of the dropmenu.
set baropts filled | outline bar outlined or filled; default: filled command to control map background behavior. type is the map type; it
can be a number from 0 to 255, or it can be an asterick (*) to indicate this Double buffering
set dignum number number of digits after the decimal place command applies to all the type values. The color can be set to -1, which
set digsize size size (in inches, or plotter units) of the numbers indicates to GrADS to use the set map settings for this map type, rather set dbuff on|off sets double buffer mode on or off
set arrlab on|off set arrow labeling on or off than the settings specified by the set mpt command. swap swaps buffers, when double buffer mode is on
set arrscl size <magnitude> specifies arrow length scaling set mpvals off | lnmn lnmx ltmn ltmx
set arrowhead size specifies arrow head size sets reference longitudes and latitudes for polar stereogr. plots Animation
set fgvals v1 c1 <v2 c2>... fgrid output type treats the grid values as rounded integers, set mpdset lowres | mres | hires | nmap set looping on|off control animation; set animation on or off
and will shade a specified integer valued grid with the mres and hires have state and country outlines. nmap covers only North set loopdim x|y|z|t animate through x,y,z or t; default: t
specified color. America. Default:lowres. set loopincr incr set looping increment
set zlog on | off sets log scaling of the Z dimension on or off set map auto | color <style <thick>>
set strmden value specifies the streamline density, where value is from 1 to draws the map background using the requested line Hardcopy output
10. Default: 5 attributes or auto mode enable print fname enables the print command to the given file fname
set stnopts <dig3> <nodig3> plot the number in the slp location as a three digit number set mpdraw on | off
with only the last three digits of the whole number plotted print copy the contents of current display into a file in a metacode format
if off, does not draw the map background disable print close print output file
set mdlopts noblank | blank | dig3 | nodig3 set grid on | off <style <col>> | horizontal | vertical
plot the number of the model data as a three digit outxwd file output the graphicw window to a file in the X windows dump format
draw or do not draw lat/lon lines on polar plots using the specified color wi file.format output to a file with format (using ImageMagick), e.g. wi test.gif
set stid on | off controls wether the station id is displayed next to the val- and linestyle
ues or not set poli on | off selects whether you want political boundries drawn for the mres or hires
set wxcols c1 c2 c3 c4 c5 c6 set colors for weather symbols c1 - c6 Create/Write a grid file
map data sets. Default is on
set fwrite fname output grid fname; if not set, fname=grads.fwrite
set gxout fwrite enables grid file output
Graphic primitives
Axis labeling/Annotation/labeling disable fwrite close output grid file
draw line x1 y1 x2 y2 draws a line from x1, y1 to x2, y2 using current line drawing
set xaxis start end <incr> specifies the axis is to be labeled attributes
set yaxis start end <incr> specifies the axis is to be labeled Mathematical Functions
draw rec xlo ylo xhi yhi draws an unfilled rectangle
set xlevs lab1 lab2 ... specifies the label levels to plot for the X axis abs(expr) absolute value of result of expr. Operates on gridded and station data
draw recf xlo ylo xhi yhi draws a filled rectangle
set ylevs lab1 lab2 ... specifies the label levels to plot for the Y axis acos(expr) applies the cos-1 function to the result of expr
draw mark marktype x y size
set xlint interval specifies the label interval of the X axis draws a marker. Marker types (see Default colors and line styles). asin(expr) applies the sin-1 function to the result of expr
set ylint interval specifies the label interval of the Y axis draw polyf x1 y1 x2 y2 ... xn yn atan2(expr1,expr2) applies the tan-1 function to the result of the two expr, using tanθ = y/x
set xyrev on reverses the axes on a plot draw a filled polyline, where xn=x1 and yn=y1 cos(expr) takes the cosine of the expr
set xflip on flips the order of the horizontal axis draw wxsym symbol x y size <color <thickness>> exp(expr) performs the ex operation, where expr is x. gridded and station data
set yflip on flips the order of the vertical axis Draws the specified wx symbol at the specified location gint(expr) general integral, same as ave except do not devide by the total area
set xlab on | off | auto | string controls and/or draws X axis label
log(expr) takes the natural logarithm of expr
set ylab on | off | auto | string controls and/or draws Y axis label String primitives log10(expr) takes the logarithm base 10 of the expr
set xlabs lab1 | lab2 | .... abel the x axis with lab1, lab2, lab3, .... set string col <justification> <thick> <rotation> pow(expr1,expr2) raises the values of expr1 to the power of expr2
set ylabs lab1 | lab2 | .... label the y axis with lab1, lab2, lab3, .... sets string drawing attributes. Justification: sin(expr) takes the sine of the provided expr (in radians)
draw xlab string draw x axis label l - left; c - center; r - right; tl - top left; tc - center top; sqrt(expr) takes the square root of the result of the expr
draw ylab string draw y axis label tr - right top; bl - bottom left; tc - center bottom; tr - right bott.
Roation: 90 - counterclockwise, -90 - clockwise.. tan(expr) takes the trigonometric tangent of the expr
set xlopts col <thick <size>> controls X axis
set ylopts col <thick <size>> controls Y axis set strsiz width <height> sets the string character size
draw string x y string draws the character string at the x,y position
Averaging Functions
set xlpos offset side controls position of x axis labels. Where offset - in inches;
side - b or t (bottom or top) draw title string draw a title ‘string’ on top of the graph ave(expr,dexpr1,dexpr2<,tinc<,flags>>)
set ylpos offset side controls position of y axis labels. Where offset - in inches; generalized averaging function. expr is averaged through the dimen-
side - r or l (right or left) Color settings sion range specified by dim1 and dim2
set zlog on | off | swap | undefine aave(expr,xdim1,xdim2,ydim1,ydim2)
set rgb num red green blue defines new colors within GrADS, and assigns them to a new
sets log scaling of the Z axis color number.color-number num must be a value between 16 does area average. xdim1 and xdim2 must be for lon or x, ydim1 and
and 99 (0 to 15 are predefined) ydim2 must be for lat or y (e.g. aave(t,lon=0,lon=180,lat=0,lat=90))
set annot col <thick> sets color and line thickness for the above 3 draw commands
mean(expr,dexpr1,dexpr2<,tinc<,flags>>)
set vrange vlo vhi Set range for plotting 1-D or scatter plots; range of the varia-
ble values for y-axis scaling Font settings same as ave, except that area weighting is disabled
set vrange2 vlo vhi Set range for plotting 1-D or scatter plots; range of the varia- set font number change to font number [0-5] amean(expr,xdim1,xdim2,ydim1,ydim2)
ble values for x-axis scaling same as aave, except that area weighting is disabled
set missconn on | off lines will be connected across missing data Widgets vint(psexpr,expr,top) performs a mass-weighted vertical integral in mb pressure coordi-
draw title string draw title at top of graph nates, where: exprexpression for quantity to be integrated psexpr
set button 1 bcol1 bcol2 bcol3 0 fcol1 fcol2 fcol3 thickness expression yielding the surface pressure, in mb,which will be used to
set button colors. 1 - “on” state; 0 - “off” state bound the integration on the bottom topconstant, giving the bounding
Map projections/drawing draw button number x y width height string top pressure, in mb. This cannot be provided as an expression
set mproj proj sets current map projection. Keywords are: draws a button on position x,y with the attributes
latlon Lat/lon projection with aspect ratio maintained. Default. redraw button number 0 | 1 Grid Functions
scaled latlon projection where aspect ratio is not maintained.The plot fills the redraws button number; 1 - “on”; 0 - “off” const(expr,const<,flag>) function allows you to set various parts of a grid to a constant
plotting area. set rband wn mode x1 y1 x2 y2 maskout(expr,mask) whenever the mask values are less than zero, the values in expr
nps north polar stereographic rubber banding. wn = widget #; mode = box or line are set to the missing data value
sps south polar stereographic x1, y1 = lowest point in x/y page units skip(expr,skipx,skipy) sets alternating values of the expr to the missing data value.This
robinson Robinson projection x2, y2 = highest point in x/y page units function is used while displaying wind arrows or barbs to thin the
orthogr Orthographic projection number of arrows or barbs
mollweide Mollweide projection
lambert Lambert conformal conic projection
Filtering Functions Variables
smth9(expr) performs a 9 point smoothing to the gridded result of expr complete specification for a variable name
abbrev.file#(dimexpr,dimexpr,...)
Finite Difference Functions abbrev is the abbreviation for the variable as specified in the data descriptor file file#
cdiff(expr,dim) performs a centered difference operation on expr in the direction specified is the file number that contains this variable. The default initially is 1. dimexpr is a
by dim dimension expression that locally modifies the current dimension environment.

Meteorological Functions
tvrh2q(tvexpr,rhexpr) given virtual temperature and relative humidity, tvrh2q returns
specific humidity, q, in g/g
tvrh2t(tvexpr,rhexpr) given virtual temperature and relative humidity, tvrh2t returns the
temperature in degrees Kelvin

Special Purpose Functions


tloop(expr) when time is varying dimension in the dimension environment, tloop function
evaluates the expr at fixed times, then constructs the time series to obtain a
final result that is the time varying

Vector Functions
hcurl(uexpr,vexpr) calculates the vertical component of the curl (i.e.vorticity) at each
grid pointusing finite differencing on the grids provided
hdivg(expr1,expr2) calculates the horizontal divergence using the finite differencing
mag(uexpr,vexpr) performs the calculation: sqrt(uexpr*uexpr+vexpr*vexpr)

Station Data Functions


gr2stn(grid_expr,stn_expr) performs an interpolation from grid space back to station loca-
tions
oacres(grid_expr,stn_expr<,radii<first guess>>)
a Cressman objective analysis is performed on the station data
to yield a gridded result representing the station data
stnave(expr,dexpr1,dexpr2<,-m cnt>)
takes an average of station data over time
stnmin(expr,dexpr1,dexpr2<,-m cnt>)
examines a time series of station data and returns the minimum
value encountered for each station
stnmax(expr,dexpr1,dexpr2<,-m cnt>)
examines a time series of station data and returns the maxi-
mum value encountered for each station

Create PostScript files


Program: gxps [-c] [-r] [-d] [-i mfile] [-o ofile]
converts the GrADS meta file into a PostScript file. Command line options:
-c color on a white background (=old gxpscw)
-r color on a black background (=old gxpsc)
-d add ctrl-d to the end of the file, useful if printing on HP 1200C/PS printer
-i mfile where mfile is the name of the input GrADS meta file
-o ofile where ofile is the name of the output PostScript file
Program: gxeps [-1][-2][-a | -l][-c][-r][-d][-L][-n][-s][-v] [-i mfile] [-o ofile]
converts the GrADS meta file into a PostScript file. Command line options:
-1 PostScript Level 1 output
-2 PostScript Level 2 output
-a DIN A4 paper size
-c color on a white background
-d add ctrl-d to the end of the file, useful if printing on HP 1200C/PS printer
-l US letter paper size
-L ask for a label to be printed on the plot
-n ask for a note to include in postscript file header
-r color on a black background
-s add a file & time stamp
-v verbose
-i mfile where mfile is the name of the input GrADS meta file
-o ofile where ofile is the name of the output PostScript file

Create GIF files


Program: gxgif [-i mfile] [-o ofile]
converts the GrADS meta file into a GIF file. Command line options:
-i mfile where mfile is the name of the input GrADS meta file
-o ofile where ofile is the name of the output GIF file

You might also like