RMA2 is a two dimensional depth averaged finite element hydrodynamic numerical model. It computes water surface elevations and horizontal velocity components for subcritical, free-surface flow in two dimensional flow fields. RMA2 computes a finite element solution of the Reynolds form of the Navier-Stokes equations for turbulent flows. Friction is calculated with the Manning's or Chezy equation, and eddy viscosity coefficients are used to define turbulence characteristics. Both steady and unsteady state (dynamic) problems can be analyzed.


RMA2 was originally developed by Norton, King, and Orlob of Water Resources Engineers in 1973 for the Walla Walla District Corps of Engineers. Further development, particularly of the marsh porosity option, was carried out by King and Roig at the University of California, Davis. Subsequent enhancements have been made by King and Norton, of Resource Management Associates (RMA), and by the Waterways Experiment Station (WES) Hydraulics Laboratory, culminating in the current version of the code supported in SMS.

RMA2 Applications

RMA2 has been applied to calculate:

  • Water levels and flow distribution around islands
  • Flow at bridges having one or more relief openings
  • In contracting and expanding reaches
  • Into and out of off-channel hydropower plants
  • At river junctions
  • Into and out of pumping plant channels
  • Circulation and transport in water bodies with wetlands
  • General water levels and flow patterns in rivers, reservoirs, and estuaries

RMA2 Capabilities

RMA2 is a general purpose model designed for far-field problems in which vertical accelerations are negligible and velocity vectors generally point in the same direction over the entire depth of the water column at any instant of time. It expects a vertically homogeneous fluid with a free surface.

RMA2 has the capability to:

  • Read a one-dimensional and/or two-dimensional binary geometry file from GFGEN.
  • Identify errors in the mesh network.
  • Accept either English or standard SI units.
  • Restart (hotstart) the simulation from a prior RMA2 run and continue.
  • Simulate wetting and drying events:
    • Adjust for wetting and drying by element.
    • Account for marsh porosity wetting and drying (wetlands).
  • Account for effects of the earth's rotation.
  • Apply wind stress involving frontal (storm) passages.
  • User selectable turbulent exchange coefficients, Manning's n-values, temperature, etc.
    • User selectable equations for automatic dynamic assignment of Manning's n-value by depth.
    • User selectable Peclet number for automatic dynamic assignment of turbulent exchange coefficients.
  • Model up to 5 different types of flow control structures.
  • Compute flow across continuity check lines.
  • Provides for user-defined computational guidelines; such as:
    • Wet/dry parameters
    • Iteration controls
    • Revisions within a time step
  • Accepts a wide variety of boundary conditions:
    • Angle/velocity magnitude by node
    • Velocity components by node
    • Water surface elevations by node/line
    • Discharge by node/element/line
    • Tidal radiation by line
    • Discharge as a function of elevation by line
    • Wind speed and direction by node/element or element material type

RMA2 Limitations

RMA2 is not intended to be used for near field problems where flow-structure interactions (like vortices, vibrations, or vertical accelerations) are of interest. Areas of vertically stratified flow are beyond the capabilities of RMA2, unless it is used in a hybrid modeling approach. It is two dimensional in the horizontal plane, and zones where the bottom current is in a different direction from the surface current must be analyzed with considerable subjective judgment regarding long-term energy considerations.

RMA2 is a free-surface calculation model for subcritical flow problems. More complex flows where vertical variations of variables are important should be evaluated using a three dimensional model, such as RMA10. RMA2 operates under the hydrostatic assumption, meaning the fluid pressure is vertically the same throughout the water column.

RMA2 Modeling Process

The following flow chart illustrates the RMA2 modeling process. Items with bold borders are required, others are optional.

When RMA2 is used for a dynamic (unsteady state) simulation, it first must solve a steady state problem. The results from this steady state case are used to start the dynamic simulation. Unless specified otherwise, RMA2 will continue directly from the steady state solution and begin the dynamic simulation.

Simulation Types

There are two options in obtaining a solution to a simulation using RMA2. These are either a steady state or a dynamic simulation.

Steady-State Simulation

The steady-state solution method removes all time derivatives from the governing equations. Therefore, the solution that the Newton-Raphson iterations are driven toward is equivalent to the solution that would be obtained if the boundary conditions were held constant and the model was run dynamically until the solution did not change from one time step to the next.

