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

Famille de particules. Plus de détails...

#include <arcane/mesh/ParticleFamily.h>

+ Graphe d'héritage de Arcane::mesh::ParticleFamily:
+ Graphe de collaboration de Arcane::mesh::ParticleFamily:

Fonctions membres publiques

 ParticleFamily (IMesh *mesh, const String &name)
 
virtual void build () override
 
void setEnableGhostItems (bool value) override
 set le flag pour gérer les particules ghost de la famille
 
bool getEnableGhostItems () const override
 récupère le flag pour gérer les particules ghost de la famille
 
String name () const override
 Nom de la famille.
 
String fullName () const override
 Nom complet de la famille (avec celui du maillage)
 
Integer nbItem () const override
 Nombre d'entités.
 
ItemGroup allItems () const override
 Groupe de toutes les entités.
 
ParticleVectorView addParticles (Int64ConstArrayView unique_ids, Int32ArrayView items) override
 Alloue des particules.
 
ParticleVectorView addParticles2 (Int64ConstArrayView unique_ids, Int32ConstArrayView owners, Int32ArrayView items) override
 
ParticleVectorView addParticles (Int64ConstArrayView unique_ids, Int32ConstArrayView cells_local_id, Int32ArrayView items_local_id) override
 Alloue des particules dans des mailles.
 
void removeParticles (Int32ConstArrayView items_local_id) override
 
void addItems (Int64ConstArrayView unique_ids, Int32ConstArrayView owners, Int32ArrayView items)
 
void internalRemoveItems (Int32ConstArrayView local_ids, bool keep_ghost) override
 Supprime les entités donnés par local_ids.
 
void exchangeParticles () override
 Échange des entités.
 
void setParticleCell (Particle particle, Cell new_cell) override
 Déplace la particule particle dans la maille new_cell.
 
void setParticlesCell (ParticleVectorView particles, CellVectorView new_cells) override
 Déplace la list de particules particles dans les nouvelles mailles new_cells.
 
void endUpdate () override
 Notifie la fin de modification de la liste des entités.
 
void preAllocate (Integer nb_item)
 
void prepareForDump () override
 Prépare les données pour une protection.
 
void readFromDump () override
 Relit les données à partir d'une protection.
 
void setHasUniqueIdMap (bool v) override
 Indique si la famille possède une table de conversion uniqueId vers localId.
 
bool hasUniqueIdMap () const override
 Indique si la famille possède une table de conversion uniqueId vers localId.
 
void computeSynchronizeInfos () override
 Construit les structures nécessaires à la synchronisation.
 
IItemFamilyitemFamily () override
 Interface sur la famille.
 
IParticleFamilytoParticleFamily () override
 Retourne l'interface de la famille de particule de cette famille.
 
void checkValidConnectivity () override
 Vérification de la validité des structures internes concernant la connectivité.
 
void removeNeedRemoveMarkedItems () override
 Supprime des entités et met a jour les connectivites.
 
- Fonctions membres publiques hérités de Arcane::mesh::ItemFamily
 ItemFamily (IMesh *mesh, eItemKind ik, const String &name)
 
eItemKind itemKind () const override
 Genre des entités.
 
Int32 maxLocalId () const override
 
ItemInternalList itemsInternal () override
 Tableau interne des entités.
 
ItemInfoListView itemInfoListView () override
 Vue sur la liste d'informations sur les entités.
 
VariableItemInt32itemsNewOwner () override
 Variable contenant le numéro du nouveau sous-domaine propriétaire de l'entité.
 
IItemFamilyparentFamily () const override
 IItemFamily parent.
 
void setParentFamily (IItemFamily *parent) override
 Positionne l'IItemFamily parent.
 
Integer parentFamilyDepth () const override
 Donne la profondeur d'imbrication du maillage courant.
 
void addChildFamily (IItemFamily *family) override
 Ajoute d'une famile en dépendance.
 
IItemFamilyCollection childFamilies () override
 Familles enfantes de cette famille.
 
void checkValid () override
 Vérification de la validité des structures internes (interne)
 
void checkUniqueIds (Int64ConstArrayView unique_ids) override
 Vérifie que les identifiants unique_ids sont bien uniques pour tous les sous-domaines.
 
