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

(Introduction) (File Types) (Command Line Interface Mode) (Basic Commands) (Grid Generation and Modification) (Grid Listing and Quality) (Boundary Conditions) (Boundary Condition Checking and Listing) (Graphical User Interface Basics) (Graphical User Interface Reference)

Boundary Conditions

Boundary condition specification/zone coupling is the second main function of GMAN. This involves specification of boundary conditions for all boundary points of each zone of a given computational grid.

GMAN allows the user to display any boundary, identify and specify or alter the boundary conditions on it, and perform zone coupling. Zone coupling involves locating points on a particular boundary which are "flow-through" points to another zone and setting interpolation factors relative to the other boundary. GMAN makes use of a marching scheme and a "line of sight" check when coupling two boundaries, using data from surrounding regions to locate each point on the surface.

In the boundary condition mode of GMAN, picking a grid point on a boundary surface causes the code to display the computational index and boundary condition for that point. An IDENTIFY PNTS option allows the placing of symbols on the grid at the locations of certain boundary condition types. Boundary conditions can be changed on all or part of a boundary surface, allowing multiple conditions for a single boundary. After selection of an area to be changed, the user may select any one of 12 different boundary conditions to be applied to the selected area. Bleed regions and reference areas for diffuser and inlet grids can also be defined in GMAN.

Non-Overlapping Boundary Conditions

BOUNDARY - Select a boundary

BOUNDARY [I1|IMAX|J1|JMAX|K1|KMAX]

The BOUNDARY command specifies to which boundary subsequent boundary modification commands will apply. Any boundary condition changes that have not yet been written are applied before selecting the new boundary. If a boundary is not specified then information about the currently selected boundary will be displayed.


Set a Boundary Condition

[range [IS|ARE]] boundary_condition

This command sets a boundary condition on the currently selected boundary. The optional range allows you to set a boundary condition over a specified region of the boundary. If range is not specified, the boundary condition is set at all the points on the boundary.

The range for an I1 or IMAX boundary is specified as

   Jm1 Km2 Jn1 Kn2 | ALL
where m1 and m2 are the minimum values, and n1 and n2 are the maximum values, of the j and k indices defining the desired region. The parameters may be specified in any order. Jn1 and/or Kn2 may also be specified as MAX, meaning the maximum value in that direction. If ALL is specified, the range is defined as the entire boundary (i.e., the same as not specifying range).

Similarly, for a J1 or JMAX boundary, range is specified as

   Im1 Km2 In1 Kn2 | ALL
and for a K1 or KMAX boundary, range is specified as
   Im1 Jm2 In1 Jn2 | ALL

As an example, to set an arbitrary inflow boundary condition at the i = 1 boundary, over the range from j = 1 to 20 and k = 5 to 30, you could write

   BOUNDARY I1
   J1 K5 J20 K30 ARBITRARY INFLOW 

The boundary_condition may be any one of the following:

    UNDEFINED   Boundary conditions are generally initialized as undefined. They may occasionally need to be reset to undefined as part of the coupling process.
REFLECTION   Used for symmetry plane. Otherwise similar to inviscid wall.
FREESTREAM   Used for freestream outer boundaries.
VISCOUS [WALL]   Used for viscous (no-slip) walls.
ARBITRARY [INFLOW]   Used for flow entering the computational region. User specified by zone.
OUTFLOW   Used for specification of flow leaving the computational domain. User specified exit mass flow or constant static pressure.
INVISCID [WALL]   Used for inviscid (slip) wall.
SELF [CLOSING]   Used for periodic boundaries.
SINGULAR AXIS   Used for a singular axis on the x, y, or z = 0 plane.
MIXED AXIS WALL   Used for a zone face containing both singular axis and wall boundary conditions.
COUPLED ...   Used to specify that the currently selected boundary (or region of the boundary) is coupled to another boundary in a different zone. See below for the complete syntax, and for additional information about boundary coupling.
BLEED [REGION] n   Used for specifying a "bleed" region on the currently selected boundary. The input value n is a number that will be used with various Wind-US keywords in the input data (.dat) file to identify the region. Note that this applies not only to the BLEED keyword, but also to the BLOW and MOVING WALL keywords, which operate on regions identified as "bleed" regions in the common grid (.cgd) file.
PINWHEEL [AXIS]   Used for a singular axis that does not lie on the x, y, or z = 0 plane.
FROZEN   Used to freeze existing flow conditions on a boundary for use in subsequent runs.

For a coupled boundary, the complete syntax for boundary_condition is:

   COUPLED [TO] ZONE izone BOUNDARY [I1|IMAX|J1|JMAX|K1|KMAX]
where izone is the number of the zone containing the coupled-to boundary. GMAN will only couple points on the currently selected boundary (i.e., the one specified using the BOUNDARY command) whose boundary condition is UNDEFINED. Thus, if a different boundary condition has been set in the coupled region, it must be changed to UNDEFINED before using the above command. GMAN will also only couple points that fall within the coupling tolerances. Other points will be left as UNDEFINED.