The basic run control for a "coldstart" steady state simulation is: set either the total cycles to 1 or the total run time as 0.0 hours (variables NCYC and TMAX on the TZ card), and set the number of initial iterations and depth convergence criterion (variable NITI and SSDCRT on the TI card).

By default, the binary solution file for a steady state simulation will have only one results record labeled as hour=0.0. If the TS card IBHO variable was used to request mid-iteration saves of the binary solution file, then the time stamp on the mid-iteration records will be negative.

Dynamic Simulation

The dynamic solution method includes all time derivatives and the solution changes in response to long-wave propagation characteristics. A dynamic solution can be made one of three ways:

  • A dynamic simulation may be initiated as a "coldstart" or "shock" from initial conditions of zero velocity and a flat water surface (as set on the IC card). This method usually is appropriate only when there is no river inflow and the dynamic boundary conditions are ramped from no forcing to full forcing over some period.
  • A dynamic simulation may be initiated using "hotstart" results of a previous steady state simulation. This is used normally when river inflows are present. The dynamic boundary forcing may still then be ramped.
  • A dynamic simulation may be a continuation of a run that has included a steady state simulation. This is usually only done when the problem is small and the steady state solution can be regenerated very quickly. This method is also referred to as a coldstart.

By default, the binary solution file for a coldstart dynamic (time varying) simulation will have an optional results record for the steady state solution (hour=0.0) and additional results records for each computed time step, labeled as hour=DELT, DELT*2, DELT*3, etc.

The user may choose to obtain an initial steady-state solution that includes the effects of any river inflows and then add dynamic time steps for a time-varying hydrograph or tidal forcing. If there are no river inflows, it may not be necessary to run any steady state iterations prior to starting dynamic time steps.

Specifying Initial Conditions

To begin a simulation, RMA2 must have some values to use as initial guesses for the equations it will be solving. RMA2 must know the conditions for all nodes in the mesh at the instant in time depicted when the simulation begins. Note that in the early stages of a simulation, the solution may be contaminated by the inaccuracy of the initial conditions. Typically, for a dynamic estuarine simulation, you would ignore at least the first 24 hours of the solution.

Cold Start Initial Conditions

For a Coldstart run, RMA2 begins with a global, flat, water surface elevation as specified on the IC card. Two-dimensional velocities are zero, and one- dimensional velocities are a nominal amount, also specified on the IC card. The one-dimensional nominal velocity is needed to arrive at a starting point for 1D junction flow balancing logic. The depth at each node is calculated as the difference between initial water surface elevation specified on the IC card, and the bed elevations from the mesh geometry.

When coldstarting with large bed slopes (such as 1 on 10), it may be helpful from a convergence standpoint to specify the initial condition water surface elevation higher than the highest bed elevation, and the minimum water depth to be greater than the critical depth for wetting and drying (DSET on the DE card); i.e., everything is wet. This will generally allow the model to more easily arrive at a solution. Because this initial water surface elevation may be artificially high, you can then use either the REV card or Hotstart to gradually lower the water surface to the realistic value.

Hot Start Initial Conditions

Any initial conditions supplied by the user are ignored when Hotstarting because they are read from a Hotstart file generated from a previous RMA2 simulation. The $L card is used to indicate the use of Hotstart files.

Iteration Control

It is impossible to predict the exact number of iterations that will be required to solve a particular problem. Therefore, it is recommended to specify the maximum number of iterations to attempt per time step, in combination with a satisfactory depth convergence criterion. This maximum number of iterations attempted for each time step, and the depth convergence criterion are specified using the TI card.

What is an Iteration Control?

Webster’s dictionary defines iterative in the mathematical sense as:

Of, relating to, or being a computational procedure to produce a desired result by replication of a series of operations that successively better approximates the desired result.

Basically, the process of iteration is performed by making an initial guess for the values of the variables in the equation to be solved, computing a solution, replacing that solution back into the equation, and repeating the computation. When the difference between the results from two successive iterations is less than some predetermined amount, the solution is said to have converged, and the problem is considered solved.

How RMA2 Finds a Solution

RMA2 uses the Newton-Raphson convergence scheme to obtain a solution. To see how this method works, see the figure below. The simplistic example is presented to illustrate the problem of solving the root of a typical quadratic equation. The idea is to find a solution to the equation as close to the root as possible.

x1 = the initial guess at the solution x2 = the next guess, which is the solution obtained from x1 xi = the next guess, which is the solution obtained from x(i-1) On the x axis, x1 is the initial guess at a solution. The solution with x1 is the point marked "initial solution". A line (tangent line 1) which is tangent to the curve at this point is computed. The place where this line crosses the x axis becomes x2; the second guess used to solve the problem. A new solution is calculated from x2, and another tangent line (tangent line 2) is computed. The point where this tangent line crosses the x axis becomes the next guess, x3. And so on, until the difference in value along the x axis, between two successive solutions, becomes less than the a pre-defined convergence criterion. At this point, the solution has converged. This example problem is considered solved when the difference between two solutions is less than the predetermined minimum amount. The slope at any point (the tangent) is mathematically the change in the residual error for a unit change in the variable x. For RMA2, the problem is to drive the residual error in the governing equations to near zero. Note that if the first estimate is very far from the solution, the iterative technique may diverge. For additional information, see mathematical texts discussing the Newton-Raphson method.

Regulating Number of Iterations

In RMA2, the Newton-Raphson iterative method of successive approximations is used to solve a system of simultaneous equations. The procedure requires an initial approximation, called Initial Condition, to start the computations. Convergence from that first estimate to the final solution usually takes three to five iterations. Of course, the better the first estimate approximates the solution, the fewer the number of iterations required for convergence. If the first estimate is very far from the solution, the iterative technique may diverge.

RMA2 provides two means by which to control the number of iterations that are performed per time step. They are:

  • Providing A Convergence Criterion
  • Directly Specifying the Maximum Number Of Iterations

No more iterations are performed when either of these situations are satisfied.

Providing Convergence Criterion

The criterion used by RMA2 to test for convergence is the maximum change in calculated depth of all nodes in the mesh from one iteration to the next. The listing below shows a representative sample of a convergence parameter section from the output which RMA2 will produce at the end of each iteration. The Depth is the third degree of freedom in the RMA2 equations.

0.0813 in the MAX CHG column is compared to the Depth Convergence Criterion specified on the TI card. If it is smaller, RMA2 advances to the next data set or time step.

The circled value in the MAX CHG column in the figure is compared to the convergence criterion you supply on the TI card. When this calculated value is less than your convergence criterion, then, unless you are using REV cards, the calculations for this time step are finished and RMA2 advances to the next time step. Otherwise, if you have REV cards, calculations with the current set of data are finished, and RMA2 advances to the next revision data set for the time step.

The value for the depth convergence criterion is supplied on the TI card. The value typically varies between 0.005 to 0.0001 for steady state, and between 0.05 to 0.001 for dynamic runs. A more stringent criterion is required for true steady state simulations, and/or wetting and drying simulations. RMA2 will continue the Newton-Raphson iteration process until either the maximum number of iterations, or the depth convergence criterion, has been satisfied.

Note that specifying a depth convergence value of zero is certain to cause RMA2 to compute for the maximum number of iterations you specified because a difference in solutions of absolutely zero is highly improbable. However, this is valid, and you may want to do this in some instances.

Specifying Maximum Iterations

The maximum number of iterations for both steady state and dynamic runs should be large enough to allow the model to sufficiently converge with the given conditions. The required number of iterations must be larger for complex hydrodynamic studies, such as simulations where wetting and drying occur and the hydrodynamics changes from one iteration to the next. The TI card is used to provide these values to RMA2.

Time Step Control

Timing is introduced into the simulation when the boundary conditions (head, velocity, discharge, wind) vary in time. This is known as a Dynamic, or Unsteady simulation. The time step you use depends upon several factors.

Selecting a Time Step Interval

Although RMA2 uses an implicit solution scheme, some experimentation is usually required when establishing the delta time step for dynamic simulations. In general, start with a value appropriate for your type of computations, and increase the delta time step to the largest value that is numerically stable and physically representative of the problem. For example, one hour time steps can be used in some tidal problems, even when amplitude is 6 to 8 feet, with a good reconstitution of observed gage records and current patterns.

