Arcane  v3.16.0.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
ICartesianMeshAMRPatchMng.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2025 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* ICartesianMeshAMRPatchMng.h (C) 2000-2025 */
9/* */
10/* Interface de gestionnaire de l'AMR par patch d'un maillage cartésien. */
11/*---------------------------------------------------------------------------*/
12/*---------------------------------------------------------------------------*/
13
14#ifndef ARCANE_CARTESIANMESH_ICARTESIANMESHAMRPATCHMNG_H
15#define ARCANE_CARTESIANMESH_ICARTESIANMESHAMRPATCHMNG_H
16
17/*---------------------------------------------------------------------------*/
18/*---------------------------------------------------------------------------*/
19
20#include "arcane/cartesianmesh/CartesianMeshGlobal.h"
22
23/*---------------------------------------------------------------------------*/
24/*---------------------------------------------------------------------------*/
25
26namespace Arcane
27{
28
29/*---------------------------------------------------------------------------*/
30/*---------------------------------------------------------------------------*/
31
32class ARCANE_CARTESIANMESH_EXPORT ICartesianMeshAMRPatchMng
33{
34 public:
35
36 virtual ~ICartesianMeshAMRPatchMng() = default;
37
38 public:
39
40 /*!
41 * \brief Méthode permettant de définir les mailles à raffiner (à marquer avec le flag "II_Refine").
42 * \param cells_lids Les localIds des mailles.
43 * \param clear_old_flags Doit-on retirer les flags des raffinements/déraffinements précédents ?
44 */
45 virtual void flagCellToRefine(Int32ConstArrayView cells_lids, bool clear_old_flags) = 0;
46
47 /*!
48 * \brief Méthode permettant de définir les mailles à déraffiner (à marquer avec le flag "II_Coarsen").
49 * \param cells_lids Les localIds des mailles.
50 * \param clear_old_flags Doit-on retirer les flags des raffinements/déraffinements précédents ?
51 */
52 virtual void flagCellToCoarsen(Int32ConstArrayView cells_lids, bool clear_old_flags) = 0;
53
54 /*!
55 * \brief Méthode permettant de raffiner les mailles avec le
56 * flag "II_Refine".
57 */
58 virtual void refine() = 0;
59
60 /*!
61 * \brief Méthode permettant de déraffiner les mailles de niveau 0.
62 *
63 * Un niveau de maille -1 sera créé avec des mailles parentes aux mailles
64 * de niveau 0 puis tous les niveaux seront incrémentés de 1. Le niveau créé
65 * par cette méthode sera donc le nouveau niveau 0.
66 */
67 virtual void createSubLevel() = 0;
68
69 /*!
70 * \brief Méthode permettant de retirer les mailles marquées avec le
71 * flag "II_Coarsen".
72 *
73 * Les propriétaires des faces et des noeuds ayant des mailles marquées
74 * et des mailles non marquées sont susceptibles d'être mis à jour.
75 *
76 * \param update_parent_flag Si true, alors les flags des parents seront
77 * mis à jour. Cela inclut l'activation des mailles parentes.
78 */
79 virtual void coarsen(bool update_parent_flag) = 0;
80};
81
82/*---------------------------------------------------------------------------*/
83/*---------------------------------------------------------------------------*/
84
85} // End namespace Arcane
86
87/*---------------------------------------------------------------------------*/
88/*---------------------------------------------------------------------------*/
89
90#endif //ARCANE_CARTESIANMESH_ICARTESIANMESHAMRPATCHMNG_H
Déclarations des types utilisés dans Arcane.
virtual void refine()=0
Méthode permettant de raffiner les mailles avec le flag "II_Refine".
virtual void flagCellToCoarsen(Int32ConstArrayView cells_lids, bool clear_old_flags)=0
Méthode permettant de définir les mailles à déraffiner (à marquer avec le flag "II_Coarsen").
virtual void flagCellToRefine(Int32ConstArrayView cells_lids, bool clear_old_flags)=0
Méthode permettant de définir les mailles à raffiner (à marquer avec le flag "II_Refine").
virtual void coarsen(bool update_parent_flag)=0
Méthode permettant de retirer les mailles marquées avec le flag "II_Coarsen".
virtual void createSubLevel()=0
Méthode permettant de déraffiner les mailles de niveau 0.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
ConstArrayView< Int32 > Int32ConstArrayView
Equivalent C d'un tableau à une dimension d'entiers 32 bits.
Definition UtilsTypes.h:569