#1265 Made sure all in/out fluxes are added to the flow diag solution.

Also made sure only producing cells are added to the producer tracers and injecting cells as injector tracers.
This commit is contained in:
Jacob Støren 2017-02-28 16:03:43 +01:00
parent 01b3df863e
commit e19373ec9d
2 changed files with 3 additions and 2 deletions

View File

@ -164,7 +164,8 @@ std::map<std::string, std::vector<int> > RimFlowDiagSolution::allTracerActiveCel
{ {
for (const RigWellResultPoint& wrp: wBr.m_branchResultPoints) for (const RigWellResultPoint& wrp: wBr.m_branchResultPoints)
{ {
if (wrp.isValid() && wrp.m_isOpen) if (wrp.isValid() && wrp.m_isOpen
&& ( (useInjectors && wrp.flowRate() < 0.0) || (!useInjectors && wrp.flowRate() > 0.0) ) )
{ {
RigGridBase * grid = mainGrid->gridByIndex(wrp.m_gridIndex); RigGridBase * grid = mainGrid->gridByIndex(wrp.m_gridIndex);
size_t reservoirCellIndex = grid->reservoirCellIndex(wrp.m_gridCellIndex); size_t reservoirCellIndex = grid->reservoirCellIndex(wrp.m_gridCellIndex);

View File

@ -220,7 +220,7 @@ RigFlowDiagTimeStepResult RigFlowDiagSolverInterface::calculate(size_t timeStepI
progressInfo.incrementProgress(); progressInfo.incrementProgress();
Opm::ECLWellSolution wsol = Opm::ECLWellSolution{}; Opm::ECLWellSolution wsol = Opm::ECLWellSolution{-1.0 , false};
const std::vector<Opm::ECLWellSolution::WellData> well_fluxes = const std::vector<Opm::ECLWellSolution::WellData> well_fluxes =
wsol.solution(m_opmFldData->eclGraph.rawResultData(), m_opmFldData->eclGraph.numGrids()); wsol.solution(m_opmFldData->eclGraph.rawResultData(), m_opmFldData->eclGraph.numGrids());