mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
parent
b7b31f6c03
commit
492b777040
@ -231,11 +231,7 @@ void RimWellAllocationPlot::updateFromWell()
|
||||
|
||||
accumulatedWellFlowPlot()->addTrack(plotTrack);
|
||||
|
||||
std::vector<double> connNumbers;
|
||||
{
|
||||
const std::vector<size_t>& connNumbersSize_t = wfCalculator->connectionNumbersFromTop(brIdx);
|
||||
for ( size_t conNumb : connNumbersSize_t ) connNumbers.push_back(static_cast<double>(conNumb));
|
||||
}
|
||||
std::vector<double> connNumbers = wfCalculator->connectionNumbersFromTop(brIdx);
|
||||
|
||||
if ( m_flowDiagSolution )
|
||||
{
|
||||
|
@ -125,9 +125,9 @@ const std::vector<double>& RigAccWellFlowCalculator::accumulatedTracerFlowPrConn
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
const std::vector<size_t>& RigAccWellFlowCalculator::connectionNumbersFromTop(size_t branchIdx) const
|
||||
const std::vector<double>& RigAccWellFlowCalculator::connectionNumbersFromTop(size_t branchIdx) const
|
||||
{
|
||||
return m_accConnectionFlowPrBranch[branchIdx].connectionNumbersFromTop;
|
||||
return m_accConnectionFlowPrBranch[branchIdx].depthValuesFromTop;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@ -206,7 +206,7 @@ void RigAccWellFlowCalculator::calculateAccumulatedFlowPrConnection(size_t branc
|
||||
int clSegIdx = static_cast<int>(branchCells.size()) - 1;
|
||||
|
||||
std::map<QString, std::vector<double> >& accConnFlowFractionsPrTracer = m_accConnectionFlowPrBranch[branchIdx].accFlowPrTracer;
|
||||
std::vector<size_t>& connNumbersFromTop = m_accConnectionFlowPrBranch[branchIdx].connectionNumbersFromTop;
|
||||
std::vector<double>& connNumbersFromTop = m_accConnectionFlowPrBranch[branchIdx].depthValuesFromTop;
|
||||
|
||||
std::vector<double> accFlow;
|
||||
accFlow.resize(m_tracerNames.size(), 0.0);
|
||||
@ -261,10 +261,10 @@ void RigAccWellFlowCalculator::calculateAccumulatedFlowPrConnection(size_t branc
|
||||
std::vector<size_t> downstreamBranches = findDownstreamBranchIdxs(branchCells[clSegIdx]);
|
||||
for ( size_t dsBidx : downstreamBranches )
|
||||
{
|
||||
if ( dsBidx != branchIdx && m_accConnectionFlowPrBranch[dsBidx].connectionNumbersFromTop.size() == 0 ) // Not this branch or already calculated
|
||||
if ( dsBidx != branchIdx && m_accConnectionFlowPrBranch[dsBidx].depthValuesFromTop.size() == 0 ) // Not this branch or already calculated
|
||||
{
|
||||
calculateAccumulatedFlowPrConnection(dsBidx, connNumFromTop);
|
||||
BranchFlowPrConnection& accConnFlowFractionsDsBranch = m_accConnectionFlowPrBranch[dsBidx];
|
||||
BranchFlow& accConnFlowFractionsDsBranch = m_accConnectionFlowPrBranch[dsBidx];
|
||||
|
||||
size_t tracerIdx = 0;
|
||||
for ( const auto & tracerName: m_tracerNames )
|
||||
@ -412,9 +412,9 @@ void RigAccWellFlowCalculator::groupSmallContributions()
|
||||
|
||||
// Concatenate the values for each branch, erasing the tracers being grouped, replaced with the concatenated values
|
||||
|
||||
for ( BranchFlowPrConnection& brRes : m_accConnectionFlowPrBranch )
|
||||
for ( BranchFlow& brRes : m_accConnectionFlowPrBranch )
|
||||
{
|
||||
std::vector<double> groupedConnectionValues( brRes.connectionNumbersFromTop.size(), 0.0);
|
||||
std::vector<double> groupedConnectionValues( brRes.depthValuesFromTop.size(), 0.0);
|
||||
|
||||
for ( const QString& tracername:tracersToGroup )
|
||||
{
|
||||
|
@ -70,7 +70,7 @@ public:
|
||||
|
||||
const std::vector<double>& accumulatedTotalFlowPrConnection( size_t branchIdx);// const;
|
||||
const std::vector<double>& accumulatedTracerFlowPrConnection(const QString& tracerName, size_t branchIdx);// const;
|
||||
const std::vector<size_t>& connectionNumbersFromTop(size_t branchIdx) const;
|
||||
const std::vector<double>& connectionNumbersFromTop(size_t branchIdx) const;
|
||||
const std::vector<QString>& tracerNames() const { return m_tracerNames;}
|
||||
|
||||
std::vector<std::pair<QString, double> > totalTracerFractions();
|
||||
@ -95,24 +95,16 @@ private:
|
||||
std::vector<QString> m_tracerNames;
|
||||
double m_smallContributionsThreshold;
|
||||
|
||||
struct BranchFlowPrConnection
|
||||
struct BranchFlow
|
||||
{
|
||||
std::vector<size_t> connectionNumbersFromTop;
|
||||
std::vector<double> depthValuesFromTop;
|
||||
std::map<QString, std::vector<double> > accFlowPrTracer;
|
||||
std::map<QString, std::vector<double> > flowPrTracer;
|
||||
};
|
||||
|
||||
std::vector< BranchFlowPrConnection > m_accConnectionFlowPrBranch;
|
||||
|
||||
struct BranchFlowPrDepth
|
||||
{
|
||||
std::vector<double> depthValueFromTop;
|
||||
std::map<QString, std::vector<double> > accFlowPrTracer;
|
||||
std::map<QString, std::vector<double> > flowPrTracer;
|
||||
};
|
||||
|
||||
std::vector< BranchFlowPrDepth > m_accPseudoLengthFlowPrBranch;
|
||||
std::vector< BranchFlowPrDepth > m_accTvdFlowPrBranch;
|
||||
std::vector< BranchFlow > m_accConnectionFlowPrBranch;
|
||||
std::vector< BranchFlow > m_accPseudoLengthFlowPrBranch;
|
||||
std::vector< BranchFlow > m_accTvdFlowPrBranch;
|
||||
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user