Skip navigation links
(WIND Documentation Home Page) (WIND User's Guide) (GMAN User's Guide) (MADCAP User's Guide) (CFPOST User's Guide) (WIND Utilities) (Common File User's Guide) (WIND Installation Guide) (WIND Developer's Reference) (Guidelines Documents)

(Introduction) (Tutorial) (Geometry and Flow Physics Modeling) (Numerical Modeling) (Boundary Conditions) (Convergence Monitoring) (Files) (Scripts) (Parallel Processing) (Keyword Reference) (Test Options)

Numerical Modeling

WIND utilizes a number of different numerical methods in the solution of a selected set of field equations. By default, the code solves the Euler and Navier-Stokes equations using Roe's flux-difference splitting scheme for the explicit (right-hand side) terms, and either a diagonalized or block matrix solver for the approximately-factored implicit (left-hand side) terms.

Iterations and Cycles

The usual method of obtaining a solution with WIND involves the initialization of the entire flowfield and the successive iteration of the flow solver, with appropriate explicit boundary conditions, to a steady-state solution. Most boundary conditions are updated after each iteration of the flow solver; however, because of its expense, zone coupling takes place less frequently. Zone coupling is the process whereby WIND exchanges flowfield information between zones to maintain solution continuity at zonal interfaces. Updates of the flow file with the most current data also take place less frequently.

To facilitate flow file updates and propagation of flowfield information to neighboring zones, WIND defines a "cycle" as a specific number of iterations performed in each of the zones, with zone coupling to effect information transfer. By default, WIND performs five iterations in each zone before moving on to the next zone. You must specify the number of solution cycles to be computed, and you may optionally specify the number of iterations per cycle to be calculated in each zone (or all zones simultaneously).

For single-zone problems, you may wish to specify a large number of iterations per cycle, because there is no need for zone coupling operations; however, note that the flow file will be updated less frequently in this case. For multi-zone problems, a large number of iterations per cycle is not recommended, because it will greatly hinder the transfer of flowfield information between zones and, therefore, convergence.

"Turning Off" Zones

To "turn off" a zone in a multi-zone calculation, simply specify 0 or fewer iterations per cycle for that zone; values of -1 and -2 are used to indicate how zone coupling is to be handled for zones adjacent to the "dead" zone.

Keywords: CYCLES, ITERATIONS

Grid Considerations

WIND provides capabilities which allow you to make the most efficient use of the computational grid for a given configuration. Both of the options described in this section reduce the accuracy of the computations in one or more grid directions and should therefore not be used haphazardly.

Grid Sequencing

Grid sequencing is a capability whereby WIND "removes" grid points from selected portions of the domain, resulting in a "coarse grid" solution which is obtained in a fraction of the time it would have taken for a "full grid" solution. For example, if you select one level of sequencing in all three directions in a particular zone, only every other grid point in each of the i-, j-, and k-directions will be used in the calculations, resulting in a decrease in CPU time of approximately 80-90%. (The speed-up is not a linear function of the number of sequencing levels.) Selecting two levels of sequencing would repeat the process, causing only every fourth grid point to be used. At the end of each run, the solution is interpolated back onto the entire grid to aid in restarting the solution and to provide a continuous field for post-processing.

Grid sequencing is very useful for converging gross flowfield properties before obtaining a final solution on the full grid. Note, however, that a sequenced solution may seem incorrect when post-processed using the entire computational grid, because of the interpolation process used at the end of each run. In addition, when restarting a full-grid solution from a sequenced solution, reducing the CFL number (time step) by 50% is highly recommended, in order to reduce the risk of solution instabilities which arise during the transition.

Keywords: CFL#, SEQUENCE

Thin-Shear-Layer Calculations

Another time-saving option available in WIND is the ability to solve the thin-shear-layer Navier-Stokes equations, instead of the full equations. By requesting that WIND remove the viscous terms from the equations in one or more computational directions, a CPU savings of up to 30% may be realized. This capability requires careful specification, because viscous terms must be retained along grid lines which are perpendicular to boundary layers, free shear layers, and other highly viscous flow features.

Because some solution instabilities have been linked to the use of the thin-shear-layer option, it is recommended that you disable this option near the completion (convergence) of your solution, creating a fully viscous flowfield model.

Keywords: TSL

Explicit Operator

The first-derivative (non-viscous) terms on the right-hand side of WIND's equation set are calculated by the code's explicit operator. You may choose from a wide variety of explicit operators, independently of the implicit (left-hand-side) operator. An explicit operator is selected by its type and accuracy. Types include a central difference operator, the upwind Coakley, Roe, Van Leer, and HLLE schemes, and modified versions of the Roe, Van Leer, and HLLE schemes for stretched grids. Depending on the type of scheme used, the accuracy may be specified as anywhere from first to fifth order. The default explicit operator is Roe's second-order upwind-biased flux-difference splitting algorithm, modified for stretched grids.

