Field grid generation is the first main function of GMAN. This function is used to generate and/or modify the field (i.e., interior) points of a three-dimensional zone. Prior to field grid generation, the grid on each face of the zone must be defined. The field point locations are then determined from the location of the grid points on the six bounding faces. The field points can be determined using one of two basic methods: (1) algebraic grid generation, or (2) elliptic grid generation. Field grid generation affects only the interior points of a selected range, leaving the boundary points unchanged.
GMAN can be used to generate the field grid in conjunction with the boundary grid generation module ZONI3G, or to modify or regenerate the field grids for a grid from any other source that can be converted to an acceptable format for GMAN. To assist in obtaining acceptable grids, the program contains software which will check for grid flaws and print the locations of such errors. The user may also physically rotate, translate or scale an entire zone's mesh. Changes are not made in the grid file until the user performs a save operation, so that the original grid can be restored from the file if changes are not acceptable to the user.
AXISYM AXIS - Set axisymmetric flag
AXISYM AXIS [SHOW|NONE] {XY|YZ|XZ} BASE x y z SLOPE m ANGLE a |
The AXISYM AXIS command sets the axisymmetric flag in the Common Grid file. The rotation axis lies in the XY, YZ, or XZ plane and passes through point x y z with a slope of m. a is the angle through which the 2D plane is rotated about the specified axis.
GRID SINGULAR - Make the grid singular
GRID [range] SINGULAR [IN] {I|J|K} |
The GRID SINGULAR command resets grid point values in a given direction to make the grid singular. The command makes every point in the selected range equal to the first point in the specified direction. The parameter range has the same syntax as the 3d-range parameter in the SUBREGION command.
REDISTRIBUTE - Redistribute grid points along grid lines
REDISTRIBUTE [range] [IN] I|J|K [method {INDEX | ARC LENGTH | SEMI ARC LENGTH}] |
The REDISTRIBUTE command redistributes grid points along existing grid lines in the specified computational direction, using the selected method. The parameter range has the same syntax as the 3d-range parameter in the SUBREGION command. This command is useful when the elliptic grid generator has destroyed boundary layer grid packing.
The choices for method are:
INDEX | Perform index interpolation, producing a highly smoothed grid. Ignore boundary grid distributions. | ||
---|---|---|---|
ARC LENGTH | Use all appropriate boundary grid distributions to determine the interior grid distribution. | ||
SEMI ARC LENGTH | Use boundary grid distributions and index interpolation to determine the interior grid distribution. |
ROTATE angle [DEGREES] [ABOUT] {X|Y|Z} [AXIS] [[CENTER] pt1 pt2] |
The ROTATE command rotates the grid in the current zone through angle degrees about an axis parallel to the one specified and passing through the point (pt1,pt2). The sign of rotation is determined from the right hand rule, with the thumb pointing along the rotation axis in the direction of increasing coordinate. (pt1,pt2) is (y,z), (x,z) or (x,y) for x-, y-, and z-axis rotations, respectively.
SCALE {xscale yscale zscale | [X xscale] [Y yscale] [Z zscale]} |
The SCALE command scales the grid in the current zone by the amount specified in each of the three coordinate directions. The x-, y-, or z-coordinate is simply multiplied by the corresponding scale factor.
TRANSLATE - Translate the grid
TRANSLATE [X dx] [Y dy] [Z dz] |
The TRANSLATE command translates the grid in the current zone by the amount specified in each of the three coordinate directions.
UNITS - Display or set grid units
UNITS [units] |
The UNITS command displays or set the grid units in a Common Grid file. The parameter units is one of the following: METERS(M), INCHES(IN), FEET(FT), CENTIMETERS(CM), or MILLIMETERS(MM).
Algebraic grid generation is interpolation of the field grid from the boundary grid points. Several interpolation options are avaliable. The recommended interpolation technique is transfinite interpolation in all three directions. Each field point is interpolated from points on each of the six faces. Alternate interpolation techniques allow the user to interpolate between opposite boundaries along one of the coordinate directions, or to interpolate in two directions for "planes" marching successively in the third direction. For many applications, the algebraic grid is suitable. Algebraic techniques provide good control of the spacing near each of the faces (controlled by the surface grid generation process) and are the fastest grid generation tools available. However, slope discontinuities on the boundary are propagated into the interior and grid lines may be highly skewed or even crossed. In order to determine whether the algebraic grid is suitable, it is necessary to do some sort of grid quality checking.
The ALGEBRAIC INTRP item of the INTERIOR GRID menu (see the GRID command) presents several choices to the user for computing a grid based on an algebraic interpolation scheme. LINEAR IN I, LINEAR IN J, and LINEAR IN K interpolate the grid along straight lines connecting boundary planes of constant i, j, or k, respectively. JK TRANSFINITE, KI TRANSFINITE, and JI TRANSFINITE interpolate the grid in jk, ki, and ji planes, respectively, from values on the four edges of those planes. IJK TRANSFINITE interpolates the grid from values on the six boundary faces and is generally more useful than the other interpolation schemes.
The algebraic grid generation options in GMAN allow the user to create a grid with 3-D transfinite bilinear interpolation within a volume or on constant computational planes. This scheme requires a weighting function for the interpolations, which is implemented as a three-dimensional arc length array in the code. The default method for calculating this array computes the boundary distributions and interpolates those values to the interior using transfinite interpolation based on computational index (evenly distributed weights). In addition to weighting the interpolations, the distribution array is used to redistribute the grid along lines of varying computational index.
STACK - Treat 3-D grid as stack of i, j, or k planes when interpolating
STACK [MODE] [3D | I [PLANES] | J [PLANES] | K [PLANES]] |
This command provides the ability to treat a 3-D volume grid as a number of i, j, or k planes when performing 2-D or 1-D algebraic interpolation. Thus if you are doing i plane stacking with JK interpolation the i direction is completely uncoupled in the calculation. If 3-D stacking with JK interpolation is used the i direction is still used in the calculation of the interpolation factors. The new i plane stacking is useful if you have a boundary layer beginning to spread out at some i plane, this spread will not influence the calculation in the wall region. Thus the viscous packing will be maintained.
INITIALIZE - Generate grid for range of zones
INITIALIZE [ZONES [zone1 [TO|THRU] zone2]] [grid_command] |
This command generates the grid for every zone in the specified range (default is all zones) using the method described by grid_command. grid_command is any valid GRID command. If omitted, the default grid generation scheme is 3D INTERPOLATION. Because this command may be used at any time in command line mode, it is not strictly for initial grids.
GRID - Generate or alter grid for a zone
GRID [range] [USING] scheme [method {INDEX | ARC LENGTH | SEMI ARC LENGTH}] |
The GRID command is used to generate or alter the computational grid in a particular zone. The parameter range has the same syntax as the 3d-range parameter in the SUBREGION command. The grid may be generated using algebraic interpolation or a 3D elliptic equation solver.
For algebraic grid generation, the choices for method are:
INDEX | Perform index interpolation, producing a highly smoothed grid. Ignore boundary grid distributions. | ||
---|---|---|---|
ARC LENGTH | Use all appropriate boundary grid distributions to determine the interior grid distribution. | ||
SEMI ARC LENGTH | Use boundary grid distributions and index interpolation to determine the interior grid distribution. |
The parameter scheme must be one of the following:
LINEAR INTERPOLATION [IN] {I|J|K} | |||
---|---|---|---|
Performs interpolation along grid lines of varying i, j, or k index, as selected. | |||
2D INTERPOLATION [ON] {I|J|K} [PLANES] | |||
Performs 2D transfinite interpolation on i-, j-, or k-planes, as selected. | |||
3D INTERPOLATION | Performs 3D transfinite interpolation on the entire grid. This command also works for 2D grids. |
Elliptic grid generation is the creation of field grid points by the solution of elliptic partial differential equations. Prior to elliptic grid generation, an algebraic grid must be generated to provide a starting point for the elliptic solution procedure. As with algebraic grid generation, the elliptic grid generation procedure can be performed on an entire zone or on a subset of a zone. Elliptic grid generation has the advantage that the resulting grid is generally smoother than an algebraic grid and, through proper choice of control functions, orthogonality can be obtained on the boundary. The disadvantage is that it is more computationally expensive and it does not always preserve the desired spacings at the boundaries.
Elliptic grid generation is a complicated process, which sometimes works and sometimes does not. The user should first seek to simply make the grid generator work on a grid which bears some resemblance to the grid that is wanted. The desired grid can then be approached by gradually adjusting the input parameters.
The elliptic PDE grid generator in GMAN may only be used for 3D grids. It solves the inverted Poisson's equation for the physical coordinates in terms of computational coordinates using a successive line over-relaxation method. Several different forcing functions may be selected, including no forcing (Laplace equation) or forcing calculated from an existing grid or interpolated from the boundaries, using arc length and curvature. In the event that the elliptic solver destroys viscous clustering at a wall, a redistribution option can be used to apply the original spacing along existing grid lines in any one of three directions.
The ELLIPTIC SOLVER option allows the user to smooth the grid by solving a set of elliptic partial differential equations. The inverted Poisson's (or Laplace) equation is used, treating the physical coordinates as the independent variables. After selecting a forcing function from the displayed list (LAPLACE is the default), selection of RUN SOLVER will prompt the user for a range of the grid on which to operate and the number of iterations desired. In the DRAWING ON mode, the displayed grid will be updated after each iteration, interactively showing the effect of the smoothing on the grid.
Note that solving a set of elliptic partial differential equations can be a time-consuming task. Even when solving for a relatively small grid (40 × 32 × 24, for example), run times can become significant and will vary depending on the type of forcing function selected, the machine being used and the current processing load.
Stack mode is used the same as method.
ELLIPTIC CONVERGENCE - Set convergence criterion
ELLIPTIC CONVERGENCE [LIMIT] limit |
This command sets the value used to determine convergence of the elliptic grid generator.
ELLIPTIC DECAY - Set elliptic decay factor
ELLIPTIC DECAY [FACTOR] factor |
This command sets the rate at which the elliptic forcing functions decay from the boundary to the interior.
ELLIPTIC FORCING - Set elliptic forcing functions
ELLIPTIC FORCING [FUNCTION] function |
This command sets the elliptic forcing function. The parameter function must be one of the following:
LAPLACE | This option has a strong smoothing influence on the grid but does not take into account the spacing distribution on the boundary. This often leads to undesirable effects as the grid varies from the specified boundary clustering to uniform spacing in the field. This is the default forcing function. | ||
---|---|---|---|
ARC LENGTH | Takes into account the grid spacing when smoothing the grid. Does not provide any explicit orthogonality control. | ||
ARC LENGTH AND CURVATURE | Takes into account the grid spacing and curvature when smoothing the grid. Does not provide any explicit orthogonality control. | ||
INTERPOLATED ARC LENGTH | Takes into account the grid spacing on the boundaries and interpolates the information to the interior when smoothing the grid. Does not provide any explicit orthogonality control. | ||
INTERPOLATED ARC LENGTH AND CURVATURE | |||
Takes into account the grid spacing and curvature on the boundaries and interpolates the information to the interior when smoothing the grid. Does not provide any explicit orthogonality control. | |||
GRAPE | Calculates forcing functions based on boundary spacing and orthogonality constraints. Forcing functions decay toward zero in the interior of a zone. Forcing functions are recomputed in the iteration loop to provide orthogonality. | ||
SMOOTH | ?? |
ELLIPTIC GRAPE BOUNDARY - Specify boundaries for GRAPE forcing function
ELLIPTIC GRAPE BOUNDARY {I1|IMAX|J1|JMAX|K1|KMAX} {1|2} ... |
The ELLIPTIC GRAPE BOUNDARY command specifies to which boundaries the forcing function will be applied when the GRAPE forcing function is used.
ELLIPTIC ITERATION - Set maximum number of iterations
ELLIPTIC ITERATION [LIMIT] iteration_limit |
This command sets the maximum number of iterations for elliptic grid generation. This limit may be overwritten by the GRID command.
ELLIPTIC RELAXATION - Set elliptic relaxation factor
ELLIPTIC RELAXATION [FACTOR] factor |
This command sets the factor used in relaxing the change between the current grid and the next iteration. A factor greater than 1.0 indicates over-relaxation, and a factor less than 1.0 indicates under-relaxation.
ELLIPTIC SHOW - Lists current elliptic parameters
ELLIPTIC SHOW [PARAMETERS] |
This command lists the current set of elliptic parameters.
ELLIPTIC SOLVER - Select elliptic solver
ELLIPTIC SOLVER {POINT | X LINE | Y LINE | Z LINE | ADI LINE} {SOR | MULTIGRID} |
This command selects the numerical scheme to be used by the elliptic grid generator.
ELLIPTIC UPDATE INTERVAL - Set elliptic update interval
ELLIPTIC UPDATE INTERVAL interval |
This command sets the interval between updates of the elliptic forcing functions, and only applies to the GRAPE forcing function.
GRID - Generate or alter grid for a zone
GRID [range] [USING] scheme [method {INDEX | ARC LENGTH | SEMI ARC LENGTH}] |
The GRID command is used to generate or alter the computational grid in a particular zone. The parameter range has the same syntax as the 3d-range parameter in the SUBREGION command. The grid may be generated using algebraic interpolation or a 3D elliptic equation solver.
For the elliptic solver, the parameter scheme must be ELLIPTIC [SOLVER]. The solver will be run for `n' iterations.
The choices for method, which set the method to be used in interpolating the forcing functions into the interior, are:
INDEX | Perform index interpolation, producing a highly smoothed grid. Ignore boundary grid distributions. | ||
---|---|---|---|
ARC LENGTH | Use all appropriate boundary grid distributions to determine the interior grid distribution. | ||
SEMI ARC LENGTH | Use boundary grid distributions and index interpolation to determine the interior grid distribution. |
ADAPTIVE BOUNDARY - Enable/disable adaptive boundary
ADAPTIVE BOUNDARY {I1|IMAX|J1|JMAX|K1|KMAX} |
This command enables or disables boundary grid adaption for the specified boundary.
ADAPTIVE FORCING - Select adaptive grid forcing function
ADAPTIVE FORCING [FUNCTION] {DENSITY | MACH | TOTAL PRESSURE | STATIC PRESSURE | TOTAL TEMPERATURE | STATIC TEMPERATURE} |
This command selects the flowfield variable to be used in grid adaption.
ADAPTIVE ITERATION - Set max number of iterations
ADAPTIVE ITERATION [LIMIT] iteration_limit |
This command sets the maximum number of iterations to be used when adapting the grid. This limit may be overwritten with the GRID command.
ADAPTIVE WEIGHTS - Set weighting factors
ADAPTIVE WEIGHTS wt0 wt1 wt2 |
This command sets weighting factors for the adaptive forcing function and its first and second derivatives, respectively.
FLOWFILE - Specify flowfield file
FLOWFILE filename [CFL|CGF|PDA|FDA|FAN] |
This command opens the specified flowfield file for use with adaptive grid commands.
GRID [range] [USING] scheme [method {INDEX | ARC LENGTH | SEMI ARC LENGTH}] |
This command adapts the grid. The parameter range has the same syntax as the 3d-range parameter in the SUBREGION command. The parameter scheme must be one of the following:
LINEAR ADAPTION [IN] {I|J|K} | |||
---|---|---|---|
Adapts the grid along existing grid lines in the i, j, or k direction. | |||
2D ADAPTION [ON] {I|J|K} [PLANES] | |||
Adapts the grid on existing grid planes with i, j, or k constant. | |||
3D ADAPTION | Performs a full 3-D adaption. |
The choices for method are:
INDEX | |||
---|---|---|---|
ARC LENGTH | |||
SEMI ARC LENGTH |
Last updated 20 Dec 2012