20 #ifndef WELLECONPRODUCTIONLIMITS_HPP_HEADER_INCLUDED
21 #define WELLECONPRODUCTIONLIMITS_HPP_HEADER_INCLUDED
32 enum class QuantityLimit {
37 static const std::string QuantityLimit2String(QuantityLimit enumValue);
38 static QuantityLimit QuantityLimitFromString(
const std::string& stringValue);
41 enum class EconWorkover {
52 static std::string EconWorkover2String(EconWorkover enumValue);
53 static EconWorkover EconWorkoverFromString(
const std::string& stringValue);
65 bool onAnyEffectiveLimit()
const;
66 bool onAnyRatioLimit()
const;
67 bool onAnyRateLimit()
const;
68 bool onMinOilRate()
const;
69 bool onMinGasRate()
const;
70 bool onMaxWaterCut()
const;
71 bool onMaxGasOilRatio()
const;
72 bool onMaxWaterGasRatio()
const;
73 bool onSecondaryMaxWaterCut()
const;
74 bool onMaxGasLiquidRatio()
const;
76 bool onMaxTemperature()
const;
77 bool onMinLiquidRate()
const;
78 bool onMinReservoirFluidRate()
const;
80 bool validFollowonWell()
const;
81 bool requireWorkover()
const;
82 bool requireSecondaryWorkover()
const;
84 double minOilRate()
const;
85 double minGasRate()
const;
86 double maxWaterCut()
const;
87 double maxGasOilRatio()
const;
88 double maxWaterGasRatio()
const;
89 EconWorkover workover()
const;
90 const std::string& followonWell()
const;
91 QuantityLimit quantityLimit()
const;
92 double maxSecondaryMaxWaterCut()
const;
93 EconWorkover workoverSecondary()
const;
94 double maxGasLiquidRatio()
const;
95 double minLiquidRate()
const;
96 double maxTemperature()
const;
97 double minReservoirFluidRate()
const;
101 template<
class Serializer>
104 serializer(m_min_oil_rate);
105 serializer(m_min_gas_rate);
106 serializer(m_max_water_cut);
107 serializer(m_max_gas_oil_ratio);
108 serializer(m_max_water_gas_ratio);
109 serializer(m_workover);
110 serializer(m_end_run);
111 serializer(m_followon_well);
112 serializer(m_quantity_limit);
113 serializer(m_secondary_max_water_cut);
114 serializer(m_workover_secondary);
115 serializer(m_max_gas_liquid_ratio);
116 serializer(m_min_liquid_rate);
117 serializer(m_max_temperature);
118 serializer(m_min_reservoir_fluid_rate);
122 double m_min_oil_rate;
123 double m_min_gas_rate;
124 double m_max_water_cut;
125 double m_max_gas_oil_ratio;
126 double m_max_water_gas_ratio;
127 EconWorkover m_workover;
129 std::string m_followon_well;
130 QuantityLimit m_quantity_limit;
131 double m_secondary_max_water_cut;
132 EconWorkover m_workover_secondary;
133 double m_max_gas_liquid_ratio;
134 double m_min_liquid_rate;
135 double m_max_temperature;
136 double m_min_reservoir_fluid_rate;
Definition: DeckRecord.hpp:32
Definition: Serializer.hpp:38
Definition: WellEconProductionLimits.hpp:29
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition: Exceptions.hpp:29