Keywords: RHS

Explicit Smoothing

Certain types of explicit operators - for example, the central difference operator - may require the addition of numerical smoothing in order to dampen instabilities which are a natural part of the scheme. Smoothing must also be added explicitly when utilizing WIND's convergence acceleration capability. Values for second- and fourth-order smoothing coefficients and a smoothing limiter coefficient may be specified in the input data file.

Keywords: ACCELERATE, SMOOTHING

Explicit Boundary Damping

In flowfields dominated by acoustic phenomena, unwanted wave reflections may sometimes occur at freestream computational boundaries. To eliminate these unphysical reflections, WIND's boundary damping capability may be employed to apply explicit smoothing near the freestream boundaries, with the effect of absorbing the reflected waves.

Keywords: BOUNDARY-DAMP

Total-Variation-Diminishing (TVD) Operator

Certain types of explicit operators are equipped with a Total-Variation-Diminishing (TVD) operator, which limits local maxima and minima in flux quantities to prevent non-physical instabilities from arising during the solution. The default Roe scheme, for example, requires interpolation and/or extrapolation of flux quantities, which may produce minima or maxima that are outside the range of the original data. TVD operators attempt to limit these peaks to acceptable values based on the data used in the interpolation and extrapolation. Three different TVD operators are available in WIND, and may be specified on a zonal basis. For two of the operators, the severity of the limiting may be controlled through an input parameter.

Because only single data points are used in the first-order schemes, TVD, which limits interpolations and extrapolations, has no effect on such cases. It will only have an effect for second- and higher-order calculations. When attempting to model precise phenomena, such as acoustic waves, TVD should not be used, because it may produce undesirable damping or smearing of flowfield features. However, in most cases, TVD provides significant protection against numerical instabilities with less than a 10% increase in CPU time.

Keywords: TVD, BOUNDARY TVD

Implicit Operator

The left-hand side of WIND's equation set is computed in the code's implicit operator, which may be set on a zonal basis. Options are available to select scalar or full block implicit operators, or to turn off the implicit operator completely for an entirely explicit calculation. With these options, a different implicit operator may be specified for each computational direction.

By default, WIND uses the full block operator in viscous directions, and the scalar (diagonalized) matrix solver in inviscid directions.

A variety of other implicit operators are also available, including point Jacobi, Gauss-Seidel, MacCormack's modified approximate factorization, and the ARC3D 3-factor diagonal scheme as used in the OVERFLOW code.

Keywords: IMPLICIT

Implicit Boundaries

In addition to the normal explicit boundary conditions, implicit boundary conditions may be used on "wall" boundaries. These improve stability when the CFL number is above about 1.3.

Keywords: IMPLICIT BOUNDARY

Time Step

CFL Number

The time step can be one of the most important parameters in a WIND solution. It may mean the difference between a successful run and a code bomb. In WIND, the time step is represented by the CFL (Courant-Friedrichs-Lewy) convergence criterion, which is a non-dimensional time step based on the actual time step, the local grid spacing, and the local characteristic velocity (u + c).

For stability reasons, WIND's default CFL number is set to 1.3, which is sufficient for a wide variety of problems. For inviscid solutions, the CFL may be raised slightly, while for highly complex flows (due to complex geometry or gas models), it may need to be lowered significantly. Often, in the beginning of a solution, or during the transition between a sequenced and fine grid solution, the CFL number should be set to 0.5 while transients settle out of the flowfield.

Note: If you must consistently set the CFL number to 0.1 or lower to maintain stability in the solution, you should attempt to locate other possible causes of numerical instability, such as grid anomalies or grid/flow interactions. Such low CFL numbers translate into small time steps and unacceptable convergence rates.

When a CFL number above 1.3 is desired, the implicit boundary conditions should be used.

By default, WIND defines the CFL number based on the minimum time step associated with the eigenvalues of each coordinate direction individually. That is:

dt = min ( CFLx / lambdax, CFLy / lambday, CFLz / lambdaz )

Using TEST 105, the user may define the time step more conventionally as:

dt = CFL / ( lambdax + lambday + lambdaz )

which provides a somewhat smaller effective time step.

Options in WIND allow the CFL number or time step to be gradually increased as the calculation proceeds, or to use the time step calculation procedure from the OVERFLOW CFD code.

For most calculations, the time step is computed based on a constant CFL throughout the field, which means that, for non-uniform grids, the solution advances at different rates in different parts of the grid. Because the CFL number is directly proportional to the physical time step and inversely proportional to the local grid spacing, the physical time step must be small where the grid spacing is small, in order to maintain a constant CFL number. For example, in boundary layers and shear layers, where the grid is often closely packed for better resolution, the solution advances more slowly than in other parts of the flowfield. In fact, most of the iterations in a viscous solution are spent converging viscous regions. In practice, the major flow features (e.g., shocks and other major pressure gradients) will develop quickly, while detailed flow phenomena will require a larger number of iterations.

