Arcane  v3.16.6.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
IMeshArea.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/* IMeshArea.h (C) 2000-2025 */
9/* */
10/* Interface d'une zone du maillage. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_IMESHAREA_H
13#define ARCANE_CORE_IMESHAREA_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23namespace Arcane
24{
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
28/*!
29 * \ingroup Mesh
30 *
31 * \brief Interface d'une zone du maillage.
32 *
33 * Une zone du maillage est un sous-ensemble du maillage définit par
34 * une liste de maille et de noeuds.
35 */
36class ARCANE_CORE_EXPORT IMeshArea
37{
38 public:
39
40 virtual ~IMeshArea() = default; //!< Libère les ressources
41
42 public:
43
44 //! Nombre de noeuds du maillage
45 virtual Integer nbNode() = 0;
46
47 //! Nombre de mailles du maillage
48 virtual Integer nbCell() = 0;
49
50 public:
51
52 //! Sous-domaine associé
53 virtual ISubDomain* subDomain() = 0;
54
55 //! Gestionnaire de trace associé
56 virtual ITraceMng* traceMng() = 0;
57
58 //! Maillage auquel appartient la zone
59 virtual IMesh* mesh() = 0;
60
61 public:
62
63 //! Groupe de tous les noeuds
64 virtual NodeGroup allNodes() = 0;
65
66 //! Groupe de toutes les mailles
67 virtual CellGroup allCells() = 0;
68
69 //! Groupe de tous les noeuds propres au domaine
70 virtual NodeGroup ownNodes() = 0;
71
72 //! Groupe de toutes les mailles propres au domaine
73 virtual CellGroup ownCells() = 0;
74};
75
76/*---------------------------------------------------------------------------*/
77/*---------------------------------------------------------------------------*/
78
79} // namespace Arcane
80
81/*---------------------------------------------------------------------------*/
82/*---------------------------------------------------------------------------*/
83
84#endif
85
Déclarations des types généraux de Arcane.
Déclarations de types sur les entités.
Interface d'une zone du maillage.
Definition IMeshArea.h:37
virtual NodeGroup ownNodes()=0
Groupe de tous les noeuds propres au domaine.
virtual CellGroup allCells()=0
Groupe de toutes les mailles.
virtual ITraceMng * traceMng()=0
Gestionnaire de trace associé
virtual NodeGroup allNodes()=0
Groupe de tous les noeuds.
virtual ISubDomain * subDomain()=0
Sous-domaine associé
virtual Integer nbCell()=0
Nombre de mailles du maillage.
virtual CellGroup ownCells()=0
Groupe de toutes les mailles propres au domaine.
virtual IMesh * mesh()=0
Maillage auquel appartient la zone.
virtual ~IMeshArea()=default
Libère les ressources.
virtual Integer nbNode()=0
Nombre de noeuds du maillage.
Interface du gestionnaire d'un sous-domaine.
Definition ISubDomain.h:74
Interface du gestionnaire de traces.
ItemGroupT< Cell > CellGroup
Groupe de mailles.
Definition ItemTypes.h:183
ItemGroupT< Node > NodeGroup
Groupe de noeuds.
Definition ItemTypes.h:167
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Int32 Integer
Type représentant un entier.