opm-simulators
Toggle main menu visibility
Loading...
Searching...
No Matches
BlackoilWellModelRestart.hpp
1
/*
2
Copyright 2016 SINTEF ICT, Applied Mathematics.
3
Copyright 2016 - 2017 Statoil ASA.
4
Copyright 2017 Dr. Blatt - HPC-Simulation-Software & Services
5
Copyright 2016 - 2018 IRIS AS
6
7
This file is part of the Open Porous Media project (OPM).
8
9
OPM is free software: you can redistribute it and/or modify
10
it under the terms of the GNU General Public License as published by
11
the Free Software Foundation, either version 3 of the License, or
12
(at your option) any later version.
13
14
OPM is distributed in the hope that it will be useful,
15
but WITHOUT ANY WARRANTY; without even the implied warranty of
16
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
GNU General Public License for more details.
18
19
You should have received a copy of the GNU General Public License
20
along with OPM. If not, see <http://www.gnu.org/licenses/>.
21
*/
22
23
#ifndef OPM_BLACKOILWELLMODEL_RESTART_HEADER_INCLUDED
24
#define OPM_BLACKOILWELLMODEL_RESTART_HEADER_INCLUDED
25
26
#include <opm/input/eclipse/Schedule/Group/GuideRateModel.hpp>
27
#include <opm/output/data/Wells.hpp>
28
29
#include <vector>
30
31
namespace
Opm
{
32
33
template
<
typename
Scalar,
typename
IndexTraits>
class
BlackoilWellModelGeneric
;
34
namespace
data {
35
struct
GroupData;
36
class
GroupAndNetworkValues;
37
}
38
template
<
class
Scalar>
class
GroupState
;
39
class
GuideRate;
40
class
GuideRateConfig;
41
template
<
class
Scalar>
struct
PerforationData
;
42
template
<
typename
Scalar,
typename
IndexTraits>
class
SingleWellState
;
43
template
<
typename
Scalar,
typename
IndexTraits>
class
WellState
;
44
46
template
<
typename
Scalar,
typename
IndexTraits>
47
class
BlackoilWellModelRestart
48
{
49
public
:
51
explicit
BlackoilWellModelRestart
(
const
BlackoilWellModelGeneric<Scalar, IndexTraits>
& wellModel)
52
: wellModel_(wellModel)
53
{}
54
56
void
loadRestartGuideRates
(
const
int
report_step,
57
const
GuideRateModel::Target target,
58
const
data::Wells& rst_wells,
59
GuideRate& guide_rate)
const
;
60
62
void
loadRestartGuideRates
(
const
int
report_step,
63
const
GuideRateConfig& config,
64
const
std::map<std::string, data::GroupData>& rst_groups,
65
GuideRate& guide_rate)
const
;
66
68
void
loadRestartData
(
const
data::Wells& rst_wells,
69
const
data::GroupAndNetworkValues& grpNwrkValues,
70
const
bool
handle_ms_well,
71
WellState<Scalar, IndexTraits>
& well_state,
72
GroupState<Scalar>
& grpState)
const
;
73
74
private
:
76
void
loadRestartConnectionData(
const
std::vector<data::Rates::opt>& phs,
77
const
data::Well& rst_well,
78
const
std::vector<
PerforationData<Scalar>
>& old_perf_data,
79
SingleWellState<Scalar, IndexTraits>
& ws)
const
;
80
82
void
loadRestartSegmentData(
const
std::string& well_name,
83
const
std::vector<data::Rates::opt>& phs,
84
const
data::Well& rst_well,
85
SingleWellState<Scalar, IndexTraits>
& ws)
const
;
86
88
void
loadRestartWellData(
const
std::string& well_name,
89
const
bool
handle_ms_well,
90
const
std::vector<data::Rates::opt>& phs,
91
const
data::Well& rst_well,
92
const
std::vector<
PerforationData<Scalar>
>& old_perf_data,
93
SingleWellState<Scalar, IndexTraits>
& ws)
const
;
94
96
void
loadRestartGroupData(
const
std::string& group,
97
const
data::GroupData& value,
98
GroupState<Scalar>
& grpState)
const
;
99
100
const
BlackoilWellModelGeneric<Scalar, IndexTraits>
& wellModel_;
101
};
102
103
104
}
// namespace Opm
105
106
#endif
Opm::BlackoilWellModelGeneric
Class for handling the blackoil well model.
Definition
BlackoilWellModelGeneric.hpp:95
Opm::BlackoilWellModelRestart::loadRestartData
void loadRestartData(const data::Wells &rst_wells, const data::GroupAndNetworkValues &grpNwrkValues, const bool handle_ms_well, WellState< Scalar, IndexTraits > &well_state, GroupState< Scalar > &grpState) const
Loads well data from restart structures.
Definition
BlackoilWellModelRestart.cpp:234
Opm::BlackoilWellModelRestart::loadRestartGuideRates
void loadRestartGuideRates(const int report_step, const GuideRateModel::Target target, const data::Wells &rst_wells, GuideRate &guide_rate) const
Loads guide rates from restart structures.
Definition
BlackoilWellModelRestart.cpp:191
Opm::BlackoilWellModelRestart::BlackoilWellModelRestart
BlackoilWellModelRestart(const BlackoilWellModelGeneric< Scalar, IndexTraits > &wellModel)
Constructor initializes reference to the well model.
Definition
BlackoilWellModelRestart.hpp:51
Opm::GroupState
Definition
GroupState.hpp:41
Opm::SingleWellState
Definition
SingleWellState.hpp:43
Opm::WellState
The state of a set of wells, tailored for use by the fully implicit blackoil simulator.
Definition
WellState.hpp:66
Opm
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition
blackoilbioeffectsmodules.hh:43
Opm::PerforationData
Static data associated with a well perforation.
Definition
PerforationData.hpp:30
opm
simulators
wells
BlackoilWellModelRestart.hpp
Generated by
1.17.0