19 #ifndef WELLTEST_CONFIG_H
20 #define WELLTEST_CONFIG_H
24 #include <unordered_map>
39 namespace EclConfigReason {
40 constexpr
int PHYSICAL = 2;
41 constexpr
int ECONOMIC = 3;
42 constexpr
int GCON = 5;
43 constexpr
int THPLimit = 7;
44 constexpr
int CONNECTION = 11;
47 namespace EclCloseReason {
48 constexpr
int PHYSICAL = 3;
49 constexpr
int ECONOMIC = 5;
50 constexpr
int GCON = 6;
51 constexpr
int THPLimit = 9;
75 int begin_report_step;
77 bool operator==(
const WTESTWell& data)
const {
78 return name == data.name &&
79 reasons == data.reasons &&
80 test_interval == data.test_interval &&
81 num_test == data.num_test &&
82 startup_time == data.startup_time &&
83 begin_report_step == data.begin_report_step;
87 WTESTWell(
const std::string& name,
int reasons,
double test_interval,
int num_test,
double startup_time,
int begin_report_step);
88 bool test_well(
int num_attempt,
double elapsed)
const;
90 static int inverse_ecl_reasons(
int ecl_reasons);
92 int ecl_reasons()
const;
94 template<
class Serializer>
99 serializer(test_interval);
100 serializer(num_test);
101 serializer(startup_time);
102 serializer(begin_report_step);
110 void add_well(
const std::string& well,
int reasons,
double test_interval,
111 int num_test,
double startup_time,
int current_step);
112 void add_well(
const std::string& well,
const std::string& reasons,
double test_interval,
113 int num_test,
double startup_time,
int current_step);
114 void drop_well(
const std::string& well);
115 bool has(
const std::string& well)
const;
116 bool has(
const std::string& well, Reason reason)
const;
117 const WTESTWell& get(
const std::string& well)
const;
119 static std::string reasonToString(
const Reason reason);
124 template<
class Serializer>
127 serializer.map(wells);
131 std::unordered_map<std::string, WTESTWell> wells;
Definition: Serializer.hpp:38
Definition: WellTestConfig.hpp:56
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition: Exceptions.hpp:29
Definition: WellTestConfig.hpp:67