27#ifndef OPM_ECL_THERMAL_LAW_MANAGER_HPP
28#define OPM_ECL_THERMAL_LAW_MANAGER_HPP
31#error "Eclipse input support in opm-common is required to use the ECL thermal law manager!"
52template <
class Scalar,
class Flu
idSystem>
57 using SolidEnergyLawParams =
typename SolidEnergyLaw::Params;
58 using HeatcrLawParams =
typename SolidEnergyLawParams::HeatcrLawParams;
59 using SpecrockLawParams =
typename SolidEnergyLawParams::SpecrockLawParams;
62 using ThermalConductionLawParams =
typename ThermalConductionLaw::Params;
64 void initParamsForElements(
const EclipseState& eclState,
size_t numElems);
66 const SolidEnergyLawParams& solidEnergyLawParams(
unsigned elemIdx)
const;
68 const ThermalConductionLawParams& thermalConductionLawParams(
unsigned elemIdx)
const;
74 void initHeatcr_(
const EclipseState& eclState,
size_t numElems);
79 void initSpecrock_(
const EclipseState& eclState,
size_t numElems);
84 void initNullRockEnergy_();
89 void initThconr_(
const EclipseState& eclState,
size_t numElems);
94 void initThc_(
const EclipseState& eclState,
size_t numElems);
102 using ConductionApproach =
typename ThermalConductionLawParams::ThermalConductionApproach;
103 ConductionApproach thermalConductivityApproach_ = ThermalConductionLawParams::undefinedApproach;
104 using SolidEnergyApproach =
typename SolidEnergyLawParams::SolidEnergyApproach;
105 SolidEnergyApproach solidEnergyApproach_ = SolidEnergyLawParams::undefinedApproach;
107 std::vector<unsigned> elemToSatnumIdx_;
109 std::vector<SolidEnergyLawParams> solidEnergyLawParams_;
110 std::vector<ThermalConductionLawParams> thermalConductionLawParams_;
Provides the energy storage relation of rock.
Definition: EclSolidEnergyLawMultiplexer.hpp:50
Implements the total thermal conductivity and rock enthalpy relations used by ECL.
Definition: EclThermalConductionLawMultiplexer.hpp:50
Provides an simple way to create and manage the thermal law objects for a complete ECL deck.
Definition: EclThermalLawManager.hpp:54
Definition: EclipseState.hpp:55
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition: Exceptions.hpp:30