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 () |
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::IMeshBase::allCells(), Arcane::IMeshBase::allFaces(), Arcane::IMesh::allLevelCells(), ARCANE_FATAL, Arcane::IMesh::computeSynchronizeInfos(), Arcane::IMeshBase::dimension(), ENUMERATE_, Arcane::Cell::face(), Arcane::Cell::level(), Arcane::IMesh::modifier(), Arcane::Cell::nbFace(), Arcane::ItemWithNodes::nbNode(), Arcane::ItemWithNodes::node(), Arcane::IMesh::parallelMng(), et Arcane::Item::uniqueId().
void Arcane::CartesianMeshCoarsening2::removeRefinedCells | ( | ) |
Définition à la ligne 707 du fichier CartesianMeshCoarsening2.cc.