My Project
Loading...
Searching...
No Matches
JouleThomson.hpp
1
/*
2
Copyright (C) 2020 by Equinor
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
#ifndef OPM_PARSER_JOULETHOMSON_HPP
20
#define OPM_PARSER_JOULETHOMSON_HPP
21
22
#include <cstddef>
23
#include <vector>
24
25
namespace
Opm
{
26
27
class
DeckKeyword;
28
class
DeckRecord;
29
30
class
JouleThomson
{
31
public
:
32
33
struct
entry
{
34
double
P0;
35
double
C1
;
36
37
entry
() =
default
;
38
entry
(
double
P0_,
double
C1_);
39
explicit
entry
(
const
DeckRecord
& record);
40
bool
operator==(
const
entry
& other)
const
;
41
42
template
<
class
Serializer>
43
void
serializeOp(
Serializer
& serializer)
44
{
45
serializer(P0);
46
serializer(
C1
);
47
}
48
};
49
50
JouleThomson
() =
default
;
51
explicit
JouleThomson
(
const
DeckKeyword
& keyword);
52
53
static
JouleThomson
serializationTestObject();
54
55
const
entry
& operator[](
const
std::size_t index)
const
;
56
bool
operator==(
const
JouleThomson
& other)
const
;
57
std::size_t size()
const
;
58
59
template
<
class
Serializer>
60
void
serializeOp(
Serializer
& serializer)
61
{
62
serializer(m_records);
63
}
64
65
private
:
66
std::vector<entry> m_records;
67
};
68
}
69
70
#endif
Opm::C1
Properties of pure molecular methane .
Definition
C1.hpp:51
Opm::DeckKeyword
Definition
DeckKeyword.hpp:36
Opm::DeckRecord
Definition
DeckRecord.hpp:32
Opm::JouleThomson
Definition
JouleThomson.hpp:30
Opm::Serializer
Class for (de-)serializing.
Definition
Serializer.hpp:84
Opm
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition
Exceptions.hpp:30
Opm::JouleThomson::entry
Definition
JouleThomson.hpp:33
opm
input
eclipse
EclipseState
Tables
JouleThomson.hpp
Generated by
1.9.8