#include <MEDMEM_Connectivity.hxx>

This class deals with all types of connectivity.
It is a recursive class.
typedef INTERP_KERNEL::HashMap<std::vector<int>,int, myHashFn > MEDMEM.CONNECTIVITY.CONNECTIVITY_HashMap [private] |
| CONNECTIVITY::CONNECTIVITY | ( | MED_EN::medEntityMesh | Entity = MED_EN::MED_CELL | ) |
Default Constructor. /n Default for Entity is MED_CELL and type of Connectivity is MED_NODAL
References MEDMEM.CONNECTIVITY._count, BEGIN_OF_MED, END_OF_MED, and MESSAGE_MED.
| CONNECTIVITY::CONNECTIVITY | ( | int | numberOfTypes, |
| MED_EN::medEntityMesh | Entity = MED_EN::MED_CELL |
||
| ) |
Constructor. /n Default for Entity is MED_CELL
References MEDMEM.CONNECTIVITY._count, MEDMEM.CONNECTIVITY._geometricTypes, MEDMEM.CONNECTIVITY._type, MESSAGE_MED, and medMeshing_test.numberOfTypes.
| CONNECTIVITY::CONNECTIVITY | ( | const CONNECTIVITY & | m | ) |
Copy Constructor.
References MEDMEM.CONNECTIVITY._constituent, MEDMEM.CONNECTIVITY._count, MEDMEM.CONNECTIVITY._descending, MEDMEM.CONNECTIVITY._geometricTypes, MEDMEM.CONNECTIVITY._neighbourhood, MEDMEM.CONNECTIVITY._nodal, MEDMEM.CONNECTIVITY._numberOfTypes, MEDMEM.CONNECTIVITY._reverseDescendingConnectivity, MEDMEM.CONNECTIVITY._reverseNodalConnectivity, MEDMEM.CONNECTIVITY._type, and MEDMEM.CONNECTIVITY.CONNECTIVITY().
| CONNECTIVITY::~CONNECTIVITY | ( | ) | [virtual] |
Destructor./n desallocates existing pointers
References MEDMEM.CONNECTIVITY._constituent, MEDMEM.CONNECTIVITY._count, MEDMEM.CONNECTIVITY._descending, MEDMEM.CONNECTIVITY._geometricTypes, MEDMEM.CONNECTIVITY._nodal, MEDMEM.CONNECTIVITY._reverseDescendingConnectivity, MEDMEM.CONNECTIVITY._reverseNodalConnectivity, MEDMEM.CONNECTIVITY._type, and MESSAGE_MED.
| void CONNECTIVITY::calculateNodalConnectivity | ( | ) | const [private] |
private method :
does nothing if already exists, else evaluates _nodal from _descending
A DOCUMENTER (et a finir ???)
References MEDMEM.CONNECTIVITY._descending, and MEDMEM.CONNECTIVITY._nodal.
| void CONNECTIVITY::calculateReverseNodalConnectivity | ( | ) | const [private] |
private method :
does nothing if already exists, else evaluates from _nodal
If not yet done, calculate the nodal Connectivity and the reverse nodal Connectivity
References MEDMEM.CONNECTIVITY._count, MEDMEM.CONNECTIVITY._geometricTypes, MEDMEM.CONNECTIVITY._nodal, MEDMEM.CONNECTIVITY._numberOfNodes, MEDMEM.CONNECTIVITY._numberOfTypes, MEDMEM.CONNECTIVITY._reverseNodalConnectivity, BEGIN_OF_MED, MEDMEM.CONNECTIVITY.calculateNodalConnectivity(), testRenumbering.conn, END_OF_MED, MEDMEM.MEDSKYLINEARRAY.getIndex(), MEDMEM.MEDSKYLINEARRAY.getValue(), medClient_test.index, MED_EN.MED_POLYHEDRA, TestMedCorba2.n, nodes, SCRUTE_MED, and test_NonCoincidentDEC.size.
| void CONNECTIVITY::calculateDescendingConnectivity | ( | ) | const [private] |
private method :
does nothing if already exists, else evaluates _descending from _nodal
If not yet done, calculate the Descending Connectivity
References MEDMEM.CONNECTIVITY._constituent, MEDMEM.CONNECTIVITY._descending, MEDMEM.CONNECTIVITY._entity, MEDMEM.CONNECTIVITY._nodal, BEGIN_OF_MED, MEDMEM.CONNECTIVITY.calculateFullDescendingConnectivity(), MEDMEM.CONNECTIVITY.calculatePartialDescendingConnectivity(), LOCALIZED, and MESSAGE_MED.
| void CONNECTIVITY::calculatePartialDescendingConnectivity | ( | ) | const [private] |
This method calculates the descending connectivity without creating missing elements. It only maps the constituent elements that are described in the nodal representation. For instance, let us consider the following mesh with no MED_EDGE elements on the inner edges.
+----1----+----2----+ | | | 8 1 | 2 3 | | | +---------+---------+ | | | 7 3 | 4 4 | | | +----6----+----5----+
calculatePartialDescendingConnectivity() will return 1:1,8 2:2,3 3:6,7 4:4,5
whereas calculateDescendingConnectivity() will create new edges, renumbering existing ones and return 1:1,2,3,4 2:5,6,7,2 3:3,8,9,10 4:7,11,12,8
+----1----+----5----+ | | | 4 1 2 2 6 | | | +----3----+----7----+ | | | 10 3 8 4 11 | | | +----9----+----12---+
References MEDMEM.CONNECTIVITY._constituent, MEDMEM.CONNECTIVITY._descending, MEDMEM.CONNECTIVITY._entity, MEDMEM.CONNECTIVITY._isDescendingConnectivityPartial, MEDMEM.CONNECTIVITY._nodal, MEDMEM.CONNECTIVITY.addToDescendingConnectivity(), testRenumbering.conn, MEDMEM.CELLMODEL.getConstituentType(), MEDMEM.CONNECTIVITY.getEntity(), MEDMEM.CONNECTIVITY.getEntityDimension(), MEDMEM.CONNECTIVITY.getGeometricTypes(), MEDMEM.MEDSKYLINEARRAY.getIndex(), MEDMEM.CELLMODEL.getNodesConstituent(), MEDMEM.CONNECTIVITY.getNumberOf(), MEDMEM.CELLMODEL.getNumberOfConstituents(), MEDMEM.CONNECTIVITY.getNumberOfTypes(), MEDMEM.MEDSKYLINEARRAY.getValue(), MEDMEM.CONNECTIVITY.getValue(), MEDMEM.CONNECTIVITY.getValueIndex(), medClient_test.index, INTERP_KERNEL.HashMap< _Key, _Tp, _HashFn, _EqualKey, _Alloc >.insert(), MED_EN.MED_ALL_ELEMENTS, MED_EN.MED_NODAL, MED_EN.MED_POLYGON, MED_EN.MED_POLYHEDRA, nodes, MEDMEM.CELLMODEL_Map.retrieveCellModel(), and batchmode_medcorba_test.value.
| void CONNECTIVITY::addToDescendingConnectivity | ( | const std::set< int > & | nodes, |
| std::multimap< int, int > & | descending, | ||
| int | iglobal_cell, | ||
| const CONNECTIVITY_HashMap & | face_map | ||
| ) | const [private] |
| const int * CONNECTIVITY::getReverseNodalConnectivity | ( | ) | const [private] |
private method :
does nothing if already exists, else evaluates from _descending
Returns an array which contains, for each node, all cells arround it.
References MEDMEM.CONNECTIVITY._reverseNodalConnectivity, MEDMEM.CONNECTIVITY.calculateReverseNodalConnectivity(), and MEDMEM.MEDSKYLINEARRAY.getValue().
| const int * CONNECTIVITY::getReverseNodalConnectivityIndex | ( | ) | const [private] |
Give index array to use with getReverseConnectivity(MED_NODAL). It is unusefull with MED_DESCENDING mode, because we have allways two cells.
References MEDMEM.CONNECTIVITY._reverseNodalConnectivity, MEDMEM.CONNECTIVITY.calculateReverseNodalConnectivity(), and MEDMEM.MEDSKYLINEARRAY.getIndex().
| const int * CONNECTIVITY::getReverseDescendingConnectivity | ( | ) | const [private] |
Returns an array which contains, for each face (or edge), the 2 cells of each side. First is cell which face normal is outgoing. arround it.
References MEDMEM.CONNECTIVITY._descending, MEDMEM.CONNECTIVITY._entity, MEDMEM.CONNECTIVITY._reverseDescendingConnectivity, MEDMEM.CONNECTIVITY.calculateDescendingConnectivity(), MEDMEM.MEDSKYLINEARRAY.getValue(), MEDMEM.MEDSKYLINEARRAY.makeReverseArray(), and MED_EN.MED_CELL.
| const int * CONNECTIVITY::getReverseDescendingConnectivityIndex | ( | ) | const [private] |
calculate the reverse descending Connectivity and returns the index ( A DOCUMENTER MIEUX)
References MEDMEM.CONNECTIVITY._entity, MEDMEM.CONNECTIVITY._reverseDescendingConnectivity, MEDMEM.CONNECTIVITY.calculateDescendingConnectivity(), MEDMEM.MEDSKYLINEARRAY.getIndex(), and MED_EN.MED_CELL.
| void CONNECTIVITY::calculateNeighbourhood | ( | CONNECTIVITY & | myConnectivity | ) | [private] |
private method :
does nothing if already exists, else evaluates _neighbourhood from _descending
Not implemented yet
References MEDMEM.CONNECTIVITY._entity, BEGIN_OF_MED, END_OF_MED, and MESSAGE_MED.
| void CONNECTIVITY::setConstituent | ( | CONNECTIVITY * | Constituent | ) | throw (MEDEXCEPTION) |
set _constituent to Constituent be aware desallocation of _constituent is done by CONNECTIVITY:~CONNECTIVITY throws an exception if Constituent = MED_CELL A DOCUMENTER
References LOCALIZED, MED_EN.MED_CELL, and MED_EN.MED_EDGE.
| const CONNECTIVITY * CONNECTIVITY::getConstituent | ( | const MED_EN::medEntityMesh | Entity | ) | const throw (MEDEXCEPTION) |
Return _constituent of given entity
References MEDMEM.CONNECTIVITY.getConstituent(), LOCALIZED, MED_EN.MED_EDGE, and MED_EN.MED_FACE.
| void CONNECTIVITY::setGeometricTypes | ( | const MED_EN::medGeometryElement * | Types, |
| const MED_EN::medEntityMesh | Entity | ||
| ) | throw (MEDEXCEPTION) |
Duplicated Types array in CONNECTIVITY object.
References LOCALIZED.
| void CONNECTIVITY::setCount | ( | const int * | Count, |
| const MED_EN::medEntityMesh | Entity | ||
| ) | throw (MEDEXCEPTION) |
Set number of elements of each type of given entity
References medClient_test.index, LOCALIZED, MED_EN.MED_POLYGON, and MED_EN.MED_POLYHEDRA.
| void CONNECTIVITY::setNodal | ( | const int * | Connectivity, |
| const MED_EN::medEntityMesh | Entity, | ||
| const MED_EN::medGeometryElement | Type, | ||
| const int * | PolyConnectivityIndex = 0 |
||
| ) | throw (MEDEXCEPTION) |
References med_test1.Connectivity, medClient_test.index, LOCALIZED, MED_EN.MED_POLYGON, and MED_EN.MED_POLYHEDRA.
| void MEDMEM.CONNECTIVITY::setNumberOfNodes | ( | int | NumberOfNodes | ) |
| int MEDMEM.CONNECTIVITY::getNumberOfNodes | ( | ) | const |
| int MEDMEM.CONNECTIVITY::getEntityDimension | ( | ) | const |
| void MEDMEM.CONNECTIVITY::setEntityDimension | ( | int | EntityDimension | ) |
| bool MEDMEM.CONNECTIVITY::existConnectivity | ( | MED_EN::medConnectivity | ConnectivityType, |
| MED_EN::medEntityMesh | Entity | ||
| ) | const |
Returns true if a connectivity exists on elements of type "Entity"
References MED_EN.MED_DESCENDING, and MED_EN.MED_NODAL.
| void CONNECTIVITY::calculateConnectivity | ( | MED_EN::medConnectivity | connectivityType, |
| MED_EN::medEntityMesh | Entity | ||
| ) | [virtual] |
A DOCUMENTER
References MEDMEM.CONNECTIVITY._constituent, MEDMEM.CONNECTIVITY._entity, MEDMEM.CONNECTIVITY._entityDimension, MEDMEM.CONNECTIVITY.calculateConnectivity(), MEDMEM.CONNECTIVITY.calculateDescendingConnectivity(), MEDMEM.CONNECTIVITY.calculateNodalConnectivity(), MED_EN.MED_CELL, MED_EN.MED_EDGE, MED_EN.MED_NODAL, and MESSAGE_MED.
| void CONNECTIVITY::calculateFullDescendingConnectivity | ( | MED_EN::medEntityMesh | Entity | ) | [virtual] |
If not yet done, calculate the full Descending Connectivity
References MEDMEM.CONNECTIVITY._constituent, MEDMEM.CONNECTIVITY._count, MEDMEM.CONNECTIVITY._descending, MEDMEM.CONNECTIVITY._entity, MEDMEM.CONNECTIVITY._entityDimension, MEDMEM.CONNECTIVITY._geometricTypes, MEDMEM.CONNECTIVITY._isDescendingConnectivityPartial, MEDMEM.CONNECTIVITY._nodal, MEDMEM.CONNECTIVITY._numberOfNodes, MEDMEM.CONNECTIVITY._numberOfTypes, MEDMEM.CONNECTIVITY._reverseDescendingConnectivity, MEDMEM.CONNECTIVITY._reverseNodalConnectivity, MEDMEM.CONNECTIVITY._type, MEDMEM.CONNECTIVITY._typeConnectivity, BEGIN_OF_MED, MEDMEM.CONNECTIVITY.calculateFullDescendingConnectivity(), MEDMEM.CONNECTIVITY.calculateReverseNodalConnectivity(), MEDMEM.MEDMODULUSARRAY.compare(), MEDMEM.CONNECTIVITY.CONNECTIVITY(), END_OF_MED, MEDMEM.MEDMODULUSARRAY.getArray(), MEDMEM.CELLMODEL.getConstituentType(), MEDMEM.MEDSKYLINEARRAY.getIJ(), MEDMEM.MEDSKYLINEARRAY.getIndex(), MEDMEM.CONNECTIVITY.getIndexOfEndClassicElementInReverseNodal(), MEDMEM.CELLMODEL.getNodeConstituent(), MEDMEM.CONNECTIVITY.getNodesPerFaceOfPolyhedron(), MEDMEM.CELLMODEL.getNumberOfConstituents(), MEDMEM.CELLMODEL.getNumberOfNodes(), MEDMEM.MEDSKYLINEARRAY.getValue(), insert_vector(), LOCALIZED, TestMedCorba2.m, MED_EN.MED_EDGE, MED_EN.MED_FACE, MED_EN.MED_NODAL, MED_EN.MED_NONE, MED_EN.MED_POLYGON, MED_EN.MED_POLYHEDRA, MED_EN.MED_SEG2, mergeOrderedTabs(), MESSAGE_MED, TestMedCorba2.n, nodes, and testMedMemCxxTests.status.
| void CONNECTIVITY::updateFamily | ( | const vector< FAMILY * > & | myFamilies | ) | [virtual] |
References MEDMEM.CONNECTIVITY._constituent, MEDMEM.CONNECTIVITY._count, MEDMEM.CONNECTIVITY._descending, MEDMEM.CONNECTIVITY._nodal, MEDMEM.CONNECTIVITY._numberOfTypes, MEDMEM.CONNECTIVITY._type, MEDMEM.CONNECTIVITY.calculateDescendingConnectivity(), MEDMEM.CONNECTIVITY.calculateReverseNodalConnectivity(), MEDMEM.MEDMODULUSARRAY.compare(), MEDMEM.CONNECTIVITY.getConnectivityOfAnElement(), MEDMEM.CONNECTIVITY.getEntity(), MEDMEM.MEDSKYLINEARRAY.getIndex(), MEDMEM.MEDSKYLINEARRAY.getNumberOf(), MEDMEM.CELLMODEL.getNumberOfNodes(), MEDMEM.CELLMODEL.getNumberOfVertexes(), MEDMEM.CONNECTIVITY.getReverseNodalConnectivity(), MEDMEM.CONNECTIVITY.getReverseNodalConnectivityIndex(), MEDMEM.MEDSKYLINEARRAY.getValue(), MEDMEM.CONNECTIVITY.invertConnectivityForAFace(), LOCALIZED, MED_EXCEPTION, and MED_EN.MED_NODAL.
| MED_EN::medEntityMesh MEDMEM.CONNECTIVITY::getEntity | ( | ) | const |
Returns the medEntityMesh
| int MEDMEM.CONNECTIVITY::getNumberOfTypes | ( | MED_EN::medEntityMesh | Entity | ) | const |
Returns the number of different medGeometryElement types existing in the specified entity.
Note : Not implemented for MED_ALL_ENTITIES.
References MED_EN.MED_NODAL, MESSAGE_MED, and SCRUTE_MED.
| const int * CONNECTIVITY::getConnectivityOfAnElement | ( | MED_EN::medConnectivity | ConnectivityType, |
| MED_EN::medEntityMesh | Entity, | ||
| int | Number, | ||
| int & | lgth | ||
| ) | const |
References MEDMEM.CONNECTIVITY._constituent, MEDMEM.CONNECTIVITY._entity, MEDMEM.CONNECTIVITY.calculateDescendingConnectivity(), testRenumbering.conn, MEDMEM.CONNECTIVITY.getConnectivity(), MEDMEM.CONNECTIVITY.getConnectivityIndex(), MEDMEM.CONNECTIVITY.getConnectivityOfAnElement(), MEDMEM.CONNECTIVITY.getNumberOf(), medClient_test.index, MED_EN.MED_ALL_ELEMENTS, and MED_EN.MED_NODE.
| const MED_EN::medGeometryElement * MEDMEM.CONNECTIVITY::getGeometricTypes | ( | MED_EN::medEntityMesh | Entity | ) | const throw (MEDEXCEPTION) |
Returns an array of all medGeometryElement types existing in the mesh for the given medEntityMesh. Note : Not implemented for MED_ALL_ENTITIES. Throws an exception if Entity is unknown
| medGeometryElement CONNECTIVITY::getElementType | ( | MED_EN::medEntityMesh | Entity, |
| int | globalNumber | ||
| ) | const |
Returns the geometry of an element given by its entity type & its global number.
Example : medGeometryElement myType = myConnectivity.getElementType(MED_CELL,35);
References BEGIN_OF_MED, END_OF_MED, and LOCALIZED.
| MED_EN::medGeometryElement MEDMEM.CONNECTIVITY::getPolyTypeRelativeTo | ( | ) | const |
References MED_EN.MED_CELL, MED_EN.MED_FACE, MED_EN.MED_POLYGON, and MED_EN.MED_POLYHEDRA.
| const int * MEDMEM.CONNECTIVITY::getGlobalNumberingIndex | ( | MED_EN::medEntityMesh | Entity | ) | const throw (MEDEXCEPTION) [virtual] |
Returns an array containing the accumulated number of entities sorted by the geometric type.
Exemple :
In case of a CONNECTIVITY containing 3*MED_TRIA3 et 2*MED_QUAD4 :
int * count = getGlobalNumberingIndex(MED_CELL)
count[0] is always set to 1
count[1] is set to 1+3=4
count[2] is set to 4+2=6 = total number of cells + 1
Note : Not implemented for MED_ALL_ENTITIES.
Note : The geometric type order is given by the typedef enum medGeometryElement.
| virtual const int* MEDMEM.CONNECTIVITY.getConnectivity | ( | MED_EN::medConnectivity | ConnectivityType, |
| MED_EN::medEntityMesh | Entity, | ||
| MED_EN::medGeometryElement | Type | ||
| ) | const [virtual] |
| virtual int MEDMEM.CONNECTIVITY.getConnectivityLength | ( | MED_EN::medConnectivity | ConnectivityType, |
| MED_EN::medEntityMesh | Entity, | ||
| MED_EN::medGeometryElement | Type | ||
| ) | const [virtual] |
Reimplemented in MEDMEM.CONNECTIVITYClient.
| const int * CONNECTIVITY::getConnectivityIndex | ( | MED_EN::medConnectivity | ConnectivityType, |
| MED_EN::medEntityMesh | Entity | ||
| ) | const [virtual] |
Give morse index array to use with getConnectivity(mode,entity,MED_ALL_ELEMENTS).
Each value give start index for corresponding entity in connectivity array.
Example : i-th element, j-th node of it :
References med_test1.Connectivity, MEDMEM.MEDSKYLINEARRAY.getIndex(), LOCALIZED, and MED_EN.MED_NODAL.
method that adds to vector 'nodes' all the nodes of polyhedron with id 'polyhedronId'. WARNING the returned pointer should be deallocated. Returned nodes and polyhedronId are in form [1,...]
References MEDMEM.CONNECTIVITY._count, MEDMEM.CONNECTIVITY.getConnectivity(), MEDMEM.CONNECTIVITY.getConnectivityIndex(), MEDMEM.CONNECTIVITY.getNumberOf(), medClient_test.index, MED_EN.MED_ALL_ELEMENTS, MED_EN.MED_CELL, MED_EN.MED_NODAL, nodes, and testMEDMEM.ret.
| int ** CONNECTIVITY::getNodesPerFaceOfPolyhedron | ( | int | polyhedronId, |
| int & | nbOfFaces, | ||
| int *& | nbOfNodesPerFaces | ||
| ) | const |
Idem as MESH.getNodesOfPolyhedron except that returned nodes are sorted by face. 'nbOfNodesPerFaces' is an array of size 'nbOfFaces'. Returned int** has a size of 'nbOfNodesPerFaces' too, and for each element j in int** the size is nbOfNodesPerFaces[j]. Warning both returned 'nbOfNodesPerFaces' and returned value should be deallocated. Returned nodes and 'polyhedronId' are in form [1,...]
References MEDMEM.CONNECTIVITY._count, MEDMEM.CONNECTIVITY.getConnectivity(), MEDMEM.CONNECTIVITY.getConnectivityIndex(), MEDMEM.CONNECTIVITY.getNumberOf(), medClient_test.index, MED_EN.MED_ALL_ELEMENTS, MED_EN.MED_CELL, MED_EN.MED_NODAL, nodes, and testMEDMEM.ret.
| const CELLMODEL& MEDMEM.CONNECTIVITY.getType | ( | MED_EN::medGeometryElement | Type | ) | const |
| const CELLMODEL * MEDMEM.CONNECTIVITY::getCellsTypes | ( | MED_EN::medEntityMesh | Entity | ) | const throw (MEDEXCEPTION) |
Returns an array containing CELLMODEL foreach element type present in connectivity for given medEntityMesh (similar as getGeometricTypes).
Throw an execption if the given entity is not defined or if the array is not defined.
| string * MEDMEM.CONNECTIVITY::getCellTypeNames | ( | MED_EN::medEntityMesh | Entity | ) | const throw (MEDEXCEPTION) |
Returns an array (it should deleted after use) containing the whole list of CELLMODEL Name foreach element type present in connectivity for given medEntityMesh (similar as getGeometricTypes).
Throw an execption if the given entity is not defined or if the array is not defined.
| int CONNECTIVITY::getNumberOfNodesInType | ( | MED_EN::medGeometryElement | Type | ) | const |
Returns the number of elements of type medGeometryElement. Note : not implemented for MED_ALL_ELEMENTS nor for MED_NONE
References BEGIN_OF_MED, LOCALIZED, MED_EN.MED_ALL_ELEMENTS, and MED_EN.MED_NONE.
| int CONNECTIVITY::getNumberOfSubCellInType | ( | MED_EN::medGeometryElement | Type | ) | const |
Returns the number of geometric sub cells of medGeometryElement type. not implemented for MED_ALL_ELEMENTS nor for MED_NONE
References MED_EN.MED_ALL_ELEMENTS, and MED_EN.MED_NONE.
| virtual int MEDMEM.CONNECTIVITY.getNumberOf | ( | MED_EN::medEntityMesh | Entity, |
| MED_EN::medGeometryElement | Type | ||
| ) | const [virtual] |
| virtual const int* MEDMEM.CONNECTIVITY.getValue | ( | MED_EN::medConnectivity | TypeConnectivity, |
| MED_EN::medGeometryElement | Type | ||
| ) | const [virtual] |
| const int * CONNECTIVITY::getValueIndex | ( | MED_EN::medConnectivity | TypeConnectivity | ) | const [virtual] |
A DOCUMENTER
References MED_EN.MED_NODAL.
| const int * MEDMEM.CONNECTIVITY::getReverseConnectivity | ( | MED_EN::medConnectivity | ConnectivityType, |
| MED_EN::medEntityMesh | Entity = MED_EN::MED_CELL |
||
| ) | const throw (MEDEXCEPTION) [virtual] |
A DOCUMENTER
References MED_EN.MED_DESCENDING, and MED_EN.MED_NODAL.
| const int * MEDMEM.CONNECTIVITY::getReverseConnectivityIndex | ( | MED_EN::medConnectivity | ConnectivityType, |
| MED_EN::medEntityMesh | Entity = MED_EN::MED_CELL |
||
| ) | const throw (MEDEXCEPTION) [virtual] |
A DOCUMENTER
References MED_EN.MED_DESCENDING, and MED_EN.MED_NODAL.
| const int * CONNECTIVITY::getNeighbourhood | ( | ) | const |
Not yet implemented
Reimplemented in MEDMEM.CONNECTIVITYClient.
References MEDMEM.CONNECTIVITY._constituent, MEDMEM.CONNECTIVITY._descending, MEDMEM.CONNECTIVITY._nodal, MEDMEM.CONNECTIVITY._reverseDescendingConnectivity, MEDMEM.MEDSKYLINEARRAY.getIJ(), MEDMEM.MEDSKYLINEARRAY.getIndex(), MEDMEM.MEDSKYLINEARRAY.getIndexValue(), MEDMEM.MEDSKYLINEARRAY.setIJ(), and MEDMEM.MEDSKYLINEARRAY.setIndexValue().
| bool CONNECTIVITY::deepCompare | ( | const CONNECTIVITY & | other | ) | const |
Perform a deep comparison of the 2 connectivities in NODAL mode and on all elements.
References MEDMEM.CONNECTIVITY._entity, med_test_grid.conn1, MEDMEM.CONNECTIVITY.getConnectivity(), MEDMEM.CONNECTIVITY.getConnectivityLength(), MED_EN.MED_ALL_ELEMENTS, MED_EN.MED_NODAL, and testMEDMEM.ret.
friend class MED_MESH_RDONLY_DRIVER [friend] |
friend class MED_MESH_WRONLY_DRIVER [friend] |
friend class GRID [friend] |
| std::ostream& operator<< | ( | std::ostream & | os, |
| CONNECTIVITY & | connectivity | ||
| ) | [friend] |
MED_EN::medEntityMesh MEDMEM.CONNECTIVITY._entity [protected] |
contains MED_CELL MED_FACE or MED_EDGE
contains MED_NODAL or MED_DESCEND
int MEDMEM.CONNECTIVITY._numberOfTypes [protected] |
count of differents cells types used by the mesh
array of all med_geometric_type used by MESH.
CELLMODEL* MEDMEM.CONNECTIVITY._type [protected] |
map indexed by med_geometric_type which contains the different 'CellModel' used by MESH.
int MEDMEM.CONNECTIVITY._entityDimension [protected] |
contains the dimension of the entity
int MEDMEM.CONNECTIVITY._numberOfNodes [protected] |
needed by calculateReverseNodalConnectivity
int* MEDMEM.CONNECTIVITY._count [protected] |
array of size _numberOfTypes+1 which gives for each cell type the first cell number in _nodal or _descending array (depends on _typeConnectivity) To get cells count for one type, we must minus _count[i+1] and _count[i] ( 0 <= i < _numberOfTypes ). Note that _count[_numberOfTypes] returns total cells count + 1
MEDSKYLINEARRAY* MEDMEM.CONNECTIVITY._nodal [protected] |
pointer to an array which stores the nodal connectivity
MEDSKYLINEARRAY* MEDMEM.CONNECTIVITY._descending [mutable, protected] |
pointer to an array which stores the descending connectivity
MEDSKYLINEARRAY* MEDMEM.CONNECTIVITY._reverseNodalConnectivity [mutable, protected] |
pointer to an array which stores the reverse nodal connectivity
MEDSKYLINEARRAY* MEDMEM.CONNECTIVITY._reverseDescendingConnectivity [mutable, protected] |
pointer to an array which stores the reverse descending connectivity
MEDSKYLINEARRAY* MEDMEM.CONNECTIVITY._neighbourhood [protected] |
if face or edge, list of 2 cells or 2 faces it belongs to. If 2nd number equals 0, we have a boundary entity. We could use MEDSKYLINEARRAY, but we suppose we have always only 2 (or 1) entities.
CONNECTIVITY* MEDMEM.CONNECTIVITY._constituent [protected] |
connectivity of sub cell if descendant connectivity is calculated
bool MEDMEM.CONNECTIVITY._isDescendingConnectivityPartial [mutable, protected] |
is descending connectivity computed by calculatePartialDescendingConnectivity()