Typically, a diurnal tide can use a 1 hour time step, while a semi diurnal tide or mixed tide requires a 0.5 hour time step. The required computational time interval (time step size) may be dependent upon element sizes, strength of flows, flow patterns, and the rate of change in boundary conditions. Many tidal studies with this type of model employ 30 minute time steps satisfactorily, but experimentation should be used to ensure that the time step you select is appropriate for your problem. One approach to selecting this interval is to run a test case in which the time step size is reduced until the solution does not change, and use this interval for the time step.

For dynamic simulation runs, the computational time interval should be as small as necessary to capture the extremes of the dynamic boundary conditions and maintain numerical stability. Traditionally, this time interval varies between 0.25 hours and 1.0 hour for tidal boundary conditions at the coasts of North America, provided that the hydrodynamics do not include complex features, such as wetting and drying, etc. To reduce the computational time taken to complete a simulation, the time step interval should be as large as possible, while small enough to still accurately simulate the hydrodynamics of the modeled area. The interval should be small enough to:

  • Capture the extremes (highest and lowest peaks) of the boundary condition signal. If the interval is too large, the peaks of the signal may be missed.
  • Gradually adjust to any wetting and drying conditions.
  • Accommodate rapid changes in water surface elevation

Transport Model Considerations

If the results from the RMA2 run are to be used to drive a transport code (RMA4 or SED2D) then transport model issues may require a shorter time step. Those issues may arise from sharp concentration gradients that advect. Sometimes interpolation of the RMA2 results in time in the transport model may be adequate, other times the RMA2 time step must be shortened and RMA2 rerun.

Boundary Conditions

Boundary conditions are required to drive RMA2 throughout a simulation. They are constraints which are applied along the flow boundaries of the solution domain, and required to eliminate the constants of integration that arise when we numerically integrate the governing equations to solve for u, v, and h in the interior of the solution domain.
External boundary nodes along the downstream end of the network are typically assigned a water-level (head) boundary condition. Also, boundary nodes along the upstream end of the network are typically assigned an exact flow or discharge boundary condition. Each side wall of the network is automatically assigned a parallel flow boundary condition (i.e., slip flow) which allows the program to calculate the velocity adjacent and parallel to the side wall as well as the flow depth there.
Boundary conditions may be specified on a nodal basis, along the edge of an element, or across a continuity check line. No special equations are required for boundary nodes. The use of a boundary condition specification removes either the depth, or one or both of the velocity components from the computations, and the program expects those values to be entered as boundary input data.

Dynamic Boundary Conditions

Dynamic simulations are used to model situations where water levels, flow rates, etc., can change over time, such as an estuary where ocean tides influence the water conditions. Therefore, dynamic simulations can have different boundary conditions specified at each time step.

Types of Boundary Conditions

There are several boundary conditions from which to choose to be specified at each node:

  • Parallel Flow Boundary Condition (i.e., slip flow)
  • Flow Boundary Condition
  • Water-Level Boundary Condition (Head)
  • Stagnation Point Boundary Condition
  • Reflection/Absorption Boundary Condition
  • Wind Field Boundary Condition
  • Wave Field Boundary Condition

Note that the most popular set of boundary condition specifications is a downstream water surface elevation, and an upstream discharge (flow). However, the circumstances and field data availability may force you to alter this arrangement. For instance, a non-reflecting boundary condition may prove to be beneficial during a tidal simulation if the mesh domain does not extend to the head of tide.

Parallel Flow Boundary Condition

The flow at all boundary nodes defaults to parallel flow (or slip flow). Parallel flow occurs at the nodes which differentiate between the wet and dry areas of the mesh. RMA2 is free to calculate the velocity adjacent and parallel to the side wall, as well as the depth at the side wall. This means that the depth can become infinitely high at the side walls if the conditions of the simulation dictate.

Flow Boundary Condition

The flow at all boundary nodes defaults to parallel flow (or slip flow). Parallel flow occurs at the nodes which differentiate between the wet and dry areas of the mesh. RMA2 is free to calculate the velocity adjacent and parallel to the side wall, as well as the depth at the side wall. This means that the depth can become infinitely high at the side walls if the conditions of the simulation dictate.

Water-Level Boundary Condition (Head)

A water surface elevation boundary condition, or head, is normally provided at the tailwater location. The most popular technique for assigning the head boundary condition is to specify the head across a continuity check line with a BH card using the by line option, L. An alternative method is to supply the head at each boundary node with the BH card using the by node option, N, or the BCN card. If the head is specified in one of these ways, the model will solve for the x and y components of velocity, and the flow angle at the associated node(s).

