mirror of
https://github.com/OPM/opm-simulators.git
synced 2024-12-28 02:00:59 -06:00
move ebos/ecloutputblackoilmodule.hh to opm/simulators/flow
This commit is contained in:
parent
41319eab7d
commit
b6cbf513bc
@ -431,7 +431,6 @@ list (APPEND PUBLIC_HEADER_FILES
|
||||
ebos/eclgenericwriter_impl.hh
|
||||
ebos/eclmixingratecontrols.hh
|
||||
ebos/eclnewtonmethod.hh
|
||||
ebos/ecloutputblackoilmodule.hh
|
||||
ebos/eclpolyhedralgridvanguard.hh
|
||||
ebos/eclproblem.hh
|
||||
ebos/eclproblem_properties.hh
|
||||
@ -460,6 +459,7 @@ list (APPEND PUBLIC_HEADER_FILES
|
||||
opm/simulators/flow/LogOutputHelper.hpp
|
||||
opm/simulators/flow/Main.hpp
|
||||
opm/simulators/flow/NonlinearSolver.hpp
|
||||
opm/simulators/flow/OutputBlackoilModule.hpp
|
||||
opm/simulators/flow/partitionCells.hpp
|
||||
opm/simulators/flow/priVarsPacking.hpp
|
||||
opm/simulators/flow/RSTConv.hpp
|
||||
|
@ -36,11 +36,11 @@
|
||||
#include <ebos/damaris_properties.hh>
|
||||
#include <ebos/eclbasevanguard.hh>
|
||||
#include <ebos/eclgenericwriter.hh>
|
||||
#include <ebos/ecloutputblackoilmodule.hh>
|
||||
|
||||
#include <opm/common/OpmLog/OpmLog.hpp>
|
||||
|
||||
#include <opm/simulators/flow/countGlobalCells.hpp>
|
||||
#include <opm/simulators/flow/OutputBlackoilModule.hpp>
|
||||
#include <opm/simulators/utils/DamarisVar.hpp>
|
||||
#include <opm/simulators/utils/DeferredLoggingErrorHelpers.hpp>
|
||||
#include <opm/simulators/utils/GridDataOutput.hpp>
|
||||
@ -167,7 +167,7 @@ public:
|
||||
numElements_ = std::distance(interior_elements.begin(), interior_elements.end());
|
||||
|
||||
this->elements_rank_offsets_.resize(nranks_) ;
|
||||
this->damarisOutputModule_ = std::make_unique<EclOutputBlackOilModule<TypeTag>>(simulator, this->collectToIORank_);
|
||||
this->damarisOutputModule_ = std::make_unique<OutputBlackOilModule<TypeTag>>(simulator, this->collectToIORank_);
|
||||
}
|
||||
|
||||
/*!
|
||||
@ -236,7 +236,7 @@ private:
|
||||
int numElements_ ; ///< size of the unique vector elements
|
||||
|
||||
Simulator& simulator_;
|
||||
std::unique_ptr<EclOutputBlackOilModule<TypeTag>> damarisOutputModule_;
|
||||
std::unique_ptr<OutputBlackOilModule<TypeTag>> damarisOutputModule_;
|
||||
std::vector<unsigned long long> elements_rank_offsets_ ;
|
||||
bool damarisUpdate_ = false; ///< Whenever this is true writeOutput() will set up Damaris mesh information and offsets of model fields
|
||||
|
||||
|
@ -40,7 +40,6 @@
|
||||
#include <ebos/eclfluxmodule.hh>
|
||||
#include <ebos/eclgenericproblem.hh>
|
||||
#include <ebos/eclnewtonmethod.hh>
|
||||
#include <ebos/ecloutputblackoilmodule.hh>
|
||||
#include <ebos/eclproblem_properties.hh>
|
||||
#include <ebos/eclthresholdpressure.hh>
|
||||
#include <ebos/ecltransmissibility.hh>
|
||||
@ -83,6 +82,7 @@
|
||||
|
||||
#include <opm/simulators/flow/ActionHandler.hpp>
|
||||
#include <opm/simulators/flow/DummyGradientCalculator.hpp>
|
||||
#include <opm/simulators/flow/OutputBlackoilModule.hpp>
|
||||
#include <opm/simulators/timestepping/AdaptiveTimeStepping.hpp>
|
||||
#include <opm/simulators/timestepping/SimulatorReport.hpp>
|
||||
#include <opm/simulators/utils/DeferredLoggingErrorHelpers.hpp>
|
||||
@ -1799,7 +1799,7 @@ public:
|
||||
|
||||
void setConvData(const std::vector<std::vector<int>>& data)
|
||||
{
|
||||
eclWriter_->mutableEclOutputModule().setCnvData(data);
|
||||
eclWriter_->mutableOutputModule().setCnvData(data);
|
||||
}
|
||||
|
||||
template<class Serializer>
|
||||
@ -2190,8 +2190,8 @@ protected:
|
||||
for (std::size_t elemIdx = 0; elemIdx < numElems; ++elemIdx) {
|
||||
auto& elemFluidState = initialFluidStates_[elemIdx];
|
||||
elemFluidState.setPvtRegionIndex(pvtRegionIndex(elemIdx));
|
||||
eclWriter_->eclOutputModule().initHysteresisParams(simulator, elemIdx);
|
||||
eclWriter_->eclOutputModule().assignToFluidState(elemFluidState, elemIdx);
|
||||
eclWriter_->outputModule().initHysteresisParams(simulator, elemIdx);
|
||||
eclWriter_->outputModule().assignToFluidState(elemFluidState, elemIdx);
|
||||
|
||||
// Note: Function processRestartSaturations_() mutates the
|
||||
// 'ssol' argument--the value from the restart file--if solvent
|
||||
@ -2201,27 +2201,27 @@ protected:
|
||||
// into 'solventSaturation_' unless solvent is enabled.
|
||||
{
|
||||
auto ssol = enableSolvent
|
||||
? eclWriter_->eclOutputModule().getSolventSaturation(elemIdx)
|
||||
? eclWriter_->outputModule().getSolventSaturation(elemIdx)
|
||||
: Scalar(0);
|
||||
|
||||
processRestartSaturations_(elemFluidState, ssol);
|
||||
|
||||
if constexpr (enableSolvent) {
|
||||
this->solventSaturation_[elemIdx] = ssol;
|
||||
this->solventRsw_[elemIdx] = eclWriter_->eclOutputModule().getSolventRsw(elemIdx);
|
||||
this->solventRsw_[elemIdx] = eclWriter_->outputModule().getSolventRsw(elemIdx);
|
||||
}
|
||||
}
|
||||
|
||||
this->mixControls_.updateLastValues(elemIdx, elemFluidState.Rs(), elemFluidState.Rv());
|
||||
|
||||
if constexpr (enablePolymer)
|
||||
this->polymer_.concentration[elemIdx] = eclWriter_->eclOutputModule().getPolymerConcentration(elemIdx);
|
||||
this->polymer_.concentration[elemIdx] = eclWriter_->outputModule().getPolymerConcentration(elemIdx);
|
||||
if constexpr (enableMICP){
|
||||
this->micp_.microbialConcentration[elemIdx] = eclWriter_->eclOutputModule().getMicrobialConcentration(elemIdx);
|
||||
this->micp_.oxygenConcentration[elemIdx] = eclWriter_->eclOutputModule().getOxygenConcentration(elemIdx);
|
||||
this->micp_.ureaConcentration[elemIdx] = eclWriter_->eclOutputModule().getUreaConcentration(elemIdx);
|
||||
this->micp_.biofilmConcentration[elemIdx] = eclWriter_->eclOutputModule().getBiofilmConcentration(elemIdx);
|
||||
this->micp_.calciteConcentration[elemIdx] = eclWriter_->eclOutputModule().getCalciteConcentration(elemIdx);
|
||||
this->micp_.microbialConcentration[elemIdx] = eclWriter_->outputModule().getMicrobialConcentration(elemIdx);
|
||||
this->micp_.oxygenConcentration[elemIdx] = eclWriter_->outputModule().getOxygenConcentration(elemIdx);
|
||||
this->micp_.ureaConcentration[elemIdx] = eclWriter_->outputModule().getUreaConcentration(elemIdx);
|
||||
this->micp_.biofilmConcentration[elemIdx] = eclWriter_->outputModule().getBiofilmConcentration(elemIdx);
|
||||
this->micp_.calciteConcentration[elemIdx] = eclWriter_->outputModule().getCalciteConcentration(elemIdx);
|
||||
}
|
||||
// if we need to restart for polymer molecular weight simulation, we need to add related here
|
||||
}
|
||||
|
@ -32,7 +32,6 @@
|
||||
#include <ebos/eclcpgridvanguard.hh>
|
||||
#include <ebos/eclfluxmodule.hh>
|
||||
#include <ebos/eclnewtonmethod.hh>
|
||||
#include <ebos/ecloutputblackoilmodule.hh>
|
||||
#include <ebos/eclwriter.hh>
|
||||
#if HAVE_DAMARIS
|
||||
#include <ebos/damariswriter.hh>
|
||||
@ -49,6 +48,7 @@
|
||||
#include <opm/models/utils/propertysystem.hh>
|
||||
|
||||
#include <opm/simulators/flow/DummyGradientCalculator.hpp>
|
||||
#include <opm/simulators/flow/OutputBlackoilModule.hpp>
|
||||
|
||||
#include <tuple>
|
||||
|
||||
@ -62,7 +62,7 @@ namespace Opm::Properties {
|
||||
namespace TTag {
|
||||
|
||||
struct EclBaseProblem {
|
||||
using InheritsFrom = std::tuple<VtkEclTracer, EclOutputBlackOil, EclCpGridVanguard>;
|
||||
using InheritsFrom = std::tuple<VtkEclTracer, OutputBlackOil, EclCpGridVanguard>;
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -33,12 +33,12 @@
|
||||
#include <ebos/collecttoiorank.hh>
|
||||
#include <ebos/eclbasevanguard.hh>
|
||||
#include <ebos/eclgenericwriter.hh>
|
||||
#include <ebos/ecloutputblackoilmodule.hh>
|
||||
|
||||
#include <opm/input/eclipse/Units/UnitSystem.hpp>
|
||||
|
||||
#include <opm/output/eclipse/RestartValue.hpp>
|
||||
|
||||
#include <opm/simulators/flow/OutputBlackoilModule.hpp>
|
||||
#include <opm/simulators/utils/DeferredLoggingErrorHelpers.hpp>
|
||||
#include <opm/simulators/utils/ParallelRestart.hpp>
|
||||
#include <opm/simulators/flow/countGlobalCells.hpp>
|
||||
@ -126,7 +126,7 @@ public:
|
||||
|
||||
static void registerParameters()
|
||||
{
|
||||
EclOutputBlackOilModule<TypeTag>::registerParameters();
|
||||
OutputBlackOilModule<TypeTag>::registerParameters();
|
||||
|
||||
EWOMS_REGISTER_PARAM(TypeTag, bool, EnableAsyncEclOutput,
|
||||
"Write the ECL-formated results in a non-blocking way (i.e., using a separate thread).");
|
||||
@ -156,7 +156,7 @@ public:
|
||||
EWOMS_GET_PARAM(TypeTag, bool, EnableEsmry))
|
||||
, simulator_(simulator)
|
||||
{
|
||||
this->eclOutputModule_ = std::make_unique<EclOutputBlackOilModule<TypeTag>>
|
||||
this->outputModule_ = std::make_unique<OutputBlackOilModule<TypeTag>>
|
||||
(simulator, this->collectToIORank_);
|
||||
|
||||
rank_ = simulator_.vanguard().grid().comm().rank() ;
|
||||
@ -214,7 +214,7 @@ public:
|
||||
const auto localWellTestState = simulator_.problem().wellModel().wellTestState();
|
||||
this->prepareLocalCellData(isSubStep, reportStepNum);
|
||||
|
||||
if (this->eclOutputModule_->needInterfaceFluxes(isSubStep)) {
|
||||
if (this->outputModule_->needInterfaceFluxes(isSubStep)) {
|
||||
this->captureLocalFluxData();
|
||||
}
|
||||
|
||||
@ -222,13 +222,13 @@ public:
|
||||
OPM_BEGIN_PARALLEL_TRY_CATCH()
|
||||
|
||||
this->collectToIORank_.collect({},
|
||||
eclOutputModule_->getBlockData(),
|
||||
outputModule_->getBlockData(),
|
||||
localWellData,
|
||||
localWBP,
|
||||
localGroupAndNetworkData,
|
||||
localAquiferData,
|
||||
localWellTestState,
|
||||
this->eclOutputModule_->getInterRegFlows(),
|
||||
this->outputModule_->getInterRegFlows(),
|
||||
{},
|
||||
{});
|
||||
|
||||
@ -257,7 +257,7 @@ public:
|
||||
{
|
||||
OPM_TIMEBLOCK(outputFipLogAndFipresvLog);
|
||||
|
||||
inplace = eclOutputModule_->calc_inplace(miscSummaryData, regionData, simulator_.gridView().comm());
|
||||
inplace = outputModule_->calc_inplace(miscSummaryData, regionData, simulator_.gridView().comm());
|
||||
|
||||
if (this->collectToIORank_.isIORank()){
|
||||
inplace_ = inplace;
|
||||
@ -295,11 +295,11 @@ public:
|
||||
|
||||
const auto& blockData = this->collectToIORank_.isParallel()
|
||||
? this->collectToIORank_.globalBlockData()
|
||||
: this->eclOutputModule_->getBlockData();
|
||||
: this->outputModule_->getBlockData();
|
||||
|
||||
const auto& interRegFlows = this->collectToIORank_.isParallel()
|
||||
? this->collectToIORank_.globalInterRegFlows()
|
||||
: this->eclOutputModule_->getInterRegFlows();
|
||||
: this->outputModule_->getInterRegFlows();
|
||||
|
||||
this->evalSummary(reportStepNum,
|
||||
curTime,
|
||||
@ -311,7 +311,7 @@ public:
|
||||
miscSummaryData,
|
||||
regionData,
|
||||
inplace,
|
||||
this->eclOutputModule_->initialInplace(),
|
||||
this->outputModule_->initialInplace(),
|
||||
interRegFlows,
|
||||
this->summaryState(),
|
||||
this->udqState());
|
||||
@ -331,7 +331,7 @@ public:
|
||||
const int num_interior = detail::
|
||||
countLocalInteriorCellsGridView(gridView);
|
||||
|
||||
this->eclOutputModule_->
|
||||
this->outputModule_->
|
||||
allocBuffers(num_interior, 0, false, false, /*isRestart*/ false);
|
||||
|
||||
#ifdef _OPENMP
|
||||
@ -341,7 +341,7 @@ public:
|
||||
const auto& intQuants = *simulator_.model().cachedIntensiveQuantities(dofIdx, /*timeIdx=*/0);
|
||||
const auto totVolume = simulator_.model().dofTotalVolume(dofIdx);
|
||||
|
||||
this->eclOutputModule_->updateFluidInPlace(dofIdx, intQuants, totVolume);
|
||||
this->outputModule_->updateFluidInPlace(dofIdx, intQuants, totVolume);
|
||||
}
|
||||
|
||||
std::map<std::string, double> miscSummaryData;
|
||||
@ -352,13 +352,13 @@ public:
|
||||
|
||||
boost::posix_time::ptime start_time = boost::posix_time::from_time_t(simulator_.vanguard().schedule().getStartTime());
|
||||
|
||||
inplace = eclOutputModule_->calc_inplace(miscSummaryData, regionData, simulator_.gridView().comm());
|
||||
inplace = outputModule_->calc_inplace(miscSummaryData, regionData, simulator_.gridView().comm());
|
||||
|
||||
if (this->collectToIORank_.isIORank()){
|
||||
inplace_ = inplace;
|
||||
|
||||
eclOutputModule_->outputFipAndResvLog(inplace_, 0, 0.0, start_time,
|
||||
false, simulator_.gridView().comm());
|
||||
outputModule_->outputFipAndResvLog(inplace_, 0, 0.0, start_time,
|
||||
false, simulator_.gridView().comm());
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -369,7 +369,7 @@ public:
|
||||
|
||||
const int reportStepNum = simulator_.episodeIndex() + 1;
|
||||
this->prepareLocalCellData(isSubStep, reportStepNum);
|
||||
this->eclOutputModule_->outputErrorLog(simulator_.gridView().comm());
|
||||
this->outputModule_->outputErrorLog(simulator_.gridView().comm());
|
||||
|
||||
// output using eclWriter if enabled
|
||||
auto localWellData = simulator_.problem().wellModel().wellData();
|
||||
@ -379,11 +379,11 @@ public:
|
||||
auto localAquiferData = simulator_.problem().aquiferModel().aquiferData();
|
||||
auto localWellTestState = simulator_.problem().wellModel().wellTestState();
|
||||
|
||||
const bool isFlowsn = this->eclOutputModule_->hasFlowsn();
|
||||
auto flowsn = this->eclOutputModule_->getFlowsn();
|
||||
const bool isFlowsn = this->outputModule_->hasFlowsn();
|
||||
auto flowsn = this->outputModule_->getFlowsn();
|
||||
|
||||
const bool isFloresn = this->eclOutputModule_->hasFloresn();
|
||||
auto floresn = this->eclOutputModule_->getFloresn();
|
||||
const bool isFloresn = this->outputModule_->hasFloresn();
|
||||
auto floresn = this->outputModule_->getFloresn();
|
||||
|
||||
// data::Solution localCellData = {};
|
||||
if (! isSubStep) {
|
||||
@ -392,25 +392,25 @@ public:
|
||||
|
||||
if ((rstep > 0) && (this->collectToIORank_.isIORank())){
|
||||
|
||||
eclOutputModule_->outputFipAndResvLog(inplace_, rstep, timer.simulationTimeElapsed(),
|
||||
timer.currentDateTime(), false, simulator_.gridView().comm());
|
||||
outputModule_->outputFipAndResvLog(inplace_, rstep, timer.simulationTimeElapsed(),
|
||||
timer.currentDateTime(), false, simulator_.gridView().comm());
|
||||
|
||||
|
||||
eclOutputModule_->outputTimeStamp("WELLS", timer.simulationTimeElapsed(), rstep, timer.currentDateTime());
|
||||
outputModule_->outputTimeStamp("WELLS", timer.simulationTimeElapsed(), rstep, timer.currentDateTime());
|
||||
|
||||
eclOutputModule_->outputProdLog(reportStepNum);
|
||||
eclOutputModule_->outputInjLog(reportStepNum);
|
||||
eclOutputModule_->outputCumLog(reportStepNum);
|
||||
outputModule_->outputProdLog(reportStepNum);
|
||||
outputModule_->outputInjLog(reportStepNum);
|
||||
outputModule_->outputCumLog(reportStepNum);
|
||||
|
||||
OpmLog::note(""); // Blank line after all reports.
|
||||
}
|
||||
|
||||
if (localCellData.empty()) {
|
||||
this->eclOutputModule_->assignToSolution(localCellData);
|
||||
this->outputModule_->assignToSolution(localCellData);
|
||||
}
|
||||
|
||||
// Add cell data to perforations for RFT output
|
||||
this->eclOutputModule_->addRftDataToWells(localWellData, reportStepNum);
|
||||
this->outputModule_->addRftDataToWells(localWellData, reportStepNum);
|
||||
}
|
||||
|
||||
if (this->collectToIORank_.isParallel() ||
|
||||
@ -422,7 +422,7 @@ public:
|
||||
// properties on the I/O rank.
|
||||
|
||||
this->collectToIORank_.collect(localCellData,
|
||||
this->eclOutputModule_->getBlockData(),
|
||||
this->outputModule_->getBlockData(),
|
||||
localWellData,
|
||||
/* wbpData = */ {},
|
||||
localGroupAndNetworkData,
|
||||
@ -432,10 +432,10 @@ public:
|
||||
flowsn,
|
||||
floresn);
|
||||
if (this->collectToIORank_.isIORank()) {
|
||||
this->eclOutputModule_->assignGlobalFieldsToSolution(this->collectToIORank_.globalCellData());
|
||||
this->outputModule_->assignGlobalFieldsToSolution(this->collectToIORank_.globalCellData());
|
||||
}
|
||||
} else {
|
||||
this->eclOutputModule_->assignGlobalFieldsToSolution(localCellData);
|
||||
this->outputModule_->assignGlobalFieldsToSolution(localCellData);
|
||||
}
|
||||
|
||||
if (this->collectToIORank_.isIORank()) {
|
||||
@ -501,7 +501,7 @@ public:
|
||||
|
||||
const auto& gridView = simulator_.vanguard().gridView();
|
||||
unsigned numElements = gridView.size(/*codim=*/0);
|
||||
eclOutputModule_->allocBuffers(numElements, restartStepIdx, /*isSubStep=*/false, /*log=*/false, /*isRestart*/ true);
|
||||
outputModule_->allocBuffers(numElements, restartStepIdx, /*isSubStep=*/false, /*log=*/false, /*isRestart*/ true);
|
||||
|
||||
{
|
||||
SummaryState& summaryState = simulator_.vanguard().summaryState();
|
||||
@ -510,7 +510,7 @@ public:
|
||||
gridView.grid().comm());
|
||||
for (unsigned elemIdx = 0; elemIdx < numElements; ++elemIdx) {
|
||||
unsigned globalIdx = this->collectToIORank_.localIdxToGlobalIdx(elemIdx);
|
||||
eclOutputModule_->setRestart(restartValues.solution, elemIdx, globalIdx);
|
||||
outputModule_->setRestart(restartValues.solution, elemIdx, globalIdx);
|
||||
}
|
||||
|
||||
auto& tracer_model = simulator_.problem().tracerModel();
|
||||
@ -542,11 +542,11 @@ public:
|
||||
void endRestart()
|
||||
{}
|
||||
|
||||
const EclOutputBlackOilModule<TypeTag>& eclOutputModule() const
|
||||
{ return *eclOutputModule_; }
|
||||
const OutputBlackOilModule<TypeTag>& outputModule() const
|
||||
{ return *outputModule_; }
|
||||
|
||||
EclOutputBlackOilModule<TypeTag>& mutableEclOutputModule() const
|
||||
{ return *eclOutputModule_; }
|
||||
OutputBlackOilModule<TypeTag>& mutableOutputModule() const
|
||||
{ return *outputModule_; }
|
||||
|
||||
Scalar restartTimeStepSize() const
|
||||
{ return restartTimeStepSize_; }
|
||||
@ -554,7 +554,7 @@ public:
|
||||
template <class Serializer>
|
||||
void serializeOp(Serializer& serializer)
|
||||
{
|
||||
serializer(*eclOutputModule_);
|
||||
serializer(*outputModule_);
|
||||
}
|
||||
|
||||
private:
|
||||
@ -581,7 +581,7 @@ private:
|
||||
{
|
||||
OPM_TIMEBLOCK(prepareLocalCellData);
|
||||
|
||||
if (this->eclOutputModule_->localDataValid()) {
|
||||
if (this->outputModule_->localDataValid()) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -590,7 +590,7 @@ private:
|
||||
|
||||
const int num_interior = detail::
|
||||
countLocalInteriorCellsGridView(gridView);
|
||||
this->eclOutputModule_->
|
||||
this->outputModule_->
|
||||
allocBuffers(num_interior, reportStepNum,
|
||||
isSubStep, log, /*isRestart*/ false);
|
||||
|
||||
@ -601,16 +601,16 @@ private:
|
||||
{
|
||||
OPM_TIMEBLOCK(prepareCellBasedData);
|
||||
|
||||
this->eclOutputModule_->prepareDensityAccumulation();
|
||||
this->outputModule_->prepareDensityAccumulation();
|
||||
|
||||
for (const auto& elem : elements(gridView, Dune::Partitions::interior)) {
|
||||
elemCtx.updatePrimaryStencil(elem);
|
||||
elemCtx.updatePrimaryIntensiveQuantities(/*timeIdx=*/0);
|
||||
|
||||
this->eclOutputModule_->processElement(elemCtx);
|
||||
this->outputModule_->processElement(elemCtx);
|
||||
}
|
||||
|
||||
this->eclOutputModule_->accumulateDensityParallel();
|
||||
this->outputModule_->accumulateDensityParallel();
|
||||
}
|
||||
|
||||
if constexpr (enableMech) {
|
||||
@ -619,7 +619,7 @@ private:
|
||||
for (const auto& elem : elements(gridView, Dune::Partitions::interior)) {
|
||||
elemCtx.updatePrimaryStencil(elem);
|
||||
elemCtx.updatePrimaryIntensiveQuantities(/*timeIdx=*/0);
|
||||
eclOutputModule_->processElementMech(elemCtx);
|
||||
outputModule_->processElementMech(elemCtx);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -630,7 +630,7 @@ private:
|
||||
elemCtx.updatePrimaryStencil(elem);
|
||||
elemCtx.updatePrimaryIntensiveQuantities(/*timeIdx=*/0);
|
||||
|
||||
this->eclOutputModule_->processElementFlows(elemCtx);
|
||||
this->outputModule_->processElementFlows(elemCtx);
|
||||
}
|
||||
}
|
||||
|
||||
@ -640,7 +640,7 @@ private:
|
||||
elemCtx.updatePrimaryStencil(elem);
|
||||
elemCtx.updatePrimaryIntensiveQuantities(/*timeIdx=*/0);
|
||||
|
||||
this->eclOutputModule_->processElementBlockData(elemCtx);
|
||||
this->outputModule_->processElementBlockData(elemCtx);
|
||||
}
|
||||
}
|
||||
|
||||
@ -654,11 +654,11 @@ private:
|
||||
const auto& intQuants = *simulator_.model().cachedIntensiveQuantities(dofIdx, /*timeIdx=*/0);
|
||||
const auto totVolume = simulator_.model().dofTotalVolume(dofIdx);
|
||||
|
||||
this->eclOutputModule_->updateFluidInPlace(dofIdx, intQuants, totVolume);
|
||||
this->outputModule_->updateFluidInPlace(dofIdx, intQuants, totVolume);
|
||||
}
|
||||
}
|
||||
|
||||
this->eclOutputModule_->validateLocalData();
|
||||
this->outputModule_->validateLocalData();
|
||||
|
||||
OPM_END_PARALLEL_TRY_CATCH("EclWriter::prepareLocalCellData() failed: ",
|
||||
this->simulator_.vanguard().grid().comm());
|
||||
@ -684,7 +684,7 @@ private:
|
||||
return this->cartMapper_.cartesianIndex(elemIndex);
|
||||
};
|
||||
|
||||
this->eclOutputModule_->initializeFluxData();
|
||||
this->outputModule_->initializeFluxData();
|
||||
|
||||
OPM_BEGIN_PARALLEL_TRY_CATCH();
|
||||
|
||||
@ -693,17 +693,17 @@ private:
|
||||
elemCtx.updateIntensiveQuantities(timeIdx);
|
||||
elemCtx.updateExtensiveQuantities(timeIdx);
|
||||
|
||||
this->eclOutputModule_->processFluxes(elemCtx, activeIndex, cartesianIndex);
|
||||
this->outputModule_->processFluxes(elemCtx, activeIndex, cartesianIndex);
|
||||
}
|
||||
|
||||
OPM_END_PARALLEL_TRY_CATCH("EclWriter::captureLocalFluxData() failed: ",
|
||||
this->simulator_.vanguard().grid().comm())
|
||||
|
||||
this->eclOutputModule_->finalizeFluxData();
|
||||
this->outputModule_->finalizeFluxData();
|
||||
}
|
||||
|
||||
Simulator& simulator_;
|
||||
std::unique_ptr<EclOutputBlackOilModule<TypeTag> > eclOutputModule_;
|
||||
std::unique_ptr<OutputBlackOilModule<TypeTag> > outputModule_;
|
||||
Scalar restartTimeStepSize_;
|
||||
int rank_ ;
|
||||
Inplace inplace_;
|
||||
|
@ -705,7 +705,7 @@ namespace Opm {
|
||||
{
|
||||
OPM_TIMEBLOCK(invalidateAndUpdateIntensiveQuantities);
|
||||
simulator_.model().invalidateAndUpdateIntensiveQuantities(/*timeIdx=*/0);
|
||||
simulator_.problem().eclWriter()->mutableEclOutputModule().invalidateLocalData();
|
||||
simulator_.problem().eclWriter()->mutableOutputModule().invalidateLocalData();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -22,10 +22,10 @@
|
||||
*/
|
||||
/*!
|
||||
* \file
|
||||
* \copydoc Opm::EclOutputBlackOilModule
|
||||
* \copydoc Opm::OutputBlackOilModule
|
||||
*/
|
||||
#ifndef EWOMS_ECL_OUTPUT_BLACK_OIL_MODULE_HH
|
||||
#define EWOMS_ECL_OUTPUT_BLACK_OIL_MODULE_HH
|
||||
#ifndef OPM_OUTPUT_BLACK_OIL_MODULE_HPP
|
||||
#define OPM_OUTPUT_BLACK_OIL_MODULE_HPP
|
||||
|
||||
#include <dune/common/fvector.hh>
|
||||
|
||||
@ -71,7 +71,7 @@ namespace Opm::Properties
|
||||
// create new type tag for the Ecl-output
|
||||
namespace TTag
|
||||
{
|
||||
struct EclOutputBlackOil {
|
||||
struct OutputBlackOil {
|
||||
};
|
||||
} // namespace TTag
|
||||
|
||||
@ -81,7 +81,7 @@ struct ForceDisableFluidInPlaceOutput {
|
||||
};
|
||||
|
||||
template <class TypeTag>
|
||||
struct ForceDisableFluidInPlaceOutput<TypeTag, TTag::EclOutputBlackOil> {
|
||||
struct ForceDisableFluidInPlaceOutput<TypeTag, TTag::OutputBlackOil> {
|
||||
static constexpr bool value = false;
|
||||
};
|
||||
|
||||
@ -92,7 +92,7 @@ struct ForceDisableResvFluidInPlaceOutput {
|
||||
};
|
||||
|
||||
template <class TypeTag>
|
||||
struct ForceDisableResvFluidInPlaceOutput<TypeTag, TTag::EclOutputBlackOil> {
|
||||
struct ForceDisableResvFluidInPlaceOutput<TypeTag, TTag::OutputBlackOil> {
|
||||
static constexpr bool value = false;
|
||||
};
|
||||
|
||||
@ -106,14 +106,14 @@ template <class TypeTag>
|
||||
class EcfvDiscretization;
|
||||
|
||||
/*!
|
||||
* \ingroup EclBlackOilSimulator
|
||||
* \ingroup BlackOilSimulator
|
||||
*
|
||||
* \brief Output module for the results black oil model writing in
|
||||
* ECL binary format.
|
||||
*/
|
||||
template <class TypeTag>
|
||||
class EclOutputBlackOilModule : public GenericOutputBlackoilModule<GetPropType<TypeTag, Properties::FluidSystem>,
|
||||
GetPropType<TypeTag, Properties::Scalar>>
|
||||
class OutputBlackOilModule : public GenericOutputBlackoilModule<GetPropType<TypeTag, Properties::FluidSystem>,
|
||||
GetPropType<TypeTag, Properties::Scalar>>
|
||||
{
|
||||
using Simulator = GetPropType<TypeTag, Properties::Simulator>;
|
||||
using Discretization = GetPropType<TypeTag, Properties::Discretization>;
|
||||
@ -143,8 +143,8 @@ class EclOutputBlackOilModule : public GenericOutputBlackoilModule<GetPropType<T
|
||||
|
||||
public:
|
||||
template <class CollectDataToIORankType>
|
||||
EclOutputBlackOilModule(const Simulator& simulator,
|
||||
const CollectDataToIORankType& collectToIORank)
|
||||
OutputBlackOilModule(const Simulator& simulator,
|
||||
const CollectDataToIORankType& collectToIORank)
|
||||
: BaseType(simulator.vanguard().eclState(),
|
||||
simulator.vanguard().schedule(),
|
||||
simulator.vanguard().summaryConfig(),
|
||||
@ -1687,4 +1687,4 @@ private:
|
||||
|
||||
} // namespace Opm
|
||||
|
||||
#endif
|
||||
#endif // OPM_OUTPUT_BLACK_OIL_MODULE_HPP
|
Loading…
Reference in New Issue
Block a user