the wrf standard initialization (wrfsi) brent shaw noaa / forecast systems laboratory presented by...

23
The WRF Standard Initialization (WRFSI) Brent Shaw NOAA / Forecast Systems Laboratory Presented by Paul Schultz June 27, 2002

Upload: blake-sturgis

Post on 15-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

  • Slide 1

The WRF Standard Initialization (WRFSI) Brent Shaw NOAA / Forecast Systems Laboratory Presented by Paul Schultz June 27, 2002 Slide 2 WRF Standard Initialization Provides a method to define a WRF domain Location, projection, dimensions, resolution Location, projection, dimensions, resolution Acquisition/interpolation of static fields Acquisition/interpolation of static fields These functions are now available via a graphical user interface These functions are now available via a graphical user interface Provides all required initial and time-varying boundary conditions required to produce a forecast on the native WRF coordinate Ingest readily-available gridded fields (NCEP GriB) Ingest readily-available gridded fields (NCEP GriB) Horizontally/vertically interpolate to WRF domain Horizontally/vertically interpolate to WRF domain Grid staggering to support dynamic core Grid staggering to support dynamic core Derivation of state variables required by dynamic core Derivation of state variables required by dynamic core The GUI will support these functions in a few months The GUI will support these functions in a few months Slide 3 WRF Standard Initialization Role of FSL Lead agency for SI Working Group (John McGinley)Lead agency for SI Working Group (John McGinley) Designed, developed, and delivered initial version of WRF SI systemDesigned, developed, and delivered initial version of WRF SI system Maintenance/enhancement of initial systemMaintenance/enhancement of initial system Reformatting static fieldsReformatting static fields Status Running in real-time at NCAR, AFWA, FSL,...Running in real-time at NCAR, AFWA, FSL,... Test use at EMCTest use at EMC Released new version to NCAR in MarchReleased new version to NCAR in March Supports mass-based vertical coordinateSupports mass-based vertical coordinate Supports A-gridSupports A-grid Supports condensate fields and nonzero divergence for diabatic initializationSupports condensate fields and nonzero divergence for diabatic initialization Additional fields to support LSM (frozen soil physics)Additional fields to support LSM (frozen soil physics) Refined interpolation methods for land/water masked fieldsRefined interpolation methods for land/water masked fields Slide 4 WRFSI Current Capabilities Domain Definition Choice of 3 projectionsChoice of 3 projections Polar stereographicPolar stereographic MercatorMercator Lambert Conformal (secant or tangent)Lambert Conformal (secant or tangent) Arakawa-C Grid Stagger with no nestingArakawa-C Grid Stagger with no nesting Static field processing from tiled data setsStatic field processing from tiled data sets Dynamic Data Pre-processing GriB-format pressure-level and surface data setsGriB-format pressure-level and surface data sets Horizontal Interpolation From Lat/Lon, polar-stereo, Lambert conformal, or mercatorFrom Lat/Lon, polar-stereo, Lambert conformal, or mercator Vertical Interpolation From pressure to pressure or WRF height/massFrom pressure to pressure or WRF height/mass From RUC native to pressure or WRF height/massFrom RUC native to pressure or WRF height/mass Slide 5 WRFSI Software Design Modular Components can be run individuallyComponents can be run individually New components can be easily inserted into run streamNew components can be easily inserted into run stream New options can be more easily addedNew options can be more easily added Single namelist file for controlSingle namelist file for control Maintainable CVS Revision controlCVS Revision control Multiple platform build and testing strategyMultiple platform build and testing strategy Design emphasis on portabilityDesign emphasis on portability Accommodations for Graphical User Interface Slide 6 WRFSI Software Components Grib data (AVN, Eta, RUC) topo land use others WRF-ready init/lbc Reformat Data Define Domain Populate the Domain Slide 7 Program grib_prep Reads and re-formats GRIB-format data files containing pressure-level data. Does no spatial interpolation. Runs whenever new input data sets available. Output from one run can support multiple model runs on various domains. User-editable configuration table allows use of any level(s) of any variable contained in the GRIB file Provides time-interpolation to fill gaps in data to meet desired LBC frequency Writes simple, intermediate file for input to hinterp, Simple file format allows users to bypass grib_prep if they have custom, non-GRIB datasets Simple file format allows users to bypass grib_prep if they have custom, non-GRIB datasets Slide 8 Program gridgen_model Run once when domain initially defined Acquires/derives all required static fields Topography with user-controllable filtering parametersTopography with user-controllable filtering parameters Latitudes, longitudes, map factors, coriolis, etc. on model stagger (Arakawa C). Also A-grid for 3DAVR.Latitudes, longitudes, map factors, coriolis, etc. on model stagger (Arakawa C). Also A-grid for 3DAVR. All required fields for LSM supportAll required fields for LSM support USGS 24-category landuse fractionsUSGS 24-category landuse fractions WMO/FAO 16-category 2-layer soil typesWMO/FAO 16-category 2-layer soil types Annual mean temperature, monthly greenness fraction, albedoAnnual mean temperature, monthly greenness fraction, albedo Reads tiled data sets (available on FTP server)Reads tiled data sets (available on FTP server) Outputs netCDF file Slide 9 Program hinterp Runs once per domain per model run Reads static file and grib_prep 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 grib_prep output Outputs binary-format data and metadata Slide 10 Program vinterp Run once per domain per simulation Vertically interpolates pressure levels to WRF coordinate Linear interpolation of height w.r.t. ln(p) Linear interpolation of height w.r.t. ln(p) Linear interpolation of other variables w.r.t. height 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 Pass-through of scalars, 1D, and 2D variables Vertical interpolation of 3D variables Vertical interpolation of 3D variables Performs final staggering of atmospheric variables Outputs binary files for input into the WRF "real.exe" initialization program Slide 11 Perl Scripts install_wrfsi.pl: Builds the software wrfsi.pl: Main driver script for running grib_prep.pl: Runs grib_prep.exegrib_prep.pl: Runs grib_prep.exe interp.pl: Runs gridgen_models (optional), hinterp.exe, and vinterp.exeinterp.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.exelocalize_domain.pl: Edits namelists and cdl file and runs gridgen_model.exe The GUI is intended to make all this a breeze -- maybe late summer. Slide 12 Miscellaneous Utilities IDL Routines read_wrf_static.pro: Reads WRFSI static fileread_wrf_static.pro: Reads WRFSI static file read_gribprep_output.pro: Read grib_prep output filesread_gribprep_output.pro: Read grib_prep output files get_wrf_variable.pro: Reads hinterp/vinterp outputget_wrf_variable.pro: Reads hinterp/vinterp output Program siscan (in forthcoming release) Dumps a summary of wrfsi file contentsDumps a summary of wrfsi file contents Slide 13 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 Slide 14 GUI demo Were going to do this instead of going over all the details of software installation, which you can read for yourself by downloading this presentation. Also, theres a presentation later today on SI software installation. Slide 15 Required External Packages Unix or Linux OS Fortran 90 Compiler C Compiler (gcc is sufficient) make Utility Perl netCDF Libraries Slide 16 WRFSI Setup Directory structure and environment variables "Source root" ($SRCROOT) -- Approx. 10 MB"Source root" ($SRCROOT) -- Approx. 10 MB Typically this is the top-level directory created after extracting the tar fileTypically this is the top-level directory created after extracting the tar file Contains src, etc, and data subdirectoriesContains src, etc, and data subdirectories "Installation root" ($INSTALLROOT) -- Approx. 10 MB"Installation root" ($INSTALLROOT) -- Approx. 10 MB Where installed code will resideWhere installed code will reside Contains bin and etc subdirectoriesContains bin and etc subdirectories "MOAD data root" ($MOAD_DATAROOT)"MOAD data root" ($MOAD_DATAROOT) Where data specific to a single domain residesWhere data specific to a single domain resides Contains static, siprd, cdl, and silog subdirectoriesContains static, siprd, cdl, and silog subdirectories "External data root" ($EXTDATAROOT)"External data root" ($EXTDATAROOT) Location of grib_prep outputLocation of grib_prep output Contains extprd, work, and log subdirectoriesContains extprd, work, and log subdirectories Slide 17 WRFSI Setup Directory Structure Rationale Allows separation of executables and source codeAllows separation of executables and source code Provides a smooth upgrade path in an operational environmentProvides a smooth upgrade path in an operational environment Easier to test modifications without impacting operationsEasier to test modifications without impacting operations Allows separation of transitory data from source code and executable code for improved management of disk volumesAllows separation of transitory data from source code and executable code for improved management of disk volumes Allows modular programs to communicate effectivelyAllows modular programs to communicate effectively Very flexibleVery flexible $INSTALLROOT, $SRCROOT, and $MOAD_DATAROOT can all be the same or different$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)Supports multiple domains ($MOAD_DATAROOTs) with one set of executable code ($INSTALLROOT) and external data ($EXTDATAROOT) Slide 18 WRFSI Setup Compiling Uses Unix or Gnu make utilityUses Unix or Gnu make utility Machine-dependent settings in one shared file ($SRCROOT/src/include/makefile.inc)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 compiledTop-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 optionsPerl 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.Requires $SRCROOT/src/include/makefile_{machine}.inc.in to be present with correct compiler options, etc. Slide 19 WRFSI Setup Configuring the domain (current method) Edit $MOAD_DATAROOT/static/wrfsi.nlEdit $MOAD_DATAROOT/static/wrfsi.nl Horizontal parameters (projection, grid spacing, dimensions)Horizontal parameters (projection, grid spacing, dimensions) Vertical level distributionVertical level distribution Paths to GRIB dataPaths to GRIB data Path to $EXTDATAROOTPath to $EXTDATAROOT Edit dimensions in $MOAD_DATAROOT/cdl/wrfsi.cdlEdit dimensions in $MOAD_DATAROOT/cdl/wrfsi.cdl Run gridgen_model.exe manually or allow it to be run on the first execution of wrfsi.plRun 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 domainEdit a template file for the domain Run $INSTALLROOT/etc/window_domain_rt.plRun $INSTALLROOT/etc/window_domain_rt.pl Slide 20 Running WRFSI Execute $INSTALLROOT/etc/wrfsi.pl Set $MOAD_DATAROOT and $INSTALLROOT environment variables or provide to wrfsi.pl as command line optionsSet $MOAD_DATAROOT and $INSTALLROOT environment variables or provide to wrfsi.pl as command line options Examples:Examples: wrfsi.pl 2001081612 24 ETA testdomainwrfsi.pl 2001081612 24 ETA testdomain wrfsi.pl -i /my/install/root -d /my/data/root 2001081612 24 ETA testdomainwrfsi.pl -i /my/install/root -d /my/data/root 2001081612 24 ETA testdomain Output will be in $MOAD_DATAROOT/data/siprd Example output files:Example output files: wrf_input.global.metadatawrf_input.global.metadata wrf_input.d1.2001-08-16-12:00:00wrf_input.d1.2001-08-16-12:00:00 wrf_input.d1.2001-08-16-15:00:00wrf_input.d1.2001-08-16-15:00:00...... wrf_input.d1.2001-08-17-12:00:00wrf_input.d1.2001-08-17-12:00:00 Slide 21 Sample SI Output USGS Landuse on 10-km National Domain Water Vapor on 16-km Domain Soil Moisture on 16-km Domain Pot. Temp on 16-km Domain Slide 22 WRFSI Software Management CVS revision control Weekly, multi-platform builds performed at FSL IBM AIX, Intel-Linux, Alpha-LinuxIBM AIX, Intel-Linux, Alpha-Linux Latest version and static data available on FSL anonymous FTP server ftp://ftp.fsl.noaa.gov/pub/frd-lapsftp://ftp.fsl.noaa.gov/pub/frd-laps WRFSI.TAR.gzWRFSI.TAR.gz *TILES.tar.gz*TILES.tar.gz TERRAIN_GLOBAL_30s.tarTERRAIN_GLOBAL_30s.tar Bug reports, comments, etc. are encouraged! Slide 23 Plans (as resources allow) Support for nested grids Graphical User Interface Support grib_prep, hinterp, vinterp Support grib_prep, hinterp, vinterp Accommodate other initializations (3DVAR, LAPS, etc.) Accommodate other initializations (3DVAR, LAPS, etc.) Schedule/manage model runs Schedule/manage model runs Parallelization (?) Maintenance and general software improvements