At an exit boundary, RMA2 adjusts the water depth as needed to obtain the optimum solution to the finite element equations. The minimization principles in the solution technique reach optimums when all heads, even those along the exit boundary, can be adjusted individually to preserve overall network coherence. The result is water surfaces at the exit boundary nodes that may differ slightly from the coded boundary conditions.

Stagnation Point Boundary Condition

Occasionally, it may be appropriate to use the stagnation boundary condition, which means that both the x and y velocity components are set to zero at the specified node. One situation where this may be useful is when there is a perpendicular flow at a boundary, such as at a bridge pier. The perpendicular flow at such a point is zero. The zero velocity components are explicitly assigned for that node on the BCN card.

Reflection/Absorption Boundary Condition

There are some circumstances when a boundary must be located within the tidal portion of a system and there is no known water level data to support that boundary location. Under these circumstances a permeable or reflection/absorption boundary condition (BRA card) is warranted.

Wind Field Boundary Condition

It is possible to assign a wind stress boundary condition by assigning the wind speed and direction to the model domain. This is accomplished with the BW Card. The storm event is a more elaborate form of applying a wind field. Storms are accomplished with the ST Card.

Wave Field Boundary Condition

It is possible to request an input file to be read by RMA2 that is representative of the wave heights for the model domain ($L card, INWAVE). Typically a wave model, such as STWAVE, has built this file prior to running RMA2. The file is structured such that there is a set of wave heights for each RMA2 simulation time step. The wave/current interaction switch (HS card, IWCUR) actually invokes the feature. The modeler also has the discretion to apply scales and constraints to this input file to eliminate extremes in the wave data (HS card, IWAV).

Curved Element Edges

There are several reason why you may want to curve elements.

  • Add aesthetics
  • Add length to a section without adding resolution
  • Represent meandering channels
  • Reduce boundary break angles without adding additional resolution

Curving can be useful to help improve mass conservation and to achieve a more natural appearance along the mesh boundary. You may curve both one-dimensional and two-dimensional elements.

Bendway Correction (Vorticity)

Traditional RMA2 depth averaged calculations of flow around a bend frequently over predicted streamwise velocities on the inside bank of a river. When water flows around a corner, a radial acceleration is developed that forces the surface water to the outside of the curve and the water near the bed to the inside of the curve. This is the familiar "secondary" or "helical" flow pattern which causes sediment aggradation on the inside of curves and soil erosion on the outside of curves. RMA2 cannot adequately predict the effect of this behavior on the depth-averaged velocities. In order to improve predictions of depth-averaged velocities around curves, a secondary flow corrector, coined as bendway correction, option was added to RMA2.

Wetting and Drying

In the real world, there may be times when portions of an area may become devoid of water, and later become wet again. This process of flooding and draining is referred to as "wetting and drying". RMA2 provides for elements along the boundary to wet and dry by means of the off-channel storage concept. RMA2 provides two global means by which to simulate these events; elemental elimination (DE card) and marsh porosity (DM card). Either of these methods may be used alone or in combination.

Off Channel Storage

RMA2 permits an off-channel storage assignment to any element on a boundary. The off-channel assignment should be thought of as the average combined left and right over bank volumetric contributions. The volume of the off-channel storage interacts with the continuity equation, but makes no contribution to the momentum equation.

Elemental Elimination

When used alone, the wetting and drying by element technique eliminates or dries the entire element when any one node on the element has a depth less than or equal to the value of DSET on the DE card. Once an element "dries", flow must go around the newly formed land boundary until the projected water depth calculated by RMA2 exceeds the value of DSETD (DE card) for all nodes of the element. To prevent an element from oscillating between wet and dry states, it is recommended to make DSETD > DSET.

The mesh should be constructed such that the edges of the elements fall on smooth contour lines such that the storage area wetted or dried at any given moment is minimized. Mesh detailing should be concentrated in the transition regions between wet and dry states. Numerical instabilities can be introduced if an irregular "saw tooth" shoreline results from the newly formed dry land boundary, or if a large storage area is abruptly gained or loss.

If the prototype bathymetry of the system dictates the appearance of pond areas, you may have to alter the bathymetry to achieve a monotonically sloping bed to effectively remove the ponds from the simulation. If an isolated pond forms, RMA2 is likely to diverge when the pond is reattached to the wetted network.

