20 #ifndef SOLVENTPROPSADFROMDECK_HPP 21 #define SOLVENTPROPSADFROMDECK_HPP 23 #include <opm/autodiff/BlackoilPropsAdFromDeck.hpp> 24 #include <opm/autodiff/AutoDiffBlock.hpp> 26 #include <opm/core/utility/NonuniformTableLinear.hpp> 28 #include <opm/parser/eclipse/Deck/Deck.hpp> 29 #include <opm/parser/eclipse/EclipseState/EclipseState.hpp> 33 #include <opm/common/ErrorMacros.hpp> 41 const EclipseState& eclipseState,
42 const int number_of_cells,
43 const int* global_cell);
51 typedef std::vector<int> Cells;
58 const Cells& cells)
const;
65 const Cells& cells)
const;
72 const Cells& cells)
const;
79 const Cells& cells)
const;
86 const Cells& cells)
const;
94 const Cells& cells)
const;
101 const Cells& cells)
const;
108 const Cells& cells)
const;
115 const Cells& cells)
const;
122 const Cells& cells)
const;
129 const Cells& cells)
const;
151 const Cells& cells)
const;
160 ADB makeADBfromTables(
const ADB& X,
162 const std::vector<int>& regionIdx,
163 const std::vector<NonuniformTableLinear<double>>& tables)
const;
172 void extractTableIndex(
const std::string& keyword,
173 const Opm::EclipseState& eclState,
174 size_t numCompressed,
175 const int* compressedToCartesianCellIdx,
176 std::vector<int>& tableIdx)
const;
179 std::vector<int> cellPvtRegionIdx_;
180 std::vector<int> cellMiscRegionIdx_;
181 std::vector<int> cellSatNumRegionIdx_;
182 std::vector<NonuniformTableLinear<double> > b_;
183 std::vector<NonuniformTableLinear<double> > viscosity_;
184 std::vector<NonuniformTableLinear<double> > inverseBmu_;
185 std::vector<double> solvent_surface_densities_;
186 std::vector<NonuniformTableLinear<double> > krg_;
187 std::vector<NonuniformTableLinear<double> > krs_;
188 std::vector<NonuniformTableLinear<double> > krn_;
189 std::vector<NonuniformTableLinear<double> > mkro_;
190 std::vector<NonuniformTableLinear<double> > mkrsg_;
191 std::vector<NonuniformTableLinear<double> > misc_;
192 std::vector<NonuniformTableLinear<double> > pmisc_;
193 std::vector<NonuniformTableLinear<double> > sorwmis_;
194 std::vector<NonuniformTableLinear<double> > sgcwmis_;
195 std::vector<NonuniformTableLinear<double> > tlpmix_param_;
196 std::vector<double> mix_param_viscosity_;
197 std::vector<double> mix_param_density_;
202 #endif // SOLVENTPROPSADFROMDECK_HPP ADB miscibilityFunction(const ADB &solventFraction, const Cells &cells) const
Miscible function.
Definition: SolventPropsAdFromDeck.cpp:386
ADB miscibleSolventGasRelPermMultiplier(const ADB &Ssg, const Cells &cells) const
Miscible Solvent + Gas relPerm multiplier.
Definition: SolventPropsAdFromDeck.cpp:366
ADB bSolvent(const ADB &pg, const Cells &cells) const
Solvent formation volume factor.
Definition: SolventPropsAdFromDeck.cpp:339
ADB misicibleHydrocarbonWaterRelPerm(const ADB &Sn, const Cells &cells) const
Miscible hydrocrabon relPerm wrt water.
Definition: SolventPropsAdFromDeck.cpp:360
ADB pressureMiscibilityFunction(const ADB &po, const Cells &cells) const
Pressure dependent miscibility function.
Definition: SolventPropsAdFromDeck.cpp:393
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition: AdditionalObjectDeleter.hpp:22
ADB muSolvent(const ADB &pg, const Cells &cells) const
Solvent viscosity.
Definition: SolventPropsAdFromDeck.cpp:313
ADB miscibleCriticalGasSaturationFunction(const ADB &Sw, const Cells &cells) const
Miscible critical gas saturation function.
Definition: SolventPropsAdFromDeck.cpp:404
V mixingParameterViscosity(const Cells &cells) const
Todd-Longstaff mixing parameter for viscosity calculation.
Definition: SolventPropsAdFromDeck.cpp:457
V mixingParameterDensity(const Cells &cells) const
Todd-Longstaff mixing parameter for density calculation.
Definition: SolventPropsAdFromDeck.cpp:471
V solventSurfaceDensity(const Cells &cells) const
Solvent surface density.
Definition: SolventPropsAdFromDeck.cpp:447
ADB miscibleOilRelPermMultiplier(const ADB &So, const Cells &cells) const
Miscible Oil relPerm multiplier.
Definition: SolventPropsAdFromDeck.cpp:376
ADB miscibleResidualOilSaturationFunction(const ADB &Sw, const Cells &cells) const
Miscible residual oil saturation function.
Definition: SolventPropsAdFromDeck.cpp:414
ADB pressureMixingParameter(const ADB &po, const Cells &cells) const
Todd-Longstaff pressure dependent mixing parameter.
Definition: SolventPropsAdFromDeck.cpp:485
ADB gasRelPermMultiplier(const ADB &solventFraction, const Cells &cells) const
Gas relPerm multipliers.
Definition: SolventPropsAdFromDeck.cpp:346
Definition: SolventPropsAdFromDeck.hpp:37
ADB solventRelPermMultiplier(const ADB &solventFraction, const Cells &cells) const
Solvent relPerm multipliers.
Definition: SolventPropsAdFromDeck.cpp:353
Eigen::Array< double, Eigen::Dynamic, 1 > V
Underlying type for values.
Definition: AutoDiffBlock.hpp:99