Welcome to the ECMWF Ensemble Simulation CD-ROMs

This little booklet contains excerpts from the following files
as a quick reference and a starting point to get you 
acquainted with the ECMWF Ensemble Simulation CD-ROMs.
For more detailed information read the original files
on the cds.

1. file: grads/ecmwf.doc

2. file: grads/readme    

3. file: grads/demo.doc

4. file: decoder/gribex/readme

5. file: decoder/wgrib/readme

6. file: decoder/gribsimp/readme


1111111111111111111111111111111111111111111111111111111111111111

           The ECMWF Ensemble Simulation CD-ROMs

              Bernd Dieter Becker

I.  INTRODUCTION
    ------------

These  CD-ROMs  contain  selected  data  fields  from  the  ECMWF
seasonal ensemble  simulation project.

The successful prediction of El Nino during the  1980s,  and  the
realisation   that   much of the world's weather is influenced by
El Nino on seasonal to  interannual  timescales,   has  lead   to
renewed  activity   in   the   field  of  seasonal to interannual
prediction.  Predictability  on  this  timescale  is   intimately
linked   with      ability  to  predict  ocean  variations,   and
its  coupling  to  the   atmosphere.    Two    developments    in
particular    have    led    to    a  realisation   that  skilful
operational seasonal prediction will be feasible: the development
of   realistic  coupled   ocean/atmosphere  models,    and    the
improving  ability  to   measure   the  upper  ocean, using  both
enhanced    in    situ    observations,    and   remotely  sensed
measurements.

The research programme on seasonal to interannual  prediction  at
ECMWF   is   concentrating  on   three   basic   objectives.

1.  Quantify  the  predictability  of  seasonal  mean atmospheric
    variability,  over  Europe  and  regions where  there  may be
    European  interest,  based  on atmospheric model integrations
    with  prescribed  observed  sea  surface-  temperature (SST).

2.  Develop a fully coupled ocean atmosphere model and ocean data
    assimilation system to  the stage where real)  time  seasonal
    forecasting  is  possible.

3.  Test the  coupled  system  in hindcast mode over cases in the
    1980s and  1990s.

The developments at ECMWF are part of a larger European programme
on   research   on  seasonal  to interannual forecasting. Much of
this activity is being coordinated through  a  3  year   European
Union    project      (which     began     in     March     1996)
Prediction    Of  climate   Variations     On     Seasonal     to
interannual    Timescales  (PROVOST).   In   the   initial  phase
of PROVOST,  much  of   the  coordinated    experimentation    is
being    devoted     to    the first objective   outlined  above,
with  four  groups  performing  integrations  and  analyses.

The principal scientific basis for  seasonal  prediction  in  the
atmosphere       is      that     lower   boundary     anomalies,
associated principally  with  SST  but  also  with   land-surface
effects,   are  at  least  partially  predictable  on time scales
significantly longer than that of daily weather.  Moreover,  even
though    the   atmosphere  is   chaotic,  these  lower  boundary
anomalies  can  have  a   significant   impact   on   atmospheric
variability    (changing,    for    example,    the   statistical
probability   of   blocking   over   a  given   region   of   the
atmosphere).

The impact of lower boundary forcing on  atmospheric  variability
is,   however,  dependent on position, season and the strength of
the boundary anomalies. The purpose  of  the  first component  of
the  ECMWF    (and    PROVOST)    research    programme,   is  to
quantify this dependence more explicitly. In order  to  do  this,
ensemble  integrations  of  atmospheric  GCMs and NWP models have
been  run  over  seasonal  time  scales   with    the    observed
prescribed   SST.    Four  different  modelling groups (with four
different models) are taking part in  this   project:  ECMWF (IFS
T63L31   cy13r4),   Meteo   France  (M-F)  (ARPEGE  T42L31  cycle
12d),  Electricite de  France   (EDF)  (ARPEGE    T63L31    cycle
12d),   UK    Meteorological    Office
 (UKMO) (Unified Model, 2.5x3.75 L19, version 3.4). Each ensemble
is   120   days   long   and   consists  of  9  members,  started
from consecutive  12z analyses. The integrations  are  being  run
over the ECMWF reanalysis  period  (1979-1993)  using  reanalysis
as initial conditions and observed SSTs taken from the reanalysis
project.   These  SSTs  are  based  on   the  UKMO GISST analyses
until  October 1981,  and  on  Reynolds  OI  analyses  after this
date.

In addition to their use as intial data, reanalysis  is  used  to
verify the ensemble integrations.  The set of CDs being developed
contains  data from ECMWF  ensemble  integrations.   It  provides
cost   efficient   data  access  to  exploit  the   potential  of
seasonal  ensemble  simulations by   the   wider   community   of
researchers in predictability, particularly those from developing
countries.

Results from the  ECMWF ensembles simulations for Winter, Spring,
Summer and Autumn are included  in the four  CDs. All CDs contain
25 10-day mean  fields for  each  ensemble member,
started from consecutive 12 z analyses immediately preceding  the
season of interest. That  is  1  December  for the Winter season,
1 March for Spring, 1 June for Summer and 1 September for Autumn.
Ensemble member 10 contains 10-day means over 24h forecasts based
on reanalysis to 
attain consistent fields well comparable to the ensemble forecast
data. The difference between 24h forecast and reanalysis
is negligable for the purpose of this project.

