//-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- bool RIApplication::openEclipseCase(const QString& caseName, const QString& caseFileName) { QFileInfo gridFileName(caseFileName); QString casePath = gridFileName.absolutePath(); RimResultReservoir* rimResultReservoir = new RimResultReservoir(); rimResultReservoir->caseName = caseName; rimResultReservoir->caseFileName = caseFileName; rimResultReservoir->caseDirectory = casePath; m_project->reservoirs.push_back(rimResultReservoir); RimReservoirView* riv = rimResultReservoir->createAndAddReservoirView(); if (m_preferences->autocomputeSOIL) { // Select SOIL as default result variable riv->cellResult()->resultType = RimDefines::DYNAMIC_NATIVE; riv->cellResult()->resultVariable = "SOIL"; riv->animationMode = true; } riv->loadDataAndUpdate(); if (!riv->cellResult()->hasResult()) { riv->cellResult()->resultVariable = RimDefines::undefinedResultName(); } onProjectOpenedOrClosed(); return true; }
//-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- bool RIApplication::openEclipseCaseFromFile(const QString& fileName) { if (!QFile::exists(fileName)) return false; QFileInfo gridFileName(fileName); QString caseName = gridFileName.completeBaseName(); return openEclipseCase(caseName, fileName); }
//-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- void RimEclipseInputCaseOpm::importNewEclipseGridAndProperties(const QString& fileName) { m_gridFileName = fileName; QFileInfo gridFileName(m_gridFileName); QString caseName = gridFileName.completeBaseName(); this->caseUserDescription = caseName + " (opm-parser)"; importEclipseGridAndProperties(m_gridFileName); }
//-------------------------------------------------------------------------------------------------- /// Open the supplied file set. If no grid data has been read, it will first find the possible /// grid data among the files then read all supported properties from the files matching the grid //-------------------------------------------------------------------------------------------------- void RimEclipseInputCase::openDataFileSet(const QStringList& fileNames) { if (fileNames.contains(RimDefines::mockModelBasicInputCase())) { cvf::ref<RifReaderInterface> readerInterface = this->createMockModel(fileNames[0]); results(RifReaderInterface::MATRIX_RESULTS)->setReaderInterface(readerInterface.p()); results(RifReaderInterface::FRACTURE_RESULTS)->setReaderInterface(readerInterface.p()); reservoirData()->activeCellInfo(RifReaderInterface::MATRIX_RESULTS)->computeDerivedData(); reservoirData()->activeCellInfo(RifReaderInterface::FRACTURE_RESULTS)->computeDerivedData(); QFileInfo gridFileName(fileNames[0]); QString caseName = gridFileName.completeBaseName(); this->caseUserDescription = caseName; computeCachedData(); return; } if (this->reservoirData() == NULL) { this->setReservoirData(new RigCaseData); } // First find and read the grid data if (this->reservoirData()->mainGrid()->gridPointDimensions() == cvf::Vec3st(0,0,0)) { RiaPreferences* prefs = RiaApplication::instance()->preferences(); for (int i = 0; i < fileNames.size(); i++) { if (RifEclipseInputFileTools::openGridFile(fileNames[i], this->reservoirData(), prefs->readerSettings->importFaults())) { m_gridFileName = fileNames[i]; QFileInfo gridFileName(fileNames[i]); QString caseName = gridFileName.completeBaseName(); this->caseUserDescription = caseName; this->reservoirData()->mainGrid()->setFlipAxis(flipXAxis, flipYAxis); computeCachedData(); break; } } } if (this->reservoirData()->mainGrid()->gridPointDimensions() == cvf::Vec3st(0,0,0)) { return ; // No grid present } // Then read the properties possibly in the grid file QStringList filesToRead; for (int i = 0; i < fileNames.size(); i++) { size_t j; bool exist = false; for (j = 0; j < m_additionalFileNames().size(); j++) { if (m_additionalFileNames()[j] == fileNames[i]) { exist = true; } } if (!exist) { filesToRead.push_back(fileNames[i]); } } for (int i = 0; i < filesToRead.size(); i++) { QString propertyFileName = filesToRead[i]; std::map<QString, QString> readProperties = RifEclipseInputFileTools::readProperties(propertyFileName, this->reservoirData()); std::map<QString, QString>::iterator it; for (it = readProperties.begin(); it != readProperties.end(); ++it) { RimEclipseInputProperty* inputProperty = new RimEclipseInputProperty; inputProperty->resultName = it->first; inputProperty->eclipseKeyword = it->second; inputProperty->fileName = propertyFileName; inputProperty->resolvedState = RimEclipseInputProperty::RESOLVED; m_inputPropertyCollection->inputProperties.push_back(inputProperty); } if (propertyFileName != m_gridFileName) { m_additionalFileNames.v().push_back(propertyFileName); } } }
leptonAcceptancesForOneScolored* leptonAcceptancesForOneBeamEnergy::getParameterSets( particlePointer const coloredSparticle ) // this returns the leptonAcceptancesForOneScolored for the requested // colored sparticle. { leptonAcceptancesForOneScolored* returnPointer( NULL ); // we look to see if we already have a leptonAcceptancesForOneScolored for // this colored sparticle: if( inputShortcut->getGluino() == coloredSparticle ) { if( NULL == gluinoAcceptanceSet ) { std::string gridFileName( gridFileLocation ); gridFileName.append( "/gluino+gluino_acceptance.dat" ); acceptanceFromGluinoGrid = new leptonAcceptanceFromGluinoGrid( &gridFileName, inputShortcut ); gluinoAcceptanceSet = new leptonAcceptancesForOneScolored( inputShortcut, coloredSparticle, acceptanceFromGluinoGrid, binSize, transverseMomentumCut ); } returnPointer = gluinoAcceptanceSet; } else { for( std::vector< leptonAcceptancesForOneScolored* >::iterator searchIterator( squarkAcceptanceSets.begin() ); squarkAcceptanceSets.end() > searchIterator; ++searchIterator ) { if( coloredSparticle == (*searchIterator)->getScolored() ) { returnPointer = *searchIterator; searchIterator = squarkAcceptanceSets.end(); } } if( NULL == returnPointer ) // if we do not already have a leptonAcceptanceParameterSet for this // squark, we make a new instance: { if( NULL == acceptanceFromSquarkGrid ) { std::string gridFileName( gridFileLocation ); gridFileName.append( "/squark+antisquark_acceptance.dat" ); acceptanceFromSquarkGrid = new leptonAcceptanceFromSquarkGrid( &gridFileName, inputShortcut ); } returnPointer = new leptonAcceptancesForOneScolored( inputShortcut, coloredSparticle, acceptanceFromSquarkGrid, binSize, transverseMomentumCut ); squarkAcceptanceSets.push_back( returnPointer ); } } return returnPointer; }