#2728 Well CF Visualization: Contributions in same cell are not added

This commit is contained in:
Magne Sjaastad 2018-04-17 16:01:29 +02:00
parent f3a235b9df
commit 2452c965ab

View File

@ -648,22 +648,33 @@ void RiuViewerCommands::handlePickAction(int winPosX, int winPosY, Qt::KeyboardM
eclipseView->firstAncestorOrThisOfTypeAsserted(eclipseCase);
if (eclipseCase->eclipseCaseData() && eclipseCase->eclipseCaseData()->virtualPerforationTransmissibilities())
{
std::vector<RigCompletionData> completionsForOneCell;
{
auto connectionFactors = eclipseCase->eclipseCaseData()->virtualPerforationTransmissibilities();
size_t timeStep = eclipseView->currentTimeStep();
const auto& completionData = connectionFactors->multipleCompletionsPerEclipseCell(wellConnectionSourceInfo->wellPath(), timeStep);
const auto& multipleCompletions = connectionFactors->multipleCompletionsPerEclipseCell(wellConnectionSourceInfo->wellPath(), timeStep);
for (const auto& compData : completionData)
RigCompletionDataGridCell completionGridCell(globalCellIndex, eclipseCase->eclipseCaseData()->mainGrid());
auto completionDataIt = multipleCompletions.find(completionGridCell);
if (completionDataIt != multipleCompletions.end())
{
if (compData.first.globalCellIndex() == globalCellIndex)
{
auto completionDataItems = compData.second;
completionsForOneCell = completionDataIt->second;
}
}
if (!completionDataItems.empty())
if (!completionsForOneCell.empty())
{
double aggregatedConnectionFactor = 0.0;
for (const auto& completionData : completionsForOneCell)
{
aggregatedConnectionFactor += completionData.transmissibility();
}
QString resultInfoText;
resultInfoText += QString("<b>Well Connection Factor :</b> %1<br><br>").arg(connectionFactor);
resultInfoText += QString("<b>Well Connection Factor :</b> %1<br><br>").arg(aggregatedConnectionFactor);
{
RiuResultTextBuilder textBuilder(eclipseView, globalCellIndex, eclipseView->currentTimeStep());
@ -673,7 +684,7 @@ void RiuViewerCommands::handlePickAction(int winPosX, int winPosY, Qt::KeyboardM
resultInfoText += "<br><br>Details : <br>";
for (const auto& completionData : completionDataItems)
for (const auto& completionData : completionsForOneCell)
{
for (const auto& metaData : completionData.metadata())
{
@ -683,10 +694,6 @@ void RiuViewerCommands::handlePickAction(int winPosX, int winPosY, Qt::KeyboardM
RiuMainWindow::instance()->setResultInfo(resultInfoText);
}
break;
}
}
}
}