ItemInternalMapitemsMap ()
 
void partialEndUpdate () override
 Mise à jour partielle.
 
void partialEndUpdateGroup (const ItemGroup &group) override
 Met à jour un groupe.
 
void partialEndUpdateVariable (IVariable *variable) override
 Met à jour une variable.
 
void itemsUniqueIdToLocalId (ArrayView< Int64 > ids, bool do_fatal=true) const
 
void itemsUniqueIdToLocalId (Int32ArrayView local_ids, Int64ConstArrayView unique_ids, bool do_fatal) const override
 Converti un tableau de numéros uniques en numéros locaux.
 
void itemsUniqueIdToLocalId (Int32ArrayView local_ids, ConstArrayView< ItemUniqueId > unique_ids, bool do_fatal) const override
 Converti un tableau de numéros uniques en numéros locaux.
 
ISubDomainsubDomain () const override
 Sous-domaine associé
 
ITraceMngtraceMng () const override
 Gestionnaire de trace associé
 
IMeshmesh () const override
 Maillage associé
 
IParallelMngparallelMng () const override
 Gestionnaire de parallélisme associé
 
IItemConnectivityInfolocalConnectivityInfos () const override
 Informations sur la connectivité locale au sous-domaine pour à cette famille.
 
IItemConnectivityInfoglobalConnectivityInfos () const override
 Informations sur la connectivité globales à tous les sous-domaines.
 
void removeItems2 (ItemDataList &item_data_list) override
 
ItemVectorView view (Int32ConstArrayView local_ids) override
 Vue sur les entités.
 
ItemVectorView view () override
 Vue sur toutes les entités de la famille.
 
ItemInternalfindOneItem (Int64 uid) override
 Entité de numéro unique unique_id.
 
void notifyItemsOwnerChanged () override
 Notifie que les entités propres au sous-domaine de la famille ont été modifiées.
 
ItemGroup findGroup (const String &name) const override
 Recherche un groupe.
 
ItemGroup findGroup (const String &name, bool create_if_needed) override
 Recherche un groupe.
 
ItemGroup createGroup (const String &name, Int32ConstArrayView elements, bool do_override=false) override
 Créé un groupe d'entités de nom name contenant les entités local_ids.
 
ItemGroup createGroup (const String &name) override
 Créé un groupe d'entités de nom name.
 
ItemGroup createGroup (const String &name, const ItemGroup &parent, bool do_override=false) override
 
ItemGroupCollection groups () const override
 Liste des groupes de cette famille.
 
void notifyItemsUniqueIdChanged () override
 Notifie que les numéros uniques des entités ont été modifiées.
 
void destroyGroups () override
 Supprime tous les groupes de cette famille.
 
IVariablefindVariable (const String &name, bool throw_exception) override
 Recherche la variable de nom name associée à cette famille.
 
void usedVariables (VariableCollection collection) override
 Ajoute à la collection collection la liste des variables utilisés de cette famille.
 
void copyItemsValues (Int32ConstArrayView source, Int32ConstArrayView destination) override
 
void copyItemsMeanValues (Int32ConstArrayView first_source, Int32ConstArrayView second_source, Int32ConstArrayView destination) override
 
void compactItems (bool do_sort) override
 Compacte les entités.
 
void clearItems () override
 Supprime toutes les entités de la famille.
 
Int64ArrayViewuniqueIds ()
 
ItemSharedInfocommonItemSharedInfo ()
 
const DynamicMeshKindInfosinfos () const
 
void getCommunicatingSubDomains (Int32Array &sub_domains) const override
 Liste des sous-domaines communiquants pour les entités.
 
void synchronize (VariableCollection variables) override
 Synchronise les variables variables.
 
void synchronize (VariableCollection variables, Int32ConstArrayView local_ids) override
 Synchronise les variables variables sur une liste d'entités.
 
IVariableSynchronizerallItemsSynchronizer () override
 Synchroniseur sur toutes les entités de la famille.
 
void reduceFromGhostItems (IVariable *v, IDataOperation *operation) override
 Applique une opération de réduction depuis les entités fantômes.
 
