250 likes | 437 Views
The WRF Standard Initialization (WRFSI). Brent Shaw NOAA / Forecast Systems Laboratory. WRF Standard Initialization. Purpose Provides a method to define a WRF domain Location, projection, dimensions, resolution Acquisition/interpolation of static fields
E N D
The WRF Standard Initialization (WRFSI) Brent Shaw NOAA / Forecast Systems Laboratory
WRF Standard Initialization • Purpose • Provides a method to define a WRF domain • Location, projection, dimensions, resolution • Acquisition/interpolation of static fields • Provides all required initial and time-varying boundary conditions required to produce a forecast on the native WRF coordinate • Ingest external, readily available gridded fields (NCEP GriB) • Horizontally/vertically interpolate to WRF domain • Grid staggering to support dynamic core • Derivation of state variables required by dynamic core • Required to allow real-time testing of the forecast model • Supports data preparation for future WRF assimilation system
WRF Standard Initialization • Role of FSL • Lead agency for SI Working Group (John McGinley) • Designed, developed, and delivered initial version of WRF SI system • Maintenance/enhancement of initial system • Developed and coordinated WRF metadata specification • Reformatting of static fields provided by NCAR into flexible tile format • Status • Initial version delivered in Sep 2000 to support WRF release • Running in real-time at NCAR and AFWA • Released new version to NCAR in July 2001 • Additional fields to support LSM (soil types, greenness, etc.) • Refined interpolation methods for land/water masked fields • Improved code structure from initial version
WRFSI Current Capabilities • Domain Definition • Choice of 3 projections • Polar stereographic • Mercator • Lambert Conformal (secant or tangent) • Arakawa-C Grid Stagger with no nesting • Zeta height coordinate • Static field processing from tiled data sets • Dynamic Data Pre-processing • GriB-format pressure-level and surface data sets • Horizontal Interpolation • From Lat/Lon, polar-stereo, Lambert conformal, or mercator • Vertical Interpolation • From pressure to Zeta
WRFSI Software Design • Modular • Components can be run individually • New components can be easily inserted into run stream • New options can be more easily added • Maintainable • Reuse of code and concepts from other modeling systems (e.g., LAPS, MM5, RAMS) • CVS Revision control • Multiple platform build and testing strategy • User-Friendly • Single namelist file for control • Accommodations for future Graphical User Interface
WRF SI Software Components • Perl scripts for installation and running • Fortran and C routines • grib_prep: Reformatting of grib-format data files • gridgen_model: Domain definition and static data prep • hinterp: Horizontal interpolation and staggering • vinterp: Vertical interpolation and staggering • Miscellaneous utility programs • Programs controlled via single namelist file • Multi-platform support and testing (Alpha, PC Linux, IBM, SGI)
Program grib_prep • Runs whenever new input data sets available • Reads and re-formats GRIB-format data files containing pressure-level data • User-editable configuration table allows use of any level(s) of any variable contained in the GRIB file • Allows multiple sources per output time • Provides time-interpolation to fill gaps in data to meet desired LBC frequency • Writes simple, intermediate file for input to hinterp, allowing users to bypass gribprep if they have custom, non-GRIB datasets • Output from one run can support multiple domains provided they fall within domain of input source
Program gridgen_model • Run once when domain initially defined • Acquires/derives all required static fields • Topography with user-controllable filtering parameters • Latitudes, longitudes, map factors, coriolis, etc. on appropriate stagger (currently Arakawa-C) • All required fields for LSM support (in forthcoming release) • USGS 24-category landuse fractions • WMO/FAO 16-category 2-layer soil types • Annual mean temperature, monthly greenness fraction • Reads tiled data sets (available on FTP server) • Outputs NetCDF file
Program hinterp • Runs once per domain per simulation • Reads static file and gribprep output • Horizontally interpolates pressure level data to the WRF horizontal staggered (Arakawa-C) domain • Utilizes special routines for interpolation of masked fields (e.g., soil moisture, soil temperature, SST, snowcover, etc.) • Selectable interpolation method • Processes any variable contained in gribprep output • Outputs binary-format data and metadata
Program vinterp • Run once per domain per simulation • Vertically interpolates pressure levels to zeta coordinate • Linear interpolation of height w.r.t. ln(P) • Linear interpolation of other variables w.r.t. height • Derives variables needed for input to Runge-Kutta dynamic engine • Processes all variables found in hinterp output • Pass-through of scalars, 1D, and 2D variables • Vertical interpolation of 3D variables • Performs final staggering of atmospheric variables • Outputs binary files for input into the WRF "real.exe" initialization program
Perl Scripts • install_wrfsi.pl: Builds the software • wrfsi.pl: Main driver script for running • grib_prep.pl: Runs grib_prep.exe • interp.pl: Runs gridgen_models (optional), hinterp.exe, and vinterp.exe • window_domain_rt.pl (in forthcoming release): Sets up domain from pre-existing namelist template • localize_domain.pl: Edits namelists and cdl file and runs gridgen_model.exe
topo WRF-ready init/lbc Grib data (AVN, Eta) land use others WRFSI Software Components Define Domain Populate the Domain Reformat Data
Miscellaneous Utilities • IDL Routines • read_wrf_static.pro: Reads WRFSI static file • read_gribprep_output.pro: Read grib_prep output files • get_wrf_variable.pro: Reads hinterp/vinterp output • Program siscan (in forthcoming release) • Dumps a summary of wrfsi file contents
WRFSI Setup Overview • Ensure required external packages are installed • Plan the directory setup • Extract the tar file • Configure compiler options • Run the installation script • Configure the domain • Run the main driver script as necessary
Required External Packages • Unix or Linux OS • Fortran 90 Compiler • C Compiler (gcc is sufficient) • make Utility • Perl • netCDF Libraries
WRFSI Setup • Directory Structure • "Source root" (SRCROOT) -- Approx. 10 MB • Typically this is the top-level directory created after extracting the tar file • Contains src, etc, and data subdirectories • "Installation root" (INSTALLROOT) -- Approx. 10 MB • Where installed code will reside • Contains bin and etc subdirectories • "MOAD data root" (MOAD_DATAROOT) • Where data specific to a single domain resides • Contains static, siprd, cdl, and silog subdirectories • "External data root" (EXTDATAROOT) • Location of grib_prep output • Contains extprd, work, and log subdirectories
WRFSI Setup • Directory Structure Rationale • Allows separation of executables and source code • Provides a smooth upgrade path in an operational environment • Easier to test modifications without impacting operations • Allows separation of transitory data from source code and executable code for improved management of disk volumes • Allows modular programs to communicate effectively • Very flexible • INSTALLROOT, SRCROOT, and MOAD_DATAROOT can all be the same or different • Supports multiple domains (MOAD_DATAROOTs) with one set of executable code (INSTALLROOT) and external data (EXTDATAROOT)
WRFSI Setup • Compiling • Uses Unix or Gnu make utility • Machine-dependent settings in one shared file (SRCROOT/src/include/makefile.inc) • Top-level makefile (SRCROOT/Makefile) can compile and install everthing, or each component can be individually compiled • Perl script "install_wrfsi.pl" handles editing of makefile.inc file, compilation, and installation based on command-line options • Requires SRCROOT/src/include/makefile_{machine}.inc.in to be present with correct compiler options, etc.
WRFSI Setup • Configuring the domain (current method) • Edit MOAD_DATAROOT/static/wrfsi.nl • Horizontal parameters (projection, grid spacing, dimensions) • Vertical level distribution • Paths to GRIB data • Path to EXTDATAROOT • Edit dimensions in MOAD_DATAROOT/cdl/wrfsi.cdl • Run gridgen_model.exe manually or allow it to be run on the first execution of wrfsi.pl • Configuring the domain (forthcoming) • Edit a template file for the domain • Run INSTALLROOT/etc/window_domain_rt.pl
Running WRFSI • Execute INSTALLROOT/etc/wrfsi.pl • Set MOAD_DATAROOT and INSTALLROOT environment variables or provide to wrfsi.pl as command line options • Examples: • wrfsi.pl 2001081612 24 ETA testdomain • wrfsi.pl -i /my/install/root -d /my/data/root 2001081612 24 ETA testdomain • Output will be in MOAD_DATAROOT/data/siprd • Example output files: • wrf_input.global.metadata • wrf_input.d1.2001-08-16-12:00:00 • wrf_input.d1.2001-08-16-15:00:00 • ... • wrf_input.d1.2001-08-17-12:00:00
Sample SI Output USGS Landuse on 10-km National Domain Soil Moisture on 16-km Domain Pot. Temp on 16-km Domain Water Vapor on 16-km Domain
WRFSI Software Management • Development is ongoing • CVS revision control is used • Weekly, multi-platform builds performed at FSL • IBM AIX, Intel-Linux, Alpha-Linux • Latest version and static data available on FSL anonymous FTP server • ftp://ftp.fsl.noaa.gov/pub/frd-laps • WRFSI.TAR.gz • *TILES.tar.gz • TERRAIN_GLOBAL_30s.tar • Bug reports, comments, etc. are encouraged!
Future Plans(as resources allow) • Graphical User Interface (GUI) • Complete conceptual design of a GUI to provide end-to-end control of configuring, running, and upgrading the complete WRF system • Develop an initial capability to control the WRFSI this summer • Real-time testing using LAPS with the WRFSI to initialize and run the model • Support for nested grids • Support for other vertical coordinates and grid transformations • Parallelization • General software improvements • Use of autoconfig utility • Incorporate WRF API for I/O • Improve real-time scripting • Maintenance
Summary • Robust WRF SI software developed available • Next release with full LSM support is imminent • Flexible design allows easy insertion of new data sources and/or intermediate processing steps • Feedback is welcomed and requested • Suggested software improvements • Prioritization of new datasets and capabilities • http://wrf-model.org/WG3/wg3_main.html