27#ifndef OPM_ECL_SOLID_ENERGY_LAW_MULTIPLEXER_HPP
28#define OPM_ECL_SOLID_ENERGY_LAW_MULTIPLEXER_HPP
46template <
class ScalarT,
48 class ParamsT = EclSolidEnergyLawMultiplexerParams<ScalarT>>
51 enum { numPhases = FluidSystem::numPhases };
58 using Params = ParamsT;
59 using Scalar =
typename Params::Scalar;
64 template <
class Flu
idState,
class Evaluation =
typename Flu
idState::Scalar>
67 switch (params.solidEnergyApproach()) {
68 case EclSolidEnergyApproach::Heatcr:
72 case EclSolidEnergyApproach::Specrock:
76 case EclSolidEnergyApproach::Null:
81 throw std::logic_error(
"Invalid solid energy approach: "+std::to_string(
int(params.solidEnergyApproach())));
Implements the volumetric interior energy relations of rock used by ECL.
The default implementation of a parameter object for the ECL thermal law.
Implements the volumetric interior energy relations of rock used by ECL.
Implements a solid energy storage law which just returns 0.
Implements the volumetric interior energy relations of rock used by ECL.
Definition EclHeatcrLaw.hpp:46
static Evaluation solidInternalEnergy(const Params ¶ms, const FluidState &fluidState)
Given a fluid state, compute the volumetric internal energy of the rock [W/m^3].
Definition EclHeatcrLaw.hpp:55
Provides the energy storage relation of rock.
Definition EclSolidEnergyLawMultiplexer.hpp:50
static Evaluation solidInternalEnergy(const Params ¶ms, const FluidState &fluidState)
Given a fluid state, compute the volumetric internal energy of the rock [W/m^3].
Definition EclSolidEnergyLawMultiplexer.hpp:65
Implements the volumetric interior energy relations of rock used by ECL.
Definition EclSpecrockLaw.hpp:45
static Evaluation solidInternalEnergy(const Params ¶ms, const FluidState &fluidState)
Given a fluid state, compute the volumetric internal energy of the rock [W/m^3].
Definition EclSpecrockLaw.hpp:54
Implements a solid energy storage law which just returns 0.
Definition NullSolidEnergyLaw.hpp:39
static Evaluation solidInternalEnergy(const Params &, const FluidState &)
Given a fluid state, compute the volumetric internal energy of the solid matrix [W/m^3].
Definition NullSolidEnergyLaw.hpp:51
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition Exceptions.hpp:30