Opm::StandardWellConnections< FluidSystem, Indices > Class Template Reference

#include <StandardWellConnections.hpp>

Inheritance diagram for Opm::StandardWellConnections< FluidSystem, Indices >:
Inheritance graph

Classes

struct  DensityPropertyFunctions
 
struct  PressurePropertyFunctions
 
struct  Properties
 

Public Types

using Scalar = typename FluidSystem::Scalar
 
using Eval = typename WellInterfaceIndices< FluidSystem, Indices >::Eval
 
using EvalWell = typename StandardWellPrimaryVariables< FluidSystem, Indices >::EvalWell
 

Public Member Functions

 StandardWellConnections (const WellInterfaceIndices< FluidSystem, Indices > &well)
 
Properties computePropertiesForPressures (const WellState< Scalar > &well_state, const PressurePropertyFunctions &propFunc) const
 
void computeProperties (const bool stop_or_zero_rate_target, const WellState< Scalar > &well_state, const DensityPropertyFunctions &prop_func, const Properties &props, DeferredLogger &deferred_logger)
 Compute connection properties (densities, pressure drop, ...) More...
 
Scalar rho () const
 Returns density for first perforation. More...
 
Scalar rho (const typename std::vector< Scalar >::size_type i) const
 Returns density for specific perforation/connection. More...
 
Scalar pressure_diff (const unsigned perf) const
 Returns pressure drop for a given perforation. More...
 
Eval connectionRateBrine (Scalar &rate, const Scalar vap_wat_rate, const std::vector< EvalWell > &cq_s, const std::variant< Scalar, EvalWell > &saltConcentration) const
 
Eval connectionRateFoam (const std::vector< EvalWell > &cq_s, const std::variant< Scalar, EvalWell > &foamConcentration, const Phase transportPhase, DeferredLogger &deferred_logger) const
 
std::tuple< Eval, EvalWellconnectionRatePolymer (Scalar &rate, const std::vector< EvalWell > &cq_s, const std::variant< Scalar, EvalWell > &polymerConcentration) const
 
std::tuple< Eval, Eval, EvalconnectionRatesMICP (const std::vector< EvalWell > &cq_s, const std::variant< Scalar, EvalWell > &microbialConcentration, const std::variant< Scalar, EvalWell > &oxygenConcentration, const std::variant< Scalar, EvalWell > &ureaConcentration) const
 
std::tuple< Eval, EvalWellconnectionRatezFraction (Scalar &rate, const Scalar dis_gas_rate, const std::vector< EvalWell > &cq_s, const std::variant< Scalar, std::array< EvalWell, 2 > > &solventConcentration) const
 

Member Typedef Documentation

◆ Eval

template<class FluidSystem , class Indices >
using Opm::StandardWellConnections< FluidSystem, Indices >::Eval = typename WellInterfaceIndices<FluidSystem,Indices>::Eval

◆ EvalWell

template<class FluidSystem , class Indices >
using Opm::StandardWellConnections< FluidSystem, Indices >::EvalWell = typename StandardWellPrimaryVariables<FluidSystem,Indices>::EvalWell

◆ Scalar

template<class FluidSystem , class Indices >
using Opm::StandardWellConnections< FluidSystem, Indices >::Scalar = typename FluidSystem::Scalar

Constructor & Destructor Documentation

◆ StandardWellConnections()

template<class FluidSystem , class Indices >
Opm::StandardWellConnections< FluidSystem, Indices >::StandardWellConnections ( const WellInterfaceIndices< FluidSystem, Indices > &  well)

Member Function Documentation

◆ computeProperties()

template<class FluidSystem , class Indices >
void Opm::StandardWellConnections< FluidSystem, Indices >::computeProperties ( const bool  stop_or_zero_rate_target,
const WellState< Scalar > &  well_state,
const DensityPropertyFunctions prop_func,
const Properties props,
DeferredLogger deferred_logger 
)

Compute connection properties (densities, pressure drop, ...)

◆ computePropertiesForPressures()

template<class FluidSystem , class Indices >
Properties Opm::StandardWellConnections< FluidSystem, Indices >::computePropertiesForPressures ( const WellState< Scalar > &  well_state,
const PressurePropertyFunctions propFunc 
) const

◆ connectionRateBrine()

template<class FluidSystem , class Indices >
Eval Opm::StandardWellConnections< FluidSystem, Indices >::connectionRateBrine ( Scalar rate,
const Scalar  vap_wat_rate,
const std::vector< EvalWell > &  cq_s,
const std::variant< Scalar, EvalWell > &  saltConcentration 
) const

◆ connectionRateFoam()

template<class FluidSystem , class Indices >
Eval Opm::StandardWellConnections< FluidSystem, Indices >::connectionRateFoam ( const std::vector< EvalWell > &  cq_s,
const std::variant< Scalar, EvalWell > &  foamConcentration,
const Phase  transportPhase,
DeferredLogger deferred_logger 
) const

◆ connectionRatePolymer()

template<class FluidSystem , class Indices >
std::tuple< Eval, EvalWell > Opm::StandardWellConnections< FluidSystem, Indices >::connectionRatePolymer ( Scalar rate,
const std::vector< EvalWell > &  cq_s,
const std::variant< Scalar, EvalWell > &  polymerConcentration 
) const

◆ connectionRatesMICP()

template<class FluidSystem , class Indices >
std::tuple< Eval, Eval, Eval > Opm::StandardWellConnections< FluidSystem, Indices >::connectionRatesMICP ( const std::vector< EvalWell > &  cq_s,
const std::variant< Scalar, EvalWell > &  microbialConcentration,
const std::variant< Scalar, EvalWell > &  oxygenConcentration,
const std::variant< Scalar, EvalWell > &  ureaConcentration 
) const

◆ connectionRatezFraction()

template<class FluidSystem , class Indices >
std::tuple< Eval, EvalWell > Opm::StandardWellConnections< FluidSystem, Indices >::connectionRatezFraction ( Scalar rate,
const Scalar  dis_gas_rate,
const std::vector< EvalWell > &  cq_s,
const std::variant< Scalar, std::array< EvalWell, 2 > > &  solventConcentration 
) const

◆ pressure_diff()

template<class FluidSystem , class Indices >
Scalar Opm::StandardWellConnections< FluidSystem, Indices >::pressure_diff ( const unsigned  perf) const
inline

Returns pressure drop for a given perforation.

Referenced by Opm::StandardWell< TypeTag >::computeWellPotentialsImplicit().

◆ rho() [1/2]

template<class FluidSystem , class Indices >
Scalar Opm::StandardWellConnections< FluidSystem, Indices >::rho ( ) const
inline

◆ rho() [2/2]

template<class FluidSystem , class Indices >
Scalar Opm::StandardWellConnections< FluidSystem, Indices >::rho ( const typename std::vector< Scalar >::size_type  i) const
inline

Returns density for specific perforation/connection.

Parameters
[in]iConnection index
Returns
Mixture density at connection i.

The documentation for this class was generated from the following file: