20 #ifndef OPM_FIELDSEP_HPP 21 #define OPM_FIELDSEP_HPP 30 class KeywordLocation;
68 template<
class Serializer>
72 serializer(m_temperature);
73 serializer(m_pressure);
74 serializer(m_liquid_destination);
75 serializer(m_vapor_destination);
76 serializer(m_kvalue_table_number);
77 serializer(m_gas_plant_table_number);
78 serializer(m_surface_eos_number);
79 serializer(m_ngl_density_temperature);
80 serializer(m_ngl_density_pressure);
85 double m_temperature = 0.0;
86 double m_pressure = 0.0;
87 int m_liquid_destination = 0;
88 int m_vapor_destination = 0;
89 int m_kvalue_table_number = 0;
90 int m_gas_plant_table_number = 0;
91 std::optional<int> m_surface_eos_number{};
92 std::optional<double> m_ngl_density_temperature{};
93 std::optional<double> m_ngl_density_pressure{};
105 static FieldSep serializationTestObject();
109 std::size_t size()
const {
return this->m_records.size(); }
110 bool empty()
const {
return this->m_records.empty(); }
112 auto begin()
const {
return this->m_records.begin(); }
113 auto end()
const {
return this->m_records.end(); }
115 bool operator==(
const FieldSep& data)
const;
117 template<
class Serializer>
120 serializer(m_records);
124 std::vector<FieldSepRecord> m_records;
129 #endif // OPM_FIELDSEP_HPP double temperature() const
Stage temperature (SI).
Definition: FieldSep.cpp:107
Definition: KeywordLocation.hpp:27
std::optional< double > nglDensityPressure() const
NGL-density-evaluation pressure (SI). Nullopt if defaulted.
Definition: FieldSep.cpp:139
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition: Exceptions.hpp:30
std::optional< int > surfaceEosNumber() const
Surface equation-of-state region number.
Definition: FieldSep.cpp:131
double pressure() const
Stage pressure (SI).
Definition: FieldSep.cpp:111
int gasPlantTableNumber() const
Gas-plant table number, references a GPTABLE (0 => use the EoS).
Definition: FieldSep.cpp:127
A multi-stage field separator (the FIELDSEP keyword).
Definition: FieldSep.hpp:100
int vaporDestination() const
Vapour destination: 0 => stock tank / surface gas.
Definition: FieldSep.cpp:119
std::optional< double > nglDensityTemperature() const
NGL-density-evaluation temperature (SI). Nullopt if defaulted.
Definition: FieldSep.cpp:135
int liquidDestination() const
Liquid destination: 0 => next stage (stock tank for the last stage); -1 => add to stock-tank oil...
Definition: FieldSep.cpp:115
int stage() const
Stage index (FIELDSEP records are given in increasing order).
Definition: FieldSep.cpp:103
One stage of a field separator (a single FIELDSEP record).
Definition: FieldSep.hpp:36
Definition: DeckRecord.hpp:33
Class for (de-)serializing.
Definition: Serializer.hpp:95
int kvalueTableNumber() const
K-value table number (0 => use the equation of state).
Definition: FieldSep.cpp:123
Definition: DeckKeyword.hpp:38