Version: 5.1.6

INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS > Class Template Reference

#include <SplitterTetra.hxx>

Inheritance diagram for INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >:
Inheritance graph

Public Member Functions

 SplitterTetra2 (const MyMeshTypeT &targetMesh, const MyMeshTypeS &srcMesh, SplittingPolicy policy)
 ~SplitterTetra2 ()
void releaseArrays ()
void splitTargetCell (typename MyMeshTypeT::MyConnType targetCell, typename MyMeshTypeT::MyConnType nbOfNodesT, typename std::vector< SplitterTetra< MyMeshTypeS > * > &tetra)
void fiveSplit (const int *const subZone, typename std::vector< SplitterTetra< MyMeshTypeS > * > &tetra)
void sixSplit (const int *const subZone, typename std::vector< SplitterTetra< MyMeshTypeS > * > &tetra)
void calculateGeneral24Tetra (typename std::vector< SplitterTetra< MyMeshTypeS > * > &tetra)
void calculateGeneral48Tetra (typename std::vector< SplitterTetra< MyMeshTypeS > * > &tetra)
void splitPyram5 (typename std::vector< SplitterTetra< MyMeshTypeS > * > &tetra)
void splitConvex (typename MyMeshTypeT::MyConnType targetCell, typename std::vector< SplitterTetra< MyMeshTypeS > * > &tetra)
void calculateSubNodes (const MyMeshTypeT &targetMesh, typename MyMeshTypeT::MyConnType targetCell)
const doublegetCoordsOfSubNode (typename MyMeshTypeT::MyConnType node)
 Accessor to the coordinates of a given (sub)-node.
const doublegetCoordsOfSubNode2 (typename MyMeshTypeT::MyConnType node, typename MyMeshTypeT::MyConnType &nodeId)
 Accessor to the coordinates of a given (sub)-node.
void calcBarycenter (int n, double *barycenter, const typename MyMeshTypeT::MyConnType *pts)
 Calculates the barycenter of n (sub) - nodes.

Private Attributes

const MyMeshTypeT & _target_mesh
const MyMeshTypeS & _src_mesh
SplittingPolicy _splitting_pol
std::vector< const double * > _nodes
 vector of pointers to double[3] containing the coordinates of the (sub) - nodes of split target cell
std::vector< typename
MyMeshTypeT::MyConnType > 
_node_ids

template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
class INTERP_KERNEL::SplitterTetra2< MyMeshTypeT, MyMeshTypeS >


Constructor & Destructor Documentation

template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >.SplitterTetra2 ( const MyMeshTypeT &  targetMesh,
const MyMeshTypeS &  srcMesh,
SplittingPolicy  policy 
)
template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >.~SplitterTetra2 (  ) 

Member Function Documentation

template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
void INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >.releaseArrays (  ) 
template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
void INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >.splitTargetCell ( typename MyMeshTypeT::MyConnType  targetCell,
typename MyMeshTypeT::MyConnType  nbOfNodesT,
typename std::vector< SplitterTetra< MyMeshTypeS > * > &  tetra 
)
template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
void INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >.fiveSplit ( const int *const   subZone,
typename std::vector< SplitterTetra< MyMeshTypeS > * > &  tetra 
)
template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
void INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >.sixSplit ( const int *const   subZone,
typename std::vector< SplitterTetra< MyMeshTypeS > * > &  tetra 
)
template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
void INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >.calculateGeneral24Tetra ( typename std::vector< SplitterTetra< MyMeshTypeS > * > &  tetra  ) 
template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
void INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >.calculateGeneral48Tetra ( typename std::vector< SplitterTetra< MyMeshTypeS > * > &  tetra  ) 
template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
void INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >.splitPyram5 ( typename std::vector< SplitterTetra< MyMeshTypeS > * > &  tetra  ) 
template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
void INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >.splitConvex ( typename MyMeshTypeT::MyConnType  targetCell,
typename std::vector< SplitterTetra< MyMeshTypeS > * > &  tetra 
)
template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
void INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >.calculateSubNodes ( const MyMeshTypeT &  targetMesh,
typename MyMeshTypeT::MyConnType  targetCell 
)
template<class MyMeshTypeT, class MyMeshTypeS >
const double * INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >::getCoordsOfSubNode ( typename MyMeshTypeT::MyConnType  node  ) 

Accessor to the coordinates of a given (sub)-node.

Parameters:
node local number of the (sub)-node 0,..,7 are the elements nodes, sub-nodes are numbered from 8,..
Returns:
pointer to double[3] containing the coordinates of the nodes

References INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >._nodes.

template<class MyMeshTypeT, class MyMeshTypeS >
const double * INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >::getCoordsOfSubNode2 ( typename MyMeshTypeT::MyConnType  node,
typename MyMeshTypeT::MyConnType &  nodeId 
)

Accessor to the coordinates of a given (sub)-node.

Parameters:
node local number of the (sub)-node 0,..,7 are the elements nodes, sub-nodes are numbered from 8,..
nodeId is an output that is node id in target whole mesh in C mode.
Returns:
pointer to double[3] containing the coordinates of the nodes

References INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >._node_ids, INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >._nodes, and testMEDMEM.ret.

template<class MyMeshTypeT, class MyMeshTypeS >
void INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >::calcBarycenter ( int  n,
double barycenter,
const typename MyMeshTypeT::MyConnType *  pts 
)

Calculates the barycenter of n (sub) - nodes.

Parameters:
n number of nodes for which to calculate barycenter
barycenter pointer to double[3] array in which to store the result
pts pointer to int[n] array containing the (sub)-nodes for which to calculate the barycenter

References INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >.getCoordsOfSubNode().


Field Documentation

template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
const MyMeshTypeT& INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >._target_mesh [private]
template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
const MyMeshTypeS& INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >._src_mesh [private]
template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
SplittingPolicy INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >._splitting_pol [private]
template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
std::vector<const double*> INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >._nodes [private]

vector of pointers to double[3] containing the coordinates of the (sub) - nodes of split target cell

template<class MyMeshTypeT, class MyMeshTypeS = MyMeshTypeT>
std::vector<typename MyMeshTypeT::MyConnType> INTERP_KERNEL.SplitterTetra2< MyMeshTypeT, MyMeshTypeS >._node_ids [private]