mirror of
https://github.com/OPM/opm-simulators.git
synced 2026-09-05 04:40:19 -05:00
applying the face area when calculating the flux rate
For NNC is not needed, but some NNC is converted to some non-NNC, we need the face area.
This commit is contained in:
@@ -192,10 +192,11 @@ private:
|
|||||||
const auto &exQuants = elem_ctx.extensiveQuantities(face_idx, /*timeIdx*/ 0);
|
const auto &exQuants = elem_ctx.extensiveQuantities(face_idx, /*timeIdx*/ 0);
|
||||||
const double water_flux = Toolbox::value(exQuants.volumeFlux(waterPhaseIdx));
|
const double water_flux = Toolbox::value(exQuants.volumeFlux(waterPhaseIdx));
|
||||||
|
|
||||||
const auto &intQuantsIn = elem_ctx.intensiveQuantities(i, 0);
|
const size_t up_id = water_flux >= 0. ? i : j;
|
||||||
|
const auto &intQuantsIn = elem_ctx.intensiveQuantities(up_id, 0);
|
||||||
const double invB = Toolbox::value(intQuantsIn.fluidState().invB(waterPhaseIdx));
|
const double invB = Toolbox::value(intQuantsIn.fluidState().invB(waterPhaseIdx));
|
||||||
// for NNC, the face area is one, so we do not need to multiply the face area here
|
const double face_area = face.area();
|
||||||
aquifer_flux += water_flux * invB;
|
aquifer_flux += water_flux * invB * face_area;
|
||||||
}
|
}
|
||||||
|
|
||||||
// we only need to handle the first aquifer cell, we can exit loop here
|
// we only need to handle the first aquifer cell, we can exit loop here
|
||||||
|
|||||||
Reference in New Issue
Block a user