mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#5925 Simplify computation of fault data
This commit is contained in:
@@ -609,18 +609,7 @@ void RimEclipseCase::computeCachedData()
|
|||||||
{
|
{
|
||||||
auto task = pInf.task( "Calculating faults", 17 );
|
auto task = pInf.task( "Calculating faults", 17 );
|
||||||
|
|
||||||
bool computeFaults = RiaApplication::instance()->preferences()->readerSettings()->importFaults();
|
ensureFaultDataIsComputed();
|
||||||
if ( computeFaults )
|
|
||||||
{
|
|
||||||
bool computeNncs = RiaApplication::instance()->preferences()->readerSettings()->importNNCs();
|
|
||||||
bool includeInactiveCells =
|
|
||||||
RiaApplication::instance()->preferences()->readerSettings()->includeInactiveCellsInFaultGeometry();
|
|
||||||
|
|
||||||
rigEclipseCase->mainGrid()->calculateFaults( rigEclipseCase->activeCellInfo(
|
|
||||||
RiaDefines::PorosityModelType::MATRIX_MODEL ),
|
|
||||||
computeNncs,
|
|
||||||
includeInactiveCells );
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
@@ -701,6 +690,29 @@ void RimEclipseCase::loadAndSyncronizeInputProperties( bool includeGridFileName
|
|||||||
RifEclipseInputPropertyLoader::loadAndSyncronizeInputProperties( inputPropertyCollection(), eclipseCaseData(), filenames );
|
RifEclipseInputPropertyLoader::loadAndSyncronizeInputProperties( inputPropertyCollection(), eclipseCaseData(), filenames );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
void RimEclipseCase::ensureFaultDataIsComputed()
|
||||||
|
{
|
||||||
|
RigEclipseCaseData* rigEclipseCase = eclipseCaseData();
|
||||||
|
if ( rigEclipseCase )
|
||||||
|
{
|
||||||
|
bool computeFaults = RiaApplication::instance()->preferences()->readerSettings()->importFaults();
|
||||||
|
if ( computeFaults )
|
||||||
|
{
|
||||||
|
bool computeNncs = RiaApplication::instance()->preferences()->readerSettings()->importNNCs();
|
||||||
|
bool includeInactiveCells =
|
||||||
|
RiaApplication::instance()->preferences()->readerSettings()->includeInactiveCellsInFaultGeometry();
|
||||||
|
|
||||||
|
rigEclipseCase->mainGrid()->calculateFaults( rigEclipseCase->activeCellInfo(
|
||||||
|
RiaDefines::PorosityModelType::MATRIX_MODEL ),
|
||||||
|
computeNncs,
|
||||||
|
includeInactiveCells );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
|||||||
@@ -115,6 +115,8 @@ public:
|
|||||||
|
|
||||||
void loadAndSyncronizeInputProperties( bool includeGridFileName );
|
void loadAndSyncronizeInputProperties( bool includeGridFileName );
|
||||||
|
|
||||||
|
void ensureFaultDataIsComputed();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void initAfterRead() override;
|
void initAfterRead() override;
|
||||||
void fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue ) override;
|
void fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue ) override;
|
||||||
|
|||||||
@@ -78,8 +78,7 @@ RimIdenticalGridCaseGroup* RimEclipseCaseCollection::createIdenticalCaseGroupFro
|
|||||||
{
|
{
|
||||||
CVF_ASSERT( mainCase );
|
CVF_ASSERT( mainCase );
|
||||||
|
|
||||||
RigEclipseCaseData* rigEclipseCase = mainCase->eclipseCaseData();
|
RigMainGrid* equalGrid = registerCaseInGridCollection( mainCase );
|
||||||
RigMainGrid* equalGrid = registerCaseInGridCollection( rigEclipseCase );
|
|
||||||
CVF_ASSERT( equalGrid );
|
CVF_ASSERT( equalGrid );
|
||||||
|
|
||||||
RimIdenticalGridCaseGroup* group = new RimIdenticalGridCaseGroup;
|
RimIdenticalGridCaseGroup* group = new RimIdenticalGridCaseGroup;
|
||||||
@@ -116,9 +115,10 @@ void RimEclipseCaseCollection::removeCaseFromAllGroups( RimEclipseCase* reservoi
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
RigMainGrid* RimEclipseCaseCollection::registerCaseInGridCollection( RigEclipseCaseData* rigEclipseCase )
|
RigMainGrid* RimEclipseCaseCollection::registerCaseInGridCollection( RimEclipseCase* rimEclipseCase )
|
||||||
{
|
{
|
||||||
CVF_ASSERT( rigEclipseCase );
|
CVF_ASSERT( rimEclipseCase && rimEclipseCase->eclipseCaseData() );
|
||||||
|
RigEclipseCaseData* rigEclipseCase = rimEclipseCase->eclipseCaseData();
|
||||||
|
|
||||||
RigMainGrid* equalGrid = m_gridCollection->findEqualGrid( rigEclipseCase->mainGrid() );
|
RigMainGrid* equalGrid = m_gridCollection->findEqualGrid( rigEclipseCase->mainGrid() );
|
||||||
|
|
||||||
@@ -132,17 +132,7 @@ RigMainGrid* RimEclipseCaseCollection::registerCaseInGridCollection( RigEclipseC
|
|||||||
// This is the first insertion of this grid, compute cached data
|
// This is the first insertion of this grid, compute cached data
|
||||||
rigEclipseCase->mainGrid()->computeCachedData();
|
rigEclipseCase->mainGrid()->computeCachedData();
|
||||||
|
|
||||||
bool computeFaults = RiaApplication::instance()->preferences()->readerSettings()->importFaults();
|
rimEclipseCase->ensureFaultDataIsComputed();
|
||||||
if ( computeFaults )
|
|
||||||
{
|
|
||||||
bool computeNncs = RiaApplication::instance()->preferences()->readerSettings()->importNNCs();
|
|
||||||
bool includeInactiveCells =
|
|
||||||
RiaApplication::instance()->preferences()->readerSettings()->includeInactiveCellsInFaultGeometry();
|
|
||||||
rigEclipseCase->mainGrid()->calculateFaults( rigEclipseCase->activeCellInfo(
|
|
||||||
RiaDefines::PorosityModelType::MATRIX_MODEL ),
|
|
||||||
computeNncs,
|
|
||||||
includeInactiveCells );
|
|
||||||
}
|
|
||||||
|
|
||||||
equalGrid = rigEclipseCase->mainGrid();
|
equalGrid = rigEclipseCase->mainGrid();
|
||||||
}
|
}
|
||||||
@@ -159,8 +149,7 @@ void RimEclipseCaseCollection::insertCaseInCaseGroup( RimIdenticalGridCaseGroup*
|
|||||||
{
|
{
|
||||||
CVF_ASSERT( rimReservoir );
|
CVF_ASSERT( rimReservoir );
|
||||||
|
|
||||||
RigEclipseCaseData* rigEclipseCase = rimReservoir->eclipseCaseData();
|
registerCaseInGridCollection( rimReservoir );
|
||||||
registerCaseInGridCollection( rigEclipseCase );
|
|
||||||
|
|
||||||
caseGroup->addCase( rimReservoir );
|
caseGroup->addCase( rimReservoir );
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -58,6 +58,6 @@ public:
|
|||||||
void recomputeStatisticsForAllCaseGroups();
|
void recomputeStatisticsForAllCaseGroups();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
RigMainGrid* registerCaseInGridCollection( RigEclipseCaseData* rigEclipseCase );
|
RigMainGrid* registerCaseInGridCollection( RimEclipseCase* rimEclipseCase );
|
||||||
cvf::ref<RigGridManager> m_gridCollection;
|
cvf::ref<RigGridManager> m_gridCollection;
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user