CatCellSets
Synopsis
Catenates all the Cell_Sets of the same Cell type within a mesh into a single Cell_Set.
module CatCellSets <NEx=286.,NEy=154.,src_file="cat_cs.cxx">
{
cxxmethod+notify_inst+req update;
Mesh+read+notify+req &mesh_in <NEportLevels={2,0}>;
Mesh+write mesh_out <NEportLevels={0,2}>
{
nspace => <-.mesh_in.nspace;
nnodes => <-.mesh_in.nnodes;
coordinates
{
values => <-.<-.mesh_in.coordinates.values;
};
};
};
Description
Though the Express documentation states that in a mesh there should be only one Cell_Set
of each Cell type (e.g. Tri Prism2) this is not enforced and it is possible for such
meshes to be created especially by 3D object readers. It far more eficient to render a
single Cell_Set than several of the same type. This module parses the mesh_in and then
creates a mesh_out with all the Cell_Sets of a single Cell type catenated into one.
Inputs
&mesh_in
Reference to a Field with a Mesh containing Cell_Sets.
Outputs
mesh_out
A Mesh with the catenated Cell_Sets, the Coordinates are reference from the input mesh_in.
Utility Modules
The Add_Data_to_Mesh recombines the mesh_out from cat_cell_sets with any original node data in the User Macro cat_cell_sets. Note that Add_Data_to_Mesh is pure V code and does not require compilation.
Files
iac_proj/cat_cs/ccs_mods.v contains the CatCellSets and Add_Data_to_Mesh modules.
Other Notes
The module should run in the same process as the Mesh which it takes as input. By default the CatCellSets runs in the user process. Use the following command in the VCP to compile this project:
$compile IAC_PROJ.CatCellSets.CatCSMods
Author
James Perrin
Manchester Visualiation Centre
Manchester Computing
The University
Oxford Road
Manchester
UK
M13 9PL
j.perrin@mcc.ac.uk
See Also
Add_Data_to_Mesh
|