Synopsis
Set subobject values for hexahedral Cell_Sets.
Cell_Set Hex { /* hex cell definition */
cell_nnodes = 8;
cell_ndim = 3;
cell_order = 1;
poly_flag = 0;
int+virtual cell_type = 7;
string+virtual cell_name = "Hex";
int+virtual cell_nfaces = 6;
int+virtual cell_face_nnodes[6]={4, 4, 4, 4, 4, 4};
int+virtual cell_face_connect[24]= {0, 1, 2, 3,
1, 5, 6, 2,
3, 2, 6, 7,
0, 3, 7, 4,
0, 4, 5, 1,
4, 7, 6, 5};
int+virtual cell_face_corner_nnodes[6]={4, 4, 4, 4, 4, 4};
float+virtual node_uvw[8][3] = {{-1.0,1.0,1.0}, {-1.0,-1.0,1.0},
{1.0,-1.0,1.0},{1.0,1.0,1.0},
{-1.0,1.0,-1.0},{-1.0,-1.0,-1.0},
{1.0,-1.0,-1.0},{1.0,1.0,-1.0}};
};
Cell_Set Hex2 { /* hex2 cell definition */
cell_corner_nnodes=;
cell_nnodes = 20;
cell_ndim = 3;
cell_order = 2;
poly_flag = 0;
int+virtual cell_type = 17;
string+virtual cell_name = "Hex2";
int+virtual cell_nfaces = 6;
int+virtual cell_face_nnodes[6]={8, 8, 8, 8, 8, 8};
int+virtual cell_face_connect[48]= {0, 1, 2, 3, 8,9,10,11,
1, 5, 6, 2, 17,13,18,9,
3, 2, 6, 7, 10,18,14,19,
0, 3, 7, 4, 11,19,15,16,
0, 4, 5, 1, 16,12,17,8,
4, 7, 6, 5, 15,14,13,12};
int+virtual cell_face_corner_nnodes[6]={4, 4, 4, 4, 4, 4};
float+virtual node_uvw[20][3] = {{-1.0,1.0,1.0}, {-1.0,-1.0,1.0},
{1.0,-1.0,1.0},{1.0,1.0,1.0},
{-1.0,1.0,-1.0},{-1.0,-1.0,-1.0},{1.0,-1.0,-1.0},{1.0,1.0,-1.0},
{-1.0,0.0,1.0}, {0.0,-1.0,1.0}, {1.0,0.0,1.0}, {0.0,1.0,1.0},
{-1.0,0.0,-1.0},{0.0,-1.0,-1.0},{1.0,0.0,-1.0},{0.0,1.0,-1.0},
{-1.0,1.0,0.0}, {-1.0,-1.0,0.0},{1.0,-1.0,0.0},{1.0,1.0,0.0}};
};
Description
These cell types set values that define the members of this Cells Cell_Set as hexahedral cells, either with or without mid-edge nodes (cell_order = 2).
Modules that manipulate unstructured grids need the information defined here to correctly process this cell type.
Subobjects
cell_nnodes = 8
cell_nnodes = 20
How many nodes make up the cell. Cells with mid-edge nodes have more nodes.
cell_corner_nnodes=;
In cells with mid-edge nodes, a value that specifies how many of the nodes in the cell are corner nodes.
cell_ndim = 3
How many spatial dimensions make up the cell.
cell_order = 1 or 2
cell_order = 1 means the cell has corner nodes only. cell_order = 2 means the cell has mid-edge nodes.
There is no FLD routine to retrieve this value.
poly_flag = 0
A flag that, when not 0, signals the renderer that this is an unstructured mesh representing a geometry (Polyline, Polytri). The renderer can use faster algorithms to render the object.
There is no FLD routine to retrieve this value.
cell_type = 7 or 17
An integer that uniquely identifies the type of cells in this cell_set. This is one means of discovering this; cell_name is another.
cell_name = "Hex" or "Hex2"
A string that uniquely identifies the type of cells in this cell_set.
node_uvw[8][3] or [20][3]=
A float array that defines the uvws for the nodes. The uvws are necessary when you are interpolating within a cell by calculating derivatives. The coordinates are parametric.
cell_nfaces = 6;
An integer that defines how many faces are in the cell.
cell_face_nnodes[cell_nfaces]
An integer array that specifies how many nodes there are per cell face.
cell_face_connect[24] or [48]
An integer array that, for each face of the cell, specifies which order the nodes that make up the face should be interpreted in. It is necessary to know this, for example, when calculating normals.
cell_face_corner_nnodes[6]
An integer array that defines, for each face of the cell, how many corner nodes it has.
File
v/fld.v
See also
Not applicable.