The Initialize_Uniform_Multi_Mesh procedure allocates and initializes a uniform Multi_Mesh object. A uniform mesh is a structured, orthogonal, cartesian15.2 mesh where every cell is exactly the same size and shape. There is a single x, y and z for the entire mesh, which has a block-shaped domain (i.e. a right rectangular prism in 3D). In parallel, each PE also contains a block-shaped domain, but each PE may have a different-sized block. An optimum partitioning of the mesh, given these constraints, is generated by the Gen_StructureMesh_Connectivity procedure.
In addition to the mesh data set by the Initialize_Base_Multi_Mesh procedure, this procedure also sets the following uniform-specific mesh data:
|call Initialize (Mesh, NDimensions, Lengths, NCells_X_total, NCells_Y_total, NCells_Z_total, Mesh_Name, status)|
|Mesh||The Multi_Mesh object to be initialized.|
|NDimensions||The number of dimensions for the mesh.|
|Lengths||A vector of the physical lengths for the mesh.|
|NCells_X_total||Total number of cells in the X-direction, defined on every PE.|
|NCells_Y_total||Total number of cells in the Y-direction, defined on every PE. [Optional]|
|NCells_Z_total||Total number of cells in the Z-direction, defined on every PE. [Optional]|
|Mesh_Name||The name for this mesh. [Optional]|
|Mesh||The Multi_Mesh object has been allocated and initialized.|
|status||If present, the status variable is set to either 'Memory Error' or 'Success' depending on program execution. If not present, the procedure aborts if unsuccessful when the DEBUG_LEVEL is set high enough.|
The Initialize_Uniform_Multi_Mesh code listing contains additional documentation.
Michael L. Hall