Déraffine un maillage cartésien par 2. Plus de détails...
#include <arcane/cartesianmesh/CartesianMeshCoarsening2.h>
Fonctions membres publiques | |
| void | createCoarseCells () |
| Déraffine le maillage initial par 2. | |
| void | removeRefinedCells () |
Fonctions membres publiques hérités de Arcane::TraceAccessor | |
| TraceAccessor (ITraceMng *m) | |
| Construit un accesseur via le gestionnaire de trace m. | |
| TraceAccessor (const TraceAccessor &rhs) | |
| Constructeur par recopie. | |
| TraceAccessor & | operator= (const TraceAccessor &rhs) |
| Opérateur de recopie. | |
| virtual | ~TraceAccessor () |
| Libère les ressources. | |
| ITraceMng * | traceMng () 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 |
Membres hérités additionnels | |
Fonctions membres protégées hérités de Arcane::TraceAccessor | |
| void | _setLocalVerboseLevel (Int32 v) |
| Int32 | _localVerboseLevel () const |
Déraffine un maillage cartésien par 2.
Cette classe permet de déraffiner un maillage cartésien. Les instances de cette classe sont créées via ICartesianMesh::createCartesianMeshCoarsening().
Le maillage initial doit être cartésien et ne doit pas avoir de patchs.
Le maillage doit être un maillage AMR (IMesh::isAmrActivated()==true).
Le nombre de mailles dans chaque dimension doit être un multiple de 2 ainsi que le nombre de mailles locales à chaque sous-domaine.
Le dé-raffinement se lors de l'appel à createCoarseCell(). Après cet appel on a la structure suivante pour le maillage :
Il est ensuite possible de ne conserver que les mailles grossières et de supprimer les mailles raffinées par la'appel à la méthode.
Définition à la ligne 78 du fichier CartesianMeshCoarsening2.h.
| void Arcane::CartesianMeshCoarsening2::createCoarseCells | ( | ) |
Déraffine le maillage initial par 2.
Cette méthode est collective.
Créé le patch avec les mailles filles
Définition à la ligne 128 du fichier CartesianMeshCoarsening2.cc.
Références ARCANE_FATAL, Arcane::MeshStats::dumpStats(), ENUMERATE_, Arcane::Cell::face(), Arcane::TraceAccessor::info(), Arcane::Cell::level(), Arcane::ItemVectorView::localIds(), Arcane::math::max(), Arcane::Cell::nbFace(), Arcane::ItemWithNodes::nbNode(), Arcane::ItemWithNodes::node(), Arcane::CellDirectionMng::ownNbCell(), Arcane::IParallelMng::reduce(), Arcane::MessagePassing::ReduceMax, Arcane::Array< T >::resize(), Arcane::TraceAccessor::traceMng(), Arcane::Item::uniqueId(), et Arcane::ItemGroup::view().
| void Arcane::CartesianMeshCoarsening2::removeRefinedCells | ( | ) |
Définition à la ligne 707 du fichier CartesianMeshCoarsening2.cc.