void reduceFromGhostItems (IVariable *v, Parallel::eReduceType operation) override
 Applique une opération de réduction depuis les entités fantômes.
 
ItemPairGroup findAdjencyItems (const ItemGroup &group, const ItemGroup &sub_group, eItemKind link_kind, Integer layer) override
 Cherche une liste d'adjacence.
 
void setItemSortFunction (IItemInternalSortFunction *sort_function) override
 Positionne la fonction de tri des entités.
 
IItemInternalSortFunctionitemSortFunction () const override
 Fonction de tri des entités.
 
void addSourceConnectivity (IItemConnectivity *connectivity) override
 
void addTargetConnectivity (IItemConnectivity *connectivity) override
 
void removeSourceConnectivity (IItemConnectivity *connectivity) override
 
void removeTargetConnectivity (IItemConnectivity *connectivity) override
 
void setConnectivityMng (IItemConnectivityMng *connectivity_mng) override
 
void addGhostItems (Int64ConstArrayView unique_ids, Int32ArrayView items, Int32ConstArrayView owners) override
 Alloue des entités fantômes.
 
IItemFamilyPolicyMngpolicyMng () override
 Interface des comportements/politiques associées à cette famille.
 
Propertiesproperties () override
 Propriétés associées à cette famille.
 
IItemFamilyInternal_internalApi () override
 API interne à Arcane.
 
void setPolicyMng (IItemFamilyPolicyMng *policy_mng)
 
void beginCompactItems (ItemFamilyCompactInfos &compact_infos)
 
void compactVariablesAndGroups (const ItemFamilyCompactInfos &compact_infos)
 Compacte les variables et les groupes.
 
void finishCompactItems (ItemFamilyCompactInfos &compact_infos)
 
void removeItem (Item item)
 
ItemInternalConnectivityListitemInternalConnectivityList ()
 Accesseur pour les connectivités via Item et ItemInternal.
 
IItemFamilyTopologyModifier_topologyModifier () override
 Interface du modificateur de topologie.
 
void resizeVariables (bool force_resize) override
 Redimensionne les variables de cette famille.
 
- Fonctions membres publiques hérités de Arccore::TraceAccessor
 TraceAccessor (ITraceMng *m)
 Construit un accesseur via le gestionnaire de trace m.
 
 TraceAccessor (const TraceAccessor &rhs)
 Constructeur par recopie.
 
TraceAccessoroperator= (const TraceAccessor &rhs)
 Opérateur de recopie.
 
virtual ~TraceAccessor ()
 Libère les ressources.
 
ITraceMngtraceMng () const
 Gestionnaire de trace.
 
TraceMessage info () const
 Flot pour un message d'information.
 
TraceMessage pinfo () const
 Flot pour un message d'information en parallèle.
 
TraceMessage info (char category) const
 Flot pour un message d'information d'une catégorie donnée.
 
TraceMessage pinfo (char category) const
 Flot pour un message d'information parallèle d'une catégorie donnée.
 
TraceMessage info (bool v) const
 Flot pour un message d'information.
 
TraceMessage warning () const
 Flot pour un message d'avertissement.
 
TraceMessage pwarning () const
 
TraceMessage error () const
 Flot pour un message d'erreur.
 
TraceMessage perror () const
 
TraceMessage log () const
 Flot pour un message de log.
 
TraceMessage plog () const
 Flot pour un message de log.
 
TraceMessage logdate () const
 Flot pour un message de log précédé de la date.
 
TraceMessage fatal () const
 Flot pour un message d'erreur fatale.
 
TraceMessage pfatal () const
 Flot pour un message d'erreur fatale en parallèle.
 
TraceMessageDbg debug (Trace::eDebugLevel=Trace::Medium) const
 Flot pour un message de debug.
 
Trace::eDebugLevel configDbgLevel () const
 Niveau debug du fichier de configuration.
 
TraceMessage info (Int32 verbose_level) const
 Flot pour un message d'information d'un niveau donné
 
TraceMessage linfo () const
 Flot pour un message d'information avec le niveau d'information local à cette instance.
 
TraceMessage linfo (Int32 relative_level) const
 Flot pour un message d'information avec le niveau d'information local à cette instance.
 
void fatalMessage (const StandaloneTraceMessage &o) const
 
