Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
CartesianMeshPatch.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2023 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/* CartesianMeshPatch.h (C) 2000-2023 */
9/* */
10/* Informations sur un patch AMR d'un maillage cartésien. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CARTESIANMESH_CARTESIANMESHPATCH_H
13#define ARCANE_CARTESIANMESH_CARTESIANMESHPATCH_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/utils/TraceAccessor.h"
18
20#include "arcane/core/VariableTypes.h"
21
22#include "arcane/cartesianmesh/ICartesianMeshPatch.h"
23#include "arcane/cartesianmesh/CellDirectionMng.h"
24#include "arcane/cartesianmesh/FaceDirectionMng.h"
25#include "arcane/cartesianmesh/NodeDirectionMng.h"
26
27/*---------------------------------------------------------------------------*/
28/*---------------------------------------------------------------------------*/
29
30namespace Arcane
31{
32
33/*---------------------------------------------------------------------------*/
34/*---------------------------------------------------------------------------*/
44: public TraceAccessor
46{
47 friend CartesianMeshImpl;
48 public:
50 ~CartesianMeshPatch() override;
51 public:
52 CellGroup cells() override;
54 {
55 return m_cell_directions[dir];
56 }
57
59 {
60 return m_cell_directions[idir];
61 }
62
64 {
65 return m_face_directions[dir];
66 }
67
69 {
70 return m_face_directions[idir];
71 }
72
74 {
75 return m_node_directions[dir];
76 }
77
79 {
80 return m_node_directions[idir];
81 }
82 void checkValid() const override;
83 private:
84 void _internalComputeNodeCellInformations(Cell cell0,Real3 cell0_coord,VariableNodeReal3& nodes_coord);
85 void _computeNodeCellInformations2D(Cell cell0,Real3 cell0_coord,VariableNodeReal3& nodes_coord);
86 void _computeNodeCellInformations3D(Cell cell0,Real3 cell0_coord,VariableNodeReal3& nodes_coord);
87 private:
88 ICartesianMesh* m_mesh;
89 CellDirectionMng m_cell_directions[3];
90 FaceDirectionMng m_face_directions[3];
91 NodeDirectionMng m_node_directions[3];
92 Integer m_amr_patch_index;
93};
94
95/*---------------------------------------------------------------------------*/
96/*---------------------------------------------------------------------------*/
97
98} // End namespace Arcane
99
100/*---------------------------------------------------------------------------*/
101/*---------------------------------------------------------------------------*/
102
103#endif
104
Déclarations de types sur les entités.
Infos spécifiques à un maillage cartésien.
Informations par direction pour chaque genre d'entité du maillage.
FaceDirectionMng & faceDirection(Integer idir) override
Liste des faces dans la direction dir (0, 1 ou 2)
FaceDirectionMng & faceDirection(eMeshDirection dir) override
Liste des faces dans la direction dir.
NodeDirectionMng & nodeDirection(Integer idir) override
Liste des noeuds dans la direction dir (0, 1 ou 2)
void checkValid() const override
Effectue des vérifications sur la validité de l'instance.
CellDirectionMng & cellDirection(eMeshDirection dir) override
Liste des mailles dans la direction dir.
NodeDirectionMng & nodeDirection(eMeshDirection dir) override
Liste des noeuds dans la direction dir.
CellGroup cells() override
Groupe de mailles du patch.
CellDirectionMng & cellDirection(Integer idir) override
Liste des mailles dans la direction dir (0, 1 ou 2)
Infos sur les mailles d'une direction spécifique X,Y ou Z d'un maillage structuré.
Maille d'un maillage.
Definition Item.h:1178
Infos sur les face d'une direction spécifique X,Y ou Z d'un maillage structuré.
Interface d'un patch AMR d'un maillage cartésien.
Interface d'un maillage cartésien.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120
Infos sur les noeuds d'une direction spécifique X,Y ou Z d'un maillage structuré.
Classe gérant un vecteur de réel de dimension 3.
Definition Real3.h:132
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
eMeshDirection
Type de la direction pour un maillage structuré