Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::CartesianMeshNumberingMngInternal Class Reference
Inheritance diagram for Arcane::CartesianMeshNumberingMngInternal:
Collaboration diagram for Arcane::CartesianMeshNumberingMngInternal:

Public Member Functions

 CartesianMeshNumberingMngInternal (IMesh *mesh)
void build () override
void saveInfosInProperties () override
void recreateFromDump () override
void renumberingFacesLevel0FromOriginalArcaneNumbering () override
 Method allowing the renumbering of level 0 faces.
void printStatus () override
 Method allowing the description of the object's state.
void prepareLevel (Int32 level) override
 Method allowing the preparation of a new level.
void updateFirstLevel () override
 Method allowing the update of the first level.
Int64 firstCellUniqueId (Int32 level) const override
 Method allowing the retrieval of the first unique ID used by the cells of a level. Calling this method with level and level+1 allows retrieving the unique ID interval of a level.
Int64 firstNodeUniqueId (Int32 level) const override
 Method allowing the retrieval of the first unique ID used by the nodes of a level. Calling this method with level and level+1 allows retrieving the unique ID interval of a level.
Int64 firstFaceUniqueId (Int32 level) const override
 Method allowing the retrieval of the first unique ID used by the faces of a level. Calling this method with level and level+1 allows retrieving the unique ID interval of a level.
CartCoord globalNbCellsX (Int32 level) const override
 Method allowing the retrieval of the global number of cells in X for a level.
CartCoord globalNbCellsY (Int32 level) const override
 Method allowing the retrieval of the global number of cells in Y for a level.
CartCoord globalNbCellsZ (Int32 level) const override
 Method allowing the retrieval of the global number of cells in Z for a level.
CartCoord globalNbNodesX (Int32 level) const override
 Method allowing the retrieval of the global number of nodes in X for a level.
CartCoord globalNbNodesY (Int32 level) const override
 Method allowing the retrieval of the global number of nodes in Y for a level.
CartCoord globalNbNodesZ (Int32 level) const override
 Method allowing the retrieval of the global number of nodes in Z for a level.
CartCoord globalNbFacesX (Int32 level) const override
 Method allowing the retrieval of the global number of faces in X for a level.
CartCoord globalNbFacesY (Int32 level) const override
 Method allowing the retrieval of the global number of faces in Y for a level.
CartCoord globalNbFacesZ (Int32 level) const override
 Method allowing the retrieval of the global number of faces in Z for a level.
CartCoord globalNbFacesXCartesianView (Int32 level) const override
 Method allowing the retrieval of the size of the "Cartesian grid" view containing the faces.
CartCoord globalNbFacesYCartesianView (Int32 level) const override
 Method allowing the retrieval of the size of the "Cartesian grid" view containing the faces.
CartCoord globalNbFacesZCartesianView (Int32 level) const override
 Method allowing the retrieval of the size of the "Cartesian grid" view containing the faces.
Int64 nbCellInLevel (Int32 level) const override
 Method allowing the retrieval of the total number of cells in a level.
Int64 nbNodeInLevel (Int32 level) const override
 Method allowing the retrieval of the total number of nodes in a level.
Int64 nbFaceInLevel (Int32 level) const override
 Method allowing the retrieval of the total number of faces in a level.
Int32 pattern () const override
 Method allowing the retrieval of the refinement pattern used in each cell. For example, if the pattern is 2, each parent cell will have 2*2 child cells (2*2*2 in 3D).
Int32 cellLevel (Int64 uid) const override
 Method allowing the retrieval of the level of a cell with its UID.
Int32 nodeLevel (Int64 uid) const override
 Method allowing the retrieval of the level of a node with its UID.
Int32 faceLevel (Int64 uid) const override
 Method allowing the retrieval of the level of a face with its UID.
CartCoord offsetLevelToLevel (CartCoord coord, Int32 level_from, Int32 level_to) const override
 Method allowing the retrieval of the position of the first child node/cell from the position of the parent node/cell.
CartCoord3 offsetLevelToLevel (CartCoord3 coord, Int32 level_from, Int32 level_to) const override
 Method to obtain the position of the first child node/cell from the position of the parent node/cell.
CartCoord faceOffsetLevelToLevel (CartCoord coord, Int32 level_from, Int32 level_to) const override
 Method to obtain the position of the first child face from the position of the parent face.
CartCoord3 cellUniqueIdToCoord (Int64 uid, Int32 level) override
 Method to retrieve the coordinates of a cell using its uniqueId.
CartCoord3 cellUniqueIdToCoord (Cell cell) override
 Method to retrieve the coordinates of a cell.
CartCoord cellUniqueIdToCoordX (Int64 uid, Int32 level) override
 Method to retrieve the X coordinate of a cell using its uniqueId.
CartCoord cellUniqueIdToCoordX (Cell cell) override
 Method to retrieve the X coordinate of a cell.
CartCoord cellUniqueIdToCoordY (Int64 uid, Int32 level) override
 Method to retrieve the Y coordinate of a cell using its uniqueId.
CartCoord cellUniqueIdToCoordY (Cell cell) override
 Method to retrieve the Y coordinate of a cell.
CartCoord cellUniqueIdToCoordZ (Int64 uid, Int32 level) override
 Method to retrieve the Z coordinate of a cell using its uniqueId.
CartCoord cellUniqueIdToCoordZ (Cell cell) override
 Method to retrieve the Z coordinate of a cell.
CartCoord nodeUniqueIdToCoordX (Int64 uid, Int32 level) override
 Method to retrieve the X coordinate of a node using its uniqueId.
CartCoord nodeUniqueIdToCoordX (Node node) override
 Method to retrieve the X coordinate of a node.
CartCoord nodeUniqueIdToCoordY (Int64 uid, Int32 level) override
 Method to retrieve the Y coordinate of a node using its uniqueId.
CartCoord nodeUniqueIdToCoordY (Node node) override
 Method to retrieve the Y coordinate of a node.
CartCoord nodeUniqueIdToCoordZ (Int64 uid, Int32 level) override
 Method to retrieve the Z coordinate of a node using its uniqueId.
CartCoord nodeUniqueIdToCoordZ (Node node) override
 Method to retrieve the Z coordinate of a node.
CartCoord faceUniqueIdToCoordX (Int64 uid, Int32 level) override
 Method to retrieve the X coordinate of a face using its uniqueId.
CartCoord faceUniqueIdToCoordX (Face face) override
 Method to retrieve the X coordinate of a face.
CartCoord faceUniqueIdToCoordY (Int64 uid, Int32 level) override
 Method to retrieve the Y coordinate of a face using its uniqueId.
CartCoord faceUniqueIdToCoordY (Face face) override
 Method to retrieve the Y coordinate of a face.
CartCoord faceUniqueIdToCoordZ (Int64 uid, Int32 level) override
 Method to retrieve the Z coordinate of a face using its uniqueId.
CartCoord faceUniqueIdToCoordZ (Face face) override
 Method to retrieve the Z coordinate of a face.
Int64 cellUniqueId (CartCoord3 cell_coord, Int32 level) override
 Method to retrieve the uniqueId of a cell from its position and level.
Int64 cellUniqueId (CartCoord2 cell_coord, Int32 level) override
 Method to retrieve the uniqueId of a cell from its position and level.
Int64 nodeUniqueId (CartCoord3 node_coord, Int32 level) override
 Method to retrieve the uniqueId of a node from its position and level.
Int64 nodeUniqueId (CartCoord2 node_coord, Int32 level) override
 Method to retrieve the uniqueId of a node from its position and level.
Int64 faceUniqueId (CartCoord3 face_coord, Int32 level) override
 Method to retrieve the uniqueId of a face from its position and level.
Int64 faceUniqueId (CartCoord2 face_coord, Int32 level) override
 Method to retrieve the uniqueId of a face from its position and level.
Int32 nbNodeByCell () override
 Method to retrieve the number of nodes in a cell.
