opm-common
Toggle main menu visibility
Loading...
Searching...
No Matches
header.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 it under the
7
terms of the GNU General Public License as published by the Free Software
8
Foundation, either version 3 of the License, or (at your option) any later
9
version.
10
11
OPM is distributed in the hope that it will be useful, but WITHOUT ANY
12
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
13
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
14
details.
15
16
You should have received a copy of the GNU General Public License along
17
with OPM. If not, see <http://www.gnu.org/licenses/>.
18
*/
19
20
#ifndef RST_HEADER
21
#define RST_HEADER
22
23
#include <opm/input/eclipse/EclipseState/Runspec.hpp>
24
25
#include <cstddef>
26
#include <ctime>
27
#include <utility>
28
#include <vector>
29
30
namespace
Opm
{
31
32
class
UnitSystem
;
33
34
}
// namespace Opm
35
36
namespace
Opm::RestartIO {
37
38
struct
RstHeader
39
{
40
RstHeader(
const
Runspec
& runspec,
41
const
UnitSystem
& unit_system,
42
const
std::vector<int>& intehead,
43
const
std::vector<bool>& logihead,
44
const
std::vector<double>& doubhead);
45
46
Runspec
runspec;
47
int
nx;
48
int
ny;
49
int
nz;
50
int
nactive;
51
int
num_wells;
52
int
ncwmax;
53
int
max_wells_in_group;
54
int
max_groups_in_field;
55
int
max_wells_in_field;
56
int
year;
57
int
month;
58
int
mday;
59
int
hour;
60
int
minute;
61
int
microsecond;
62
int
phase_sum;
63
int
niwelz;
64
int
nswelz;
65
int
nxwelz;
66
int
nzwelz;
67
int
niconz;
68
int
nsconz;
69
int
nxconz;
70
int
nigrpz;
71
int
nsgrpz;
72
int
nxgrpz;
73
int
nzgrpz;
74
int
ncamax;
75
int
niaaqz;
76
int
nsaaqz;
77
int
nxaaqz;
78
int
nicaqz;
79
int
nscaqz;
80
int
nacaqz;
81
int
tstep;
82
int
report_step;
83
int
histctl_override;
84
int
newtmx;
85
int
newtmn;
86
int
litmax;
87
int
litmin;
88
int
mxwsit;
89
int
mxwpit;
90
int
version;
91
int
iprog;
92
int
nsegwl;
93
int
nswlmx;
94
int
nsegmx;
95
int
nlbrmx;
96
int
nisegz;
97
int
nrsegz;
98
int
nilbrz;
99
int
ntfip ;
100
int
nmfipr;
101
int
ngroup;
102
int
nwgmax;
103
int
nfield_udq;
104
int
ngroup_udq;
105
int
nsegment_udq;
106
int
nwell_udq;
107
int
num_action;
108
int
guide_rate_nominated_phase;
109
int
max_wlist;
110
111
bool
e300_radial;
112
bool
e100_radial;
113
bool
enable_hysteris;
114
bool
enable_msw;
115
bool
is_live_oil;
116
bool
is_wet_gas;
117
bool
const_comp_oil;
118
bool
dir_relperm;
119
bool
reversible_relperm;
120
bool
endscale;
121
bool
dir_eps;
122
bool
reversible_eps;
123
bool
alt_eps;
124
bool
group_control_active;
125
bool
glift_all_nupcol;
126
127
double
next_timestep1;
128
double
next_timestep2;
129
double
max_timestep;
130
double
guide_rate_a;
131
double
guide_rate_b;
132
double
guide_rate_c;
133
double
guide_rate_d;
134
double
guide_rate_e;
135
double
guide_rate_f;
136
double
guide_rate_delay;
137
double
guide_rate_damping;
138
double
udq_range;
139
double
udq_undefined;
140
double
udq_eps;
141
double
glift_min_wait;
142
double
glift_rate_delta;
143
double
glift_min_eco_grad;
144
145
std::time_t sim_time()
const
;
146
std::pair<std::time_t, std::size_t> restart_info()
const
;
147
int
num_udq()
const
;
148
};
149
150
}
// namespace Opm::RestartIO
151
152
#endif
// RST_HEADER
Opm::Runspec
Definition
Runspec.hpp:489
Opm::UnitSystem
Definition
UnitSystem.hpp:34
Opm
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition
Exceptions.hpp:30
opm
io
eclipse
rst
header.hpp
Generated by
1.17.0