Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::GeomShapeMng

Classe gérant les GeomShape des mailles d'un maillage. Plus de détails...

#include <arcane/geometric/GeomShapeMng.h>

+ Graphe de collaboration de Arcane::GeomShapeMng:

Fonctions membres publiques

 GeomShapeMng (IMesh *mesh, const String &name)
 Initialise pour le maillage mesh avec le nom name.
 
 GeomShapeMng (IMesh *mesh)
 Initialise pour le maillage mesh avec le nom par défaut GenericElement.
 
 GeomShapeMng (const GeomShapeMng &rhs)
 Constructeur de recopie.
 
bool isInitialized () const
 Indique si l'instance est initialisée.
 
void initialize ()
 Initialise l'instance.
 
void initShape (GeomShapeView &ge, Cell cell) const
 Initialise la vue ge avec les informations de la maille cell.
 
GeomShapeMutableView mutableShapeView (Cell cell)
 Retourne une vue modifiable sur la GeomShape de la maille cell.
 
const Stringname () const
 Nom du gestionnaire.
 

Attributs privés

String m_name
 
VariableCellArrayReal3 m_cell_shape_nodes
 Elements génériques noeuds.
 
VariableCellArrayReal3 m_cell_shape_faces
 Elements génériques face.
 
VariableCellReal3 m_cell_shape_centers
 Elements génériques centre.
 

Description détaillée

Classe gérant les GeomShape des mailles d'un maillage.

Cette classe stocke les informations des formes géométriques (GeomShape) associées aux mailles du maillage. Pour une maille, la récupération d'une vue se fait via la méthode initShape():

Cell cell;
GeomShapeView shape_view;
// Initialise la vue \a shape_view sur la maille \a cell
shape_mng.initShape(shape_view,cell);
Maille d'un maillage.
Definition Item.h:1178
Classe gérant les GeomShape des mailles d'un maillage.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120

Une vue peut-être utilisée plusieurs fois. Par exemple, si on souhaite itérer sur plusieurs mailles:

GeomShapeView shape_view;
ENUMERATE_CELL(icell,allCells()){
Cell cell = *icell;
// Initialise la vue \a shape_view sur la maille \a cell
shape_mng.initShape(shape_view,cell);
info() << "Node0=" << shape_view.node(0);
}
#define ENUMERATE_CELL(name, group)
Enumérateur générique d'un groupe de mailles.

La vue récupérée par GeomShapeView est constante. Pour récupérer une vue modifiable, il faut utiliser mutableShapeView(). La vue modifiable sert uniquement à mettre à jour les différentes coordonnées (noeuds, centre des faces, ...).

Avant de pouvoir utiliser une des méthodes initShape() ou mutableShapeView(), il faut initialiser une des instance par l'appel à initialize(). L'initialisation effectue uniquement l'allocation mémoire mais ne met pas à jour les coordonnées.

Avertissement
La méthode initialize() doit aussi être appelée lorsque la topologie du maillage change, par exemple après un ajout ou suppression de maille.

Cette classe gère uniquement les données sur les formes géométriques et ces dernières sont indépendantes des autres variables. Cela signifie que si les coordonnées d'un noeud du maillage change, il faut explicitement remettre à jour les informations de la forme géométrique. Arcane fournit la classe BarycentricGeomShapeComputer pour cela mais l'utilisateur peut calculer ces informations d'une autre manière qu'en utilisant le barycentre.

Toutes les instances de cette classe dont le nom name() est identique sont implicitement partagées et donc fournissent les mêmes GeomShapeView. Par exemple:

IMesh* mesh;
GeomShapeMng shape_mng(mesh,"GenericElement");
// shape_mng et shape_mng2 partagent les mêmes GeomShapeView
GeomShapeMng shape_mng3(mesh,"AleGenericElement");
// shape_mng et shape_mng3 utilisent des valeurs différentes.

Définition à la ligne 93 du fichier GeomShapeMng.h.

Documentation des constructeurs et destructeur

◆ GeomShapeMng() [1/3]

GEOMETRIC_BEGIN_NAMESPACE Arcane::GeomShapeMng::GeomShapeMng ( IMesh mesh,
const String name 
)

Initialise pour le maillage mesh avec le nom name.

Définition à la ligne 27 du fichier GeomShapeMng.cc.

◆ GeomShapeMng() [2/3]

Arcane::GeomShapeMng::GeomShapeMng ( IMesh mesh)

Initialise pour le maillage mesh avec le nom par défaut GenericElement.

Définition à la ligne 39 du fichier GeomShapeMng.cc.

◆ GeomShapeMng() [3/3]

Arcane::GeomShapeMng::GeomShapeMng ( const GeomShapeMng rhs)

Constructeur de recopie.

Définition à la ligne 51 du fichier GeomShapeMng.cc.

Documentation des fonctions membres

◆ initialize()

void Arcane::GeomShapeMng::initialize ( )

Initialise l'instance.

Il n'y a besoin d'initialiser qu'une seule fois les instances qui ont le même nom.

Définition à la ligne 66 du fichier GeomShapeMng.cc.

Références Arcane::IMeshBase::dimension(), m_cell_shape_faces, m_cell_shape_nodes, Arcane::ItemStaticInfo::MAX_CELL_FACE, Arcane::ItemStaticInfo::MAX_CELL_NODE, Arcane::IVariable::meshHandle(), et Arcane::VariableRef::variable().

◆ initShape()

void Arcane::GeomShapeMng::initShape ( GeomShapeView &  ge,
Cell  cell 
) const
inline

Initialise la vue ge avec les informations de la maille cell.

Définition à la ligne 124 du fichier GeomShapeMng.h.

◆ isInitialized()

bool Arcane::GeomShapeMng::isInitialized ( ) const
inline

Indique si l'instance est initialisée.

Définition à la ligne 113 du fichier GeomShapeMng.h.

◆ mutableShapeView()

GeomShapeMutableView Arcane::GeomShapeMng::mutableShapeView ( Cell  cell)
inline

Retourne une vue modifiable sur la GeomShape de la maille cell.

Définition à la ligne 131 du fichier GeomShapeMng.h.

◆ name()

const String & Arcane::GeomShapeMng::name ( ) const
inline

Nom du gestionnaire.

Définition à la ligne 137 du fichier GeomShapeMng.h.

Documentation des données membres

◆ m_cell_shape_centers

VariableCellReal3 Arcane::GeomShapeMng::m_cell_shape_centers
private

Elements génériques centre.

Définition à la ligne 144 du fichier GeomShapeMng.h.

◆ m_cell_shape_faces

VariableCellArrayReal3 Arcane::GeomShapeMng::m_cell_shape_faces
private

Elements génériques face.

Définition à la ligne 143 du fichier GeomShapeMng.h.

Référencé par initialize().

◆ m_cell_shape_nodes

VariableCellArrayReal3 Arcane::GeomShapeMng::m_cell_shape_nodes
private

Elements génériques noeuds.

Définition à la ligne 142 du fichier GeomShapeMng.h.

Référencé par initialize().

◆ m_name

String Arcane::GeomShapeMng::m_name
private

Définition à la ligne 141 du fichier GeomShapeMng.h.


La documentation de cette classe a été générée à partir des fichiers suivants :