Although moderate in-house  and  independent  checking  has  been
performed  on  the  data contained on the CD-ROMs, it is possible
that errors may still exist. Users  can  be  appraised of  errors
found  after  the  release of the CD-ROMs by monitoring the ECMWF
home page:

                    http://www.ecmwf.int

and select the 'corrspondence with the web  manager'  button.  In
addition,  watch  for  further developments regarding interactive
communication via the ECMWF home page for exchanging  information
about problems, etc. on these CD-ROMs.

ACKNOWLEDGMENTS:

This project was funded in part by the Commission of the European
Union   under  contract  EV5C - CT93 - 0279  (short-term  climate
variability).  We   greatly   acknowledge   the   developers   of
Grads,   wgrib   and  gribsimp    for   letting   us   make  such
generous  use  of  their developments for this project.


DISCLAIMER:

For your future  reference  a  copy  of  this  On-Screen  Licence
Agreement  will  be accessible after you install the Software. If
you have any questions regarding this agreement or if you wish to
request  any  information  from  ECMWF  please  use  the  address
information enclosed in this product to write  to  the  Director,
ECMWF, Shinfield Park, Reading, RG2 9AX, UK.

Please read this carefully ==========================

(i) THIS IS A CONTRACT BETWEEN YOU AND THE  EUROPEAN  CENTRE  FOR
MEDIUM-RANGE  WEATHER  FORECASTS ("ECMWF"). BY SELECTING THE ICON
BELOW TITLED "ACCEPT" YOU ACCEPT ALL THE TERMS AND CONDITIONS  OF
THIS AGREEMENT. If you do not agree with the terms and conditions
of this Agreement, select the icon titled "NOT  ACCEPT"  and  you
will not be able to use the Software. In that case, please return
this product to the location where you obtained it or  ECMWF.  If
you  cannot  understand this licence or do not think this licence
applies to you then please return this product  to  the  location
where you obtained it.

(ii) This ECWMF On-Screen Licence Agreement accompanies a  single
copy  of  the ECMWF Ensemble Forecast CD-ROM and various data and
program files ("Software") owned by the  Centre  for  Ocean  Land
Atmosphere  Studies,  Research  Data  Systems  Corporation, Naval
Research Laboratory Marine Meteorology Division and the  European
Centre  for Medium-Range Weather Forecasts ("Suppliers"), as well
as related explanatory written materials  ("Documentation").  The
term   "Software"  shall  also  include  any  upgrades,  modified
versions, updates, additions, and copies of the Software licensed
to you by ECMWF or third parties.

(iii) THIS IS A LICENCE AGREEMENT AND NOT AN AGREEMENT FOR  SALE.
ECMWF continues to own the copy of the Software contained in this
package, the Documentation and the physical media  on  which  the
Software and Documentation are supplied to you.

ECMWF grants to you a non-exclusive licence to use  the  Software
and Documentation, provided that you agree to the following:

1. Use of the Software. You may -

* Install the Software from the CD-ROM on a closed network server
on  a single location on a hard disk or other storage device that
is not accessible over an open network.

*  Use  the  Software  to  provide  an  insight  into   potential
predictability with seasonal ensembles.

* Make one backup copy of the Software, provided no other copy is
installed  or  used  on  any  computer.  The  backup  copy of the
Software may not be used if the supplied copy of the Software can
be used.

2. Decompilation of the Software

You agree not to  reverse  engineer,  decompile,  disassemble  or
otherwise  attempt  to  discover  the source code of the Software
except as expressly permitted by law.


3. Copyright.

All  title  and  copyrights  in  and   to   the   Software,   the
Documentation,  and  any copies of the Software or Documentation,
are  owned  by  ECMWF  or  its  suppliers.   The   Software   and
Documentation  is  protected  by copyright laws and international
treaty provisions.  You may not copy the Documentation. Except as
stated   in   this  Agreement,  ECMWF  does  not  grant  you  any
intellectual property rights in the Software and Documentation.

4. Confidential Information

The  structure,  organisation  and  code  of  the  Software   are
confidential   information   of  ECMWF  and  its  suppliers.  You
undertake to treat as confidential all information  contained  in
the program.

5. Transfer

You may not rent, lease, sublicense,  or  lend  the  Software  or
Documentation.

6. General Provisions

If any part of this Agreement is found void and unenforceable, it
will  not  affect  the  validity of the balance of the Agreement,
which shall remain valid and enforceable according to its  terms.
This  Agreement  may  only  be  modified  in writing signed by an
authorised officer  of  ECMWF.   This  is  the  entire  agreement
between   ECMWF   and  you  relating  to  the  Software  and  the
Documentation  and  it  supersedes  any  prior   representations,
discussions,    undertakings,    end-user   licence   agreements,
communications or advertising relating to the  Software  and  the
Documentation.  This  shall not prejudice the statutory rights of
any party dealing as a consumer.

7. Limited Warranty

If the Software does not perform substantially in accordance with
the  Documentation,  the  entire and exclusive liability of ECMWF
and its suppliers, and your exclusive remedy shall be limited  to
the replacement of the original Software and Documentation.