- Fonctions membres publiques hérités de Arcane::IItemFamily
virtual void removeItems2 (mesh::ItemDataList &item_data_list)=0
 Supprime des entités.
 
virtual IDoFFamilytoDoFFamily ()
 Retourne l'interface de la famille de particule de cette famille.
 

Fonctions membres publiques statiques

static String const defaultFamilyName ()
 

Types privés

typedef ItemConnectivitySelectorT< CellInternalConnectivityIndex, OneItemIncrementalItemConnectivityCellConnectivity
 
typedef ItemFamily BaseClass
 

Fonctions membres privées

ItemInternal_allocParticle (Int64 uid, bool &need_alloc)
 
ItemInternal_findOrAllocParticle (Int64 uid, bool &is_alloc)
 
void _printInfos (Integer nb_added)
 
void _setSharedInfo ()
 
void _setCell (ItemLocalId particle, ItemLocalId cell)
 
void _initializeNewlyAllocatedParticle (ItemInternal *particle, Int64 uid)
 Positionne les infos de connectivité pour une particule qui vient d'être allouée en mémoire.
 
void _addItems (Int64ConstArrayView unique_ids, Int32ArrayView items)
 

Attributs privés

ItemTypeInfom_particle_type_info
 
ItemSharedInfoWithTypem_particle_shared_info
 
Int32 m_sub_domain_id
 
bool m_enable_ghost_items
 
CellConnectivitym_cell_connectivity
 

Membres hérités additionnels

- Types publics hérités de Arcane::mesh::ItemFamily
using ItemInternalMap = ::Arcane::mesh::ItemInternalMap
 
- Types protégés hérités de Arcane::mesh::ItemFamily
typedef std::set< IItemConnectivity * > ItemConnectivitySet
 
- Fonctions membres protégées hérités de Arcane::mesh::ItemFamily
void _removeOne (Item item)
 
void _detachOne (Item item)
 
ItemInternalList _itemsInternal ()
 
ItemInternal_itemInternal (Int32 local_id)
 
ItemInternal_allocOne (Int64 unique_id)
 
ItemInternal_allocOne (Int64 unique_id, bool &need_alloc)
 
ItemInternal_findOrAllocOne (Int64 uid, bool &is_alloc)
 
void _setHasUniqueIdMap (bool v)
 
void _removeMany (Int32ConstArrayView local_ids)
 
void _removeDetachedOne (Item item)
 
const DynamicMeshKindInfos_infos () const
 
void _detachCells2 (Int32ConstArrayView local_ids)
 
virtual void _endAllocate ()
 
virtual void _notifyEndUpdateFromMesh ()
 
void _checkNeedEndUpdate () const
 
void _updateSharedInfo ()
 
void _allocateInfos (ItemInternal *item, Int64 uid, ItemSharedInfoWithType *isi)
 
void _allocateInfos (ItemInternal *item, Int64 uid, ItemTypeInfo *type)
 
void _endUpdate (bool need_check_remove)
 
bool _partialEndUpdate ()
 
void _updateGroup (ItemGroup group, bool need_check_remove)
 
void _updateVariable (IVariable *var)
 
void _addConnectivitySelector (ItemConnectivitySelector *selector)
 
void _buildConnectivitySelectors ()
 
void _preAllocate (Int32 nb_item, bool pre_alloc_connectivity)
 
ItemInternalConnectivityList_unstructuredItemInternalConnectivityList ()
 
ItemTypeMng_itemTypeMng () const
 
virtual IItemInternalSortFunction_defaultItemSortFunction ()
 
void _reserveInfosMemory (Integer memory)
 
void _resizeInfos (Integer memory)
 
ItemSharedInfoWithType_findSharedInfo (ItemTypeInfo *type)
 
Integer _allocMany (Integer memory)
 
void _setSharedInfosPtr (Integer *ptr)
 
void _checkValid ()
 
void _checkValidConnectivity ()
 
void _notifyDataIndexChanged ()
 
void _processNewGroup (ItemGroup group)
 
String _variableName (const String &base_name) const
 
template<class Type >
void _synchronizeVariable (IVariable *var, Type *var_value, Integer nb_elem)
 
