20#ifndef OPM_AUTODIFF_VFPPRODPROPERTIES_HPP_
21#define OPM_AUTODIFF_VFPPRODPROPERTIES_HPP_
38class VFPProdProperties {
43 void addTable(
const VFPProdTable& new_table);
62 template <
class EvalWell>
63 EvalWell
bhp(
const int table_id,
65 const EvalWell& liquid,
66 const EvalWell& vapour,
69 const Scalar explicit_wfr,
70 const Scalar explicit_gfr,
71 const bool use_expvfp)
const;
85 Scalar
bhp(
const int table_id,
91 const Scalar explicit_wfr,
92 const Scalar explicit_gfr,
93 const bool use_expvfp)
const;
107 Scalar
thp(
const int table_id,
113 const Scalar explicit_wrf,
114 const Scalar explicit_gfr,
115 const bool use_expvfp)
const;
121 const VFPProdTable&
getTable(
const int table_id)
const;
126 bool hasTable(
const int table_id)
const;
133 return m_tables.empty();
140 const Scalar wfr,
const Scalar gfr,
const Scalar alq)
const;
144 std::vector<Scalar> bhpwithflo(
const std::vector<Scalar>& flos,
150 const Scalar dp)
const;
153 std::map<int, std::reference_wrapper<const VFPProdTable>> m_tables;
bool empty() const
Returns true if no vfp tables are in the current map.
Definition VFPProdProperties.hpp:131
Scalar minimumBHP(const int table_id, const Scalar thp, const Scalar wfr, const Scalar gfr, const Scalar alq) const
Returns minimum bhp for given thp, wfr, gfr and alq.
Definition VFPProdProperties.cpp:143
void addTable(const VFPProdTable &new_table)
Takes no ownership of data.
Definition VFPProdProperties.cpp:157
bool hasTable(const int table_id) const
Check whether there is table associated with ID.
Definition VFPProdProperties.cpp:105
EvalWell bhp(const int table_id, const EvalWell &aqua, const EvalWell &liquid, const EvalWell &vapour, const Scalar thp, const Scalar alq, const Scalar explicit_wfr, const Scalar explicit_gfr, const bool use_expvfp) const
Linear interpolation of bhp as a function of the input parameters given as Evalutions Each entry corr...
Definition VFPProdProperties.cpp:165
Scalar thp(const int table_id, const Scalar aqua, const Scalar liquid, const Scalar vapour, const Scalar bhp, const Scalar alq, const Scalar explicit_wrf, const Scalar explicit_gfr, const bool use_expvfp) const
Linear interpolation of thp as a function of the input parameters.
Definition VFPProdProperties.cpp:36
const VFPProdTable & getTable(const int table_id) const
Returns the table associated with the ID, or throws an exception if the table does not exist.
Definition VFPProdProperties.cpp:99
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition blackoilboundaryratevector.hh:37