WIND therefore uses by default a "cross-flow" CFL number which multiplies each coordinate direction's eigenvalues by a factor before determining the time step associated with that spacing and flow conditions. This factor varies from 1.0 when the flow is along the coordinate direction, to a user-specified value when the flow is perpendicular to the coordinate direction. The far-field CFL number is generally the value specified in the input data file with the CFL# keyword, but near the wall the code effectively uses a larger value. This should increase convergence of the boundary layer.

The cross-flow CFL factor is defined using the CROSSFLOW keyword. Values greater than one effectively increase the time step in the boundary layer (where the flow is parallel to the wall, but the minimum spacing is normal to the wall) by the specified factor. The default is 2.0 for three-dimensional flow, and 1.0 (i.e., no time step increase in the boundary layer) for two-dimensional flow and axisymmetric flow.

Keywords: CFL#, CROSSFLOW

Runge-Kutta Time Step

Several Runge-Kutta time step formulations are available for use in WIND. A traditional four-stage Jameson-type scheme or a three-stage, minimal-storage scheme may be selected in the input data file. You may also specify algorithm coefficients for each of the stages in the different schemes. Runge-Kutta schemes attempt to provide a more accurate approximation to the solution at the next time level by advancing through several stages, or sub-iterations, to get there. In WIND, each sub-iteration may be one pass through the explicit operator with or without a pass through the implicit operator. (The original Runge-Kutta scheme was formulated using only an explicit operator.) Depending on the coefficients used, Runge-Kutta time step algorithms are often higher order in time than the default Euler time stepping algorithm. This makes them ideally suited for time-accurate calculations (see below).

Keywords: STAGES

Global Newton Iteration

A Global Newton iteration technique is available in WIND, and has proven to provide time-accurate solutions with large CFL numbers for unsteady flows with large time scales. [Tramel, R. W., and Nichols, R. H. (1997) "A Highly-Efficient Numerical Method for Overset-Mesh Moving-Body Problems," AIAA Paper 97-2040.] The Global Newton technique stabilizes the solution and improves time accuracy by placing the entire unsteady transport equations on the right-hand side of the matrix solver, and iterating within a time step over all the zones. Thus, the interface boundaries are brought up to the new time level, along with the interior flow field, resulting in an essentially implicit treatment of the boundaries. The Global Newton algorithm has also been shown to improve steady-state convergence rates.[Nichols, R. H., and Tramel, R. W. (1997) "Application of a Highly Efficient Numerical Method for Overset-Mesh Moving Body Problems," AIAA Paper 97-2255.]

Keywords: NEWTON

Time-Accurate Solutions

The objective of time-accurate CFD calculations is the modeling of unsteady flow phenomena, such as vortex pairing or bluff body wakes. In these calculations, the physical time step must be the same throughout the entire flowfield, regardless of the local grid distribution. Because the CFL number has a limit which approximates the upper limit of numerical stability, the time step used in the calculation must be obtained from the maximum CFL number and the smallest grid spacing in the field. Thus, the stability of the calculations in regions of dense grid packing determines the time step for the entire rest of the field. For single-zone time-accurate calculations, you may request that WIND calculate the minimum time step in the zone based on the specified CFL number. However, for multi-zone time-accurate calculations, you must calculate the time step yourself, based on the desired CFL number and the minimum grid spacing, and specify the physical time step in the input data file.

Keywords: CFL#

Convergence Acceleration

The solution transients that occur in iterating from the freestream-initialized flowfield often cause the most severe stability problems in WIND. As the solution approaches convergence on a sequenced grid, most of these transients will have settled out of the field, with the change to fine grid being the only remaining "jolt" to the solution. Numerical stability may be forced through the addition of artificial numerical dissipation to the equations, but such dissipation may lead to non-physical results in the steady state solution.

WIND's convergence acceleration capability was developed to make use of artificial dissipation to eliminate stability problems, while raising the initial solution time step to get past the transients more quickly. In the input data file, you may specify the initial amount of artificial dissipation (smoothing) to be added to the equations, the starting and ending values of the CFL number, the iteration numbers between which the smoothing should be applied and CFL number altered, and the zone(s) in which you would like to enable this capability. Recommended values for the smoothing coefficients are given later in this manual, under the ACCELERATE keyword description.

At the beginning of the solution, using this capability, a relatively high CFL number will be accompanied by significant numerical smoothing. As the iteration count approaches the specified ending value, the CFL number will be gradually adjusted toward its final value as the amount of smoothing is steadily decreased.

Keywords: ACCELERATE, SMOOTHING, TEST 49 2