ECMWF AND ITS SUPPLIERS DO NOT AND CANNOT WARRANT THE PERFORMANCE
OR RESULTS YOU MAY OBTAIN BY USING THE SOFTWARE OR DOCUMENTATION.
CLAUSE 7 STATES THE SOLE AND EXCLUSIVE REMEDIES  FOR  ECMWF'S  OR
ITS  SUPPLIERS'  BREACH  OF  WARRANTY.   EXCEPT FOR THE FOREGOING
LIMITED WARRANTY, AND FOR ANY WARRANTY WHICH CANNOT  BE  EXCLUDED
BY  COMPULSORY LAW IN THE UNITED KINGDOM, ECMWF AND ITS SUPPLIERS
MAKE NO WARRANTIES OR CONDITIONS, EXPRESS OR IMPLIED, AS TO  NON-
INFRINGEMENT OF THIRD PARTY RIGHTS, MERCHANTABILITY, SATISFACTORY
QUALITY OR FITNESS FOR ANY PARTICULAR PURPOSE. IN NO  EVENT  WILL
ECMWF  OR  ITS  SUPPLIERS  BE  LIABLE  TO  YOU  FOR  ANY  DAMAGES
WHATSOEVER ARISING OUT  OF  THE  USE  OR  INABILITY  TO  USE  THE
SOFTWARE  EVEN IF AN ECMWF REPRESENTATIVE HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES, OR FOR ANY CLAIM BY ANY THIRD PARTY.

Nothing contained in this Agreement shall prejudice the statutory
rights  of  any party dealing as a consumer. Nothing contained in
this Agreement limits ECMWF's liability to you in  the  event  of
death or personal injury resulting from ECMWF's negligence.

ECMWF is acting on behalf of its suppliers  for  the  purpose  of
disclaiming, excluding and/or restricting obligations, warranties
and liability as provided in this  Clause  7,  but  in  no  other
respects and for no other purpose.

8. Disputes

This Clause,  Agreement  and  all  disputes  arising  under  this
Agreement  shall  be governed by and construed in accordance with
English law including its rules on the conflict of laws.  In  the
event  that  any  dispute  cannot be settled, it shall be finally
settled under the Rules of Conciliation and  Arbitration  of  the
International  Chamber of Commerce by three arbitrators appointed
in accordance with the said Rules.  In accordance with Section  3
of  the Arbitration Act 1979, the right of appeal by either party
to the High Court of England under Section 1 of that Act shall be
excluded in relation to any award of such arbitrators and neither
party shall have the right to  apply  to  the  High  Court  under
Section 2(1)(a) of that Act for the determination of any question
of law arising in the course of  the  reference  to  arbitration.
Unless  otherwise agreed in writing, the arbitrators shall sit in
England.

Read  the   files   grads/cpyright,     decoder/gribsimp/disclai,
decoder/wgrib/readme and decoder/gribex/readme.

II.  CD-ROM DESCRIPTION
     ------ -----------

The 4 CD-ROMs contain selected fields for the Winter season DJFM,
Spring  MAMJ,  Summer  JJAS  and  Autumn  SOND of the period 1979
through 1993.  The following 10 day mean fields (twelve for  each
120 day season for each of the 15 years) are included:

- Geopotential on levels 700, 500 and 200 hPa (z), 12 bit,

- Temperature on  850, 500 and 200 hPa (t), 11 bit,

- U- and V-Windcomponents on 850 and 200 hPa (u,v), 11 bit,

- Vertical Velocity on 500 hPa (w), 12 bit,

- soil-moisture content in the first layer (7cm) of the soil model
  used (swl1), 11 bit,

- snow depth (sd), 11 bit,

- precipitation (large scale plus convectiv)(tp), 11 bit,

- surface sensible heatflux (sshf), 12 bit,

- surface latent heatflux (slhf), 12 bit,

- mean sea level pressure (msl), 11 bit,

- total cloud cover (tcc), 7 bit,

- surface solar radiation (ssr), 12 bit,

- surface thermal radiation (str), 12 bit,

- top thermap radiation (ttr), 12 bit,

- surface windstress components (ewss, nsss), 11 bit,

- minimum temperature at 2m (mn2t), 11 bit,

- maximum temperature at 2m (mx2t). 11 bit,

- surface temperature (stl1, Member 10 (reanalysis) only). 11 bit,

