flow_ebos FIP: consider all pore volume modifiers

for now "all pore volume multipliers" means compressibility. the
storage term of the simulator includes them, so they need to be
considered when calculating the fluid in place as well.
This commit is contained in:
Andreas Lauser 2017-02-21 10:03:11 +01:00
parent 9df4b21369
commit a27a2c33a7

View File

@ -1029,7 +1029,7 @@ namespace Opm {
const auto& fs = intQuants.fluidState();
const double pv =
ebosSimulator_.model().dofTotalVolume(cellIdx)
* ebosSimulator_.problem().porosity(cellIdx);
* intQuants.porosity().value();
for (int phase = 0; phase < maxnp; ++phase) {
const double b = fs.invB(flowPhaseToEbosPhaseIdx(phase)).value();
@ -1095,7 +1095,7 @@ namespace Opm {
const double hydrocarbon = fs.saturation(FluidSystem::oilPhaseIdx).value() + fs.saturation(FluidSystem::gasPhaseIdx).value();
const double pv =
ebosSimulator_.model().dofTotalVolume(cellIdx)
* ebosSimulator_.problem().porosity(cellIdx);
* intQuants.porosity().value();
hcpv[region] += pv * hydrocarbon;
pres[region] += pv * fs.pressure(FluidSystem::oilPhaseIdx).value();
}
@ -1121,7 +1121,7 @@ namespace Opm {
const auto& fs = intQuants.fluidState();
const double pv =
ebosSimulator_.model().dofTotalVolume(cellIdx)
* ebosSimulator_.problem().porosity(cellIdx);
* intQuants.porosity().value();
fip_.fip[FIPDataType::FIP_PV][cellIdx] = pv;
const double hydrocarbon = fs.saturation(FluidSystem::oilPhaseIdx).value() + fs.saturation(FluidSystem::gasPhaseIdx).value();