opm-common
Toggle main menu visibility
Loading...
Searching...
No Matches
PAvg.hpp
1
/*
2
Copyright 2020 Equinor ASA.
3
4
This file is part of the Open Porous Media project (OPM).
5
6
OPM is free software: you can redistribute it and/or modify
7
it under the terms of the GNU General Public License as published by
8
the Free Software Foundation, either version 3 of the License, or
9
(at your option) any later version.
10
11
OPM is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
GNU General Public License for more details.
15
16
You should have received a copy of the GNU General Public License
17
along with OPM. If not, see <http://www.gnu.org/licenses/>.
18
*/
19
20
#ifndef PAVE_HPP
21
#define PAVE_HPP
22
23
namespace
Opm
{
24
class
DeckRecord
;
25
}
// Namespace Opm
26
27
namespace
Opm
{
28
29
class
PAvg
30
{
31
public
:
32
enum class
DepthCorrection
33
{
34
WELL = 1,
35
RES = 2,
36
NONE = 3,
37
};
38
39
PAvg();
40
explicit
PAvg(
const
DeckRecord
& record);
41
PAvg(
double
inner_weight,
42
double
conn_weight,
43
DepthCorrection depth_correction,
44
bool
use_open_connections);
45
46
static
PAvg serializationTestObject();
47
48
double
inner_weight()
const
49
{
50
return
this->m_inner_weight;
51
}
52
53
double
conn_weight()
const
54
{
55
return
this->m_conn_weight;
56
}
57
58
bool
open_connections()
const
59
{
60
return
this->m_open_connections;
61
}
62
63
DepthCorrection depth_correction()
const
64
{
65
return
this->m_depth_correction;
66
}
67
68
bool
use_porv()
const
;
69
70
template
<
class
Serializer>
71
void
serializeOp(
Serializer
& serializer)
72
{
73
serializer(this->m_inner_weight);
74
serializer(this->m_conn_weight);
75
serializer(this->m_depth_correction);
76
serializer(this->m_open_connections);
77
}
78
79
bool
operator==(
const
PAvg& other)
const
;
80
bool
operator!=(
const
PAvg& other)
const
;
81
82
private
:
83
double
m_inner_weight;
84
double
m_conn_weight;
85
DepthCorrection m_depth_correction;
86
bool
m_open_connections;
87
};
88
89
}
// namespace Opm
90
91
#endif
// PAVE_HPP
Opm::DeckRecord
Definition
DeckRecord.hpp:32
Opm::Serializer
Class for (de-)serializing.
Definition
Serializer.hpp:94
Opm
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition
Exceptions.hpp:30
opm
input
eclipse
Schedule
Well
PAvg.hpp
Generated by
1.17.0