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