87 void update(
const ElementContext& elemCtx,
unsigned dofIdx,
unsigned timeIdx)
89 ParentType::update(elemCtx, dofIdx,
timeIdx);
91 const auto& T = elemCtx.problem().temperature(elemCtx, dofIdx,
timeIdx);
92 fluidState_.setTemperature(T);
95 const auto& problem = elemCtx.problem();
97 problem.materialLawParams(elemCtx, dofIdx,
timeIdx);
98 const auto& priVars = elemCtx.primaryVars(dofIdx,
timeIdx);
105 fluidState_.setSaturation(liquidPhaseIdx, 1.0);
106 fluidState_.setSaturation(gasPhaseIdx, 0.0);
107 ScalarPhaseVector
pC;
113 const Evaluation&
pW = priVars.makeEvaluation(pressureWIdx,
timeIdx);
115 Toolbox::max(elemCtx.problem().referencePressure(elemCtx, dofIdx, 0),
116 pW + (
pC[gasPhaseIdx] -
pC[liquidPhaseIdx]));
121 fluidState_.setPressure(liquidPhaseIdx,
pW);
122 fluidState_.setPressure(gasPhaseIdx,
pN);
126 fluidState_.setSaturation(liquidPhaseIdx, sat[liquidPhaseIdx]);
127 fluidState_.setSaturation(gasPhaseIdx, sat[gasPhaseIdx]);
133 const Evaluation&
mu = FluidSystem::viscosity(fluidState_,
paramCache, liquidPhaseIdx);
134 fluidState_.setViscosity(liquidPhaseIdx,
mu);
135 fluidState_.setViscosity(gasPhaseIdx, 1
e-20);
138 const Evaluation& rho = FluidSystem::density(fluidState_,
paramCache, liquidPhaseIdx);
139 fluidState_.setDensity(liquidPhaseIdx, rho);
140 fluidState_.setDensity(gasPhaseIdx, 1
e-20);
143 MaterialLaw::relativePermeabilities(relativePermeability_,
materialParams, fluidState_);
150 porosity_ = problem.porosity(elemCtx, dofIdx,
timeIdx);
153 intrinsicPerm_ = problem.intrinsicPermeability(elemCtx, dofIdx,
timeIdx);
156 FluxIntensiveQuantities::update_(elemCtx, dofIdx,
timeIdx);