A Detailed Description of RAMS

Introduction

The numerical atmospheric models developed independently under the direction of William R. Cotton and Roger A. Pielke have recently been combined into the CSU Regional Atmospheric Modelling System (RAMS). Development of many of the physical modules has been accomplished over the past 15 years and has involved over 50 man years of effort. RAMS is a general and flexible modelling system rather than a single purpose model. For example, current research using RAMS includes atmospheric scales ranging from large eddy simulations to mesoscale simulations of convective systems . This paper will discuss the options available in RAMS, the engineering aspects of the system and how the flexibility is attained.

RAMS Options

RAMS is a merging of basically three models that were designed to simulate different atmospheric circulations. These were a non-hydrostatic cloud model (Tripoli and Cotton, 1982) and two hydrostatic mesoscale models (Tremback et al., 1985 and Mahrer and Pielke, 1977). The capability of RAMS was recently augmented with the implementation of 2-way interactive grid nesting. Because of this, the modelling system contains many options for various physical and numerical processes. These options are listed below.

The following options are currently available in configuring a model:

  1. Basic Equations:
    Option 1 -
    Non-hydrostatic time-split compressible (Tripoli and Cotton, 1980)
    Option 2 -
    Hydrostatic incompressible or compressible (Tremback et al., 1985)


  2. Dimensionality: 1, 2, or 3 spatial dimensions

  3. Vertical Coordinate:
    Option 1 -
    Standard cartesian
    Option 2 -
    Sigma-z


  4. Horizontal Coordinate:
    Option 1 -
    Standard cartesian
    Option 2 -
    Polar stereographic


  5. Grid Structure:


  6. Finite Differencing:
    Option 1 -
    Leapfrog on long timestep, forward-backward on small timestep, 2nd or 4th order flux conservative advection.
    Option 2 -
    Forward-backward time split, 6th order flux conservative (Tremback et al., 1987)


  7. Turbulence Closure:
    Option 1 -
    Smagorinsky-type eddy viscosity with dependence
    Option 2 -
    Level 2.5 type closure using eddy viscosity as a function of a prognostic turbulent kinetic energy
    Option 3 -
    O'Brien profile function in a convective boundary layer (Mahrer and Pielke, 1977); local exchange coefficient in a stable boundary layer (McNider, 1981).


  8. Condensation:
    Option 1 -
    Grid points fully saturated or unsaturated
    Option 2 -
    No condensation


  9. Cloud Microphysics:
    Option 1 -
    Warm rain conversion and accretion of cloud water to raindrops, evaporation and sedimentation (Tripoli and Cotton, 1980)
    Option 2 -
    Option 1 plus specified nucleation of ice crystals, conversion nucleation and accretion of graupel, growth of ice crystals, evaporation, melting and sedimentation (see Cotton et al., 1982)
    Option 3 -
    Option 1 plus option 2 plus predicted nucleation and sink of crystal concentration, conversion and growth of aggregates, melting, evaporation and sedimentation The nucleation model includes: sorption/deposition,  
    figure: Flow diagram.
    Contact nucleation by Brownian collision plus thermophoresis plus diffusiophoresis, secondary ice crystal production by rime-splinter mechanism.
    Option 4 -
    No precipitation processes


  10. Radiation:
    Option 1 -
    Shortwave radiation model including molecular scattering, absorption of clear air (Yamamoto, 1962), ozone absorption (Lacis and Hansen, 1974) and reflectance, transmittance and absorptance of a cloud layer (Stephens, 1978), clear-cloudy mixed layer approach (Stephens, 1977)
    Option 2 -
    Shortwave radiation model described by Mahrer and Pielke (1977) which includes the effects of forward Rayleigh scattering (Atwater and Brown, 1974), absorption by water vapor (McDonald, 1960), and terrain slope (Kondrat'yev, 1969).
    Option 3 -
    Longwave radiation model including emissivity of a clear atmosphere (Rodgers, 1967), emissivity of cloud layer (Stephens, 1978), and emissivity of ``clear and cloudy'' mixed layer (Herman and Goody, 1976)
    Option 4 -
    Longwave radiation model described by Mahrer and Pielke (1977) including emissivities of water vapor (Jacobs et al., 1974) and carbon dioxide (Kondrat'yev, 1969) and the computationally efficient technique of Sasamori (1972).
    Option 5 -
    No radiation


  11. Transport & Diffusion Modules:
    Option 1 -
    Advection-diffusion model (Segal et al., 1980) (To be implemented.)
    Option 2 -
    Semi-stochastic particle model for point and line sources of pollution (McNider, 1981) (To be implemented.)


  12. Lower Boundary:
    Option 1 -
    Specified surface temperature and moisture function or specified surface fluxes coupled with constant flux layer condition based on similarity theory (Manton and Cotton, 1977)
    Option 2 -
    Surface layer temperature and moisture fluxes are diagnosed as a function of the ground surface temperature derived from a surface energy balance (Mahrer and Pielke, 1977). The energy balance includes longwave and shortwave radiative fluxes, latent and sensible heat fluxes, and conduction from below the surface. To include the latter effect, a multi-level prognostic soil temperature model is computed.
    Option 3 -
    Modified form of Option 2 with prognostic surface equations (Tremback and Kessler, 1985)
    Option 4 -
    Same as Option 2, except vegetation parameterizations are included (McCumber and Pielke, 1981; McCumber, 1980) (To be implemented)


  13. Upper Boundary Conditions:
    Option 1 -
    Rigid lid
    Option 2 -
    Rayleigh Friction layer plus Option 1-4
    Option 3 -
    Prognostic surface pressure (hydrostatic only)
    Option 4 -
    Material surface top. (Hydrostatic only) (Mahrer and Pielke, 1977)
    Option 5 -
    Gravity wave radiation condition (Klemp and Durran, 1983)


  14. Lateral Boundary Conditions:
    Option 1 -
    Klemp and Wilhelmson (1978) radiative boundary conditions
    Option 2 -
    Orlanski (1976) radiative boundary conditions
    Option 3 -
    Klemp and Lilly (1978) radiative boundary condition
    Option 4 -
    Option 1, 2 or 3 coupled with Mesoscale Compensation Region (MCR) described by Tripoli and Cotton (1982) with fixed conditions at MCR boundary  figure:Mesoscale Compensation Region
    Option 5 -
    The sponge boundary condition of Perkey and Kreitzberg (1976) when large scale data is available from objectively analyzed data fields or a larger scale model run. This condition includes a viscous region and the introduction of the large scale fields into the model computations near the lateral boundaries.


  15. Initialization:
    Option 1 -
    Horizontally homogeneous.
    Option 2 -
    Option 1 plus variations to force cloud initiation.
    Option 3 -
    NMC data and/or soundings objectively analyzed on isentropic surface and interpolated to the model grid.
    Option 4 -
    NMC data interpolated to the model grid.

Engineering Aspects:

Because of the large number of options in RAMS, the structuring of the code needs to be carefully considered. This section will discuss various aspects of the code structure of the system.

The code of RAMS is written in as close to the FORTRAN 77 standard as possible. However, with a program as large as this, the FORTRAN standard is lacking in several features such as global PARAMETER and COMMON statements and conditional compilation. To remedy these insufficiencies, the RAMS code takes advantage of a pre-processor written as part of the RAMS package. This pre-processor itself is written in the 77 standard so that the package as a whole is highly portable. It takes full advantage of the character features of FORTRAN and has executed successfully on a number of machines including a VAX, CRAY-1, CRAY-X-MP, and CYBER 205 without modification. Some of the features of the pre-processor are described below:

 

1)
By including a character in the first column of a line of code, that line can be ``activated" or ``eliminated" from the compile file. This allows for conditional compilation of single lines or entire sections of code.
2)
A pre-processor variable can be set to a value. This variable can then be used in other expressions including a pre-processor IF or block IF to conditionally set other pre-processor variables. These variables also can be converted to FORTRAN PARAMETER statements which can be inserted anywhere in the rest of the code.
3)
A group of statements can be delineated as a ``global" which then can be inserted anywhere in the code. This is very useful for groups of COMMON and PARAMETER statements.
4)
DO loops can be constructed in a DO/ENDDO syntax, eliminating the need for statement labels on the DO loops.

 

The use of grid nesting allows a wider range of motion scales to be modeled simultaneously and interactively. It can greatly ease the limitations of unnested simulations in which a compromise must be reached between covering an adequately large spatial domain and obtaining sufficient resolution of a particular local phenomenon. With nesting, RAMS can now feasibly model mesoscale circulations in a large domain where low resolution is adequate, and at the same time resolve the large eddy structure within a cumulus cloud in a subdomain of the simulation.

Nesting in RAMS is set up such that the same model code for each physical process such as advection is used for each grid. This makes it easy for any desired number of grids to be used without having to duplicate code for each one. Also, it is easy to add or remove a nested grid in time, and to change its size or location. There is still the flexibility of choosing many model options independently for different grids.

RAMS has adopted the two-way interactive nesting procedure described in Clark and Farley (1979). This algorithm is the means by which the different nested grids communicate with each other. The process of advancing coarse grid A and fine nested grid B forward in time one step begins with advancing grid A alone as if it contained no nest within. The computed fields from A are then interpolated tri-quadratically to the boundary points of B. The interior of B is then updated under the influence of its interpolated boundary values. Finally, the field values of A in the region where B exists are replaced by local averages from the fields of B. An increase in efficiency over the Clark and Farley method was implemented by allowing a coarse grid to be run at a longer timestep than a fine grid.

The following options are available with nesting in RAMS:

1)
There is no imposed limit (only a practical one) to the number of nested grids which can be used.
2)
When two grids B and C are nested within grid A, they may be either independent (occupying different space) or C may be nested within B.
3)
The increase in spatial resolution of a nested grid may be any integer multiple of its parent grid resolution. Moreover, this multiple may be specified independently for the three coordinate directions.
4)
A nested grid may, but need not, start from the ground and extend to the model domain top.

 

For those machines with limited central memory and a ``non-virtual" operating system or for efficiency on virtual systems, RAMS is constructed with a disk I/O scheme. When the scheme is operating, a subset of the model's three-dimensional variables will reside in central memory at any one time. Computations then can be performed with this subset. When these computations are finished, a new subset of three-dimensional variables are requested and computations performed with these. The RAMS structure, thus, is dependent on this I/O scheme and consists of a series of calls to the I/O scheme and to the routines which do the calculations.

For flexibility, RAMS is written as modular as possible. Each individual physical parameterization or numerical process is put in a separate subroutine so that the routines can easily be replaced for different options or with new developments.

The routines that do the actual computations for the model are written so that the implementor of a new or replacement routine does not need to be concerned with most of the details of the rest of the model computations. All three-dimensional variables are ``passed" to the subroutines through the call statement with other variables passed through COMMON. The implementor then has the flexibility to structure his routine in whatever manner he wishes to produce the desired result. This concept will also make the implementation of routines from other models and programs easier with less modification required.

A set of subroutines has been developed for analyzing and plotting a variety of quantities from fields output from RAMS. This greatly facilitates the interpretation and understanding of modeled atmospheric phenomena. The quantities diagnosed by these routines include vorticity, divergence, streamfunction, energy, momentum flux, most variances and covariances, and layer averaged quantities.

The RAMS Homepage at CSU