14#include "arcane/utils/ITraceMng.h"
15#include "arcane/utils/FatalErrorException.h"
17#include "arcane/Item.h"
18#include "arcane/ItemGroupComputeFunctor.h"
19#include "arcane/ItemGroupImpl.h"
20#include "arcane/ItemGroup.h"
21#include "arcane/IMesh.h"
22#include "arcane/IItemFamily.h"
23#include "arcane/Properties.h"
51 trace->
debug() <<
"OwnItemGroupComputeFunctor::execute()"
52 <<
" this=" << m_group
53 <<
" parent_name=" << parent.
name()
54 <<
" name=" << m_group->
name()
55 <<
" parent_count=" << parent.
size()
56 <<
" mysize=" << m_group->
size();
79 trace->
debug() <<
"GhostItemGroupComputeFunctor::execute()"
80 <<
" this=" << m_group
81 <<
" parent_name=" << parent.
name()
82 <<
" name=" << m_group->
name()
83 <<
" parent_count=" << parent.
size()
84 <<
" mysize=" << m_group->
size();
98 trace->
fatal() <<
"InterfaceGroupComputeFunctor::executeFunctor()"
99 <<
" Incoherent family expected=" <<
IK_Face <<
" current=" << family->
itemKind();
122 trace->
debug() <<
"InterfaceItemGroupComputeFunctor::execute()"
123 <<
" this=" << m_group
124 <<
" parent_name=" << parent.
name()
125 <<
" name=" << m_group->
name()
126 <<
" parent_count=" << parent.
size()
127 <<
" mysize=" << m_group->
size();
137template<
typename ItemType>
void
141 IMesh* mesh = m_group->mesh();
142 ITraceMng* trace = m_group->mesh()->traceMng();
148 ARCANE_FATAL(
"Incoherent family wanted={0} current={1} v={2}",
152 m_group->beginTransaction();
167 bool do_sort = mesh->
properties()->getBoolWithDefault(
"sort-subitemitem-group",
false);
170 m_group->endTransaction();
172 trace->
debug() <<
"ItemItemGroupComputeFunctor::execute()"
173 <<
" this=" << m_group
174 <<
" parent_name=" << parent.
name()
175 <<
" name=" << m_group->name()
176 <<
" parent_count=" << parent.
size()
177 <<
" mysize=" << m_group->size()
220 trace->
debug() <<
"InnerFaceItemGroupComputeFunctor::execute()"
221 <<
" this=" << m_group
222 <<
" parent_name=" << parent.
name()
223 <<
" name=" << m_group->
name()
224 <<
" parent_count=" << parent.
size()
225 <<
" mysize=" << m_group->
size();
267 trace->
debug() <<
"OuterFaceItemGroupComputeFunctor::execute()"
268 <<
" this=" << m_group
269 <<
" parent_name=" << parent.
name()
270 <<
" name=" << m_group->
name()
271 <<
" parent_count=" << parent.
size()
272 <<
" mysize=" << m_group->
size();
286 trace->
fatal() <<
"AllActiveCellGroupComputeFunctor::executeFunctor()"
287 <<
" Incoherent family expected=" <<
IK_Cell <<
" current=" << family->
itemKind();
300 trace->
debug() <<
"AllActiveCellGroupComputeFunctor::execute()"
301 <<
" this=" << m_group
302 <<
" parent_name=" << parent.
name()
303 <<
" name=" << m_group->
name()
304 <<
" parent_count=" << parent.
size()
305 <<
" mysize=" << m_group->
size();
319 trace->
fatal() <<
"OwnActiveCellGroupComputeFunctor::executeFunctor()"
320 <<
" Incoherent family expected=" <<
IK_Cell <<
" current=" << family->
itemKind();
334 trace->
debug() <<
"OwnActiveCellGroupComputeFunctor::execute()"
335 <<
" this=" << m_group
336 <<
" parent_name=" << parent.
name()
337 <<
" name=" << m_group->
name()
338 <<
" parent_count=" << parent.
size()
339 <<
" mysize=" << m_group->
size();
353 trace->
fatal() <<
"LevelCellGroupComputeFunctor::executeFunctor()"
354 <<
" Incoherent family expected=" <<
IK_Cell <<
" current=" << family->
itemKind();
362 if(item.
level() == m_level)
368 trace->
debug() <<
"LevelCellGroupComputeFunctor::execute()"
369 <<
" this=" << m_group
370 <<
" parent_name=" << parent.
name()
371 <<
" name=" << m_group->
name()
372 <<
" parent_count=" << parent.
size()
373 <<
" mysize=" << m_group->
size();
389 trace->
fatal() <<
"LevelCellGroupComputeFunctor::executeFunctor()"
390 <<
" Incoherent family expected=" <<
IK_Cell <<
" current=" << family->
itemKind();
394 if (item.
isOwn() && (item.
level() == m_level))
400 trace->
debug() <<
"OwnLevelItemGroupComputeFunctor::execute()"
401 <<
" this=" << m_group
402 <<
" parent_name=" << parent.
name()
403 <<
" name=" << m_group->
name()
404 <<
" parent_count=" << parent.
size()
405 <<
" mysize=" << m_group->
size();
459 <<
"\n NUNMBER OF BOUNDARY FACES= " <<
counter_0
460 <<
"\n NUMBER OF ACTIVE BOUNDARY FACES= " <<
counter_1
461 <<
"\n NUMBER OF ACTIVE INTERIOR FACES= " <<
counter_2 <<
"\n";
465 trace->
debug() <<
"ActiveFaceItemGroupComputeFunctor::execute()"
466 <<
" this=" << m_group
467 <<
" parent_name=" << parent.
name()
468 <<
" name=" << m_group->
name()
469 <<
" parent_count=" << parent.
size()
470 <<
" mysize=" << m_group->
size();
509 else if (face.
isOwn() &&
519 trace->
debug() <<
"OwnActiveFaceItemGroupComputeFunctor::execute()"
520 <<
" this=" << m_group
521 <<
" parent_name=" << parent.
name()
522 <<
" name=" << m_group->
name()
523 <<
" parent_count=" << parent.
size()
524 <<
" mysize=" << m_group->
size();
572 trace->
debug() <<
"InnerActiveFaceItemGroupComputeFunctor::execute()"
573 <<
" this=" << m_group
574 <<
" parent_name=" << parent.
name()
575 <<
" name=" << m_group->
name()
576 <<
" parent_count=" << parent.
size()
577 <<
" mysize=" << m_group->
size();
619 trace->
debug() <<
"OuterActiveFaceItemGroupComputeFunctor::execute()"
620 <<
" this=" << m_group
621 <<
" parent_name=" << parent.
name()
622 <<
" name=" << m_group->
name()
623 <<
" parent_count=" << parent.
size()
624 <<
" mysize=" << m_group->
size();
#define ARCANE_FATAL(...)
Macro envoyant une exception FatalErrorException.
void executeFunctor() override
Exécute la méthode associé
void executeFunctor() override
Exécute la méthode associé
Cell frontCell() const
Maille devant la face (maille nulle si aucune)
bool isSubDomainBoundary() const
Indique si la face est au bord du sous-domaine (i.e nbCell()==1)
Cell boundaryCell() const
Maille associée à cette face frontière (maille nulle si aucune)
Cell backCell() const
Maille derrière la face (maille nulle si aucune)
void executeFunctor() override
Exécute la méthode associé
Interface d'une famille d'entités.
virtual ItemGroup allItems() const =0
Groupe de toutes les entités.
virtual Int32 maxLocalId() const =0
virtual eItemKind itemKind() const =0
Genre des entités.
virtual ITraceMng * traceMng()=0
Gestionnaire de message associé
virtual Properties * properties()=0
Propriétés associées à ce maillage.
void executeFunctor() override
Exécute la méthode associé
void executeFunctor() override
Exécute la méthode associé
void executeFunctor() override
Exécute la méthode associé
Classe de base pour les entités du maillage.
void setItems(Int32ConstArrayView items_local_id)
Positionne les entités du groupe à items_local_id.
void endTransaction()
Termine une transaction.
ItemGroupImpl * parent() const
Groupe parent (0 si aucun)
IMesh * mesh() const
Maillage auquel appartient le groupe (0 pour le groupe nul).
Integer size() const
Nombre d'entités du groupe.
IItemFamily * itemFamily() const
Familly à laquelle appartient le groupe (ou 0 si aucune)
void beginTransaction()
Débute une transaction.
const String & name() const
Nom du groupe.
Groupe d'entités de maillage.
const String & name() const
Nom du groupe.
Integer size() const
Nombre d'éléments du groupe.
IItemFamily * itemFamily() const
Famille d'entité à laquelle appartient ce groupe (0 pour le group nul)
bool isAllItems() const
Indique si le groupe est celui de toutes les entités.
void executeFunctor() override
Fonctor pour calculer un groupe contenant les entités connectées aux entités du groupe parent.
static eItemKind kind()
Genre de l'entité
Classe de base d'un élément de maillage.
constexpr Int32 localId() const
Identifiant local de l'entité dans le sous-domaine du processeur.
bool isOwn() const
true si l'entité est appartient au sous-domaine
void executeFunctor() override
Exécute la méthode associé
Lecteur des fichiers de maillage via la bibliothèque LIMA.
void executeFunctor() override
Exécute la méthode associé
void executeFunctor() override
Exécute la méthode associé
void executeFunctor() override
Exécute la méthode associé
void executeFunctor() override
Exécute la méthode associé
void executeFunctor() override
Calcul des entités propres du groupe.
void executeFunctor() override
Exécute la méthode associé
Interface du gestionnaire de traces.
virtual TraceMessageDbg debug(Trace::eDebugLevel=Trace::Medium)=0
Flot pour un message de debug.
virtual TraceMessage fatal()=0
Flot pour un message d'erreur fatale.
Vecteur 1D de données avec sémantique par valeur (style STL).
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
eItemKind
Genre d'entité de maillage.
@ IK_Cell
Entité de maillage de genre maille.
@ IK_Face
Entité de maillage de genre face.