/WPS

The official repository for the WRF Preprocessing System (WPS)

Primary LanguageFortran

WRF Pre-Processing System Version 4.6.0

http://www2.mmm.ucar.edu/wrf/users/

The WRF Pre-Processing System (WPS) is a collection
of Fortran and C programs that provides data used as
input to the real.exe program. There are three main 
programs and a number of auxiliary programs that 
are part of WPS.

For questions and help to run the program, please see the 
User's Guide at http://www2.mmm.ucar.edu/wrf/users/docs/user_guide_v4/contents.html
and send email to wrfhelp@ucar.edu.

===================================================

Main programs: geogrid.exe, ungrib.exe, metgrid.exe

Input to the main programs is through the namelist
file "namelist.wps".  Each main program has an 
exclusive namelist record (named "geogrid", "ungrib",
or "metgrid", respectively), and the three programs 
have a group record (named "share") that each program
reads.

geogrid
-------
1) Defines the model horizontal domain
2) Horizontally interpolates static data to the model
domain
3) Output conforms to the WRF I/O API

ungrib
------
1) Decodes Grib Edition 1 and 2 data
2) Uses tables to decide which variables to extract
3) Supports isobaric and generalized vertical coordinates
4) Output is in a non-WRF-I/O-API form, referred to as an
   intermediate format

metgrid
-------
1) Ingest static data and raw meteorological fields
2) Horizontally interpolate meteorological fields to the 
   model domain
3) Output conforms to WRF I/O API




Parallelism

The geogrid and metgrid programs may be run as
distributed memory parallel jobs to reduce the 
time-to-solution.  These two programs use MPI calls
directly, compared to WRF, which has an abstraction
layer (RSL or RSL_LITE).




Grib Edition 2

The Grib Edition 2 compression requires three libraries
external to the WPS source code: zlib, png, and jasper.
It is recommended that users request support from their
system administrators when installing these packages.
Users can compile the code without these libraries by 
selecting the "NO GRIB2" options in the build.




Building WPS

Similar to the WRF package, WPS uses a two-step build
mechanism,
   ./configure
   ./compile
which directs the unix make underneath.
If the user is on a recognized architecture, the
configure script will display a list of available
compile options (usually serial vs parallel, Grib 2
enabled vs a "NO GRIB2" option).  For some OS options,
there are multiple compilers that are supported.

The configure option lists both "build GRIB2" and
"do not build GRIB2" options.  It is suggested that
the first builds be without the GRIB Edition 2
capability.

The utility plotting programs requiring NCAR Graphics are not 
compiled automatically. Library paths must be set correctly
in configure.wps and then compiled using 
./compile plotfmt
./compile plotgrids

Building WPS with CMake

The WPS cmake build follows the same procedure as the WRF
build procedure, using the following:
   ./configure_new
   ./compile_new
  
The prompts will look similar and present the user with
available options specific to their system.

Running WPS (for serially compiled code)

geogrid.exe
-----------
- edit namelist.wps (&share and &geogrid sections)
- make sure the correct GEOGRID.TBL is used (ls -l geogrid/GEOGRID.TBL*)
- type 'geogrid.exe' to run
- check output in geogrid.log

ungrib.exe
----------
- edit namelist.wps for start_date and end_date, output file prefix 
  (&share and &ungrib sections)
- link correct Vtable:
  ls -l ungrib/Variable_Tables
  For example, for NCEP GFS (or AVN, FNL) data,
  ln -sf ungrib/Variable_Tables/Vtable.GFS Vtable
- link grib data files:
  link_grib.csh /data-directory/file*
- type 'ungrib.exe >& ungrib.out' to run
- check output in ungrib.log and ungrib.out

metgrid.exe
-----------
- edit namelist.wps (&share and &metgrid sections)
- make sure the correct METGRID.TBL is used (ls -l metgrid/METGRID.TBL*)
- type 'metgrid.exe' to run
- check output in metgrid.log


There are a number of utility programs that will be
built in WPS/util/ directory:

avg_tsfc.exe
------------
purpose: computes a daily mean of the surface air 
temperature, reads the namelist.wps file

usage:
avg_tsfc.exe


g1print.exe
-----------
purpose: read a Grib Edition 1 file, output 
information to build a Vtable

usage:
g1print.exe GRIB1_file


g2print.exe
-----------
purpose: read a Grib Edition 2 file, output
information to build a Vtable

usage:
g2print.exe GRIB2_file


mod_levs.exe
------------
purpose: reduce levels in a intermediate file
so that different GRIB sources may be used
for the initial and lateral boundary time periods

usage:
mod_levs.exe OLD_intermetdiate:date_string \
             NEW_intermetdiate:date_string
Processes a single file at a time, uses the 
pressure levels defined in the namelist.wps file.

plotfmt.exe
-----------
purpose: generate NCAR Graphics metacode 2d
horizontal plots of each field and level in the
intermediate file

usage:
plotfmt.exe intermediate_file:date_string


plotgrids.exe
-------------
purpose: generate an NCEAR Graphics metacode
plot of the domain locations, one frame with
all of the domain locations plotted, reads the
namelist.wps file to get the domain information

usage:
plotgrids.exe


rd_intermediate.exe
-------------------
purpose: read an intermediate file and print
the information to the screen

usage:
rd_intermediate.exe intermediate_file:date_string



calc_ecmwf_p.exe
-------------------
purpose: when using ECMWF model data in GRIB format,
computes the 3-d pressure, height, and RH fields from
the output of ungrib.exe, and writes these fields to
a new set of intermediate files to be used in addition
to those produced by ungrib. All times between the start_date
and end_date specified in the &share namelist will be
processed.

usage:
calc_ecmwf_p.exe



Static Input Data

The static input data is provided in two tar files: one
contains full resolution data (30", 2', 5' and 10') and the other
contains only 10' low-resolution data. The data may be downloaded 
from http://www2.mmm.ucar.edu/wrf/users/download/get_source.html.




Meteorological Input Data

The meteorological input data for WPS is the GRIB
Edition 1 GFS data from NCEP.  A test data set 
(Jan 2000, 24/12Z to 25/12Z) is available from
http://www2.mmm.ucar.edu/wrf/users/download/get_source.html.



Sample WPS output data for WRF

Samples of the output data from WPS for use in WRF for the
Jan 2000 and June 2001 cases are provided from
http://www2.mmm.ucar.edu/wrf/users/download/get_source.html.