void _updateGroups (bool check_need_remove)
 
void _compactFromParentFamily (const ItemFamilyCompactInfos &compact_infos)
 Compacte les connectivités.
 
void _checkComputeSynchronizeInfos (Int32 changed)
 Test collectif permettant de savoir s'il faut mettre à jour les infos de synchro.
 
void _readGroups ()
 Relit les groupes depuis une protection et les recréer si besoin.
 
void _invalidateComputedGroups ()
 
void _compactItems (bool do_sort)
 Compacte les entités.
 
void _compactOnlyItems (bool do_sort)
 Compacte les entités sans mise à jour des références.
 
void _applyCheckNeedUpdateOnGroups ()
 
void _setTopologyModifier (IItemFamilyTopologyModifier *tm)
 
void _checkValidItem (ItemInternal *item)
 
void _checkValidSourceTargetItems (ItemInternal *source, ItemInternal *target)
 
void _checkValidItem (Item item)
 
void _checkValidSourceTargetItems (Item source, Item target)
 
- Fonctions membres protégées hérités de Arccore::TraceAccessor
void _setLocalVerboseLevel (Int32 v)
 
Int32 _localVerboseLevel () const
 
- Attributs protégés hérités de Arcane::mesh::ItemFamily
String m_name
 
String m_full_name
 
IMeshm_mesh = nullptr
 
InternalApim_internal_api = nullptr
 
ISubDomainm_sub_domain = nullptr
 
IItemFamilym_parent_family = nullptr
 
Integer m_parent_family_depth = 0
 
ItemGroupList m_item_groups
 
bool m_need_prepare_dump = true
 
MeshItemInternalListm_item_internal_list = nullptr
 
ItemSharedInfoListm_item_shared_infos = nullptr
 
ObserverPool m_observers
 
Ref< IVariableSynchronizerm_variable_synchronizer
 
Integer m_current_variable_item_size = 0
 
IItemInternalSortFunctionm_item_sort_function = nullptr
 
std::set< IVariable * > m_used_variables
 
UniqueArray< ItemFamily * > m_child_families
 
ItemConnectivityInfom_local_connectivity_info = nullptr
 
ItemConnectivityInfom_global_connectivity_info = nullptr
 
Propertiesm_properties = nullptr
 
ItemConnectivitySet m_source_item_connectivities
 
ItemConnectivitySet m_target_item_connectivities
 connectivite ou ItemFamily == SourceFamily
 
IItemConnectivityMngm_connectivity_mng = nullptr
 connectivite ou ItemFamily == TargetFamily
 
IItemFamilyPolicyMngm_policy_mng = nullptr
 
Int32 m_sub_domain_id = A_NULL_RANK
 

Description détaillée

Famille de particules.

Définition à la ligne 39 du fichier ParticleFamily.h.

Documentation des définitions de type membres

◆ BaseClass

Définition à la ligne 46 du fichier ParticleFamily.h.

◆ CellConnectivity

Documentation des constructeurs et destructeur

◆ ParticleFamily()

Arcane::mesh::ParticleFamily::ParticleFamily ( IMesh mesh,
const String name 
)

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

◆ ~ParticleFamily()

Arcane::mesh::ParticleFamily::~ParticleFamily ( )
virtual

Définition à la ligne 53 du fichier ParticleFamily.cc.

Documentation des fonctions membres

◆ _addItems()

void Arcane::mesh::ParticleFamily::_addItems ( Int64ConstArrayView  unique_ids,
Int32ArrayView  items 
)
private

Définition à la ligne 213 du fichier ParticleFamily.cc.

◆ _allocParticle()

ItemInternal * Arcane::mesh::ParticleFamily::_allocParticle ( Int64  uid,
bool need_alloc 
)
inlineprivate

Définition à la ligne 112 du fichier ParticleFamily.cc.

◆ _findOrAllocParticle()

ItemInternal * Arcane::mesh::ParticleFamily::_findOrAllocParticle ( Int64  uid,
bool is_alloc 
)
inlineprivate

Définition à la ligne 130 du fichier ParticleFamily.cc.

◆ _initializeNewlyAllocatedParticle()

