Look for fault definition in Pflotran input files

Look for fault definition in Pflotran input files If no *.DATA file is found, look for *.IN file and search for fault definitions.
This commit is contained in:
Magne Sjaastad
2024-08-30 10:03:03 +02:00
committed by GitHub
parent 681b4fbffe
commit 24fcec79ab
7 changed files with 480 additions and 3 deletions

View File

@@ -19,6 +19,7 @@
#include "RifReaderInterface.h"
#include "RiaLogging.h"
#include "RiaPreferencesGrid.h"
#include "RifEclipseInputFileTools.h"
@@ -159,12 +160,16 @@ void RifReaderInterface::importFaults( const QStringList& fileSet, cvf::Collecti
}
else
{
foreach ( QString fname, fileSet )
bool isDataFileFound = false;
for ( const auto& filename : fileSet )
{
if ( fname.endsWith( ".DATA" ) )
if ( filename.endsWith( ".DATA" ) )
{
isDataFileFound = true;
std::vector<QString> filenamesWithFaults;
RifEclipseInputFileTools::readFaultsInGridSection( fname, faults, &filenamesWithFaults, faultIncludeFileAbsolutePathPrefix() );
RifEclipseInputFileTools::readFaultsInGridSection( filename, faults, &filenamesWithFaults, faultIncludeFileAbsolutePathPrefix() );
std::sort( filenamesWithFaults.begin(), filenamesWithFaults.end() );
std::vector<QString>::iterator last = std::unique( filenamesWithFaults.begin(), filenamesWithFaults.end() );
@@ -173,5 +178,18 @@ void RifReaderInterface::importFaults( const QStringList& fileSet, cvf::Collecti
setFilenamesWithFaults( filenamesWithFaults );
}
}
if ( !isDataFileFound )
{
RiaLogging::info( "No *.DATA file is found" );
for ( const auto& filename : fileSet )
{
if ( filename.endsWith( ".IN", Qt::CaseInsensitive ) )
{
RifEclipseInputFileTools::parsePflotranInputFile( filename, faults );
}
}
}
}
}