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.
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.
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
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 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
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
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
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
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
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
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
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
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:
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
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
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
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#
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