void cellNodeUniqueIds (CartCoord3 cell_coord, Int32 level, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of the nodes of a cell from its coordinates.
void cellNodeUniqueIds (CartCoord2 cell_coord, Int32 level, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of the nodes of a cell from its coordinates.
void cellNodeUniqueIds (Int64 cell_uid, Int32 level, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of the nodes of a cell from its uniqueId.
void cellNodeUniqueIds (Cell cell, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of the nodes of a cell.
Int32 nbFaceByCell () override
 Method to retrieve the number of faces in a cell.
void cellFaceUniqueIds (CartCoord3 cell_coord, Int32 level, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of a cell's faces based on its coordinates.
void cellFaceUniqueIds (CartCoord2 cell_coord, Int32 level, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of a cell's faces based on its coordinates.
void cellFaceUniqueIds (Int64 cell_uid, Int32 level, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of a cell's faces based on its uniqueId.
void cellFaceUniqueIds (Cell cell, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of a cell's faces.
void cellUniqueIdsAroundCell (CartCoord3 cell_coord, Int32 level, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of cells around a cell.
void cellUniqueIdsAroundCell (CartCoord2 cell_coord, Int32 level, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of cells around a cell.
void cellUniqueIdsAroundCell (Int64 cell_uid, Int32 level, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of cells around the cell passed as a parameter.
void cellUniqueIdsAroundCell (Cell cell, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of cells around the cell passed as a parameter.
void cellUniqueIdsAroundNode (CartCoord3 node_coord, Int32 level, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of cells around a node.
void cellUniqueIdsAroundNode (CartCoord2 node_coord, Int32 level, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of cells around a node.
void cellUniqueIdsAroundNode (Int64 node_uid, Int32 level, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of cells around the node passed as a parameter.
void cellUniqueIdsAroundNode (Node node, ArrayView< Int64 > uid) override
 Method to retrieve the uniqueIds of cells around the node passed as a parameter.
void setChildNodeCoordinates (Cell parent_cell) override
 Method to define the spatial coordinates of the nodes of child cells of a parent cell. This method must be called after calling endUpdate().
void setParentNodeCoordinates (Cell parent_cell) override
 Method to define the spatial coordinates of the nodes of a parent cell. This method must be called after calling endUpdate().
Int64 parentCellUniqueIdOfCell (Int64 uid, Int32 level, bool do_fatal) override
 Method to retrieve the uniqueId of a cell's parent.
Int64 parentCellUniqueIdOfCell (Cell cell, bool do_fatal) override
 Method to retrieve the uniqueId of a cell's parent.
Int64 childCellUniqueIdOfCell (Cell cell, CartCoord3 child_coord_in_parent) override
 Method to retrieve the uniqueId of a child cell of a parent cell based on the position of the child cell within the parent cell.
Int64 childCellUniqueIdOfCell (Cell cell, CartCoord2 child_coord_in_parent) override
 Method to retrieve the uniqueId of a child cell of a parent cell based on the position of the child cell within the parent cell.
Int64 childCellUniqueIdOfCell (Cell cell, Int32 child_index_in_parent) override
 Method to retrieve the uniqueId of a child cell of a parent cell based on the index of the child cell within the parent cell.
Cell childCellOfCell (Cell cell, CartCoord3 child_coord_in_parent) override
 Method to retrieve a child cell of a parent cell based on the position of the child cell within the parent cell.
Cell childCellOfCell (Cell cell, CartCoord2 child_coord_in_parent) override
 Method to retrieve a child cell of a parent cell based on the position of the child cell within the parent cell.
Int64 parentNodeUniqueIdOfNode (Int64 uid, Int32 level, bool do_fatal) override
 Method to retrieve the uniqueId of a node's parent.
Int64 parentNodeUniqueIdOfNode (Node node, bool do_fatal) override
 Method to retrieve the uniqueId of a node's parent.
Int64 childNodeUniqueIdOfNode (Int64 uid, Int32 level) override
 Method to retrieve the uniqueId of a child node of a parent node.
Int64 childNodeUniqueIdOfNode (Node node) override
 Method to retrieve the uniqueId of a child node of a parent node.
Int64 parentFaceUniqueIdOfFace (Int64 uid, Int32 level, bool do_fatal) override
 Method to retrieve the uniqueId of a face's parent.
Int64 parentFaceUniqueIdOfFace (Face face, bool do_fatal) override
 Method to retrieve the uniqueId of a face's parent.
Int64 childFaceUniqueIdOfFace (Int64 uid, Int32 level, Int32 child_index_in_parent) override
 Method to retrieve the uniqueId of a child face of a parent face based on the index of the child face within the parent face.
Int64 childFaceUniqueIdOfFace (Face face, Int32 child_index_in_parent) override
 Method to retrieve the uniqueId of a child face of a parent face based on the index of the child face within the parent face.
Public Member Functions inherited from Arcane::TraceAccessor
 TraceAccessor (ITraceMng *m)
 Constructs an accessor via the trace manager m.
 TraceAccessor (const TraceAccessor &rhs)
 Copy constructor.
TraceAccessoroperator= (const TraceAccessor &rhs)
 Copy assignment operator.
virtual ~TraceAccessor ()
 Frees resources.
ITraceMngtraceMng () const
 Trace manager.
TraceMessage info () const
 Flow for an information message.
TraceMessage pinfo () const
 Flow for a parallel information message.
TraceMessage info (char category) const
 Flow for an information message of a given category.
TraceMessage pinfo (char category) const
 Flow for a parallel information message of a given category.
TraceMessage info (bool v) const
 Flow for an information message.
TraceMessage warning () const
 Flow for a warning message.
TraceMessage pwarning () const
TraceMessage error () const
 Flow for an error message.
TraceMessage perror () const
TraceMessage log () const
 Flow for a log message.
TraceMessage plog () const
 Flow for a log message.
TraceMessage logdate () const
 Flow for a log message preceded by the date.
TraceMessage fatal () const
 Flow for a fatal error message.
TraceMessage pfatal () const
 Flow for a parallel fatal error message.
TraceMessageDbg debug (Trace::eDebugLevel=Trace::Medium) const
 Flow for a debug message.
Trace::eDebugLevel configDbgLevel () const
 Debug level of the configuration file.
TraceMessage info (Int32 verbose_level) const
 Flow for an information message of a given level.
TraceMessage linfo () const
 Flow for an information message with the local information level of this instance.
TraceMessage linfo (Int32 relative_level) const
 Flow for an information message with the local information level of this instance.
void fatalMessage (const StandaloneTraceMessage &o) const

Private Member Functions

Int64x3 _face3DNumberingThreeParts (Int32 level) const
 Method to retrieve the number of faces for the three parts of the numbering.

Static Private Member Functions

static void _pushFront (UniqueArray< Int64 > &array, Int64 elem)

Private Attributes

IMeshm_mesh
Ref< Propertiesm_properties
Integer m_dimension
Int32 m_pattern
UniqueArray< Int32m_p_to_l_level
Int32 m_max_level
Int32 m_min_level
Int64 m_latest_cell_uid
UniqueArray< Int64m_first_cell_uid_level
Int64 m_latest_node_uid
UniqueArray< Int64m_first_node_uid_level
Int64 m_latest_face_uid
UniqueArray< Int64m_first_face_uid_level
CartCoord3 m_nb_cell_ground
bool m_converting_numbering_face
Int32 m_ori_level
std::unordered_map< Int64, Int64m_face_ori_numbering_to_new
std::unordered_map< Int64, Int64m_face_new_numbering_to_ori

Additional Inherited Members

Protected Member Functions inherited from Arcane::TraceAccessor
void _setLocalVerboseLevel (Int32 v)
Int32 _localVerboseLevel () const

Detailed Description

Definition at line 40 of file CartesianMeshNumberingMngInternal.h.

Constructor & Destructor Documentation

◆ CartesianMeshNumberingMngInternal()

Arcane::CartesianMeshNumberingMngInternal::CartesianMeshNumberingMngInternal ( IMesh * mesh)
explicit

Definition at line 38 of file CartesianMeshNumberingMngInternal.cc.

Member Function Documentation

◆ _face3DNumberingThreeParts()

Int64x3 Arcane::CartesianMeshNumberingMngInternal::_face3DNumberingThreeParts ( Int32 level) const
private

Method to retrieve the number of faces for the three parts of the numbering.

Indeed, to number in 3D, we first number the xy faces, then the yz faces, and finally the zx faces. This method allows retrieving the number of faces {xy, yz, zx}.

Parameters
levelThe numbering level.
Returns
The number of faces {xy, yz, zx}.

Definition at line 2443 of file CartesianMeshNumberingMngInternal.cc.

References globalNbCellsX(), globalNbCellsY(), and globalNbCellsZ().

Referenced by childFaceUniqueIdOfFace(), faceUniqueId(), faceUniqueIdToCoordX(), faceUniqueIdToCoordY(), and faceUniqueIdToCoordZ().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ _pushFront()

void Arcane::CartesianMeshNumberingMngInternal::_pushFront ( UniqueArray< Int64 > & array,
Int64 elem )
staticprivate

Definition at line 2453 of file CartesianMeshNumberingMngInternal.cc.

◆ build()

void Arcane::CartesianMeshNumberingMngInternal::build ( )
overridevirtual

◆ cellFaceUniqueIds() [1/4]

void Arcane::CartesianMeshNumberingMngInternal::cellFaceUniqueIds ( CartCoord2 cell_coord,
Int32 level,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of a cell's faces based on its coordinates.

The order in which the uniqueIds are placed corresponds to the enumeration order of the faces of an Arcane cell. -2- ^y 3 1 | -0- ->x

Parameters
cell_coordThe position of the cell.
levelThe level of the cell (and thus the faces).
uid[OUT] The uniqueIds of the cell. The size of the ArrayView must be equal to nbFaceByCell().

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1573 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, firstFaceUniqueId(), globalNbCellsX(), nbFaceByCell(), and Arcane::ArrayView< T >::size().

Here is the call graph for this function:

◆ cellFaceUniqueIds() [2/4]

void Arcane::CartesianMeshNumberingMngInternal::cellFaceUniqueIds ( CartCoord3 cell_coord,
Int32 level,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of a cell's faces based on its coordinates.

The order in which the uniqueIds are placed corresponds to the enumeration order of the faces of an Arcane cell. -2- ^y 3 1 | -0- ->x

Parameters
cell_coordThe position of the cell.
levelThe level of the cell (and thus the faces).
uid[OUT] The uniqueIds of the cell. The size of the ArrayView must be equal to nbFaceByCell().

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1492 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, firstFaceUniqueId(), globalNbCellsX(), globalNbCellsY(), globalNbCellsZ(), nbFaceByCell(), and Arcane::ArrayView< T >::size().

Referenced by cellFaceUniqueIds(), cellFaceUniqueIds(), and renumberingFacesLevel0FromOriginalArcaneNumbering().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cellFaceUniqueIds() [3/4]

void Arcane::CartesianMeshNumberingMngInternal::cellFaceUniqueIds ( Cell cell,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of a cell's faces.

The order in which the uniqueIds are placed corresponds to the enumeration order of the faces of an Arcane cell. -2- ^y 3 1 | -0- ->x

Parameters
cellThe cell.
uid[OUT] The uniqueIds of the cell. The size of the ArrayView must be equal to nbFaceByCell().

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1638 of file CartesianMeshNumberingMngInternal.cc.

References cellFaceUniqueIds(), Arcane::Cell::level(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ cellFaceUniqueIds() [4/4]

void Arcane::CartesianMeshNumberingMngInternal::cellFaceUniqueIds ( Int64 cell_uid,
Int32 level,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of a cell's faces based on its uniqueId.

The order in which the uniqueIds are placed corresponds to the enumeration order of the faces of an Arcane cell. -2- ^y 3 1 | -0- ->x

Parameters
cell_uidThe uniqueId of the cell.
levelThe level of the cell (and thus the faces).
uid[OUT] The uniqueIds of the cell. The size of the ArrayView must be equal to nbFaceByCell().

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1622 of file CartesianMeshNumberingMngInternal.cc.

References cellFaceUniqueIds(), cellUniqueIdToCoordX(), cellUniqueIdToCoordY(), and cellUniqueIdToCoordZ().

Here is the call graph for this function:

◆ cellLevel()

Int32 Arcane::CartesianMeshNumberingMngInternal::cellLevel ( Int64 uid) const
overridevirtual

Method allowing the retrieval of the level of a cell with its UID.

Parameters
uidThe unique ID of the cell.
Returns
The level of the cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 515 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, firstCellUniqueId(), and nbCellInLevel().

Here is the call graph for this function:

◆ cellNodeUniqueIds() [1/4]

void Arcane::CartesianMeshNumberingMngInternal::cellNodeUniqueIds ( CartCoord2 cell_coord,
Int32 level,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of the nodes of a cell from its coordinates.

The order in which the uniqueIds are placed corresponds to the enumeration order of the nodes of an Arcane cell. 3–2 ^y | | | 0–1 ->x

Parameters
cell_coordThe position of the cell.
levelThe level of the cell (and thus the nodes).
uid[OUT] The uniqueIds of the cell. The size of the ArrayView must be equal to nbNodeByCell().

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1434 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, firstNodeUniqueId(), globalNbNodesX(), nbNodeByCell(), and Arcane::ArrayView< T >::size().

Here is the call graph for this function:

◆ cellNodeUniqueIds() [2/4]

void Arcane::CartesianMeshNumberingMngInternal::cellNodeUniqueIds ( CartCoord3 cell_coord,
Int32 level,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of the nodes of a cell from its coordinates.

The order in which the uniqueIds are placed corresponds to the enumeration order of the nodes of an Arcane cell. 3–2 ^y | | | 0–1 ->x

Parameters
cell_coordThe position of the cell.
levelThe level of the cell (and thus the nodes).
uid[OUT] The uniqueIds of the cell. The size of the ArrayView must be equal to nbNodeByCell().

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1401 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, firstNodeUniqueId(), globalNbNodesX(), globalNbNodesY(), nbNodeByCell(), and Arcane::ArrayView< T >::size().

Referenced by cellNodeUniqueIds(), and cellNodeUniqueIds().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cellNodeUniqueIds() [3/4]

void Arcane::CartesianMeshNumberingMngInternal::cellNodeUniqueIds ( Cell cell,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of the nodes of a cell.

The order in which the uniqueIds are placed corresponds to the enumeration order of the nodes of an Arcane cell. 3–2 ^y | | | 0–1 ->x

Parameters
cellThe cell.
uid[OUT] The uniqueIds of the cell. The size of the ArrayView must be equal to nbNodeByCell().

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1474 of file CartesianMeshNumberingMngInternal.cc.

References cellNodeUniqueIds(), Arcane::Cell::level(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ cellNodeUniqueIds() [4/4]

void Arcane::CartesianMeshNumberingMngInternal::cellNodeUniqueIds ( Int64 cell_uid,
Int32 level,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of the nodes of a cell from its uniqueId.

The order in which the uniqueIds are placed corresponds to the enumeration order of the nodes of an Arcane cell. 3–2 ^y | | | 0–1 ->x

Parameters
cell_uidThe uniqueId of the cell.
levelThe level of the cell (and thus the nodes).
uid[OUT] The uniqueIds of the cell. The size of the ArrayView must be equal to nbNodeByCell().

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1458 of file CartesianMeshNumberingMngInternal.cc.

References cellNodeUniqueIds(), cellUniqueIdToCoordX(), cellUniqueIdToCoordY(), and cellUniqueIdToCoordZ().

Here is the call graph for this function:

◆ cellUniqueId() [1/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::cellUniqueId ( CartCoord2 cell_coord,
Int32 level )
overridevirtual

Method to retrieve the uniqueId of a cell from its position and level.

Parameters
cell_coordThe position of the cell.
levelThe level of the cell.
Returns
The uniqueId of the cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1231 of file CartesianMeshNumberingMngInternal.cc.

References firstCellUniqueId(), and globalNbCellsX().

Here is the call graph for this function:

◆ cellUniqueId() [2/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::cellUniqueId ( CartCoord3 cell_coord,
Int32 level )
overridevirtual

Method to retrieve the uniqueId of a cell from its position and level.

Parameters
cell_coordThe position of the cell.
levelThe level of the cell.
Returns
The uniqueId of the cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1218 of file CartesianMeshNumberingMngInternal.cc.

References firstCellUniqueId(), globalNbCellsX(), and globalNbCellsY().

Referenced by cellUniqueIdsAroundCell(), cellUniqueIdsAroundCell(), cellUniqueIdsAroundNode(), cellUniqueIdsAroundNode(), childCellUniqueIdOfCell(), childCellUniqueIdOfCell(), and parentCellUniqueIdOfCell().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cellUniqueIdsAroundCell() [1/4]

void Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdsAroundCell ( CartCoord2 cell_coord,
Int32 level,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of cells around a cell.

If there is no cell in an adjacent location (e.g., if we are at the edge of the mesh), a uniqueId of -1 is used.

The passed view must have a size of 9.

Parameters
cell_coordThe position of the cell.
levelThe level of the cell at the center.
uid[OUT] The uniqueIds of the surrounding cells.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1681 of file CartesianMeshNumberingMngInternal.cc.

References cellUniqueId(), Arcane::ArrayView< T >::fill(), globalNbCellsX(), globalNbCellsY(), and Arcane::ArrayView< T >::size().

Here is the call graph for this function:

◆ cellUniqueIdsAroundCell() [2/4]

void Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdsAroundCell ( CartCoord3 cell_coord,
Int32 level,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of cells around a cell.

If there is no cell in an adjacent location (e.g., if we are at the edge of the mesh), a uniqueId of -1 is used.

The passed view must have a size of 27.

Parameters
cell_coordThe position of the cell.
levelThe level of the cell at the center.
uid[OUT] The uniqueIds of the surrounding cells.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1647 of file CartesianMeshNumberingMngInternal.cc.

References cellUniqueId(), Arcane::ArrayView< T >::fill(), globalNbCellsX(), globalNbCellsY(), globalNbCellsZ(), and Arcane::ArrayView< T >::size().

Referenced by cellUniqueIdsAroundCell(), and cellUniqueIdsAroundCell().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cellUniqueIdsAroundCell() [3/4]

void Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdsAroundCell ( Cell cell,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of cells around the cell passed as a parameter.

If there is no cell in an adjacent location (e.g., if we are at the edge of the mesh), a uniqueId of -1 is used.

The passed view must have a size of 9 in 2D and 27 in 3D.

Parameters
cellThe cell at the center.
uid[OUT] The uniqueIds of the surrounding cells.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1724 of file CartesianMeshNumberingMngInternal.cc.

References cellUniqueIdsAroundCell(), Arcane::Cell::level(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ cellUniqueIdsAroundCell() [4/4]

void Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdsAroundCell ( Int64 cell_uid,
Int32 level,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of cells around the cell passed as a parameter.

If there is no cell in an adjacent location (e.g., if we are at the edge of the mesh), a uniqueId of -1 is used.

The passed view must have a size of 9 in 2D and 27 in 3D.

Parameters
cell_uidThe uniqueId of the cell at the center.
levelThe level of the cell at the center.
uid[OUT] The uniqueIds of the surrounding cells.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1708 of file CartesianMeshNumberingMngInternal.cc.

References cellUniqueIdsAroundCell(), cellUniqueIdToCoordX(), cellUniqueIdToCoordY(), and cellUniqueIdToCoordZ().

Here is the call graph for this function:

◆ cellUniqueIdsAroundNode() [1/4]

void Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdsAroundNode ( CartCoord2 node_coord,
Int32 level,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of cells around a node.

If there is no cell in an adjacent location (e.g., if we are at the edge of the mesh), a uniqueId of -1 is used.

The passed view must have a size of 4.

Parameters
node_coordThe position of the node.
levelThe level of the node.
uid[OUT] The uniqueIds of the surrounding cells.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1767 of file CartesianMeshNumberingMngInternal.cc.

References cellUniqueId(), Arcane::ArrayView< T >::fill(), globalNbCellsX(), globalNbCellsY(), and Arcane::ArrayView< T >::size().

Here is the call graph for this function:

◆ cellUniqueIdsAroundNode() [2/4]

void Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdsAroundNode ( CartCoord3 node_coord,
Int32 level,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of cells around a node.

If there is no cell in an adjacent location (e.g., if we are at the edge of the mesh), a uniqueId of -1 is used.

The passed view must have a size of 8.

Parameters
node_coordThe position of the node.
levelThe level of the node.
uid[OUT] The uniqueIds of the surrounding cells.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1733 of file CartesianMeshNumberingMngInternal.cc.

References cellUniqueId(), Arcane::ArrayView< T >::fill(), globalNbCellsX(), globalNbCellsY(), globalNbCellsZ(), and Arcane::ArrayView< T >::size().

Referenced by cellUniqueIdsAroundNode(), and cellUniqueIdsAroundNode().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cellUniqueIdsAroundNode() [3/4]

void Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdsAroundNode ( Int64 node_uid,
Int32 level,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of cells around the node passed as a parameter.

If there is no cell in an adjacent location (e.g., if we are at the edge of the mesh), a uniqueId of -1 is used.

The passed view must have a size of 4 in 2D or 8 in 3D.

Parameters
node_uidThe uniqueId of the node.
levelThe level of the node.
uid[OUT] The uniqueIds of the surrounding cells.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1794 of file CartesianMeshNumberingMngInternal.cc.

References cellUniqueIdsAroundNode(), nodeUniqueIdToCoordX(), nodeUniqueIdToCoordY(), and nodeUniqueIdToCoordZ().

Here is the call graph for this function:

◆ cellUniqueIdsAroundNode() [4/4]

void Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdsAroundNode ( Node node,
ArrayView< Int64 > uid )
overridevirtual

Method to retrieve the uniqueIds of cells around the node passed as a parameter.

If there is no cell in an adjacent location (e.g., if we are at the edge of the mesh), a uniqueId of -1 is used.

The passed view must have a size of 4 in 2D or 8 in 3D.

Parameters
nodeThe node.
uid[OUT] The uniqueIds of the surrounding cells.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1810 of file CartesianMeshNumberingMngInternal.cc.

References cellUniqueIdsAroundNode(), nodeLevel(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ cellUniqueIdToCoord() [1/2]

CartCoord3 Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdToCoord ( Cell cell)
overridevirtual

Method to retrieve the coordinates of a cell.

Parameters
cellThe cell.
Returns
The position of the cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 702 of file CartesianMeshNumberingMngInternal.cc.

References cellUniqueIdToCoord(), Arcane::Cell::level(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ cellUniqueIdToCoord() [2/2]

CartCoord3 Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdToCoord ( Int64 uid,
Int32 level )
overridevirtual

Method to retrieve the coordinates of a cell using its uniqueId.

Parameters
uidThe uniqueId of the cell.
levelThe level of the cell.
Returns
The position of the cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 685 of file CartesianMeshNumberingMngInternal.cc.

References firstCellUniqueId(), globalNbCellsX(), and globalNbCellsY().

Referenced by cellUniqueIdToCoord().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cellUniqueIdToCoordX() [1/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdToCoordX ( Cell cell)
overridevirtual

Method to retrieve the X coordinate of a cell.

Parameters
cellThe cell.
Returns
The X position of the cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 727 of file CartesianMeshNumberingMngInternal.cc.

References cellUniqueIdToCoordX(), Arcane::Cell::level(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ cellUniqueIdToCoordX() [2/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdToCoordX ( Int64 uid,
Int32 level )
overridevirtual

Method to retrieve the X coordinate of a cell using its uniqueId.

Parameters
uidThe uniqueId of the cell.
levelThe level of the cell.
Returns
The X position of the cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 711 of file CartesianMeshNumberingMngInternal.cc.

References firstCellUniqueId(), globalNbCellsX(), and globalNbCellsY().

Referenced by cellFaceUniqueIds(), cellNodeUniqueIds(), cellUniqueIdsAroundCell(), cellUniqueIdToCoordX(), childCellUniqueIdOfCell(), childCellUniqueIdOfCell(), and parentCellUniqueIdOfCell().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cellUniqueIdToCoordY() [1/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdToCoordY ( Cell cell)
overridevirtual

Method to retrieve the Y coordinate of a cell.

Parameters
cellThe cell.
Returns
The Y position of the cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 752 of file CartesianMeshNumberingMngInternal.cc.

References cellUniqueIdToCoordY(), Arcane::Cell::level(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ cellUniqueIdToCoordY() [2/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdToCoordY ( Int64 uid,
Int32 level )
overridevirtual

Method to retrieve the Y coordinate of a cell using its uniqueId.

Parameters
uidThe uniqueId of the cell.
levelThe level of the cell.
Returns
The Y position of the cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 736 of file CartesianMeshNumberingMngInternal.cc.

References firstCellUniqueId(), globalNbCellsX(), and globalNbCellsY().

Referenced by cellFaceUniqueIds(), cellNodeUniqueIds(), cellUniqueIdsAroundCell(), cellUniqueIdToCoordY(), childCellUniqueIdOfCell(), childCellUniqueIdOfCell(), and parentCellUniqueIdOfCell().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cellUniqueIdToCoordZ() [1/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdToCoordZ ( Cell cell)
overridevirtual

Method to retrieve the Z coordinate of a cell.

Parameters
cellThe cell.
Returns
The Z position of the cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 776 of file CartesianMeshNumberingMngInternal.cc.

References cellUniqueIdToCoordZ(), Arcane::Cell::level(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ cellUniqueIdToCoordZ() [2/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdToCoordZ ( Int64 uid,
Int32 level )
overridevirtual

Method to retrieve the Z coordinate of a cell using its uniqueId.

Parameters
uidThe uniqueId of the cell.
levelThe level of the cell.
Returns
The Z position of the cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 761 of file CartesianMeshNumberingMngInternal.cc.

References firstCellUniqueId(), globalNbCellsX(), and globalNbCellsY().

Referenced by cellFaceUniqueIds(), cellNodeUniqueIds(), cellUniqueIdsAroundCell(), cellUniqueIdToCoordZ(), childCellUniqueIdOfCell(), and parentCellUniqueIdOfCell().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ childCellOfCell() [1/2]

Cell Arcane::CartesianMeshNumberingMngInternal::childCellOfCell ( Cell cell,
CartCoord2 child_coord_in_parent )
overridevirtual

Method to retrieve a child cell of a parent cell based on the position of the child cell within the parent cell.

Parameters
cellThe parent cell.
child_coord_in_parentThe position of the child within the parent cell.
Returns
The requested child cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2180 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, childCellUniqueIdOfCell(), Arcane::Cell::hChild(), Arcane::Cell::nbHChildren(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ childCellOfCell() [2/2]

Cell Arcane::CartesianMeshNumberingMngInternal::childCellOfCell ( Cell cell,
CartCoord3 child_coord_in_parent )
overridevirtual

Method to retrieve a child cell of a parent cell based on the position of the child cell within the parent cell.

Parameters
cellThe parent cell.
child_coord_in_parentThe position of the child within the parent cell.
Returns
The requested child cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2154 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, childCellUniqueIdOfCell(), Arcane::Cell::hChild(), Arcane::Cell::nbHChildren(), and Arcane::Item::uniqueId().

Referenced by setChildNodeCoordinates(), and setParentNodeCoordinates().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ childCellUniqueIdOfCell() [1/3]

Int64 Arcane::CartesianMeshNumberingMngInternal::childCellUniqueIdOfCell ( Cell cell,
CartCoord2 child_coord_in_parent )
overridevirtual

Method to retrieve the uniqueId of a child cell of a parent cell based on the position of the child cell within the parent cell.

Parameters
cellThe parent cell.
child_coord_in_parentThe position of the child within the parent cell.
Returns
The uniqueId of the requested child cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2112 of file CartesianMeshNumberingMngInternal.cc.

References cellUniqueId(), cellUniqueIdToCoordX(), cellUniqueIdToCoordY(), Arcane::Cell::level(), offsetLevelToLevel(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ childCellUniqueIdOfCell() [2/3]

Int64 Arcane::CartesianMeshNumberingMngInternal::childCellUniqueIdOfCell ( Cell cell,
CartCoord3 child_coord_in_parent )
overridevirtual

Method to retrieve the uniqueId of a child cell of a parent cell based on the position of the child cell within the parent cell.

Parameters
cellThe parent cell.
child_coord_in_parentThe position of the child within the parent cell.
Returns
The uniqueId of the requested child cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2093 of file CartesianMeshNumberingMngInternal.cc.

References cellUniqueId(), cellUniqueIdToCoordX(), cellUniqueIdToCoordY(), cellUniqueIdToCoordZ(), Arcane::Cell::level(), offsetLevelToLevel(), and Arcane::Item::uniqueId().

Referenced by childCellOfCell(), childCellOfCell(), and childCellUniqueIdOfCell().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ childCellUniqueIdOfCell() [3/3]

Int64 Arcane::CartesianMeshNumberingMngInternal::childCellUniqueIdOfCell ( Cell cell,
Int32 child_index_in_parent )
overridevirtual

Method to retrieve the uniqueId of a child cell of a parent cell based on the index of the child cell within the parent cell.

Parameters
cellThe parent cell.
child_index_in_parentThe index of the child within the parent cell.
Returns
The uniqueId of the requested child cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2129 of file CartesianMeshNumberingMngInternal.cc.

References childCellUniqueIdOfCell().

Here is the call graph for this function:

◆ childFaceUniqueIdOfFace() [1/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::childFaceUniqueIdOfFace ( Face face,
Int32 child_index_in_parent )
overridevirtual

Method to retrieve the uniqueId of a child face of a parent face based on the index of the child face within the parent face.

Parameters
faceThe parent face.
child_index_in_parentThe index of the child within the parent face.
Returns
The uniqueId of the requested child face.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2433 of file CartesianMeshNumberingMngInternal.cc.

References childFaceUniqueIdOfFace(), faceLevel(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ childFaceUniqueIdOfFace() [2/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::childFaceUniqueIdOfFace ( Int64 uid,
Int32 level,
Int32 child_index_in_parent )
overridevirtual

Method to retrieve the uniqueId of a child face of a parent face based on the index of the child face within the parent face.

Parameters
uidThe uniqueId of the parent face.
levelThe level of the parent face.
child_index_in_parentThe index of the child within the parent face.
Returns
The uniqueId of the requested child face.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2358 of file CartesianMeshNumberingMngInternal.cc.

References _face3DNumberingThreeParts(), ARCANE_FATAL, faceOffsetLevelToLevel(), faceUniqueId(), faceUniqueIdToCoordX(), faceUniqueIdToCoordY(), faceUniqueIdToCoordZ(), globalNbFacesXCartesianView(), globalNbFacesY(), globalNbFacesYCartesianView(), and globalNbFacesZCartesianView().

Referenced by childFaceUniqueIdOfFace().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ childNodeUniqueIdOfNode() [1/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::childNodeUniqueIdOfNode ( Int64 uid,
Int32 level )
overridevirtual

Method to retrieve the uniqueId of a child node of a parent node.

Parameters
uidThe uniqueId of the child node.
levelThe level of the child node.
Returns
The uniqueId of the requested child node.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2256 of file CartesianMeshNumberingMngInternal.cc.

References nodeUniqueId(), nodeUniqueIdToCoordX(), nodeUniqueIdToCoordY(), nodeUniqueIdToCoordZ(), and offsetLevelToLevel().

Referenced by childNodeUniqueIdOfNode().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ childNodeUniqueIdOfNode() [2/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::childNodeUniqueIdOfNode ( Node node)
overridevirtual

Method to retrieve the uniqueId of a child node of a parent node.

Parameters
nodeThe parent node.
Returns
The uniqueId of the requested child node.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2274 of file CartesianMeshNumberingMngInternal.cc.

References childNodeUniqueIdOfNode(), nodeLevel(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ faceLevel()

Int32 Arcane::CartesianMeshNumberingMngInternal::faceLevel ( Int64 uid) const
overridevirtual

Method allowing the retrieval of the level of a face with its UID.

Parameters
uidThe unique ID of the face.
Returns
The level of the face.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 569 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, firstFaceUniqueId(), and nbFaceInLevel().

Referenced by childFaceUniqueIdOfFace(), faceUniqueIdToCoordX(), faceUniqueIdToCoordY(), faceUniqueIdToCoordZ(), and parentFaceUniqueIdOfFace().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ faceOffsetLevelToLevel()

CartCoord Arcane::CartesianMeshNumberingMngInternal::faceOffsetLevelToLevel ( CartCoord coord,
Int32 level_from,
Int32 level_to ) const
overridevirtual

Method to obtain the position of the first child face from the position of the parent face.

Note, the coordinates used here are the coordinates of the faces in "Cartesian view" (see globalNbFacesXCartesianView ).

Parameters
coordThe X, Y, or Z position of the parent face.
level_fromThe parent level.
level_toThe child level.
Returns
The position of the first child of the parent face.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 628 of file CartesianMeshNumberingMngInternal.cc.

References pattern().

Referenced by childFaceUniqueIdOfFace(), and parentFaceUniqueIdOfFace().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ faceUniqueId() [1/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::faceUniqueId ( CartCoord2 face_coord,
Int32 level )
overridevirtual

Method to retrieve the uniqueId of a face from its position and level.

Note, the coordinates used here are the coordinates of the faces in "Cartesian view" (see globalNbFacesXCartesianView ).

Parameters
levelThe level of the face.
cell_coordThe position of the face.
Returns
The uniqueId of the face.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1356 of file CartesianMeshNumberingMngInternal.cc.

References firstFaceUniqueId(), and globalNbFacesXCartesianView().

Here is the call graph for this function:

◆ faceUniqueId() [2/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::faceUniqueId ( CartCoord3 face_coord,
Int32 level )
overridevirtual

Method to retrieve the uniqueId of a face from its position and level.

Note, the coordinates used here are the coordinates of the faces in "Cartesian view" (see globalNbFacesXCartesianView ).

Parameters
levelThe level of the face.
cell_coordThe position of the face.
Returns
The uniqueId of the face.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1268 of file CartesianMeshNumberingMngInternal.cc.

References _face3DNumberingThreeParts(), ARCANE_FATAL, firstFaceUniqueId(), globalNbCellsX(), globalNbCellsY(), globalNbFacesX(), and globalNbFacesY().

Referenced by childFaceUniqueIdOfFace(), and parentFaceUniqueIdOfFace().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ faceUniqueIdToCoordX() [1/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::faceUniqueIdToCoordX ( Face face)
overridevirtual

Method to retrieve the X coordinate of a face.

Note, the coordinates used here are the coordinates of the faces in "Cartesian view" (see globalNbFacesXCartesianView ).

Parameters
faceThe face.
Returns
The X position of the face.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 975 of file CartesianMeshNumberingMngInternal.cc.

References faceLevel(), faceUniqueIdToCoordX(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ faceUniqueIdToCoordX() [2/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::faceUniqueIdToCoordX ( Int64 uid,
Int32 level )
overridevirtual

Method to retrieve the X coordinate of a face using its uniqueId.

Note, the coordinates used here are the coordinates of the faces in "Cartesian view" (see globalNbFacesXCartesianView ).

Parameters
uidThe uniqueId of the face.
levelThe level of the face.
Returns
The X position of the face.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 862 of file CartesianMeshNumberingMngInternal.cc.

References _face3DNumberingThreeParts(), firstFaceUniqueId(), globalNbCellsX(), globalNbFacesX(), and globalNbFacesXCartesianView().

Referenced by childFaceUniqueIdOfFace(), faceUniqueIdToCoordX(), and parentFaceUniqueIdOfFace().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ faceUniqueIdToCoordY() [1/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::faceUniqueIdToCoordY ( Face face)
overridevirtual

Method to retrieve the Y coordinate of a face.

Note, the coordinates used here are the coordinates of the faces in "Cartesian view" (see globalNbFacesXCartesianView ).

Parameters
faceThe face.
Returns
The Y position of the face.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1108 of file CartesianMeshNumberingMngInternal.cc.

References faceLevel(), faceUniqueIdToCoordY(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ faceUniqueIdToCoordY() [2/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::faceUniqueIdToCoordY ( Int64 uid,
Int32 level )
overridevirtual

Method to retrieve the Y coordinate of a face using its uniqueId.

Note, the coordinates used here are the coordinates of the faces in "Cartesian view" (see globalNbFacesXCartesianView ).

Parameters
uidThe uniqueId of the face.
levelThe level of the face.
Returns
The Y position of the face.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 985 of file CartesianMeshNumberingMngInternal.cc.

References _face3DNumberingThreeParts(), firstFaceUniqueId(), globalNbCellsX(), globalNbCellsY(), globalNbFacesX(), globalNbFacesXCartesianView(), and globalNbFacesY().

Referenced by childFaceUniqueIdOfFace(), faceUniqueIdToCoordY(), and parentFaceUniqueIdOfFace().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ faceUniqueIdToCoordZ() [1/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::faceUniqueIdToCoordZ ( Face face)
overridevirtual

Method to retrieve the Z coordinate of a face.

Note, the coordinates used here are the coordinates of the faces in "Cartesian view" (see globalNbFacesXCartesianView ).

Parameters
faceThe face.
Returns
The Z position of the face.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1208 of file CartesianMeshNumberingMngInternal.cc.

References faceLevel(), faceUniqueIdToCoordZ(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ faceUniqueIdToCoordZ() [2/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::faceUniqueIdToCoordZ ( Int64 uid,
Int32 level )
overridevirtual

Method to retrieve the Z coordinate of a face using its uniqueId.

Note, the coordinates used here are the coordinates of the faces in "Cartesian view" (see globalNbFacesXCartesianView ).

Parameters
uidThe uniqueId of the face.
levelThe level of the face.
Returns
The Z position of the face.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1118 of file CartesianMeshNumberingMngInternal.cc.

References _face3DNumberingThreeParts(), firstFaceUniqueId(), globalNbCellsX(), globalNbCellsY(), globalNbFacesX(), and globalNbFacesY().

Referenced by childFaceUniqueIdOfFace(), faceUniqueIdToCoordZ(), and parentFaceUniqueIdOfFace().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ firstCellUniqueId()

Int64 Arcane::CartesianMeshNumberingMngInternal::firstCellUniqueId ( Int32 level) const
overridevirtual

Method allowing the retrieval of the first unique ID used by the cells of a level. Calling this method with level and level+1 allows retrieving the unique ID interval of a level.

Parameters
levelThe level.
Returns
The first cell UID of the level.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 326 of file CartesianMeshNumberingMngInternal.cc.

Referenced by cellLevel(), cellUniqueId(), cellUniqueId(), cellUniqueIdToCoord(), cellUniqueIdToCoordX(), cellUniqueIdToCoordY(), cellUniqueIdToCoordZ(), printStatus(), and updateFirstLevel().

Here is the caller graph for this function:

◆ firstFaceUniqueId()

Int64 Arcane::CartesianMeshNumberingMngInternal::firstFaceUniqueId ( Int32 level) const
overridevirtual

Method allowing the retrieval of the first unique ID used by the faces of a level. Calling this method with level and level+1 allows retrieving the unique ID interval of a level.

Parameters
levelThe level.
Returns
The first face UID of the level.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 344 of file CartesianMeshNumberingMngInternal.cc.

Referenced by cellFaceUniqueIds(), cellFaceUniqueIds(), faceLevel(), faceUniqueId(), faceUniqueId(), faceUniqueIdToCoordX(), faceUniqueIdToCoordY(), faceUniqueIdToCoordZ(), and printStatus().

Here is the caller graph for this function:

◆ firstNodeUniqueId()

Int64 Arcane::CartesianMeshNumberingMngInternal::firstNodeUniqueId ( Int32 level) const
overridevirtual

Method allowing the retrieval of the first unique ID used by the nodes of a level. Calling this method with level and level+1 allows retrieving the unique ID interval of a level.

Parameters
levelThe level.
Returns
The first node UID of the level.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 335 of file CartesianMeshNumberingMngInternal.cc.

Referenced by cellNodeUniqueIds(), cellNodeUniqueIds(), nodeLevel(), nodeUniqueId(), nodeUniqueId(), nodeUniqueIdToCoordX(), nodeUniqueIdToCoordY(), nodeUniqueIdToCoordZ(), and printStatus().

Here is the caller graph for this function:

◆ globalNbCellsX()

CartCoord Arcane::CartesianMeshNumberingMngInternal::globalNbCellsX ( Int32 level) const
overridevirtual

Method allowing the retrieval of the global number of cells in X for a level.

Parameters
levelThe level.
Returns
The number of cells in X.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 353 of file CartesianMeshNumberingMngInternal.cc.

Referenced by _face3DNumberingThreeParts(), cellFaceUniqueIds(), cellFaceUniqueIds(), cellUniqueId(), cellUniqueId(), cellUniqueIdsAroundCell(), cellUniqueIdsAroundCell(), cellUniqueIdsAroundNode(), cellUniqueIdsAroundNode(), cellUniqueIdToCoord(), cellUniqueIdToCoordX(), cellUniqueIdToCoordY(), cellUniqueIdToCoordZ(), faceUniqueId(), faceUniqueIdToCoordX(), faceUniqueIdToCoordY(), faceUniqueIdToCoordZ(), globalNbFacesX(), globalNbFacesXCartesianView(), globalNbNodesX(), nbCellInLevel(), nbFaceInLevel(), nbNodeInLevel(), and parentCellUniqueIdOfCell().

Here is the caller graph for this function:

◆ globalNbCellsY()

CartCoord Arcane::CartesianMeshNumberingMngInternal::globalNbCellsY ( Int32 level) const
overridevirtual

Method allowing the retrieval of the global number of cells in Y for a level.

Parameters
levelThe level.
Returns
The number of cells in Y.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 362 of file CartesianMeshNumberingMngInternal.cc.

Referenced by _face3DNumberingThreeParts(), cellFaceUniqueIds(), cellUniqueId(), cellUniqueIdsAroundCell(), cellUniqueIdsAroundCell(), cellUniqueIdsAroundNode(), cellUniqueIdsAroundNode(), cellUniqueIdToCoord(), cellUniqueIdToCoordX(), cellUniqueIdToCoordY(), cellUniqueIdToCoordZ(), faceUniqueId(), faceUniqueIdToCoordY(), faceUniqueIdToCoordZ(), globalNbFacesY(), globalNbFacesYCartesianView(), globalNbNodesY(), nbCellInLevel(), nbFaceInLevel(), and nbNodeInLevel().

Here is the caller graph for this function:

◆ globalNbCellsZ()

CartCoord Arcane::CartesianMeshNumberingMngInternal::globalNbCellsZ ( Int32 level) const
overridevirtual

Method allowing the retrieval of the global number of cells in Z for a level.

Parameters
levelThe level.
Returns
The number of cells in Z.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 371 of file CartesianMeshNumberingMngInternal.cc.

Referenced by _face3DNumberingThreeParts(), cellFaceUniqueIds(), cellUniqueIdsAroundCell(), cellUniqueIdsAroundNode(), globalNbFacesZ(), globalNbFacesZCartesianView(), globalNbNodesZ(), nbCellInLevel(), nbFaceInLevel(), and nbNodeInLevel().

Here is the caller graph for this function:

◆ globalNbFacesX()

CartCoord Arcane::CartesianMeshNumberingMngInternal::globalNbFacesX ( Int32 level) const
overridevirtual

Method allowing the retrieval of the global number of faces in X for a level.

Suppose we have the following faces: ┌─0──┬──2─┐ 4│ 6│ 8│ ├─5──┼─7──┤ 9│ 11│ 13│ └─10─┴─12─┘

So, we have 2x2 cells. In X, we have 3 faces.

For the number of faces in Cartesian view, see globalNbFacesXCartesianView.

Parameters
levelThe level.
Returns
The number of faces in X.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 407 of file CartesianMeshNumberingMngInternal.cc.

References globalNbCellsX().

Referenced by faceUniqueId(), faceUniqueIdToCoordX(), faceUniqueIdToCoordY(), and faceUniqueIdToCoordZ().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ globalNbFacesXCartesianView()

CartCoord Arcane::CartesianMeshNumberingMngInternal::globalNbFacesXCartesianView ( Int32 level) const
overridevirtual

Method allowing the retrieval of the size of the "Cartesian grid" view containing the faces.

In 2D, this view can be: (for a 2x2 cell mesh): x = 0 1 2 3 4 ┌──┬──┬──┬──┬──┐ y = -1 │ 0│ │ 2│ │ 4│ ┌──┬──┬──┬──┬──┐ y = 0 │ │ 1│ │ 3│ │ ├──┼──┼──┼──┼──┤ y = 1 │ 5│ │ 7│ │ 9│ ├──┼──┼──┼──┼──┤ y = 2 │ │ 6│ │ 8│ │ ├──┼──┼──┼──┼──┤ y = 3 │10│ │12│ │14│ ├──┼──┼──┼──┼──┤ y = 4 │ │11│ │13│ │ └──┴──┴──┴──┴──┘ (in this view, the cells are located at odd X and Y (so here, [1, 1], [3, 1], [1, 3] and [3, 3])).

Note
In 2D, it is considered that there is an imaginary level y=-1.
Warning
In order to start the numbering at 0, in the methods returning a 2D face unique ID, we use FaceUID-1.

And in 3D (for a 2x2x2 cell mesh): z = 0 │ z = 1 │ z = 2 │ z = 3 │ z = 4 x = 0 1 2 3 4 │ 0 1 2 3 4 │ 0 1 2 3 4 │ 0 1 2 3 4 │ 0 1 2 3 4 ┌──┬──┬──┬──┬──┐ │ ┌──┬──┬──┬──┬──┐ │ ┌──┬──┬──┬──┬──┐ │ ┌──┬──┬──┬──┬──┐ │ ┌──┬──┬──┬──┬──┐ y = 0 │ │ │ │ │ │ │ │ │12│ │13│ │ │ │ │ │ │ │ │ │ │ │18│ │19│ │ │ │ │ │ │ │ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ y = 1 │ │24│ │25│ │ │ │ 0│ │ 1│ │ 2│ │ │ │28│ │29│ │ │ │ 6│ │ 7│ │ 8│ │ │ │32│ │33│ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ y = 2 │ │ │ │ │ │ │ │ │14│ │15│ │ │ │ │ │ │ │ │ │ │ │20│ │21│ │ │ │ │ │ │ │ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ y = 3 │ │26│ │27│ │ │ │ 3│ │ 4│ │ 5│ │ │ │30│ │31│ │ │ │ 9│ │10│ │11│ │ │ │34│ │35│ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ │ ├──┼──┼──┼──┼──┤ y = 4 │ │ │ │ │ │ │ │ │16│ │17│ │ │ │ │ │ │ │ │ │ │ │22│ │23│ │ │ │ │ │ │ │ │ └──┴──┴──┴──┴──┘ │ └──┴──┴──┴──┴──┘ │ └──┴──┴──┴──┴──┘ │ └──┴──┴──┴──┴──┘ │ └──┴──┴──┴──┴──┘ │ │ │ │

(in this view, the cells are located at odd X, Y, and Z (so here, [1, 1, 1], [3, 1, 1], [1, 3, 1], etc.)).

Parameters
levelThe level.
Returns
The size of the grid in X.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 434 of file CartesianMeshNumberingMngInternal.cc.

References globalNbCellsX().

Referenced by childFaceUniqueIdOfFace(), faceUniqueId(), faceUniqueIdToCoordX(), faceUniqueIdToCoordY(), and parentFaceUniqueIdOfFace().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ globalNbFacesY()

CartCoord Arcane::CartesianMeshNumberingMngInternal::globalNbFacesY ( Int32 level) const
overridevirtual

Method allowing the retrieval of the global number of faces in Y for a level.

Suppose we have the following faces: ┌─0──┬──2─┐ 4│ 6│ 8│ ├─5──┼─7──┤ 9│ 11│ 13│ └─10─┴─12─┘

So, we have 2x2 cells. In Y, we have 3 faces.

For the number of faces in Cartesian view, see globalNbFacesYCartesianView.

Parameters
levelThe level.
Returns
The number of faces in Y.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 416 of file CartesianMeshNumberingMngInternal.cc.

References globalNbCellsY().

Referenced by childFaceUniqueIdOfFace(), faceUniqueId(), faceUniqueIdToCoordY(), and faceUniqueIdToCoordZ().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ globalNbFacesYCartesianView()

CartCoord Arcane::CartesianMeshNumberingMngInternal::globalNbFacesYCartesianView ( Int32 level) const
overridevirtual

Method allowing the retrieval of the size of the "Cartesian grid" view containing the faces.

An example of this view is available in the documentation of globalNbFacesXCartesianView.

Parameters
levelThe level.
Returns
The size of the grid in Y.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 443 of file CartesianMeshNumberingMngInternal.cc.

References globalNbCellsY().

Referenced by childFaceUniqueIdOfFace(), and parentFaceUniqueIdOfFace().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ globalNbFacesZ()

CartCoord Arcane::CartesianMeshNumberingMngInternal::globalNbFacesZ ( Int32 level) const
overridevirtual

Method allowing the retrieval of the global number of faces in Z for a level.

Suppose we have the following faces: ┌─0──┬──2─┐ 4│ 6│ 8│ ├─5──┼─7──┤ 9│ 11│ 13│ └─10─┴─12─┘

If we have 2x2x2 cells, we will have 3 faces in Z.

For the number of faces in Cartesian view, see globalNbFacesZCartesianView.

Parameters
levelThe level.
Returns
The number of faces in Z.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 425 of file CartesianMeshNumberingMngInternal.cc.

References globalNbCellsZ().

Here is the call graph for this function:

◆ globalNbFacesZCartesianView()

CartCoord Arcane::CartesianMeshNumberingMngInternal::globalNbFacesZCartesianView ( Int32 level) const
overridevirtual

Method allowing the retrieval of the size of the "Cartesian grid" view containing the faces.

An example of this view is available in the documentation of globalNbFacesXCartesianView.

Parameters
levelThe level.
Returns
The size of the grid in Z.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 452 of file CartesianMeshNumberingMngInternal.cc.

References globalNbCellsZ().

Referenced by childFaceUniqueIdOfFace(), and parentFaceUniqueIdOfFace().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ globalNbNodesX()

CartCoord Arcane::CartesianMeshNumberingMngInternal::globalNbNodesX ( Int32 level) const
overridevirtual

Method allowing the retrieval of the global number of nodes in X for a level.

Parameters
levelThe level.
Returns
The number of nodes in X.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 380 of file CartesianMeshNumberingMngInternal.cc.

References globalNbCellsX().

Referenced by cellNodeUniqueIds(), cellNodeUniqueIds(), nodeUniqueId(), nodeUniqueId(), nodeUniqueIdToCoordX(), nodeUniqueIdToCoordY(), and nodeUniqueIdToCoordZ().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ globalNbNodesY()

CartCoord Arcane::CartesianMeshNumberingMngInternal::globalNbNodesY ( Int32 level) const
overridevirtual

Method allowing the retrieval of the global number of nodes in Y for a level.

Parameters
levelThe level.
Returns
The number of nodes in Y.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 389 of file CartesianMeshNumberingMngInternal.cc.

References globalNbCellsY().

Referenced by cellNodeUniqueIds(), nodeUniqueId(), nodeUniqueIdToCoordX(), nodeUniqueIdToCoordY(), and nodeUniqueIdToCoordZ().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ globalNbNodesZ()

CartCoord Arcane::CartesianMeshNumberingMngInternal::globalNbNodesZ ( Int32 level) const
overridevirtual

Method allowing the retrieval of the global number of nodes in Z for a level.

Parameters
levelThe level.
Returns
The number of nodes in Z.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 398 of file CartesianMeshNumberingMngInternal.cc.

References globalNbCellsZ().

Here is the call graph for this function:

◆ nbCellInLevel()

Int64 Arcane::CartesianMeshNumberingMngInternal::nbCellInLevel ( Int32 level) const
overridevirtual

Method allowing the retrieval of the total number of cells in a level.

Parameters
levelThe level.
Returns
The number of cells in the level.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 461 of file CartesianMeshNumberingMngInternal.cc.

References globalNbCellsX(), globalNbCellsY(), and globalNbCellsZ().

Referenced by cellLevel(), prepareLevel(), and printStatus().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nbFaceByCell()

Int32 Arcane::CartesianMeshNumberingMngInternal::nbFaceByCell ( )
overridevirtual

Method to retrieve the number of faces in a cell.

Returns
The number of faces in a cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1483 of file CartesianMeshNumberingMngInternal.cc.

Referenced by cellFaceUniqueIds(), cellFaceUniqueIds(), and renumberingFacesLevel0FromOriginalArcaneNumbering().

Here is the caller graph for this function:

◆ nbFaceInLevel()

Int64 Arcane::CartesianMeshNumberingMngInternal::nbFaceInLevel ( Int32 level) const
overridevirtual

Method allowing the retrieval of the total number of faces in a level.

Parameters
levelThe level.
Returns
The number of faces in the level.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 491 of file CartesianMeshNumberingMngInternal.cc.

References globalNbCellsX(), globalNbCellsY(), and globalNbCellsZ().

Referenced by faceLevel(), prepareLevel(), and printStatus().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nbNodeByCell()

Int32 Arcane::CartesianMeshNumberingMngInternal::nbNodeByCell ( )
overridevirtual

Method to retrieve the number of nodes in a cell.

Returns
The number of nodes in a cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1392 of file CartesianMeshNumberingMngInternal.cc.

Referenced by cellNodeUniqueIds(), cellNodeUniqueIds(), and setChildNodeCoordinates().

Here is the caller graph for this function:

◆ nbNodeInLevel()

Int64 Arcane::CartesianMeshNumberingMngInternal::nbNodeInLevel ( Int32 level) const
overridevirtual

Method allowing the retrieval of the total number of nodes in a level.

Parameters
levelThe level.
Returns
The number of nodes in the level.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 476 of file CartesianMeshNumberingMngInternal.cc.

References globalNbCellsX(), globalNbCellsY(), and globalNbCellsZ().

Referenced by nodeLevel(), prepareLevel(), and printStatus().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nodeLevel()

Int32 Arcane::CartesianMeshNumberingMngInternal::nodeLevel ( Int64 uid) const
overridevirtual

Method allowing the retrieval of the level of a node with its UID.

Parameters
uidThe unique ID of the node.
Returns
The level of the node.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 542 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, firstNodeUniqueId(), and nbNodeInLevel().

Referenced by cellUniqueIdsAroundNode(), childNodeUniqueIdOfNode(), nodeUniqueIdToCoordX(), nodeUniqueIdToCoordY(), nodeUniqueIdToCoordZ(), and parentNodeUniqueIdOfNode().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nodeUniqueId() [1/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::nodeUniqueId ( CartCoord2 node_coord,
Int32 level )
overridevirtual

Method to retrieve the uniqueId of a node from its position and level.

Parameters
levelThe level of the node.
cell_coordThe position of the node.
Returns
The uniqueId of the node.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1256 of file CartesianMeshNumberingMngInternal.cc.

References firstNodeUniqueId(), and globalNbNodesX().

Here is the call graph for this function:

◆ nodeUniqueId() [2/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::nodeUniqueId ( CartCoord3 node_coord,
Int32 level )
overridevirtual

Method to retrieve the uniqueId of a node from its position and level.

Parameters
levelThe level of the node.
cell_coordThe position of the node.
Returns
The uniqueId of the node.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1243 of file CartesianMeshNumberingMngInternal.cc.

References firstNodeUniqueId(), globalNbNodesX(), and globalNbNodesY().

Referenced by childNodeUniqueIdOfNode(), and parentNodeUniqueIdOfNode().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nodeUniqueIdToCoordX() [1/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::nodeUniqueIdToCoordX ( Int64 uid,
Int32 level )
overridevirtual

Method to retrieve the X coordinate of a node using its uniqueId.

Parameters
uidThe uniqueId of the node.
levelThe level of the node.
Returns
The X position of the node.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 785 of file CartesianMeshNumberingMngInternal.cc.

References firstNodeUniqueId(), globalNbNodesX(), and globalNbNodesY().

Referenced by cellUniqueIdsAroundNode(), childNodeUniqueIdOfNode(), nodeUniqueIdToCoordX(), and parentNodeUniqueIdOfNode().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nodeUniqueIdToCoordX() [2/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::nodeUniqueIdToCoordX ( Node node)
overridevirtual

Method to retrieve the X coordinate of a node.

Parameters
nodeThe node.
Returns
The X position of the node.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 801 of file CartesianMeshNumberingMngInternal.cc.

References nodeLevel(), nodeUniqueIdToCoordX(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ nodeUniqueIdToCoordY() [1/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::nodeUniqueIdToCoordY ( Int64 uid,
Int32 level )
overridevirtual

Method to retrieve the Y coordinate of a node using its uniqueId.

Parameters
uidThe uniqueId of the node.
levelThe level of the node.
Returns
The Y position of the node.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 811 of file CartesianMeshNumberingMngInternal.cc.

References firstNodeUniqueId(), globalNbNodesX(), and globalNbNodesY().

Referenced by cellUniqueIdsAroundNode(), childNodeUniqueIdOfNode(), nodeUniqueIdToCoordY(), and parentNodeUniqueIdOfNode().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nodeUniqueIdToCoordY() [2/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::nodeUniqueIdToCoordY ( Node node)
overridevirtual

Method to retrieve the Y coordinate of a node.

Parameters
nodeThe node.
Returns
The Y position of the node.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 827 of file CartesianMeshNumberingMngInternal.cc.

References nodeLevel(), nodeUniqueIdToCoordY(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ nodeUniqueIdToCoordZ() [1/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::nodeUniqueIdToCoordZ ( Int64 uid,
Int32 level )
overridevirtual

Method to retrieve the Z coordinate of a node using its uniqueId.

Parameters
uidThe uniqueId of the node.
levelThe level of the node.
Returns
The Z position of the node.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 837 of file CartesianMeshNumberingMngInternal.cc.

References firstNodeUniqueId(), globalNbNodesX(), and globalNbNodesY().

Referenced by cellUniqueIdsAroundNode(), childNodeUniqueIdOfNode(), nodeUniqueIdToCoordZ(), and parentNodeUniqueIdOfNode().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nodeUniqueIdToCoordZ() [2/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::nodeUniqueIdToCoordZ ( Node node)
overridevirtual

Method to retrieve the Z coordinate of a node.

Parameters
nodeThe node.
Returns
The Z position of the node.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 852 of file CartesianMeshNumberingMngInternal.cc.

References nodeLevel(), nodeUniqueIdToCoordZ(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ offsetLevelToLevel() [1/2]

CartCoord Arcane::CartesianMeshNumberingMngInternal::offsetLevelToLevel ( CartCoord coord,
Int32 level_from,
Int32 level_to ) const
overridevirtual

Method allowing the retrieval of the position of the first child node/cell from the position of the parent node/cell.

Example: if we have a 2D mesh of 2*2 cells and a refinement pattern of 2, we know that the level 1 grid (for level 1 patches) will be 4*4 cells. The first child node/cell of the parent node/cell (Xp=1,Yp=0) will have the position Xf=Xp*Pattern=2 (same for Y).

Parameters
coordThe X, Y, or Z position of the parent node/cell.
level_fromThe parent level.
level_toThe child level.
Returns
The position of the first child of the parent node/cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 597 of file CartesianMeshNumberingMngInternal.cc.

Referenced by childCellUniqueIdOfCell(), childCellUniqueIdOfCell(), childNodeUniqueIdOfNode(), parentCellUniqueIdOfCell(), and parentNodeUniqueIdOfNode().

Here is the caller graph for this function:

◆ offsetLevelToLevel() [2/2]

CartCoord3 Arcane::CartesianMeshNumberingMngInternal::offsetLevelToLevel ( CartCoord3 coord,
Int32 level_from,
Int32 level_to ) const
overridevirtual

Method to obtain the position of the first child node/cell from the position of the parent node/cell.

Example: if we have a 2D mesh of 2*2 cells and a refinement pattern of 2, we know that the level 1 grid (for level 1 patches) will be 4*4 cells. The first child node/cell of the parent node/cell (Xp=1,Yp=0) will have the position Xf=Xp*Pattern=2 (same for Y).

Parameters
coordThe position of the parent node/cell.
level_fromThe parent level.
level_toThe child level.
Returns
The position of the first child of the parent node/cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 612 of file CartesianMeshNumberingMngInternal.cc.

◆ parentCellUniqueIdOfCell() [1/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::parentCellUniqueIdOfCell ( Cell cell,
bool do_fatal )
overridevirtual

Method to retrieve the uniqueId of a cell's parent.

If do_fatal is true, a fatal error is generated if the parent does not exist; otherwise, the returned uniqueId has the value NULL_ITEM_UNIQUE_ID.

Parameters
cellThe child cell.
Returns
The uniqueId of the parent cell of the cell passed as a parameter.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2084 of file CartesianMeshNumberingMngInternal.cc.

References Arcane::Cell::level(), parentCellUniqueIdOfCell(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ parentCellUniqueIdOfCell() [2/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::parentCellUniqueIdOfCell ( Int64 uid,
Int32 level,
bool do_fatal )
overridevirtual

Method to retrieve the uniqueId of a cell's parent.

If do_fatal is true, a fatal error is generated if the parent does not exist; otherwise, the returned uniqueId has the value NULL_ITEM_UNIQUE_ID.

Parameters
uidThe uniqueId of the child cell.
levelThe level of the child cell.
Returns
The uniqueId of the parent cell of the cell passed as a parameter.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2054 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, cellUniqueId(), cellUniqueIdToCoordX(), cellUniqueIdToCoordY(), cellUniqueIdToCoordZ(), globalNbCellsX(), and offsetLevelToLevel().

Referenced by parentCellUniqueIdOfCell().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ parentFaceUniqueIdOfFace() [1/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::parentFaceUniqueIdOfFace ( Face face,
bool do_fatal )
overridevirtual

Method to retrieve the uniqueId of a face's parent.

If do_fatal is true, a fatal error is generated if the parent does not exist; otherwise, the returned uniqueId has the value NULL_ITEM_UNIQUE_ID.

Parameters
faceThe child face.
Returns
The uniqueId of the parent face of the face passed as a parameter.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2348 of file CartesianMeshNumberingMngInternal.cc.

References faceLevel(), parentFaceUniqueIdOfFace(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ parentFaceUniqueIdOfFace() [2/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::parentFaceUniqueIdOfFace ( Int64 uid,
Int32 level,
bool do_fatal )
overridevirtual

Method to retrieve the uniqueId of a face's parent.

If do_fatal is true, a fatal error is generated if the parent does not exist; otherwise, the returned uniqueId has the value NULL_ITEM_UNIQUE_ID.

Parameters
uidThe uniqueId of the child face.
levelThe level of the child face.
Returns
The uniqueId of the parent face of the child face.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2284 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, faceOffsetLevelToLevel(), faceUniqueId(), faceUniqueIdToCoordX(), faceUniqueIdToCoordY(), faceUniqueIdToCoordZ(), globalNbFacesXCartesianView(), globalNbFacesYCartesianView(), and globalNbFacesZCartesianView().

Referenced by parentFaceUniqueIdOfFace().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ parentNodeUniqueIdOfNode() [1/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::parentNodeUniqueIdOfNode ( Int64 uid,
Int32 level,
bool do_fatal )
overridevirtual

Method to retrieve the uniqueId of a node's parent.

If do_fatal is true, a fatal error is generated if the parent does not exist; otherwise, the returned uniqueId has the value NULL_ITEM_UNIQUE_ID.

Parameters
uidThe uniqueId of the child node.
levelThe level of the child node.
Returns
The uniqueId of the parent node of the child node.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2206 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, nodeUniqueId(), nodeUniqueIdToCoordX(), nodeUniqueIdToCoordY(), nodeUniqueIdToCoordZ(), and offsetLevelToLevel().

Referenced by parentNodeUniqueIdOfNode().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ parentNodeUniqueIdOfNode() [2/2]

Int64 Arcane::CartesianMeshNumberingMngInternal::parentNodeUniqueIdOfNode ( Node node,
bool do_fatal )
overridevirtual

Method to retrieve the uniqueId of a node's parent.

If do_fatal is true, a fatal error is generated if the parent does not exist; otherwise, the returned uniqueId has the value NULL_ITEM_UNIQUE_ID.

Parameters
nodeThe child node.
Returns
The uniqueId of the parent node of the node passed as a parameter.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2246 of file CartesianMeshNumberingMngInternal.cc.

References nodeLevel(), parentNodeUniqueIdOfNode(), and Arcane::Item::uniqueId().

Here is the call graph for this function:

◆ pattern()

Int32 Arcane::CartesianMeshNumberingMngInternal::pattern ( ) const
overridevirtual

Method allowing the retrieval of the refinement pattern used in each cell. For example, if the pattern is 2, each parent cell will have 2*2 child cells (2*2*2 in 3D).

Returns
The refinement pattern.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 506 of file CartesianMeshNumberingMngInternal.cc.

Referenced by faceOffsetLevelToLevel().

Here is the caller graph for this function:

◆ prepareLevel()

void Arcane::CartesianMeshNumberingMngInternal::prepareLevel ( Int32 level)
overridevirtual

Method allowing the preparation of a new level.

Before refining or coarsening cells, it is necessary to call this method to prepare the object to provide information concerning the new level.

It should also be noted that this new level must be the level directly superior to the highest existing level or directly inferior to the lowest existing level.

Parameters
levelThe new level to prepare.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 247 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, nbCellInLevel(), nbFaceInLevel(), and nbNodeInLevel().

Here is the call graph for this function:

◆ printStatus()

void Arcane::CartesianMeshNumberingMngInternal::printStatus ( )
overridevirtual

Method allowing the description of the object's state.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 201 of file CartesianMeshNumberingMngInternal.cc.

References firstCellUniqueId(), firstFaceUniqueId(), firstNodeUniqueId(), Arcane::ITraceMng::info(), Arcane::MD_DirX, Arcane::MD_DirY, Arcane::MD_DirZ, nbCellInLevel(), nbFaceInLevel(), and nbNodeInLevel().

Here is the call graph for this function:

◆ recreateFromDump()

void Arcane::CartesianMeshNumberingMngInternal::recreateFromDump ( )
overridevirtual

◆ renumberingFacesLevel0FromOriginalArcaneNumbering()

void Arcane::CartesianMeshNumberingMngInternal::renumberingFacesLevel0FromOriginalArcaneNumbering ( )
overridevirtual

Method allowing the renumbering of level 0 faces.

This allows avoiding unique ID conversions during certain operations on the faces and thus freeing the structures that map between the two numbering schemes.

Since these structures are not shared between subdomains, renumbering allows partitioning the mesh without problems.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 172 of file CartesianMeshNumberingMngInternal.cc.

References cellFaceUniqueIds(), ENUMERATE_, Arcane::TraceAccessor::info(), and nbFaceByCell().

Here is the call graph for this function:

◆ saveInfosInProperties()

void Arcane::CartesianMeshNumberingMngInternal::saveInfosInProperties ( )
overridevirtual

◆ setChildNodeCoordinates()

void Arcane::CartesianMeshNumberingMngInternal::setChildNodeCoordinates ( Cell parent_cell)
overridevirtual

Method to define the spatial coordinates of the nodes of child cells of a parent cell. This method must be called after calling endUpdate().

Parameters
parent_cellThe parent cell.

Lambda function to determine the position of a child node in a parent cell.

Lambda function to determine the position of a child node in a parent cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 1819 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, childCellOfCell(), Arcane::ItemBase::flags(), Arcane::ItemFlags::II_JustRefined, Arcane::Item::itemBase(), nbNodeByCell(), Arcane::ItemWithNodes::node(), Arcane::Real3POD::x, Arcane::Real3POD::y, and Arcane::Real3POD::z.

Here is the call graph for this function:

◆ setParentNodeCoordinates()

void Arcane::CartesianMeshNumberingMngInternal::setParentNodeCoordinates ( Cell parent_cell)
overridevirtual

Method to define the spatial coordinates of the nodes of a parent cell. This method must be called after calling endUpdate().

Parameters
parent_cellThe parent cell.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 2022 of file CartesianMeshNumberingMngInternal.cc.

References ARCANE_FATAL, childCellOfCell(), Arcane::ItemBase::flags(), Arcane::ItemFlags::II_JustAdded, Arcane::Item::itemBase(), and Arcane::ItemWithNodes::node().

Here is the call graph for this function:

◆ updateFirstLevel()

void Arcane::CartesianMeshNumberingMngInternal::updateFirstLevel ( )
overridevirtual

Method allowing the update of the first level.

Indeed, during coarsening, the new level is level -1. Since Arcane does not like negative levels, we must update the information so that there are none.

Implements Arcane::ICartesianMeshNumberingMngInternal.

Definition at line 276 of file CartesianMeshNumberingMngInternal.cc.

References firstCellUniqueId().

Here is the call graph for this function:

Member Data Documentation

◆ m_converting_numbering_face

bool Arcane::CartesianMeshNumberingMngInternal::m_converting_numbering_face
private

Definition at line 222 of file CartesianMeshNumberingMngInternal.h.

◆ m_dimension

Integer Arcane::CartesianMeshNumberingMngInternal::m_dimension
private

Definition at line 203 of file CartesianMeshNumberingMngInternal.h.

◆ m_face_new_numbering_to_ori

std::unordered_map<Int64, Int64> Arcane::CartesianMeshNumberingMngInternal::m_face_new_numbering_to_ori
private

Definition at line 225 of file CartesianMeshNumberingMngInternal.h.

◆ m_face_ori_numbering_to_new

std::unordered_map<Int64, Int64> Arcane::CartesianMeshNumberingMngInternal::m_face_ori_numbering_to_new
private

Definition at line 224 of file CartesianMeshNumberingMngInternal.h.

◆ m_first_cell_uid_level

UniqueArray<Int64> Arcane::CartesianMeshNumberingMngInternal::m_first_cell_uid_level
private

Definition at line 211 of file CartesianMeshNumberingMngInternal.h.

◆ m_first_face_uid_level

UniqueArray<Int64> Arcane::CartesianMeshNumberingMngInternal::m_first_face_uid_level
private

Definition at line 217 of file CartesianMeshNumberingMngInternal.h.

◆ m_first_node_uid_level

UniqueArray<Int64> Arcane::CartesianMeshNumberingMngInternal::m_first_node_uid_level
private

Definition at line 214 of file CartesianMeshNumberingMngInternal.h.

◆ m_latest_cell_uid

Int64 Arcane::CartesianMeshNumberingMngInternal::m_latest_cell_uid
private

Definition at line 210 of file CartesianMeshNumberingMngInternal.h.

◆ m_latest_face_uid

Int64 Arcane::CartesianMeshNumberingMngInternal::m_latest_face_uid
private

Definition at line 216 of file CartesianMeshNumberingMngInternal.h.

◆ m_latest_node_uid

Int64 Arcane::CartesianMeshNumberingMngInternal::m_latest_node_uid
private

Definition at line 213 of file CartesianMeshNumberingMngInternal.h.

◆ m_max_level

Int32 Arcane::CartesianMeshNumberingMngInternal::m_max_level
private

Definition at line 207 of file CartesianMeshNumberingMngInternal.h.

◆ m_mesh

IMesh* Arcane::CartesianMeshNumberingMngInternal::m_mesh
private

Definition at line 199 of file CartesianMeshNumberingMngInternal.h.

◆ m_min_level

Int32 Arcane::CartesianMeshNumberingMngInternal::m_min_level
private

Definition at line 208 of file CartesianMeshNumberingMngInternal.h.

◆ m_nb_cell_ground

CartCoord3 Arcane::CartesianMeshNumberingMngInternal::m_nb_cell_ground
private

Definition at line 219 of file CartesianMeshNumberingMngInternal.h.

◆ m_ori_level

Int32 Arcane::CartesianMeshNumberingMngInternal::m_ori_level
private

Definition at line 223 of file CartesianMeshNumberingMngInternal.h.

◆ m_p_to_l_level

UniqueArray<Int32> Arcane::CartesianMeshNumberingMngInternal::m_p_to_l_level
private

Definition at line 206 of file CartesianMeshNumberingMngInternal.h.

◆ m_pattern

Int32 Arcane::CartesianMeshNumberingMngInternal::m_pattern
private

Definition at line 204 of file CartesianMeshNumberingMngInternal.h.

◆ m_properties

Ref<Properties> Arcane::CartesianMeshNumberingMngInternal::m_properties
private

Definition at line 201 of file CartesianMeshNumberingMngInternal.h.


The documentation for this class was generated from the following files: