My Project
Opm::AquiferAnalytical< TypeTag > Class Template Referenceabstract
Inheritance diagram for Opm::AquiferAnalytical< TypeTag >:
Opm::AquiferInterface< TypeTag > Opm::AquiferCarterTracy< TypeTag > Opm::AquiferFetkovich< TypeTag >

Public Types

enum  { enableTemperature = getPropValue<TypeTag, Properties::EnableTemperature>() }
 
enum  { enableEnergy = getPropValue<TypeTag, Properties::EnableEnergy>() }
 
enum  { enableBrine = getPropValue<TypeTag, Properties::EnableBrine>() }
 
enum  { enableEvaporation = getPropValue<TypeTag, Properties::EnableEvaporation>() }
 
enum  { has_disgas_in_water = getPropValue<TypeTag, Properties::EnableDisgasInWater>() }
 
enum  { enableSaltPrecipitation = getPropValue<TypeTag, Properties::EnableSaltPrecipitation>() }
 
using Simulator = GetPropType< TypeTag, Properties::Simulator >
 
using ElementContext = GetPropType< TypeTag, Properties::ElementContext >
 
using FluidSystem = GetPropType< TypeTag, Properties::FluidSystem >
 
using BlackoilIndices = GetPropType< TypeTag, Properties::Indices >
 
using RateVector = GetPropType< TypeTag, Properties::RateVector >
 
using IntensiveQuantities = GetPropType< TypeTag, Properties::IntensiveQuantities >
 
using ElementMapper = GetPropType< TypeTag, Properties::ElementMapper >
 
using Scalar = double
 
using Eval = DenseAd::Evaluation< double, numEq >
 
using FluidState = BlackOilFluidState< Eval, FluidSystem, enableTemperature, enableEnergy, BlackoilIndices::gasEnabled, enableEvaporation, enableBrine, enableSaltPrecipitation, has_disgas_in_water, BlackoilIndices::numPhases >
 
- Public Types inherited from Opm::AquiferInterface< TypeTag >
using FluidSystem = GetPropType< TypeTag, Properties::FluidSystem >
 
using RateVector = GetPropType< TypeTag, Properties::RateVector >
 
using Simulator = GetPropType< TypeTag, Properties::Simulator >
 

Public Member Functions

 AquiferAnalytical (int aqID, const std::vector< Aquancon::AquancCell > &connections, const Simulator &ebosSimulator)
 
void initFromRestart (const data::Aquifers &aquiferSoln) override
 
void initialSolutionApplied () override
 
void beginTimeStep () override
 
void addToSource (RateVector &rates, const unsigned cellIdx, const unsigned timeIdx) override
 
std::size_t size () const
 
template<class Serializer >
void serializeOp (Serializer &serializer)
 
bool operator== (const AquiferAnalytical &rhs) const
 
- Public Member Functions inherited from Opm::AquiferInterface< TypeTag >
 AquiferInterface (int aqID, const Simulator &ebosSimulator)
 
virtual void initFromRestart (const data::Aquifers &aquiferSoln)=0
 
virtual void initialSolutionApplied ()=0
 
virtual void beginTimeStep ()=0
 
virtual void endTimeStep ()=0
 
virtual data::AquiferData aquiferData () const =0
 
template<class Context >
void addToSource (RateVector &rates, const Context &context, const unsigned spaceIdx, const unsigned timeIdx)
 
virtual void addToSource (RateVector &rates, const unsigned cellIdx, const unsigned timeIdx)=0
 
int aquiferID () const
 

Static Public Attributes

static constexpr int numEq = BlackoilIndices::numEq
 

Protected Member Functions

virtual void assignRestartData (const data::AquiferData &xaq)=0
 
virtual void calculateInflowRate (int idx, const Simulator &simulator)=0
 
virtual void calculateAquiferCondition ()=0
 
virtual void calculateAquiferConstants ()=0
 
virtual Scalar aquiferDepth () const =0
 
Scalar gravity_ () const
 
int compIdx_ () const
 
void initQuantities ()
 
void updateCellPressure (std::vector< Eval > &pressure_water, const int idx, const IntensiveQuantities &intQuants)
 
void updateCellPressure (std::vector< Scalar > &pressure_water, const int idx, const IntensiveQuantities &intQuants)
 
void initializeConnections ()
 
void rescaleProducedVolume (const bool has_active_connection_on_proc)
 
Scalar calculateReservoirEquilibrium ()
 
- Protected Member Functions inherited from Opm::AquiferInterface< TypeTag >
bool co2store_ () const
 
int phaseIdx_ () const
 

Protected Attributes

const std::vector< Aquancon::AquancCell > connections_
 
std::vector< Scalar > faceArea_connected_
 
std::vector< int > cellToConnectionIdx_
 
std::vector< Scalar > cell_depth_
 
std::vector< Scalar > pressure_previous_
 
std::vector< Eval > pressure_current_
 
std::vector< Eval > Qai_
 
std::vector< Scalar > alphai_
 
Scalar Tc_ {}
 
Scalar pa0_ {}
 
std::optional< Scalar > Ta0_ {}
 
Scalar rhow_ {}
 
Eval W_flux_
 
bool solution_set_from_restart_ {false}
 
- Protected Attributes inherited from Opm::AquiferInterface< TypeTag >
const int aquiferID_ {}
 
const Simulator & ebos_simulator_
 

Member Function Documentation

◆ addToSource()

template<typename TypeTag >
void Opm::AquiferAnalytical< TypeTag >::addToSource ( RateVector &  rates,
const unsigned  cellIdx,
const unsigned  timeIdx 
)
inlineoverridevirtual

◆ beginTimeStep()

template<typename TypeTag >
void Opm::AquiferAnalytical< TypeTag >::beginTimeStep ( )
inlineoverridevirtual

◆ initFromRestart()

template<typename TypeTag >
void Opm::AquiferAnalytical< TypeTag >::initFromRestart ( const data::Aquifers &  aquiferSoln)
inlineoverridevirtual

◆ initialSolutionApplied()

template<typename TypeTag >
void Opm::AquiferAnalytical< TypeTag >::initialSolutionApplied ( )
inlineoverridevirtual

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