opm-common
Toggle main menu visibility
Loading...
Searching...
No Matches
WellTracerProperties.hpp
1
/*
2
Copyright 2018 NORCE.
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 WELLTRACERPROPERTIES_HPP_HEADER_INCLUDED
21
#define WELLTRACERPROPERTIES_HPP_HEADER_INCLUDED
22
23
#include <opm/input/eclipse/Deck/UDAValue.hpp>
24
#include <opm/input/eclipse/Units/UnitSystem.hpp>
25
26
#include <vector>
27
#include <string>
28
#include <map>
29
30
namespace
Opm
{
31
32
class
SummaryState
;
33
34
class
WellTracerProperties
35
{
36
public
:
37
struct
Well
{
const
std::string& name; };
38
struct
Tracer
{
const
std::string& name; };
39
40
void
setConcentration(
const
Tracer
& tracer,
const
UDAValue
& conc);
41
double
getConcentration(
const
Well
& well,
const
Tracer
& tracer,
const
SummaryState
& st)
const
;
42
43
bool
operator==(
const
WellTracerProperties
& other)
const
;
44
bool
operator!=(
const
WellTracerProperties
& other)
const
;
45
46
static
WellTracerProperties
serializationTestObject();
47
48
template
<
class
Serializer>
49
void
serializeOp(
Serializer
& serializer)
50
{
51
serializer(m_tracerConcentrations);
52
}
53
54
private
:
55
std::map<std::string, UDAValue> m_tracerConcentrations;
56
};
57
58
}
59
60
#endif
Opm::Serializer
Class for (de-)serializing.
Definition
Serializer.hpp:94
Opm::SummaryState
Definition
SummaryState.hpp:72
Opm::UDAValue
Definition
UDAValue.hpp:31
Opm::WellTracerProperties
Definition
WellTracerProperties.hpp:35
Opm
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition
Exceptions.hpp:30
Opm::WellTracerProperties::Tracer
Definition
WellTracerProperties.hpp:38
Opm::WellTracerProperties::Well
Definition
WellTracerProperties.hpp:37
opm
input
eclipse
Schedule
Well
WellTracerProperties.hpp
Generated by
1.17.0