Arcane
v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
MeshTimeHistoryAdder.h
1
// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2
//-----------------------------------------------------------------------------
3
// Copyright 2000-2024 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
/* MeshTimeHistoryAdder.h (C) 2000-2024 */
9
/* */
10
/* Classe permettant d'ajouter un historique de valeur lié à un maillage. */
11
/*---------------------------------------------------------------------------*/
12
#ifndef ARCANE_CORE_MESHTIMEHISTORYADDER_H
13
#define ARCANE_CORE_MESHTIMEHISTORYADDER_H
14
/*---------------------------------------------------------------------------*/
15
/*---------------------------------------------------------------------------*/
16
17
#include "arcane/core/ITimeHistoryAdder.h"
18
#include "arcane/core/IParallelMng.h"
19
#include "arcane/core/MeshHandle.h"
20
21
/*---------------------------------------------------------------------------*/
22
/*---------------------------------------------------------------------------*/
23
24
namespace
Arcane
25
{
26
27
/*---------------------------------------------------------------------------*/
28
/*---------------------------------------------------------------------------*/
29
30
/*!
31
* \brief Classe permettant d'ajouter une ou plusieurs valeurs à un
32
* historique de valeurs.
33
*
34
* Cette classe enregistrera les courbes avec comme support un maillage.
35
* C'est-à-dire que les courbes seront liées à un maillage, en plus d'être
36
* liées au domaine complet ou au sous-domaine demandé.
37
* Si le lien au maillage n'est pas désiré, la classe GlobalTimeHistoryAdder
38
* peut être plus intéressante.
39
*
40
* Pour un nom d'historique donné, il peut y avoir qu'une courbe de une
41
* ou plusieurs valeurs par maillage et par sous-domaine (et une globale à
42
* tous les sous-domaines).
43
*
44
* Exemple : plusieurs courbes de moyennes des pressions (appelons-les
45
* "avg_pressure"), deux sous-domaines (0 et 1) et deux maillages (mesh0 et mesh1).
46
* Une valeur par itération.
47
* - Une courbe "avg_pressure" liée au sous-domaine 0 et au maillage 0. Chaque
48
* valeur est la moyenne des pressions de chaque maille du maillage 0 et
49
* du sous-domaine 0.
50
* - Une courbe "avg_pressure" liée au sous-domaine 0 et au maillage 1. Chaque
51
* valeur est la moyenne des pressions de chaque maille du maillage 1 et
52
* du sous-domaine 0.
53
* - Une courbe "avg_pressure" liée au sous-domaine 1 et au maillage 0. Chaque
54
* valeur est la moyenne des pressions de chaque maille du maillage 0 et
55
* du sous-domaine 1.
56
* - Une courbe "avg_pressure" liée au sous-domaine 1 et au maillage 1. Chaque
57
* valeur est la moyenne des pressions de chaque maille du maillage 1 et
58
* du sous-domaine 1.
59
* - Une courbe "avg_pressure" liée au domaine complet et au maillage 0.
60
* Chaque valeur est la moyenne des pressions du maillage 0 de chaque
61
* sous-domaine.
62
* - Une courbe "avg_pressure" liée au domaine complet et au maillage 1.
63
* Chaque valeur est la moyenne des pressions du maillage 1 de chaque
64
* sous-domaine.
65
*
66
* On peut remarquer qu'il est possible d'avoir plusieurs courbes
67
* indépendantes avec le même nom mais liée à des maillages différents et à
68
* des sous-domaines différents (+1 courbe globale). Et il est important de
69
* souligner que ce même nom peut être aussi utilisé avec les courbes de
70
* GlobalTimeHistoryAdder indépendement, donc l'exemple ci-dessus peut être
71
* complémentaire avec celui donné dans la description de GlobalTimeHistoryAdder !
72
* (donc possiblement 9 courbes indépendantes mais de même nom !)
73
*/
74
class
ARCANE_CORE_EXPORT
MeshTimeHistoryAdder
75
:
public
ITimeHistoryAdder
76
{
77
public
:
78
79
/*!
80
* \brief Constructeur.
81
*
82
* \param time_history_mng Un pointeur vers une instance de ITimeHistoryMng.
83
* \param mesh_handle Le maillage à lier aux courbes.
84
*/
85
MeshTimeHistoryAdder
(
ITimeHistoryMng
* time_history_mng,
const
MeshHandle
& mesh_handle);
86
~MeshTimeHistoryAdder
()
override
=
default
;
87
88
public
:
89
90
void
addValue(
const
TimeHistoryAddValueArg
& thp, Real value)
override
;
91
void
addValue(
const
TimeHistoryAddValueArg
& thp, Int32 value)
override
;
92
void
addValue(
const
TimeHistoryAddValueArg
& thp, Int64 value)
override
;
93
void
addValue(
const
TimeHistoryAddValueArg
& thp,
RealConstArrayView
values)
override
;
94
void
addValue(
const
TimeHistoryAddValueArg
& thp,
Int32ConstArrayView
values)
override
;
95
void
addValue(
const
TimeHistoryAddValueArg
& thp,
Int64ConstArrayView
values)
override
;
96
97
private
:
98
99
ITimeHistoryMng
* m_thm;
100
MeshHandle
m_mesh_handle;
101
};
102
103
/*---------------------------------------------------------------------------*/
104
/*---------------------------------------------------------------------------*/
105
106
}
// End namespace Arcane
107
108
/*---------------------------------------------------------------------------*/
109
/*---------------------------------------------------------------------------*/
110
111
#endif
Arcane::ITimeHistoryAdder
Interface de classe permettant d'ajouter une ou plusieurs valeurs à un historique de valeurs.
Definition
ITimeHistoryAdder.h:39
Arcane::ITimeHistoryMng
Classe gérant un historique de valeurs.
Definition
ITimeHistoryMng.h:133
Arcane::MeshHandle
Handle sur un maillage.
Definition
MeshHandle.h:47
Arcane::MeshTimeHistoryAdder
Classe permettant d'ajouter une ou plusieurs valeurs à un historique de valeurs.
Definition
MeshTimeHistoryAdder.h:76
Arcane::TimeHistoryAddValueArg
Definition
ITimeHistoryMng.h:34
Arccore::ConstArrayView
Vue constante d'un tableau de type T.
Definition
arccore/src/base/arccore/base/ArrayView.h:533
Arcane
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Definition
AbstractCaseDocumentVisitor.cc:20
arcane
core
MeshTimeHistoryAdder.h
Généré le Lundi 18 Novembre 2024 02:56:49 pour Arcane par
1.9.8