site map - email us - search  
 

Introduction

Version 3 File Format

Version 3 Date String

Land-Surface Model

Major Changes in Version 3 Pre-Processing Programs

Other Changes in MM5 Model

Utility Programs


 

Version 3 MM5 Modeling System At A Glance


5. Major changes in Version 3 Pre-Processing Programs

5.1 Terrain

Program Terrain has been significantly updated for MM5 Version 2 Release-2-12, and 13. Most of the changes are described in Chapter 4 of this volume. The additional changes for V3 are:

  • Constant model terrestrial fields, such as latitude/longitude, map scale factors, Coriolis parameter, are now computed and output in Terrain program instead in Version 2's Regrid/Datagrid programs.

  • Option to use high-resolution vegetation dataset generated land-water mask to set coastlines (IFEZFUG=.F.), instead of NCAR Graphics (IFEZFUG=.T.).

  • Use of script variable LandSurface to choose whether to create additional data for use in MM5 LSM.

  • All terrain input datasets are in direct-access data format since release 3-1. This implies that the older terrain tar file won't be able to read the new data.

5.2 Regrid

Some user-level changes in V3 REGRID are listed below:

   The "_nml" is gone from the namelist variables
The dates used to be character strings, with the interval in hours.

The dates are now separate integers, with the interval in seconds.

      start_year = 1996 
      start_month = 07 
      start_day = 12 
      start_hour = 12 
      end_year = 1996 
      end_month = 07 
      end_day = 13 
      end_hour = 12
      interval = 21600 / 

The terrain file is named in the namelist file:

   terrain_file_name = `/your-terrain-directory/TERRAIN_DOMAIN1'

For RAWINS users, there is a print flag to aid in setting up the parameter statements:

   print_f77_info = .TRUE. 

 

5.3 Rawins

The Version 3 Rawins is very similar to the latest release of V2 Rawins which is becoming a one-source program for both Cray and workstations.

 

5.4 little_r

The Version 3 little_r is very similar to the latest release of V2 little_r.

 

5.5 Interp

The V3 INTERP program will be divided into three separate programs according to its functions.

     Front-end Interp (interpf)

The V3 INTERP program is a f90 source code that handles only the standard front-end tasks on a single domain for model input generation. The code has been modified by NOAA/FSL, AFWA and by NCAR. The direct access files have been replaced by dynamically allocated memory, which implies that INTERP uses significantly more memory than previous versions. Because the INTERP program dynamically allocates the required memory, there is no need to re-compile the code for different sized horizontal configurations, input vertical levels or output vertical levels.

The MM5 v3 code expects three types of input files: initial condition of the meteorological fields, lateral boundary conditions of the meteorological fields and the lower boundary condition (just the reservoir temperature currently). These files are named MMINPUT_DOMAINx, BDYOUT_DOMAINx and LOWBDY_DOMAINx, where "x" is the grid identifier bhi(13,1). The INTERP code must be run multiple times to generate more than a single domain of input for the model.

The files from the INTERP program are all in the v3 format, including the BDYOUT_DOMAINx file. The MMINPUT_DOMAINx file does not have coupled output, but for convenience inside the model, the BDYOUT_DOMAINx file is coupled with p* (kPa). The boundary file no longer has p* or p* tendencies in the data set.

There is no hydrostatic option in INTERP, consistent with removing this capability from the model in the v3 release. The user may have the output for the initial condition MMINPUT_DOMAINx contain only a specified number of time slices to permit analysis nudging in the model. An option for diagnosing mixing ratio with respect to water only or water and ice is available. The choice of using surface data in the vertical interpolation is now located in the namelist. Users may also spread the surface data through several sigma layers in the vertical interpolation.

All of the date computations are Y2K compliant. The date information input to the program through the namelist is split into multiple integers (year, month, day, hour). The only input file other than the namelist is the first-guess file that is specified in the namelist.

The code is built with a 2-level Makefile. In the top directory, the user types # make XXX, where "XXX" is cray, dec, hp, ibm or sgi. The code does not currently work on the Sun architecture.

The INTERP namelist file is named "namelist.input" and must be in the user's current working directory. The namelist has comments (anything after a "!" on a line). This is part of the f95 standard. SGI and Cray machines do not yet support this capability, so the comments need to be removed when running on one of those platforms. IBM and Compaq support comments.

The namelist is broken into several records. All of the user defined information to run the INTERP program is provided by namelist options.

The new INTERP program accepts only a single input file and does no horizontal interpolation. Only a first-guess pressure-level data set may be input to INTERP. In the MM5 system, this file is either from regridder or from RAWINS/little_r. The file name may contain directory information.

  &record0 
  input_file = `/mmmtmp/mesouser/v3/rawins.out.v3' / ! Input file name 

The dates are specified as components: a 4-digit year, 2-digit month, 2-digit day and 2-digit hour. Both the starting and ending time of the INTERP processing are required. The time interval is specified in seconds.

   &record1 
   start_year = 1993    ! The starting and
   start_month = 03     ! ending dates to 
   start_day = 13       ! process 
   start_hour = 00      ! 
   end_year = 1993      ! 
   end_month = 03       ! 
   end_day = 14         ! 
   end_hour = 00        ! 
   interval = 43200 /   ! time difference (s) 

The next record deals loosely with vertical information. The sigma data are to be filled in as full levels, in the bottom-up orientation. The user must have 1.0 as the first value, 0.0 as the last value, and a monotonically decreasing distribution between these two anchoring points.

The pressure at the model lid is given in Pa. The switch "isfc" allows the user to adjust how many layers are required to use the surface data from the input. Isfc=0 forces the traditional technique where the two surrounding pressure levels are interpolated to the sigma surface. Isfc=1 directly injects the surface data as the lowest sigma level. Isfc=N, where N > 1, uses the surface data for all interpolations to the N sigma layers closest to the ground.

 &record2 
 sigma_f_bu = 1.00,0.99,0.98,0.96,0.93,0.89, ! full sigma, bottom-up,
              0.85,0.80,0.75,0.70,0.65,0.60, ! start with 1.0, end 
              0.55,0.50,0.45,0.40,0.35,0.30, ! with 0.0 
              0.25,0.20,0.15,0.10,0.05,0.00  ! 
 ptop = 10000                                ! in Pa 
 isfc = 0 /                                  ! # sigma levels to spread 
! surface information

The MM5 base state is built in INTERP. The user supplies the reference sea-level pressure (1.e5 Pa), the temperature lapse rate (50 d(T)/d(ln P)), and the reference sea-level temperature (K).

 &record3 p0 = 1.e5   ! base state sea-level pres (Pa) 
 tlp = 50             ! base state lapse rate d(T)/d(ln P) 
 ts0 = 275 /          ! base state sea-level temp (K) 
 tiso = 0 /           ! base state isothermal stratospheric temp (K) 

To turn off the isothermal part of the base state, leave tiso=0. This option is useful if the trapopause is low and your model top is well within statosphere.

Several user options are available. Options exists to remove the integrated mean divergience, to force the interpolation scheme to use the meteorological surface field (u, v, T, RH), and the choice of computing specific humidty with respect to water (T) or ice (F).

 &record4 removediv = .TRUE. ! T/F remove integrated mean divergence 
 usesfc = .TRUE.             ! T/F use surface data 
 wrth2o = .TRUE. /           ! T/F specific humidity wrt H2O 

For users not doing any grid point nudging, the option is available to simply output a single time for the initial condition. Ifdatim=N says to output N time periods of initital condition data. This option does not effect the period through which the lateral boundary file or the lower boundary file are valid. This option simply reduces the amount of data that is written to the initial condition file. Without analysis FDDA, ifdatim=1 is adeqate for the model.

 &record5 ifdatim = 3 / ! # of IC time periods to output 

     One-Way Interp (nestdown)

This is a backend option in V2 Interp. This is rewritten in Fortran 90, and the program will create one-way nest input files for MM5.

     Back-end Interp II: (interpb)

This is another backend option in V2 Interp. This will be rewritten in Fortran 90, and the program will do simple one-domain vertical interpolation from sigma level to pressure level, including generating data in the format of Regrid output (the `First-guess' option).

This backend program will be available at a later time

 

5.6 Graph

The V3 Graph is compatible with the rest of the V3 modeling system programs. It can now plot output data from the V3 modeling system at time intervals of either hours, minutes or seconds. The only change the user sees is in the g_plots.tbl is the time line. This in the old g_plots.tbl

 TIME LEVELS (MDATE FORMAT YYMMDDHH): FROM 93031300 TO 93031312 BY 6 

is changed to

 TIME LEVELS: FROM 1993-03-13_00 TO 1993-03-13_12 BY 6 

One can also specify

 TIME LEVELS: FROM 1993-03-13_00:00 TO 1993-03-13_12:00 BY 360 

i.e. specifying the time in terms of minutes. Or

 TIME LEVELS: FROM 1993-03-13_00:00:00 TO 1993-03-13_12:00:00 BY 21600 

i.e. specifying the time in terms of seconds.

UCAR Privacy Policy - Terms of Use - ©2003UCAR