(#928) Remove import of faults using opm-parser

This commit is contained in:
Magne Sjaastad 2016-10-21 09:33:03 +02:00
parent 1fd5ffb522
commit 7a9c0871e8
3 changed files with 27 additions and 21 deletions

View File

@ -634,20 +634,6 @@ void RifEclipseInputFileTools::readFaults(const QString& fileName, const std::ve
return; return;
} }
// Parse complete file if no keywords are parsed
if (fileKeywords.size() == 0)
{
qint64 filePos = findKeyword(faultsKeyword, data, 0);
while (filePos != -1)
{
readFaults(data, filePos, faults, NULL);
filePos = findKeyword(faultsKeyword, data, filePos);
}
return;
}
for (size_t i = 0; i < fileKeywords.size(); i++) for (size_t i = 0; i < fileKeywords.size(); i++)
{ {
if (fileKeywords[i].keyword.compare(editKeyword, Qt::CaseInsensitive) == 0) if (fileKeywords[i].keyword.compare(editKeyword, Qt::CaseInsensitive) == 0)
@ -671,6 +657,25 @@ void RifEclipseInputFileTools::readFaults(const QString& fileName, const std::ve
} }
} }
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RifEclipseInputFileTools::parseAndReadFaults(const QString& fileName, cvf::Collection<RigFault>* faults)
{
QFile data(fileName);
if (!data.open(QFile::ReadOnly))
{
return;
}
qint64 filePos = findKeyword(faultsKeyword, data, 0);
while (filePos != -1)
{
readFaults(data, filePos, faults, NULL);
filePos = findKeyword(faultsKeyword, data, filePos);
}
}
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/// ///

View File

@ -62,9 +62,9 @@ public:
static bool readProperty (const QString& fileName, RigCaseData* eclipseCase, const QString& eclipseKeyWord, const QString& resultName ); static bool readProperty (const QString& fileName, RigCaseData* eclipseCase, const QString& eclipseKeyWord, const QString& resultName );
static bool readPropertyAtFilePosition (const QString& fileName, RigCaseData* eclipseCase, const QString& eclipseKeyWord, qint64 filePos, const QString& resultName ); static bool readPropertyAtFilePosition (const QString& fileName, RigCaseData* eclipseCase, const QString& eclipseKeyWord, qint64 filePos, const QString& resultName );
static void readFaultsInGridSection(const QString& fileName, cvf::Collection<RigFault>* faults, std::vector<QString>* filenamesWithFaults); static void readFaultsInGridSection(const QString& fileName, cvf::Collection<RigFault>* faults, std::vector<QString>* filenamesWithFaults);
static void readFaults(const QString& fileName, const std::vector< RifKeywordAndFilePos >& fileKeywords, cvf::Collection<RigFault>* faults); static void readFaults(const QString& fileName, const std::vector< RifKeywordAndFilePos >& fileKeywords, cvf::Collection<RigFault>* faults);
static void parseAndReadFaults(const QString& fileName, cvf::Collection<RigFault>* faults);
static void readFaults(QFile &data, qint64 filePos, cvf::Collection<RigFault>* faults, bool* isEditKeywordDetected); static void readFaults(QFile &data, qint64 filePos, cvf::Collection<RigFault>* faults, bool* isEditKeywordDetected);
static void findKeywordsOnFile(const QString &fileName, std::vector< RifKeywordAndFilePos >* keywords); static void findKeywordsOnFile(const QString &fileName, std::vector< RifKeywordAndFilePos >* keywords);

View File

@ -387,7 +387,8 @@ bool RifReaderEclipseOutput::open(const QString& fileName, RigCaseData* eclipseC
{ {
cvf::Collection<RigFault> faults; cvf::Collection<RigFault> faults;
importFaultsOpmParser(fileSet, &faults); //importFaultsOpmParser(fileSet, &faults);
importFaults(fileSet, &faults);
RigMainGrid* mainGrid = eclipseCase->mainGrid(); RigMainGrid* mainGrid = eclipseCase->mainGrid();
mainGrid->setFaults(faults); mainGrid->setFaults(faults);
@ -454,13 +455,11 @@ void RifReaderEclipseOutput::importFaults(const QStringList& fileSet, cvf::Colle
{ {
if (this->filenamesWithFaults().size() > 0) if (this->filenamesWithFaults().size() > 0)
{ {
std::vector< RifKeywordAndFilePos > fileKeywords;
for (size_t i = 0; i < this->filenamesWithFaults().size(); i++) for (size_t i = 0; i < this->filenamesWithFaults().size(); i++)
{ {
QString faultFilename = this->filenamesWithFaults()[i]; QString faultFilename = this->filenamesWithFaults()[i];
RifEclipseInputFileTools::readFaults(faultFilename, fileKeywords, faults); RifEclipseInputFileTools::parseAndReadFaults(faultFilename, faults);
} }
} }
else else
@ -469,9 +468,8 @@ void RifReaderEclipseOutput::importFaults(const QStringList& fileSet, cvf::Colle
{ {
if (fname.endsWith(".DATA")) if (fname.endsWith(".DATA"))
{ {
cvf::Collection<RigFault> faults;
std::vector<QString> filenamesWithFaults; std::vector<QString> filenamesWithFaults;
RifEclipseInputFileTools::readFaultsInGridSection(fname, &faults, &filenamesWithFaults); RifEclipseInputFileTools::readFaultsInGridSection(fname, faults, &filenamesWithFaults);
std::sort(filenamesWithFaults.begin(), filenamesWithFaults.end()); std::sort(filenamesWithFaults.begin(), filenamesWithFaults.end());
std::vector<QString>::iterator last = std::unique(filenamesWithFaults.begin(), filenamesWithFaults.end()); std::vector<QString>::iterator last = std::unique(filenamesWithFaults.begin(), filenamesWithFaults.end());
@ -483,6 +481,9 @@ void RifReaderEclipseOutput::importFaults(const QStringList& fileSet, cvf::Colle
} }
} }
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RifReaderEclipseOutput::transferNNCData( const ecl_grid_type * mainEclGrid , const ecl_file_type * init_file, RigMainGrid * mainGrid) void RifReaderEclipseOutput::transferNNCData( const ecl_grid_type * mainEclGrid , const ecl_file_type * init_file, RigMainGrid * mainGrid)
{ {
if (!m_ecl_init_file ) return; if (!m_ecl_init_file ) return;