Skip to content
Snippets Groups Projects
Commit 49c8f5c4 authored by Katharina Heck's avatar Katharina Heck Committed by Timo Koch
Browse files

[feature][fluxvariables] allow heatconduction calculation for each phase

parent 01943435
No related branches found
No related tags found
Loading
......@@ -61,6 +61,7 @@ class PorousMediumFluxVariables : public FluxVariablesBase<TypeTag>
static constexpr bool enableAdvection = GET_PROP_VALUE(TypeTag, EnableAdvection);
static constexpr bool enableMolecularDiffusion = GET_PROP_VALUE(TypeTag, EnableMolecularDiffusion);
static constexpr bool enableEnergyBalance = GET_PROP_VALUE(TypeTag, EnableEnergyBalance);
static constexpr bool enableThermalNonEquilibrium = GET_PROP_VALUE(TypeTag, EnableThermalNonEquilibrium);
public:
......@@ -115,6 +116,7 @@ public:
}
}
template <bool enable = !enableThermalNonEquilibrium, typename std::enable_if_t<enable, int> = 0>
Scalar heatConductionFlux() const
{
if (enableEnergyBalance)
......@@ -132,6 +134,19 @@ public:
}
}
template <bool enable = enableThermalNonEquilibrium, typename std::enable_if_t<enable, int> = 0>
Scalar heatConductionFlux(const int phaseIdx) const
{
return HeatConductionType::flux(this->problem(),
this->element(),
this->fvGeometry(),
this->elemVolVars(),
this->scvFace(),
phaseIdx,
this->elemFluxVarsCache());
}
private:
//! simple caching if advection flux is used twice with different upwind function
mutable std::bitset<numPhases> advFluxIsCached_;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment