A cartesian mesh is a mesh where all elements are bricks with equal size, and edges parallel to the XYZ cartesian axes.
The grid nodes can be referenced with integer index i,j,k
This kind of grids are useful for Finite Differences methods.
It's possible to set this kind of meshing to any geometric entity: volumes, surfaces, lines and points.
When assigning the 'cartesian kind' they are asked cell sizes in x, y, z directions for this entity. Left this values to 0 to mean that its size will be set later by the general mesh size.
The voxel size for entities with cartesian size value=0 is set by the general mesh size (equal for X, Y and Z directions)
The preference "Grid spacing" could be Uniform or Variable. Inner variable Cartesian(GridUniform)
A uniform spacing mean that all grid thicks are equi-spaced.
For uniform grids, the location of the thicks is based on the bounding box of the whole model, and the general meshing size.
For non-uniform grids the location of each axis x,y,z tick is determined just when meshing, taken into account the general size, the cartesian sizes assigned to entities, and the bounding box of each entity, and also the value of the cartesian mesher preference variables "Size ratio" and "Minimum size" (inner variables Cartesian(SizeRatio) and Cartesian(MinSizeMainGrid) respectivelly)
On each axis, they are intended to be followed the next rules:
- To have as forced ticks all bounding box of each volume
- To force in the interval of the bounding box the size specified for the entity (if zero the general size is used)
- Not allow two ticks closer that the value of Cartesian(MinSizeMainGrid)
- Not allow a size ratio between neighbor interval ticks bigger than Cartesian(SizeRatio) value
There are other preference variables that could be set to handle the
"Shape" : value 1 to set that the cartesian mesh is obtained fastly from the render mesh instead of require an intermediate triangle mesh created from the geometry. Inner variable Cartesian(GridUniform)
Some other variables are not shown in the preferences window:
Cartesian(CondFaceElem) : to set where to transfer the conditions defined over face elements. value 0 to transfer to body elements or 1 to tranfer to face elements
Cartesian(CreateHexahedra): if it is true then points, lines and surfaces will generate volumic meshes of hexahedra (the voxels cutted by these entities).
This GiD level variables can be asked/set with the Tcl command GiD_Set, similar to the Tcl standard 'set' command.
GiD_Set Cartesian(GridUniform) :return a boolean that mean whether the cartesian mesh is uniform or variable.
After generate this kind of mesh, there are available some read only variables, to know some information:
The Tcl special command GiD_Cartesian can be used to get the value of this variables or set them, e.g.
GiD_Cartesian get ngridpoints : return the number of points of the grid on each direction x, y, z
GiD_Cartesian get boxsize : dimensions of the box of the cartesian mesh bounding the model
GiD_Cartesian get corner : location of the left-down corner of the cartesian box.