Note that the COUPLED boundary condition is not automatically reciprocal. You must also specify the inverse coupling. I.e., if the j = 1 boundary in zone 1 is coupled to the j = jmax boundary in zone 2, the coupling would be specified as follows:

   ZONE 1
   BOUNDARY J1
   COUPLED TO ZONE 2 BOUNDARY JMAX

   ZONE 2
   BOUNDARY JMAX
   COUPLED TO ZONE 1 BOUNDARY J1

Instead of using the COUPLED command to manually couple all the coupled boundaries in the problem, the separate command

   AUTO COUPLE
may be used to search the entire grid for points whose boundary condition is UNDEFINED, and automatically couple them to the appropriate boundary. Again, GMAN will only couple points that satisfy the coupling tolerances. The results should be checked to ensure that the boundaries were coupled correctly.

For periodically coupled boundaries, the CONNECTED command may be used to specify a displacement of the boundary, which will be applied by GMAN before the actual coupling is done. The syntax is:

   CONNECTED [TO] ZONE izone BOUNDARY [I1|IMAX|J1|JMAX|K1|KMAX]
      {ROTATION [CENTER] xc yc zc [ANGLES] a1 a2 a3 | TRANSLATION [DELTAS] dx dy dz}
where izone is the number of the zone containing the boundary to which the currently selected boundary is periodically coupled. For boundaries connected via rotation, the center of rotation is specified by xc, yc, and zc, and the rotation vector about the x, y, and z directions is specified by the angles a1, a2, and a3. For boundaries connected via translation, the displacement is specified by dx, dy, and dz. The coordinate and displacement values are in the same units as the grid, and the angles are in degrees.

The capability supplied by the CONNECTED command is only applicable to entire boundaries. I.e., part of a boundary may not have "connect" coupling while the rest of the boundary has some other boundary condition (including "regular" coupling).

After all the boundary condition setting and coupling has been done, the commands described in the Boundary Condition Checking and Listing section should be used to verify that the intended coupling was successful, and that the boundary conditions have been set correctly.


Change a Boundary Condition

boundary_condition_1 [POINTS] [IN range] [IS|ARE] boundary_condition_2

This command may be used to change a boundary condition on the currently selected boundary. The boundary condition at points having boundary_condition_1 is changed to boundary_condition_2. The optional "IN range" (note that the word IN is required when a range is specified) allows you to apply the change only over a specified region of the boundary. If range is not specified, the change is applied over the entire boundary. The syntax for range is the same as described above, under Set a Boundary Condition.

Any of the boundary conditions listed above under Set a Boundary Condition may be specified for boundary_condition_1 and boundary_condition_2, except for COUPLED. This command does not apply to coupled boundaries. To change an existing boundary condition to COUPLED, you must first change it to UNDEFINED, then use the syntax described under Set a Boundary Condition to set it to COUPLED.


CPMODE - Set coupling mode

CPMODE [BILINEAR FIXED|BILINEAR BEST|POINT MATCH]

    BILINEAR FIXED   Couples only undefined points using bilinear interpolation mode.
BILINEAR BEST   Couples undefined points or previously-coupled points if the new coupling is closer than the original coupling. Bilinear interpolation mode is used for the coupling.
POINT MATCH   Assumes that the faces are point matched and will report the maximum deviation from an exact point match interface.


DEBUG - Print coupling diagnostics

DEBUG {ON|OFF}

The DEBUG command enables, disables, or displays the status of diagnostic printing during zone coupling operations. If neither ON nor OFF is specified, the current status of the debug flag is displayed. This command is helpful when zone coupling problems are encountered. Warning: this command can generate a lot of output.


SHIFT - Toggle boundary layer coupling mode

SHIFT {ON|OFF} {ALL|I1|IMAX|J1|JMAX|K1|KMAX}

This command turns boundary layer coupling mode on or off. Boundary layer coupling mode shifts the coupling to account for variations between the conceptual location to which a point near a wall should couple, and the physical relation of the point to the line segment or panel representing the adjacent wall.


TOLERANCE - Set coupling tolerances

The TOLERANCE commands establish the tolerances to be used when performing zone coupling operations. If the tolerance parameter is not specificed, the current value for the tolerance is displayed. The specified tolerance applies until the next TOLERANCE command that specifies a new value.

There are four coupling tolerances that may be set, as follows:

ANGULAR [TOLERANCE] [tolerance|DEFAULT]

Sets the tolerance for the angle between the normals of the faces which are being coupled.

CONTAINMENT [TOLERANCE] [tolerance|DEFAULT]

Sets the tolerance for coupling outside the strict bilinear interpolation of the cell face.

NORMAL [TOLERANCE] [tolerance|DEFAULT]

Sets the tolerance for coupling in the normal direction.

MATCH [TOLERANCE] [tolerance|DEFAULT]

Sets the tolerance for point match coupling.


AREA - Area commands

There are three area commands, as follows:

DEFINE AREA n

Define a numbered area (associated with a bleed region).

CAPTURE AREA capture_area

The CAPTURE AREA command specifies a new capture area for the zone most recently specified by a ZONE command. The area must be in square inches. If capture_area is not specified then the current capture area is displayed.

AREA [IS] boundary_condition


