mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#5273 Allen Diagrams: Use const access to Nnc connections
This commit is contained in:
parent
6761a71798
commit
0abd839669
@ -728,24 +728,31 @@ void RifReaderEclipseOutput::transferStaticNNCData( const ecl_grid_type* mainEcl
|
||||
if ( numNNC > 0 )
|
||||
{
|
||||
// Transform to our own data structures
|
||||
std::vector<RigConnection> nncConnections;
|
||||
std::vector<double> transmissibilityValuesTemp;
|
||||
|
||||
mainGrid->nncData()->connections().resize( numNNC );
|
||||
std::vector<double>& transmissibilityValues = mainGrid->nncData()->makeStaticConnectionScalarResult(
|
||||
RiaDefines::propertyNameCombTrans() );
|
||||
const double* transValues = ecl_nnc_data_get_values( tran_data );
|
||||
|
||||
for ( int nIdx = 0; nIdx < numNNC; ++nIdx )
|
||||
{
|
||||
const ecl_nnc_pair_type* geometry_pair = ecl_nnc_geometry_iget( nnc_geo, nIdx );
|
||||
RigGridBase* grid1 = mainGrid->gridByIndex( geometry_pair->grid_nr1 );
|
||||
mainGrid->nncData()->connections()[nIdx].m_c1GlobIdx = grid1->reservoirCellIndex(
|
||||
geometry_pair->global_index1 );
|
||||
RigGridBase* grid2 = mainGrid->gridByIndex( geometry_pair->grid_nr2 );
|
||||
mainGrid->nncData()->connections()[nIdx].m_c2GlobIdx = grid2->reservoirCellIndex(
|
||||
geometry_pair->global_index2 );
|
||||
RigGridBase* grid2 = mainGrid->gridByIndex( geometry_pair->grid_nr2 );
|
||||
|
||||
transmissibilityValues[nIdx] = transValues[nIdx];
|
||||
RigConnection nncConnection;
|
||||
nncConnection.m_c1GlobIdx = grid1->reservoirCellIndex( geometry_pair->global_index1 );
|
||||
nncConnection.m_c2GlobIdx = grid2->reservoirCellIndex( geometry_pair->global_index2 );
|
||||
|
||||
nncConnections.push_back( nncConnection );
|
||||
|
||||
transmissibilityValuesTemp.push_back( transValues[nIdx] );
|
||||
}
|
||||
|
||||
mainGrid->nncData()->setConnections( nncConnections );
|
||||
|
||||
std::vector<double>& transmissibilityValues = mainGrid->nncData()->makeStaticConnectionScalarResult(
|
||||
RiaDefines::propertyNameCombTrans() );
|
||||
transmissibilityValues = transmissibilityValuesTemp;
|
||||
}
|
||||
|
||||
ecl_nnc_data_free( tran_data );
|
||||
|
@ -272,8 +272,8 @@ void RimFaultInViewCollection::syncronizeFaults()
|
||||
// NNCs
|
||||
this->noCommonAreaNnncCollection()->noCommonAreaNncs().deleteAllChildObjects();
|
||||
|
||||
RigMainGrid* mainGrid = parentView()->mainGrid();
|
||||
std::vector<RigConnection>& nncConnections = mainGrid->nncData()->connections();
|
||||
RigMainGrid* mainGrid = parentView()->mainGrid();
|
||||
const std::vector<RigConnection>& nncConnections = mainGrid->nncData()->connections();
|
||||
for ( size_t connIndex = 0; connIndex < nncConnections.size(); connIndex++ )
|
||||
{
|
||||
if ( !nncConnections[connIndex].hasCommonArea() )
|
||||
|
@ -2239,7 +2239,7 @@ void RigCaseCellResultsData::computeNncCombRiTrans()
|
||||
bool isFaceNormalsOutwards = m_ownerMainGrid->isFaceNormalsOutwards();
|
||||
|
||||
// NNC calculation
|
||||
std::vector<RigConnection>& nncConnections = m_ownerMainGrid->nncData()->connections();
|
||||
const std::vector<RigConnection>& nncConnections = m_ownerMainGrid->nncData()->connections();
|
||||
for ( size_t connIdx = 0; connIdx < nncConnections.size(); connIdx++ )
|
||||
{
|
||||
size_t nativeResvCellIndex = nncConnections[connIdx].m_c1GlobIdx;
|
||||
|
@ -179,6 +179,22 @@ cvf::StructGridInterface::FaceType RigNNCData::calculateCellFaceOverlap( const R
|
||||
return cvf::StructGridInterface::NO_FACE;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RigNNCData::setConnections( std::vector<RigConnection>& connections )
|
||||
{
|
||||
m_connections = connections;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
const std::vector<RigConnection>& RigNNCData::connections() const
|
||||
{
|
||||
return m_connections;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
@ -75,14 +75,9 @@ public:
|
||||
std::vector<size_t>* connectionPolygon,
|
||||
std::vector<cvf::Vec3d>* connectionIntersections );
|
||||
|
||||
std::vector<RigConnection>& connections()
|
||||
{
|
||||
return m_connections;
|
||||
}
|
||||
const std::vector<RigConnection>& connections() const
|
||||
{
|
||||
return m_connections;
|
||||
}
|
||||
void setConnections( std::vector<RigConnection>& connections );
|
||||
|
||||
const std::vector<RigConnection>& connections() const;
|
||||
|
||||
std::vector<double>& makeStaticConnectionScalarResult( QString nncDataType );
|
||||
const std::vector<double>* staticConnectionScalarResult( const RigEclipseResultAddress& resVarAddr ) const;
|
||||
|
@ -536,7 +536,7 @@ void RigReservoirBuilderMock::addFaults( RigEclipseCaseData* eclipseCase )
|
||||
grid->setFaults( faults );
|
||||
|
||||
// NNCs
|
||||
std::vector<RigConnection>& nncConnections = grid->nncData()->connections();
|
||||
std::vector<RigConnection> nncConnections;
|
||||
{
|
||||
size_t i1 = 2;
|
||||
size_t j1 = 2;
|
||||
@ -561,6 +561,8 @@ void RigReservoirBuilderMock::addFaults( RigEclipseCaseData* eclipseCase )
|
||||
addNnc( grid, i1, j1, k1, i2, j2, k2, nncConnections );
|
||||
}
|
||||
|
||||
grid->nncData()->setConnections( nncConnections );
|
||||
|
||||
std::vector<double>& tranVals = grid->nncData()->makeStaticConnectionScalarResult(
|
||||
RiaDefines::propertyNameCombTrans() );
|
||||
for ( size_t cIdx = 0; cIdx < tranVals.size(); ++cIdx )
|
||||
|
Loading…
Reference in New Issue
Block a user