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 );
|
||||
|
||||
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 );
|
||||
}
|
||||
ensureFaultDataIsComputed();
|
||||
}
|
||||
|
||||
{
|
||||
@@ -701,6 +690,29 @@ void RimEclipseCase::loadAndSyncronizeInputProperties( bool includeGridFileName
|
||||
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 ensureFaultDataIsComputed();
|
||||
|
||||
protected:
|
||||
void initAfterRead() override;
|
||||
void fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue ) override;
|
||||
|
||||
@@ -78,8 +78,7 @@ RimIdenticalGridCaseGroup* RimEclipseCaseCollection::createIdenticalCaseGroupFro
|
||||
{
|
||||
CVF_ASSERT( mainCase );
|
||||
|
||||
RigEclipseCaseData* rigEclipseCase = mainCase->eclipseCaseData();
|
||||
RigMainGrid* equalGrid = registerCaseInGridCollection( rigEclipseCase );
|
||||
RigMainGrid* equalGrid = registerCaseInGridCollection( mainCase );
|
||||
CVF_ASSERT( equalGrid );
|
||||
|
||||
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() );
|
||||
|
||||
@@ -132,17 +132,7 @@ RigMainGrid* RimEclipseCaseCollection::registerCaseInGridCollection( RigEclipseC
|
||||
// This is the first insertion of this grid, compute cached data
|
||||
rigEclipseCase->mainGrid()->computeCachedData();
|
||||
|
||||
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 );
|
||||
}
|
||||
rimEclipseCase->ensureFaultDataIsComputed();
|
||||
|
||||
equalGrid = rigEclipseCase->mainGrid();
|
||||
}
|
||||
@@ -159,8 +149,7 @@ void RimEclipseCaseCollection::insertCaseInCaseGroup( RimIdenticalGridCaseGroup*
|
||||
{
|
||||
CVF_ASSERT( rimReservoir );
|
||||
|
||||
RigEclipseCaseData* rigEclipseCase = rimReservoir->eclipseCaseData();
|
||||
registerCaseInGridCollection( rigEclipseCase );
|
||||
registerCaseInGridCollection( rimReservoir );
|
||||
|
||||
caseGroup->addCase( rimReservoir );
|
||||
}
|
||||
|
||||
@@ -58,6 +58,6 @@ public:
|
||||
void recomputeStatisticsForAllCaseGroups();
|
||||
|
||||
private:
|
||||
RigMainGrid* registerCaseInGridCollection( RigEclipseCaseData* rigEclipseCase );
|
||||
RigMainGrid* registerCaseInGridCollection( RimEclipseCase* rimEclipseCase );
|
||||
cvf::ref<RigGridManager> m_gridCollection;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user