------- Command; group 6 -------------- -
GSET comprises a set of commands that can be used for BFC grid-specification as an alternative to (or combined with) the older commands: DOMAIN, SETLIN, SETPT and MAGIC.
The general format is: GSET(KEY_WORD[,ARG1,ARG2,ARG3,...])
Options are:
(see GROUP 6)
GSET. This command facilitates grid generation. See library cases B510 to B523, B527, B529 and B536; and also the tutorial.
The dimensions or capabilities mentioned below are the current settings in SATELLITE. It is possible to increase dimensions by changing parameters in the open-source file SATLIT.FTN. The SATELLITE executable file will need to be regenerated after the modification.
Format: GSET(P,pnam,xp,yp,zp)
pnam -- Name of the POINT, a string of up to four
characters, the first of which must be
alpha-numeric.
xp -- Real value or expression for the
X coordinate of the named point.
yp -- Real value or expression for the
Y coordinate of the named point.
zp -- Real value or expression for the
Z coordinate of the named point.
This command defines a point named 'pnam' in three-dimensional space. The coordinates are in metres. If the named point has already been defined, this command will move the point.
The so-defined point, it should be remarked, does not belong to a grid until:
The GSET commands now to be described show how these steps may be taken.
Format: GSET(V,vnam,pnm1[-pnm3],pnm5,pnm6,.....,pnm2[-pnm4])
vnam -- Name of the CURVE, a string of up to four
characters, the first of which must be
alpha-numeric.
pnm1 -- Name of the POINT where the CURVE starts.
pnm2 -- Name of the POINT where the CURVE ends.
pnm3 -- Name of a point used to set boundary condition
at the starting point. (optional)
pnm4 -- Name of a point used to set boundary condition
at the ending point. (optional)
pnm5,pnm6,...
-- Names of internal points along the curve.
This command defines a curve. A curve must start from one named point and end at another. The curve must be given a name, which will be used when defining a LINE.
To use the CURVE for defining a LINE, see GSET(L,...).
This command defines a line as one of three types:
The line is named 'lnam' by this command. A line must start at one named point and end at another. If the named line has already been defined, this command will modify the line.
Format: GSET(F,fnam,p1,m1,p2,m2,p3,m3,p4,m4)
If there are two or more intermediate points, they must be separated by a dot '.' in the list, ie P5.P6 if P5 and P6 are the names of intermediate points. When there is no intermediate point, use a hyphen, -, instead.
This command defines a FRAME which will be used for holding a grid mesh. Up to 20 frames can be defined. A frame must have four corners, each marked by a named POINT. The corner points must be linked by existing lines, or by a number of contiguous lines passing through intermediate named points. The total number of subdivisions on opposing edges of the frame must be equal.
In graphics mode (eg using the VIEW command), the frame name and extent (in terms of number of cells) is displayed to assist the user in determining the overall grid dimensions, and the grid plane limits when matching frames to grid planes.
Format: GSET(M,fnam,direc,i1,j1,k1,style)
fnam -- Name of the frame to which a grid mesh will be
matched.
direc -- A string of four characters which shows the
directions of grid lines to be matched to the
frame edges.
The first two characters can be one of: +I, -I,
+J, -J, +K, -K which sets the direction for the
frame edge from corner point 1 to corner point 2.
The last two characters can also be one of the
above six options and set the direction for the
frame edge from corner point 2 to corner point 3.
i1,j1,k1 --
The index for the grid corner which is to be
matched to the first corner POINT of the named
frame.
style -- The interpolation method for matching the grid,
with the following options, for example:
TRANS trans-finite interpolation
LAP5 Laplace solver with 5 iterations
LAP14.FFTFTF
Laplace solver with 14 iterations, FFTFTF is the string to control the sliding boundary
conditions. The order is: SLIDW, SLIDE, SLIDS, SLIDN, SLIDL, SLIDH. So the string above
sets the SOUTH and LOW boundaries as sliding ones.
This command matches a section of grid mesh to a frame. This section of the grid must be the same size as the frame in terms of grid cell numbers. The origin of the mesh is defined by (i1,j1,k1), and its orientation is defined by the 'direc' string. In the 'direc' string, the two directions can neither be the same nor be opposites, ie +I+I and -K+K are not valid, but +I+J, -K+I or +J-I are valid.
See entries MAGIC, SLIDW, SLIDE, SLIDS, SLIDN, SLIDL, SLIDH for more information on interpolation methods.
A grid mesh becomes a 'fixed domain' when it is matched to a frame. When a larger grid mesh which covers the 'fixed domain' is to be matched to another frame using 'Laplace solver', the 'fixed domain' will not be changed. This feature makes it easier to build a grid on a geometry which has internal objects.
Format: GSET(C,pln2,F,pln1,i1,i2,i3,i4,+,dx,dy,dz) shift grid plane by a distance
GSET(C,pln2,F,pln1,i1,i2,i3,i4,+,dx,dy,dz,INC,pwr) shift grid plane by a distance and
include the internal planes
GSET(C,pln2,F,pln1,i1,i2,i3,i4,RX,ang,y0,z0)
GSET(C,pln2,F,pln1,i1,i2,i3,i4,RX,ang,y0,z0,INC,pwr) rotate grid plane about axis in X
direction
GSET(C,pln2,F,pln1,i1,i2,i3,i4,RY,ang,x0,z0)
GSET(C,pln2,F,pln1,i1,i2,i3,i4,RY,ang,x0,z0,INC,pwr) rotate grid plane about axis in Y
direction
GSET(C,pln2,F,pln1,i1,i2,i3,i4,RZ,ang,x0,y0)
GSET(C,pln2,F,pln1,i1,i2,i3,i4,RZ,ang,x0,y0,INC,pwr) rotate grid plane about axis in Z
direction
pln1 -- The original grid plane, an expression which combines the grid plane direction and
number. For example, I1 means the first I plane , J15 means the 15th J plane, K21 means
the 21st plane in K direction.
pln2 -- The final grid plane and number, in the same form as pln1.
i1,i2,i3,i4 -- The mesh limits on the grid plane. According to the grid plane direction,
they are:
grid plane direction | i1 | i2 | i3 | i4 |
I | MIN_J_CELL | MAX_J_CELL | MIN_K_CELL | MAX_K_CELL |
J | MIN_I_CELL | MAX_I_CELL | MIN_K_CELL | MAX_K_CELL |
K | MIN_I_CELL | MAX_I_CELL | MIN_J_CELL | MAX_J_CELL |
dx,dy,dz -- The displacement of the final mesh from the original one in the three
coordinate directions.
pwr -- When internal grid planes are included, this is the distribution power for the
internal grid planes, in the same format as in GSET(L,...). When shifting grid planes, pwr
sets the distrbution in terms of the distance; when rotating, it sets the distribution of
angles.
x0 -- the X position of the rotation axis.
y0 -- the Y position of the rotation axis.
z0 -- the Z position of the rotation axis.
This command copies grid plane two from grid plane one by means of shifting or rotating. The dimensions of the original mesh and the final one, in terms of I, J, K, must be the same.
Format: GSET(T,pln2,F,pln1,i1,i2,i3,i4,pwr)
pln1 -- The first grid plane and number
pln2 -- The last grid plane and number
i1,i2,i3,i4 -- The grid mesh limits, as in the table in GSET(C,...).
pwr -- The distribution power for the transition, definition as in GSET(L,...).
This command is used to make a smooth transition from a grid mesh of one shape to another of a different shape. A linear interpolation is used. The two grid meshes must have the same dimensions in terms of I, J and K.
Format: GSET(B,i1,i2,j1,j2,k1,k2,style)
i1 -- The first I cell in the block
i2 -- The last I cell in the block
j1 -- The first J cell in the block
j2 -- The last J cell in the block
k1 -- The first K cell in the block
k2 -- The last K cell in the block
style -- The interpolation method string
This command performs a three-dimensional interpolation for the internal grid coordinates of a block. The interpolation method string is the same as in GSET(M,...). Note that the 3D Laplace solver is not truly 3D: it is a 2D slab-by-slab solver.
Obsolete Option: deletes all GSET commands to free up memory.
wbs