void Arcane::mesh::ParticleFamily::_initializeNewlyAllocatedParticle ( ItemInternal particle,
Int64  uid 
)
inlineprivate

Positionne les infos de connectivité pour une particule qui vient d'être allouée en mémoire.

Définition à la ligne 102 du fichier ParticleFamily.cc.

◆ _printInfos()

void Arcane::mesh::ParticleFamily::_printInfos ( Integer  nb_added)
private

Définition à la ligne 282 du fichier ParticleFamily.cc.

◆ _setCell()

void Arcane::mesh::ParticleFamily::_setCell ( ItemLocalId  particle,
ItemLocalId  cell 
)
inlineprivate

Définition à la ligne 164 du fichier ParticleFamily.cc.

◆ _setSharedInfo()

void Arcane::mesh::ParticleFamily::_setSharedInfo ( )
private

Définition à la ligne 408 du fichier ParticleFamily.cc.

◆ addItems()

void Arcane::mesh::ParticleFamily::addItems ( Int64ConstArrayView  unique_ids,
Int32ConstArrayView  owners,
Int32ArrayView  items 
)

Définition à la ligne 235 du fichier ParticleFamily.cc.

◆ addParticles() [1/2]

ParticleVectorView Arcane::mesh::ParticleFamily::addParticles ( Int64ConstArrayView  unique_ids,
Int32ArrayView  items_local_id 
)
overridevirtual

Alloue des particules.

Alloue les particules dont les uniqueId() sont données par le tablea unique_ids.

Après appel à cette opération, il faut appeler endUpdate() pour notifier à l'instance la fin des modifications. Il est possible d'enchaîner plusieurs allocations avant d'appeler endUpdate(). Attention, la vue retournée peut être invalidée après l'appel à endUpdate() si la compression est active. items_local_id doit avoir le même nombre d'éléments que unique_ids.

Implémente Arcane::IParticleFamily.

Définition à la ligne 142 du fichier ParticleFamily.cc.

◆ addParticles() [2/2]

ParticleVectorView Arcane::mesh::ParticleFamily::addParticles ( Int64ConstArrayView  unique_ids,
Int32ConstArrayView  cells_local_id,
Int32ArrayView  items_local_id 
)
overridevirtual

Alloue des particules dans des mailles.

Cette méthode est similaire à addParticles() mais permet de spécifier directement les mailles dans lesquelles seront créées les particules.

Implémente Arcane::IParticleFamily.

Définition à la ligne 173 du fichier ParticleFamily.cc.

Références Arccore::ArrayView< T >::size().

◆ addParticles2()

ParticleVectorView Arcane::mesh::ParticleFamily::addParticles2 ( Int64ConstArrayView  unique_ids,
Int32ConstArrayView  owners,
Int32ArrayView  items 
)
overridevirtual

Implémente Arcane::IParticleFamily.

Définition à la ligne 152 du fichier ParticleFamily.cc.

◆ allItems()

ItemGroup Arcane::mesh::ParticleFamily::allItems ( ) const
inlineoverridevirtual

Groupe de toutes les entités.

Réimplémentée à partir de Arcane::mesh::ItemFamily.

Définition à la ligne 72 du fichier ParticleFamily.h.

◆ build()

void Arcane::mesh::ParticleFamily::build ( )
overridevirtual

Réimplémentée à partir de Arcane::mesh::ItemFamily.

Définition à la ligne 61 du fichier ParticleFamily.cc.

◆ checkValidConnectivity()

void Arcane::mesh::ParticleFamily::checkValidConnectivity ( )
overridevirtual

Vérification de la validité des structures internes concernant la connectivité.

Réimplémentée à partir de Arcane::mesh::ItemFamily.

Définition à la ligne 417 du fichier ParticleFamily.cc.

◆ computeSynchronizeInfos()

void Arcane::mesh::ParticleFamily::computeSynchronizeInfos ( )
inlineoverridevirtual

Construit les structures nécessaires à la synchronisation.