Marsh Porosity

The "marsh porosity" feature in RMA2 allows elements to transition gradually between wet and dry states. This technique allows RMA2 to lower the ability of the element to hold water; like squeezing a sponge. It improves calculation of the shoreline boundary position for intermittently flooded wetlands and tidal flats.

The residual water volume existing on a partially wet element is calculated by vertically integrating a wetted area curve associated with each node of the element. The wetted area curve represents sub-grid scale bathymetry variations that occur in the area surrounding the node. Partially wet elements are retained until all associated nodes become dry. Dry elements re-enter the computations as soon as one associated node is re-wet.

Marsh porosity is either on or off for all elements in the mesh during the simulation. However, if marsh porosity is on, and all nodal depths for a particular element exceed the transition range of the distribution (i.e., completely wet element), then the element will carry 100% of its capacity, and marsh porosity has no effect within that element.

Elemental Inflow and Outflow

RMA2 provides a means to add fluid to or remove fluid from an element or multiple elements. This ability can be utilized to simulate events such as pumping and discharging, or rainfall and evaporation. The way of thinking about these two situations may differ slightly, but the process is the same.

Pumping and Discharging

Simulating a pumping and/or discharge event can be accomplished by specifying an outflow (pump) and/or inflow (discharge) boundary condition at an element. This technique is used by adding fluid to or subtracting fluid from the specified element. For a two-dimensional element, the outflow or inflow is measured per unit area (sq-ft or sq-m) of the element, whereas for a one-dimensional element, the outflow or inflow is measured per unit length (ft or m) of the element.

RMA2 expects a value for inflow only. To provide an outflow, you must use a negative value for inflow.

Rainfall and Evaporation

Rainfall and evaporation is a special type of boundary condition. Rainfall and evaporation can be applied to a single element, or to many elements in the network. Rainfall or evaporation is applied in inches/hour if using English units, or cm/hour if using Metric units. These values are internally converted to feet/second or meters/second depending on the designation on the SI card.

The elements you want to influence with rainfall or evaporation can be specified with the RA card using the by element option, E, or the by material type option, T. All elements in the mesh can be included by using the RA card with no option.

Rainfall and evaporation can occur at any time during the simulation. For example, if you want rainfall to start at hour 30 and stop at hour 33, and evaporation to begin at hour 50 and stop at hour 60, start the simulation with SIDF on the RA card set to zero. At hour 30, update the parameter on the RA card, making it a positive value. At hour 33, update again returning the rainfall value to zero. At hour 50, update the RA card parameter yet again making it a negative value, denoting evaporation, and at hour 60 update the RA card again to set the value back to zero.

Accounting for Earth Rotation

The Coriolis force is the inertial force caused by the Earth's rotation. RMA2 provides two ways to control Coriolis calculations:

  • Average latitude of the mesh
  • Specifying latitude by material type

Average Latitude

You can provide the average local latitude of the entire mesh in one step on the LA card. This is useful when you want to include one Coriolis force to be applied throughout the entire mesh domain, as opposed to specifying the latitude by material type.

Specifying Latitude

If the study domain is very large, you may want to provide several Latitude assignments which will encompass all of the modeled area. The LA card with the T option permits you to specify the latitude according to material type. This method will provide more customized Coriolis force calculations than when specifying globally the average latitude of the domain.

Modeling Wind Effects

RMA2 has several optional wind shear stress formulations. This gives considerable flexibility in handling wind effects which are extremely difficult to implement in a two-dimensional model. Wind is de-emphasized and generally not used in this program because wind-driven currents are three-dimensional in nature. However, in systems that are generally shallow with strong wind influences, wind stress may be required to obtain proper setup and system circulation.

Note that modeling experiences with RMA2 running wind suggest that the wind speed and direction be gradually "ramped" over time between extreme values.

Applying wind friction is a two step process:

  • Specify The Controlling Wind Formulation
  • Specify Wind Speed And Direction

Once wind friction has been established, it remains in effect until a change is specified.

Wind Formulations

RMA2 currently provides eight formulations from which to choose when applying wind friction:

  • RMA2 Original Formula
  • Van Dorn Formula
  • Wu Formula
  • Safaie Formula
  • Ekman Formula
  • Generic Formula
  • Van Dorn Formula with defaults
  • Wu Formula with defaults

