37 std::string unit_string;
38 Phase phase = Phase::OIL;
39 std::optional<std::vector<double>> free_concentration;
40 std::optional<std::vector<double>> solution_concentration;
41 std::optional<TracerVdTable> free_tvdp;
42 std::optional<TracerVdTable> solution_tvdp;
43 std::string fname()
const {
44 return this->name +
"F";
46 std::string sname()
const {
47 return this->name +
"S";
49 std::string wellfname()
const {
50 return "F" + this->name;
52 std::string wellsname()
const {
53 return "S" + this->name;
58 TracerEntry(
const std::string& name_,
const std::string& unit_string_,
59 Phase phase_, std::vector<double> free_concentration_)
61 , unit_string(unit_string_)
63 , free_concentration(std::move(free_concentration_))
66 TracerEntry(
const std::string& name_,
const std::string& unit_string_,
67 Phase phase_, std::vector<double> free_concentration_, std::vector<double> solution_concentration_)
69 , unit_string(unit_string_)
71 , free_concentration(std::move(free_concentration_))
72 , solution_concentration(std::move(solution_concentration_))
75 TracerEntry(
const std::string& name_,
const std::string& unit_string_,
78 , unit_string(unit_string_)
80 , free_tvdp(std::move(free_tvdp_))
83 TracerEntry(
const std::string& name_,
const std::string& unit_string_,
86 , unit_string(unit_string_)
88 , free_tvdp(std::move(free_tvdp_))
89 , solution_tvdp(std::move(solution_tvdp_))
92 TracerEntry(
const std::string& name_,
const std::string& unit_string_, Phase phase_)
94 , unit_string(unit_string_)
99 return this->name == data.name &&
100 this->unit_string == data.unit_string &&
101 this->phase == data.phase &&
102 this->free_concentration == data.free_concentration &&
103 this->solution_concentration == data.solution_concentration &&
104 this->free_tvdp == data.free_tvdp &&
105 this->solution_tvdp == data.solution_tvdp;
108 template<
class Serializer>
112 serializer(unit_string);
114 serializer(free_concentration);
115 serializer(solution_concentration);
116 serializer(this->free_tvdp);
117 serializer(this->solution_tvdp);