- land-sea mask (lsm, under "season" (winter, spring, summer or
  autumn, 1 file only) 4 bit,

All of the fields on these  CD-ROMs  have  been  converted  to  a
uniform 2.5  degree  resolution  latitude-longitude  grid (144 by
73 grid points), oriented from the  South  Pole  (j=1)   to   the
North   Pole  (j=73),  and  from Greenwich (i=1) eastward to 2.5W
(i=144).  The number of bits (NOB) per data value determines  the
data value accuracy A.  A   =   ( Maximum value - Minimum value )
/  2 ** NOB E.g.: Total cloud cover: A   =    (   100           -
0         )  /  2 ** 7   == 0.78125 .Furthermore
the Gridded Analysis  and  Display  System  (GrADS)  is  provided
on all CDs and Grib-decoding tools are provided on the Winter CD.


  IV. CONTENTS and DIRECTORY STRUCTURE

All of the data on the  CD-ROMs  are  stored  in  GRIdded  Binary
("GRIB")  which  is  a  packed  binary  format  and is  thus  not
directly  readable.  However,  two   sets of simple yet  powerful
software  packages  are included on the  CD-ROM. The first allows
users  to  view and manipulate the data and the second set allows
users to unpack the data so that users can import  the data  into
their  own application software.  These software packages are the
Gridded Analysis and Display System "GrADS", discussed in Section
V  "Grads"  and  three  independently  developed  Grib  decoders,
discussed  in  the  README  files under the directories "decoder/
wgrib", "decoder/gribsimp" and "decoder/gribex" respectively. For
more information about GRIB, see files  "WGRIBDOC.TXT  (ASCII) or
"WGRIBDOC.PS" (PostScript).


Figure 1.  Directory structure:

 (winter,
  summer, /  ensemb (1 - 14/15) / member (1 - 10) / ---- gz(date)
  spring,                                             |- geop.gpm
  autumn )                                            |- geop.ctl
grads     / --- dos grads                             |- ta(date)
             |- linux     / linux grads               |- temp.gpm
             `- windows   / grads meta file viewer    |- temp.ctl
                                                      |- wi(date)
decoder   / ---- gribex   / ecmwf grib decoder        |- wind.gpm
(only on      |                                       |- wind.ctl
Winter CD)    |- gribsimp / saic  grib decoder        |- sf(date)
              |                                       |- surf.gpm
              `- wgrib    / ncep  grib decoder        `- surf.ctl

paper     /  era documentation
             cd rom documentation

html      /  html documentation on the CDs

There  are  five   main "root-level"  directories  on  the 
CD-ROM. The names and descriptions of their contents follow:

1.  "season" (spring, summer, autumn or winter)/ ensemb(1-15)

             contains  the  15-year  ensemble  directories  (1979
             through 1993).

           / ensemb(1-15) / member(1-10)

             each ensemble directory contains nine
             ensemble  members  plus  the  reanalysis  fields  as
             member 10.

           - each member  directory  contains  the twelve  10-day
             means  of  the  25  fields in four gribfiles named :

             gzyymmdd       contains Z on 700, 500 and 200 hPa
                            and W on 500 hPa
             tayymmdd       contains T on 850, 500 and 200 hPa
             wiyymmdd       contains U,V  on   850 and 200 hPa
         and sfyymmdd       contains surface  data (see above)

    ending with a date. The yy stands for (78 + ensemble),
    the dd stands for                     (21 + member),  and the
    mm stands for 02  for  the  Spring, 05 for Summer, 08 for
    Autumn and  11 for
    the  Winter season.  This  date  is  the starting date of the
    simulation. The  members of  each  ensemble differ in so far,
    that they  were  started  10 - (member) days before the start
    if the  forecasted  period ( 1st  March,  1st  June  and  1st
    December).  Member  1  of  the  Winter season for example was
    started at Nov. 22nd, Member 2  was  started  at Nov. 23 etc,
    until Member 9  wasstarted  Nov.  30th.  The  length  of  the
    forecast is  variable,  depending  on  the initial date. They
    were run from the initial date until the end of  the  season.
    Member 10 contains the means over 10 24hour forcasts based on
    the reanalysis fields from the ERA project. The files  ending
    *.ctl  and  *.gmp  are  required for the analysis and display
    tool grads.

2.  grads - contains the  Gridded  Analysis  and  Display  System
    (GrADS) information  and  software.  This software, which was
    developed  by  Brian  Doty   of  the  Center  for Ocean  Land
    Atmosphere studies (COLA) of Calverton, MD, is an easy-to-use
    and  powerful  system  to display and manipulate the data  on
    these CD-ROMs.  Once  installed, users need only invoke a few
    simple commands to display data.   GrADS also reads GRIB data
    directly.

    grads / linux contains the linux version of grads.

3.  decoder (only on Winter CD) - contains:

    wgrib - contains information and software for "wgrib",  which
    is  a  powerful  grib  decoder  developed by Wesley Ebisuzaki
    of Research Data Systems Corporation.

    gribsimp  - contains information and software for "gribsimp",
    which is another grib  decoder package developed at the Naval
    Research Laboratory (NRL), Monterey,  CA.

    gribex  - contains  information  and  software  for "gribex",
    which is ECMWF own grib de- and encoder package.

4.  paper  - era.ps, that gives some backgroud on the reanalysis
    project at ECMWF.

5.  html   - contains:

    documentation of the CDs in html format. Point your internet
    browser to html/seasforc.html.

2222222222222222222222222222222222222222222222222222222222222222

   PC GrADS

PC-GrADS  is included on this  CD-ROM  (grads.exe).  Versions  of
GrADS  for  other  platforms  can be obtained from the GrADS home
page:

 http://grads.iges.org/grads/head.html



1. INSTALLATION

   Execute  'start' followed by the CD-ROM device assignment.

   EXAMPLE: d:start d:
            {assuming device d: is assigned to  the  CD-ROM}


-----------------------------------------------------------------

                            Problems running START.BAT

   1) A common problem is that PATH is limited to 128 characters.
   If the  PATH  is  longer  than  roughly  106  characters  then
   START.BAT
   cannot include GrADS on the path.  The path must be  shortened
   (in the AUTOEXEC.BAT).


   2) The next most common problem is "OUT OF ENVIRONMENT SPACE".
   START.BAT needs to  set  two  environment  variables  (gaddir,
   gascrp),  which  GrADS  uses  to find the font, map and script
   files.

   In windows, the size of the environment space is controlled in
   the system.ini file (usually c:\windows\system.ini).The
   following sets the environment space to 1024 bytes:

   [NonWindowsApp]                   (find this section)
   ...                         (other configuration parameters)
   CommandEnvSize=1024               (change/insert this line)


   In MS-DOS, the following line in your CONFIG.SYS sets the
   environment space to 1024 bytes,

   SHELL=C:\DOS\COMMAND.COM /P /E:1024


   3) The next most common problem is a corrupted PATH (with
   lengths less than 128 characters) such as

   C:\DOS;C:\WINDOWS;;E:\PROGRAMS\PCGRADS
                    ^^
   The PATH should only have one semicolon separating the  second
   and third directories.  You need to modify your AUTOEXEC.BAT.

3333333333333333333333333333333333333333333333333333333333333333
Notes  about the  demo (ecmwf.bat, ecmwf.gs, season.gs, exampl.gs
animatio.gs and emmean.gs)

1) To run the demo from MS-DOS, go to the root directory  of  the
   cd-rom and type ecmwf, e.g.

                e:     (e: is the cd-rom in  our example)   ecmwf

2) The demo will work on some UNIX machines.   cd  to  the  grads
   directory and run grads,

                cd /cdrom/grads
                grads  -lc  "run ecmwf.gs"

   If grads is installed, the path is set correctly, and you  can
   use the .ctl files, then  you should be able to see  the demo.
   No promises.

3) The ecmwf.gs calls season.gs, animatio.gs, emmean.gs and 
   exampl.gs. The latter  four scripts can be run independently.
   You could type

                grads -lc "run season.gs"

   from the grads directory.

4) Customizing the 'ecmwf' demonstrator.  Of course, you can't  
   write  to  the
   ensemble CD-Rom; however, you can copy ecmwf.gs, season.gs, 
   animatio.gs, emmean.gs and exampl.gs
   to your hard drive and edit those files.   The  new files will
   not  work unless you

      i) Install GrADS (set path, gaddir, and gascrp). One way to
         temporarily install GrADS is to run start.bat.

      ii) Modify season.gs, emmean.gs, animatio.gs, emmean.gs and 
          exampl.gs.  Change the line,

                base='..'            to
                base='d:'            or
                base='e:'            or
                base='f:'

          depending on the location of your cd-rom.  The change  
          must be made in all five  files.

6) ecmwf.gs,  exampl.gs, animatio.gs,   emmean.gs and season.gs 
   were placed in
   the grads  directory  so that the path, gaddir and gascrp need
   not be set.

7) The menus don't list all detail about the display  options.

   exampl.gs:
   If you enter under the  t  (for  time)  option  not  only  one
   number, but two with a blank in between, you can  get  a  kind
   of  pseudo  animation  of  the  display.  It  makes the script
   display all  data  for  valid times between the  first and the
   second  number  given.  (Doesn't allways look good)

   The p (print) option stores to a  file  named  expl(N)_(M).gmf
   the latest display in grads meta file  format.  N  here stands
   for  the example number (1-9)  and  M is a number added to the
   file  name   unique  for  each single session with running the
   ecmwf demo. Once you quit the demo, make sure, you convert the
   files you want to keep  to ps and rename them,  because  in  a
   future session with the demo, you could  overwrite  these plot
   output files easily.

   Look  out  for lines beginning with a *Unix (commenting out OS
   dependencies) in exampl.gs and animatio.gs. If you are running
   Unix, uncomment those lines.

   season.gs:
   You can click with the mouse into  the  global  display  while
   running  season.gs  (or option 1.) out of ecmwf.gs) and get  a
   zoomed  window  of about 70 times 120 Degrees, located arround
   0.N,0.E. You can move this window  to your area of interest by
   clicking again anywhere in the  window. This point becomes the
   center of the next display. If you klick north or south of  70
   degrees, the projection  switches  to polar  stereographic. To
   come  back to  standard latlon, klick anywhere equatorwards of
   50 Degrees. The  little icon  in the upper right of your Grads
   graphics window changes from "G" for global to "Z" for  zoomed
   or  "N"  north  polar  stereographic or "S"  for  south  polar
   stereographic.  Click here, if you want to revert  from zoomed
   to a  global  display.  

   In the upper left hand corner, you find three icons with their
   function described as follows:
   The  top  most  button  allows  the  display of the difference
   (simulation - Era data).
   The  button  in the middle allows to display the ensemble mean
   and the ensemble  variance.  (var = (1/(n-1) times Sum over  n
   (  ( ensemble  member  -  ensemble  mean )  square)  exp  1/2)
   The  lowest  button allows to display all ensemble members and
   the Era data as member 10.

   Interaction  with  the  screen  (mouse clicks) have no meaning 
   for MS-Dos.



4444444444444444444444444444444444444444444444444444444444444444

                G R I B E X

E.C.M.W.F. Grib decoder


Bernd Dieter Becker.

This is the ECMWF grib  de-  and  encoder  for  a  little  endian
computer.   It  is  the same code as run on big endian computers,
but each input  Grib  message  is  byteswapped  before  decoding.
If you want gribex to run on a bigendian computer, comment out 
all calls to the byte swapping routine SWAP32 in the main program
agrdemo.f.
Documentation  can  be  found in the files agrdemo.f and gribex.f
and in Meteorological bulletin M1.9/3 "Encoding and decoding GRIB
data"  by  John  Chambers available in Postscript file gribex.ps.

Please read the disclaimer in  the file decoder/gribex/readme.

To build gribex on your unix  system, do:

gunzip and detar the file gribex.tgz

issue the following five  commands

g77 -c *.f (or f77 -c *.f or f2c -c *.f)

gcc -c *.c

ar -r grexlib.a *.o

g77 -o gribex agrdemo.o grexlib.a

gribex

or run the Makefile and take it from  there.  Create a  directory
/tables  and  move  the  files   local_table_2_version_128    and
local_table_2_version_129   there.  / denotes  the  very  top  of
your directory tree. Ask Systems people to do it for you,  should
you not have root permission.

The  file  dogri.zip  contains the winzip archive of all files to
build  gribex under  the  Microsoft  Fortran  Powerstation 4. The
build commands are :

cl /c *.c

fl32 *.f  *.obj

move *.exe  gribex.exe

the  tables  directory  shall  reside  on  drive c: (hardcoded in
local2.f). This gribex.exe only runs under  Windows 95 and is not
compatible with older versions of dos.

The one line (default) output is a concatenation  of  F:  No.  of
field  : byte position in the message : start Date : start Time :
Parameter : Level : target Date : target Time as a descriptor  of
each individual gribfield in the gribmessage. Do not use wildcards
in the input filenames in Dos.

Example:     F   14:   201132:841126:120000:228:  0:841201:120000

 gribex -i inputfile name
        -o outputfile name
        -O requested operation :
           B, decode 8-bit data without rescaling,  eg  satellite
              or image data.
           D (default), Decode data from Grib code.   If  pseudo-
              Grib is encountered, the return code is set to -6.
           G, Special decoding for graphics purposes.
           I, Decode only Sections 0, 1 and 2 of Grib data.
           L, Returns the length of the Grib message and the Grib
              edition number only.
           R, decode data from Grib code  and, if a quasi-regular
              (reduced)  grid  is  encountered,  convert it  to a
              regular grid.
           S, Decode initialised analysis data from Grib code and
              set the time range indicator flag.
           X, Extract data values from up to 4 points from a Grib
              coded  grid  field, without unpacking data at other
              points.
           Z  Decode  data  from  Grib  code.  If  a  bitmap  is
              encountered, the return code is -5.

Further more, but requiring code changes in agrdemo.f ( the  main
program ), are available:

           A  encode 8-bit data without rescaling,  eg  satellite
              or image data.
           C  encode data into Grib ( with or without bitmaps ).
           M  encode  data  into  Grib  and,  if  a  bitmap   is
              encountered, make Grib message full length.

              (see the manual for details)

        -d dump record number
        -l dump controlled by list read  from  stdin  (the  first
           number only is important)
        -ascii for formatted output
        -bin   for unformatted output
        -ieee  for unformatted output byteswapped and big  endian
               readable.
        -grib  for grib output
        -v and V for verbose   print section 1 and 2 or 1,  2,  3
               and 4 plus some data values.

Redirect this output to a file, customize and reuse  it  as  list
input   for   sorting   or    chopping   of   your   input  file.

Exp.: cat list | gribex -i infile -o outfile -grib -l

The fun comes in,  if you do constructs like:

 gribex -i infile  -O I  | grep "item" | gribex  -i  infile    -o
 outfile -grib -l -O I

This  filters  out  all  matching  "items"s  from  the  gribfield
descriptors into  a  new  grib  outputfile.  Items  could  be any
item from the gribfield descriptor.

Good Luck!

Bernd Dieter Becker


5555555555555555555555555555555555555555555555555555555555555555

     wgrib v1.5.0                       Wesley Ebisuzaki

                         Portable Grib decoder


wgrib  is   a   portable  program  to  read  grib files that were 
created by the NCEP/NCAR Reanalysis Project. 

   The full documentation for wgrib  is   to be found in the file
   decoder/wgrib/readme.

Note  that  wgrib  v1.5 makes the "-v" option  an  inventory  and
can  "break"  codes  that  used  the  old  format.   As a result,
grib2ctl must be at least v0.9.8b.   wgrib doesn't handle thinned
grids nor spherical harmonics.


Running  wgrib  without  any  arguments  displays  a  short  help 
message.


         wgrib v1.5.0 (7-10-96) Wesley Ebisuzaki
         Portable Grib decoder for NMC Reanalysis
            it slices, dices

          usage: wgrib [grib file] [options]

           options:
           -v  verbose (verbose inventory)
           -V  even more verbose (not a inventory)
           -s  short inventory
               (default) regular inventory

           -d [record number]  dump record number
           -p [byte position]  dump record at position
           -i  dump controlled by stdin (inventory list)

           -text    dump will be a text file
           -ieee    dump will be an ieee file
           -grib    dump will be a GRIB file
           -bin     dump will be in binary (default)
           -nh      dump will have no headers
           -h       dump will have headers (default)
           -append  to dump file
           -o [file] changes name of dump file from 'dump'
              will scan without -d, -p, or -i options




                 *** Standard Inventory ***

WGRIB's first duty is create an  inventory.   This  inventory also
serves  as an index file.  Using the test file land.grb you should
be able to enter:

%                         wgrib                          land.grb
1:0:d=87010100:LAND:kpds5=81:kpds6=1:kpds7=0:TR=0:P1=0:P2=0:
TimeU=1:sfc:anl:NAve=1


The inventory consists of several fields separated by  colons.
The contents of the fields are:

   1. Record number
   2. Position in bytes
   3. Date (YYMMDDHH).
   4. Parameter name (LAND=land/sea mask)
   5. Indicator of parameter and units (grib PDS octet 9)
   6. Type of level/layer (grib PDS octet 10)
   7. Height, pressure, etc (grib PDS octets 11-12)
   8. Time Range (grib PDS octet 21)
   9. Period of time 1, (grib PDS octet 19)
  10. Period of time 2, (grib PDS octet 20)
  11. Forecast time unit (grib PDS octet 18)
  12. level
  13. anl=analysis, fcst=forecast
  14. NAve (number of grids used to make average)

                            Tricks for wgrib
                            ------ --- -----

Every  once  in a while, someone requests that I add some feature
to wgrib.  Usually I say no because I'm lazy.  I  then  give  the
excuse  that  feature  is  already  available  with a bit of UNIX
trickery.

     wgrib v1.5.0                       Wesley Ebisuzaki


(1) How do I convert the entire file to binary?

    wgrib grib_file | wgrib -i grib_file -o binary_file


(2) How do I get a verbose listing of the 20th record only?

    wgrib -V -d 20 grib_file

    (2') How about a verbose listing without a dump file?

         wgrib -V -d 20 grib_file -o /dev/null


(3) How do I extract the 20th and 30th records?

    wgrib grib_file | egrep "(^20:|^30:)" | wgrib -i grib_file -o
    binary_file


(4) How do I extract the 500 Heights from a file (grib->grib)?

    wgrib  -s  grib_file | egrep ":UGRD:500 mb:" | wgrib -i -grib
    grib_file -o new_grib_file


(5) How do I eliminate the 500 Heights from a file  (grib->grib)?

    wgrib  -s  grib_file  |  egrep  -v ":UGRD:500 mb:" | wgrib -i
    -grib           grib_file -o new_grib_file


(6) How do I extract the  winds  and  temperatures  from  a  file
    (grib->grib)?

    wgrib -s grib_file | egrep "(:UGRD:|:VGRD:|:TMP:)" | wgrib -i
    -grib           grib_file -o new_grib_file


(7) How many records does this file have?

    wgrib -s grib_file | wc -l


(8) What is the range of values in this file?

    wgrib -V grib_file | grep " max "


(9) How do I do a file transpose (rearrange the order) ?

    See ts2synoptic.  This script could be pared down to 3 lines!
    Other file transposes are done in a similar manner and many
    only need one line!  Unfortunately finding that one line
    may require some effort.


(10) My grib file has junk at the end. How do I get rid of it?

     wgrib   old_gribfile   |  wgrib  old_gribfile  -i  -grib  -o
     clean_gribfile


(11) Don't forget that you can 'cat' grib files.  That gives  you
     another tool for making your own tricks.


6666666666666666666666666666666666666666666666666666666666666666





                              GRIB DECODER v2.2
                              ~~~~~~~~~~~~~~~~~
        Developed   at   Science    Applications    International
        Corporation (SAIC) Monterey, CA

        Sponsored by  Naval  Research  Laboratory  (NRL),  Marine
        Meteorology Division Monterey, CA

        with funding from the  Defense  Modeling  and  Simulation
        Office (DMSO) for the Master  Environmental Library (MEL)
        and  Environmental  Effects  in  Distributed  Interactive
        Simulation (E2DIS) projects.


              Developers:   Steve        Lowe        (SAIC)
                            lowe@nrlmry.navy.mil
                            Louis Hembree (NRL)
                            Todd Kienitz (SAIC)


A complete documentation of gribsimp can be found in the file 
decoder/gribsimp/readme.
Please read the disclaimer in  the file decoder/gribsimp/readme.

1.0 Introduction:

  The Gridded Binary (GRIB) format is a standard transfer  format
designed by the WMO.  It consists of a series of header sections,
followed by a bitstream of packed data.  The GRIB format  can  be
tailored  for  local use by the definition of extensions, but any
changes to the standard must be backward compatible,  so  that  a
GRIB  message  can  be  read  by  any  standard GRIB decoder.  In
addition, the GRIB standard allows for the  definition  of  local
tables  for  many  of  its parameters, which can then be included
with the message or  made  available  otherwise  to  users.   The
problem  is  that  the  GRIB standard does NOT specify a standard
format for these  local  tables,  making  it  very  difficult  to
automatically  use one center's GRIB decoder for messages encoded
with local tables somewhere else.

The GRIB decoder included here  is  intended  to  be  used  as  a
stand-alone program, however it does contain a single call to the
decoding function that could be  stripped  out  and  used  within
other  software.   The  major  drawback to doing this is that the
main program of the decoder takes care of locating  one  or  more
GRIB  messages in a single file, indexing messages for subsequent
processing, and performing all table look-ups  once  decoding  is
complete.   The  decoder  FUNCTION  expects  a  pointer to a GRIB
message  loaded  in  memory  and  returns  a  set  of  structures
containing  header  information, a data array, and a pointer to a
bit map if included.  It decodes one message only,  and  performs
no table look-ups.

  This software is not yet a full  implementation  of  GRIB  code
  edition 1.  The decoding function is limited as follows:

        1)  It  can  only  decode  the  following   grid   types:
                -  Latitude/Longitude  (Type 0)                 
                -  Mercator (Type 1)
                -  Lambert  Conformal  (Type  3)
                -  Gaussian    Latitude/Longitude    (Type   4)
                -  Polar Stereographic (Type 5)

            The  Spherical  Harmonic  grid  type  has  not   been
implemented yet.  Stretched and Rotated Grids can be decoded, but
have not been fully tested and are not included in  the  printing
module.

        2) It can only decode floating point  gridded  data  that
was packed using simple packing.  Spherical Harmonic coefficients
and second-order packing is not yet supported.

        3) Bitmaps are now supported, but there is no logic built
in to handle a predefined bitmap (one that is not included in the
message).  If a message is encountered with a predefined  bitmap,
the program issues a warning but is allowed to proceed.  However,
without the bitmap applied, the data in the message  can  not  be
properly assigned to the specified grid.

 A) Installation:

   The Version 2.2 software has been organized into the following
directories:

   gribsimp--+  |- bin     : Executable  software
                |- data    : Sample  data file and output logs
                |- doc     : This README  file  and  CHANGES_v2.2
                |- include : Required    include   files
                |- src     : All  source  code  and  makefiles
                |- tables  : Decoder tables and table.cfg file

   The makefile included in the TAR should take care of compiling
and  linking  all  source  code  for  program gribsimp.  The only
machine dependent parameter is NBITSW, which is  defined  at  the
top  of  function  gbyte.c.   It specifies the number of bits per
word on your machine, and is set to 32.  The external tables  are
located  in  the  subdirectory  "tables".   You must redefine the
TABLES_PATH variable at the top  of  gribsimp.c  to  reflect  the
correct  path  to  the  tables.   It  is  recommended  you use an
absolute  path  to  the  tables  so  that  you  can  include  the
./gribsimp/bin  directory  in  your PATH environment variable and
run gribsimp from any location.

   The makefile uses the "cc" command to compile  the  code.   If
you  have  a different C compiler, you just need to change the CC
definition in Makefile.  THIS SOFTWARE IS WRITTEN IN ANSI C.

 To produce the executable  "gribsimp",  go  to  ./src  and  type
"make" at the prompt.

 B) Program control:

 The command line syntax for gribsimp is as follows:

 gribsimp -i infile -o outfile [-b] [-D] [-d] [-s table_file] [-t]
         [-v] [-I index_file] [-X index_file] [-debug]

-i : flag for input GRIB file, specified by 'infile' 'infile' can
contain  one  or  more  messages TAR'd or concatenaeted together,
with or without headers between messages.
        -o : flag to  produce  output  data  file(s),  in  32-bit
             unformatted binary.
        -b : do not apply the Bit Map Section to the data.
        -d : printing flag; creates GRIB.log which  contains  all
             header  information  and the first 100 data points.
        -D : same as -d but performs table look-ups as appropriate
        -s : set user defined table explicitly (only used with -D)     
        -t : use GRIB standard table (overides -s, only used
             with -D)            
        -I : generate an index file of GRIB messages  in 'infile',
             called  'index_file'
        -X : decode only those messages in 'infile' that are 
             listed in 'index_file'
        -v : echos version information
        -debug : prints  debug  information  to  stdout  as  each
                 message is being processed.  Very useful for 
                 shaking out problems with new messages.

   NOTES:
    - You MUST use the -i flag to do any decoding.
    - The -o flag is optional, but this is the only  way  to  get
      all the data in the message; (without editing source code).
    - The -t flag overides any table specified by -s
    - Using -I and -X together makes no sense. You must first use
    -I to create an index file; then use -X  to  use  that  index
       file as input to the decoder.  (see example below)


 C) The index file

   Using the -I flag will generate  an  index  file  of  all  the
messages  in  the input file.  Each line of the index file refers
to one distinct message.  This file is meant to be edited by just
deleting the lines for messages you don't want to decode.


For dos users:   put  the  table  g1tab_98_128.0  into  directory
c:\Gribsimp\tables   or  change  the  table_path  in   gribsimp.c
accordingly before  you recompile. This gribsimp.exe was compiled
with the gcc gnu c-compiler  under  windows  3.1.   Run  gribsimp
in  windows. (otherwise you  don't  have DPMI loaded). The output
file name for binary   files   is   not  unique!  It  had  to  be
redeced  to:    F{month}{day}{level}.{parameter}     Fmmddlev.par

Bernd Dieter Becker.