The wind stress formula is selected by setting the IWIND parameter on the BWC card. The majority of RMA2 numerical modelers have opted for the Wu formulation. See the BWC card documentation for further information.

Wind Speed and Direction

The wind speed and direction may be applied globally throughout the mesh domain, or by material type, element, or individual node on the BW card with the appropriate option.

Simulating Storms

RMA2 provides the capability to include storm fronts in a simulation. This is accomplished by generating spatial variations in wind speed and direction for each time step based upon a user specified set of criterion for the storm(s). These criteria include factors such as:

  • Storm path
  • Orientation of the storm along the path
  • Storm speed
  • Shape
  • Temporal growth and decay constant for wind

Note that storm rotation is based on the Coriolis forces for the northern hemisphere.

Storms in a Simulation

Many open water systems are strongly influenced by meteorological changes which can apply pressures at the water surface. These wind stresses can be from a variety of storm types. The wind effects can generally be classified either as steady in nature or associated with a dynamic event. The ability of RMA2 to adequately simulate a real-world event must be carefully evaluated for each of these classes.

The response of a water body to wind forcing will generally be three- dimensional. The surface wind stress will drive a surface current in the direction of the wind. The influence of that surface wind drift will then be dependent on the water depth and the local shoreline geometry. If the currents are directed to a shoreline, the movement of surface water will result in a pilling up of water on that shoreline. As the water level is raised on the shore, a hydrostatic pressure gradient is developed perpendicular to the shore, which will in turn drive a return flow away from the shore in the bottom portion of the water column. This vertical circulation pattern will moderate the increase in the water level at the shoreline. The strength of that return flow will be dependent on the water depth; generally stronger in shallower water. The process is however a dynamic one. During the initial movement of water toward the shoreline, there is insignificant return flow at the bottom. Only after the water level is dramatically affected does the three-dimensional circulation develop. Wind events associated with stationary meteorological conditions may generate persistent unidirectional winds for prolonged periods of time, which may fully develop vertical circulation cells in the water column. However, there are a large number of wind events that are of a shorter duration and do not involve a fully developed vertical circulation response.

RMA2 Considerations

The three-dimensional nature of the circulation affects how appropriate the application of a depth-averaged model will be to the problem. It has been shown that for a steady-state type of wind forcing, RMA2 will overestimate the setup of the water levels at the shoreline. However, for dynamic events, the model will generally perform well for the initial movement of water. If the dynamics of the storm lead to a change in the wind stress such that a steady-state condition is never approached, then RMA2 will yield reasonable results.

If the shape of the shoreline is more complex, horizontal variations of the water surface may result in localized return flows that do not involve significant vertical circulation. Such circulation patterns are directly analogous to rip tides along a beach in response to the radiation stress of the waves.

The ability of RMA2 to properly simulate wind forcing hydrodynamic response is limited to cases where steady-state conditions are not approached. RMA2 will result in a raised water surface, or "setup", at the shoreline, but because of the depth averaging, will have no return flow. Technically, RMA2 gives the appropriate "average velocity" for such conditions. However, if water quality or any dispersive processes are of interest, the results must be interpreted with care. In addition, the water surface setup will normally be overestimated.

RMA2 can adequately handle certain types of dynamic events. The response of a system to a frontal passage or tropical storm can be evaluated with some confidence level by RMA2, provided the storm does not stall, which will lead to some steady-state issues.

Defining Storm Events

The representation of storms within RMA2 is provided as a means of easily developing relatively complex wind fields. A "storm" in RMA2 is defined as a specific tracking of the location of the storm center as a function of time, and the characteristics of that storm.

A storm is defined using the BWS card. Each BWS card creates a single storm. You may simulate multiple storms (presently dimensioned to two) to describe complex wind patterns by including additional BWS cards.

Tidal Signals

If the tidal signal fades out/dampens too fast, there are two "energy eating" forces which may be controlled by input parameters:

  • eddy viscosity
  • n-value roughness

If either of these parameters are too high, the tidal signal may be dampened. Other possibilities are generally geometry related problems.

Sidewall Friction

RMA2 does not directly account for sidewall friction in the model. Therefore, to compensate for this, you can artificially roughen the row of elements along the boundary edge.