ZDF - ZDF coupling file commands

There are two commands related to the ZDF coupling file, as follows:

ZDF [COUPLING] FILE filename

Set the name of the ZDF coupling file.

SAVE ZDF FILE filename

Save the ZDF coupling file.

Overlapping Boundary Conditions

All overlapping boundaries and holes are defined by a label.

The overlapping grid capabilities have been improved and expanded. The surface hole cutting routine has been improved by using a new method which intersects a constant coordinate line from the test point with the surface. The user may specify any combinations of directions (±x, ±y, ±z) to use in the test, with the majority result used to determine the outcome.

Generating Holes

CUTTER - Define surfaces

CUTTER {SURFACE NEW | [IN] ZONE zone_number ijkrange}

Defines one or more surfaces to form a closed region for cutting holes. The parameter ijkrange has the same syntax as the 3d-range parameter in the SUBREGION command.


CUTTER INDEX - Define index range

CUTTER INDEX {NEW|ijkrange}

Define an index range of the current grid to be converted to a hole. The parameter ijkrange has the same syntax as the 3d-range parameter in the SUBREGION command.


CUTTER PUNCH - Define predetermined shape

CUTTER PUNCH {2D|3D} {RECTANGLE|CIRCLE|ELLIPSE} coord_data

Define parameters for a predetermined shape to use for cutting holes. An XYZ minmax box and a sphere/circle punch are available.


SHOW CUTTER - Show cutter definition

SHOW CUTTER [DEFINITION]

This command displays the current selections for either the hole or fringe generation mode. For hole generation the type of cutter and the cutter definition is displayed. For fringe generation the type is displayed, and if the type is INDEX or OUTER then the current selections are displayed. The extrapolation mode and cell mode are also displayed.


GENERATE - Generate a hole

GENERATE [range] HOLE LABEL {label_number|CURRENT|NEXT}

The parameter range has the same syntax as the 3d-range parameter in the SUBREGION command.


ERASE HOLE LABEL - Erase a hole

ERASE HOLE LABEL {label_number|ALL}

Generating Fringe Boundaries

FRINGE-MODE - Set fringe type

FRINGE-MODE [SINGLE|DOUBLE]

Set the type of fringe to be generated.


FRINGE-MODE HOLE - Generate fringe

FRINGE-MODE HOLE

Used to generate a fringe that is the boundary of a hole.


FRINGE-MODE INDEX - Generate fringe

FRINGE-MODE INDEX [NEW|ijkrange]

Used to generate a fringe on an interior grid plane/subset. The parameter ijkrange has the same syntax as the 3d-range parameter in the SUBREGION command.


FRINGE-MODE OUTER - Generate fringe

FRINGE-MODE OUTER [BOUNDARY] [ON|OFF] [I1] [IMAX] [J1] [JMAX]
   [K1] [KMAX]

Used to generate a fringe on boundary faces of a zone.


SHOW FRINGE - Display selections for fringe generation

SHOW FRINGE [MODES]

A SHOW command has been added to display the current selections for either the hole or fringe generation mode. For hole generation the type of cutter and the cutter definition is displayed. For fringe generation the type is displayed, if the type is INDEX or OUTER then the current selections are displayed. The extrapolation mode and cell mode are also displayed.


GENERATE FRINGE - Create a fringe

GENERATE [range] FRINGE [BOUNDARY] LABEL {label_number|CURRENT|NEXT}

This command creates a fringe with the designated label. The parameter range has the same syntax as the 3d-range parameter in the SUBREGION command.


ERASE FRINGE - Erase a fringe

ERASE FRINGE LABEL {label_number|ALL}

This command erases the fringe with the designated label.

Selecting the Fringe Boundary

BOUNDARY OLAP - Select overlapping mode

BOUNDARY OLAP

This command selects the overlapping boundary condition mode.

Setting Fringe Boundary Conditions

SET FRINGE - Couple fringe to boundary face

SET [RANGE] FRINGE [BOUNDARY] [CONDITION] [FOR]
   LABEL {label_number|CURRENT|NEXT}
   [TYPE bnd_con_type] [TO] bnd_cond_type

A new face coupling mode has been added for fringe boundaries which are part of a boundary face (fringe boundaries are identified by having the same label). The new mode couples the fringe boundary using the regular boundary coupling routines - thus all regular modes and methods are available. To invoke the mode you specify the boundary face you wish to couple to, if no face is specified then overlapping coupling mode is used.

The various boundary condition types are described in the Set a Boundary Condition section.

Overlapping Modes

CELL - Location of coupling interpolation factors

CELL [VERTEX|CENTER]

The CELL command specifies whether the coupling interpolation factors are calculated at cell vertices or centers.


CUT TEST DIRECTIONS - Set hole test directions

CUT TEST DIRECTIONS [[[ON|OFF] {+-X +-Y +-Z|ALL}] ...]

This command sets the directions in which a point is tested to see if it lies inside a hole cutter.


EXTRAPOLATE - Allow/disallow extrapolation

EXTRAPOLATE [ON|OFF]

This command determines whether extrapolation outside a cell is permitted.


Last updated 29 Apr 2008