Cette opération doit être effectuée à chaque fois que les entités du maillage changent de propriétaire (par exemple lors d'un équilibrage de charge).

Cette opération est collective.

Réimplémentée à partir de Arcane::mesh::ItemFamily.

Définition à la ligne 111 du fichier ParticleFamily.h.

◆ defaultFamilyName()

static String const Arcane::mesh::ParticleFamily::defaultFamilyName ( )
inlinestatic

Définition à la ligne 50 du fichier ParticleFamily.h.

◆ endUpdate()

void Arcane::mesh::ParticleFamily::endUpdate ( )
inlineoverridevirtual

Notifie la fin de modification de la liste des entités.

Cette méthode doit être appelée après modification de la liste des entités (après ajout ou suppression). Elle met à jour les groupes et redimensionne les variables sur cette famille.

Réimplémentée à partir de Arcane::mesh::ItemFamily.

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

◆ exchangeParticles()

void Arcane::mesh::ParticleFamily::exchangeParticles ( )
overridevirtual

Échange des entités.

Cette méthode n'est supportée que pour les familles de particule. Pour les éléments du maillage comme les noeuds, faces ou maille, il faut utiliser IMesh::exchangeItems().

Les nouveaux propriétaires des entités sont données par la itemsNewOwner().

Cette opération est bloquante et collective.

Implémente Arcane::IParticleFamily.

Définition à la ligne 263 du fichier ParticleFamily.cc.

◆ fullName()

String Arcane::mesh::ParticleFamily::fullName ( ) const
inlineoverridevirtual

Nom complet de la famille (avec celui du maillage)

Réimplémentée à partir de Arcane::mesh::ItemFamily.

Définition à la ligne 70 du fichier ParticleFamily.h.

◆ getEnableGhostItems()

bool Arcane::mesh::ParticleFamily::getEnableGhostItems ( ) const
inlineoverridevirtual

récupère le flag pour gérer les particules ghost de la famille

Implémente Arcane::IParticleFamily.

Définition à la ligne 64 du fichier ParticleFamily.h.

◆ hasUniqueIdMap()

bool Arcane::mesh::ParticleFamily::hasUniqueIdMap ( ) const
overridevirtual

Indique si la famille possède une table de conversion uniqueId vers localId.

Réimplémentée à partir de Arcane::mesh::ItemFamily.

Définition à la ligne 399 du fichier ParticleFamily.cc.

◆ internalRemoveItems()

void Arcane::mesh::ParticleFamily::internalRemoveItems ( Int32ConstArrayView  local_ids,
bool  keep_ghost 
)
overridevirtual

Supprime les entités donnés par local_ids.

Pour usage interne uniquement. Si on souhaite supprimer des entités du maillage, il faut passer par IMeshModifier via l'appel à IMesh::modifier().

Réimplémentée à partir de Arcane::mesh::ItemFamily.

Définition à la ligne 291 du fichier ParticleFamily.cc.

Références ENUMERATE_ITEM.

◆ itemFamily()

IItemFamily * Arcane::mesh::ParticleFamily::itemFamily ( )
inlineoverridevirtual

Interface sur la famille.

Implémente Arcane::IParticleFamily.

Définition à la ligne 116 du fichier ParticleFamily.h.

◆ name()

String Arcane::mesh::ParticleFamily::name ( ) const
inlineoverridevirtual

Nom de la famille.

Réimplémentée à partir de Arcane::mesh::ItemFamily.

Définition à la ligne 69 du fichier ParticleFamily.h.

◆ nbItem()

Integer Arcane::mesh::ParticleFamily::nbItem ( ) const
inlineoverridevirtual

Nombre d'entités.

Réimplémentée à partir de Arcane::mesh::ItemFamily.

Définition à la ligne 71 du fichier ParticleFamily.h.

◆ preAllocate()

void Arcane::mesh::ParticleFamily::preAllocate ( Integer  nb_item)

Définition à la ligne 377 du fichier ParticleFamily.cc.

◆ prepareForDump()

void Arcane::mesh::ParticleFamily::prepareForDump ( )
overridevirtual

Prépare les données pour une protection.

Réimplémentée à partir de Arcane::mesh::ItemFamily.

Définition à la ligne 354 du fichier ParticleFamily.cc.

◆ readFromDump()

void Arcane::mesh::ParticleFamily::readFromDump ( )
overridevirtual

Relit les données à partir d'une protection.

Réimplémentée à partir de Arcane::mesh::ItemFamily.

Définition à la ligne 366 du fichier ParticleFamily.cc.

◆ removeNeedRemoveMarkedItems()

void Arcane::mesh::ParticleFamily::removeNeedRemoveMarkedItems ( )
overridevirtual

Supprime des entités et met a jour les connectivites.

Ne supprime pas d'eventuels sous items orphelins.

Contexte d'utilisation avec un graphe des familles. Les sous items orphelins ont du eux aussi etre marque NeedRemove. Il n'y a donc pas besoin de les gerer dans les familles parentes.

TODO: A mettre dans l'API interne

Réimplémentée à partir de Arcane::mesh::ItemFamily.

Définition à la ligne 426 du fichier ParticleFamily.cc.

Références Arcane::Item::itemBase(), Arcane::Item::localId(), et Arcane::Item::mutableItemBase().

◆ removeParticles()

void Arcane::mesh::ParticleFamily::removeParticles ( Int32ConstArrayView  items_local_id)
overridevirtual

Implémente Arcane::IParticleFamily.

Définition à la ligne 345 du fichier ParticleFamily.cc.

◆ setEnableGhostItems()

void Arcane::mesh::ParticleFamily::setEnableGhostItems ( bool  value)
inlineoverridevirtual

set le flag pour gérer les particules ghost de la famille

Implémente Arcane::IParticleFamily.

Définition à la ligne 61 du fichier ParticleFamily.h.

◆ setHasUniqueIdMap()

void Arcane::mesh::ParticleFamily::setHasUniqueIdMap ( bool  v)
overridevirtual

Indique si la famille possède une table de conversion uniqueId vers localId.

La table de conversion permet d'utiliser les méthodes itemsUniqueIdToLocalId() ou findOneItem().

Cette méthode ne peut être appelée que lorsqu'il n'y a aucune entité de la famille.

Les familles de noeuds, arêtes, faces et mailles du maillage ont obligatoirement une table de conversion.

Réimplémentée à partir de Arcane::mesh::ItemFamily.

Définition à la ligne 389 du fichier ParticleFamily.cc.

◆ setParticleCell()

void Arcane::mesh::ParticleFamily::setParticleCell ( Particle  particle,
Cell  new_cell 
)
overridevirtual

Déplace la particule particle dans la maille new_cell.

Implémente Arcane::IParticleFamily.

Définition à la ligne 190 du fichier ParticleFamily.cc.

◆ setParticlesCell()

void Arcane::mesh::ParticleFamily::setParticlesCell ( ParticleVectorView  particles,
CellVectorView  new_cells 
)
overridevirtual

Déplace la list de particules particles dans les nouvelles mailles new_cells.

Implémente Arcane::IParticleFamily.

Définition à la ligne 200 du fichier ParticleFamily.cc.

◆ toParticleFamily()

IParticleFamily * Arcane::mesh::ParticleFamily::toParticleFamily ( )
inlineoverridevirtual

Retourne l'interface de la famille de particule de cette famille.

L'interface IParticleFamily n'existe que si cette famille est une famille de particules (itemKind()==IK_Particle). Pour les autres genres de famille, 0 est retourné.

Réimplémentée à partir de Arcane::mesh::ItemFamily.

Définition à la ligne 117 du fichier ParticleFamily.h.

Documentation des données membres

◆ m_cell_connectivity

CellConnectivity* Arcane::mesh::ParticleFamily::m_cell_connectivity
private

Définition à la ligne 128 du fichier ParticleFamily.h.

◆ m_enable_ghost_items

bool Arcane::mesh::ParticleFamily::m_enable_ghost_items
private

Définition à la ligne 127 du fichier ParticleFamily.h.

◆ m_particle_shared_info

ItemSharedInfoWithType* Arcane::mesh::ParticleFamily::m_particle_shared_info
private

Définition à la ligne 125 du fichier ParticleFamily.h.

◆ m_particle_type_info

ItemTypeInfo* Arcane::mesh::ParticleFamily::m_particle_type_info
private

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

◆ m_sub_domain_id

Int32 Arcane::mesh::ParticleFamily::m_sub_domain_id
private

Définition à la ligne 126 du fichier ParticleFamily.h.


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