mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
Merge pull request #4386 from akva2/welltestconfig_hpp_include
add missing WellTestConfig.hpp includes
This commit is contained in:
commit
00376d39e0
@ -53,6 +53,7 @@
|
|||||||
#include <opm/input/eclipse/Schedule/Well/WellFoamProperties.hpp>
|
#include <opm/input/eclipse/Schedule/Well/WellFoamProperties.hpp>
|
||||||
#include <opm/input/eclipse/Schedule/Well/WellMICPProperties.hpp>
|
#include <opm/input/eclipse/Schedule/Well/WellMICPProperties.hpp>
|
||||||
#include <opm/input/eclipse/Schedule/Well/WellPolymerProperties.hpp>
|
#include <opm/input/eclipse/Schedule/Well/WellPolymerProperties.hpp>
|
||||||
|
#include <opm/input/eclipse/Schedule/Well/WellTestConfig.hpp>
|
||||||
#include <opm/input/eclipse/Schedule/Well/WellTestState.hpp>
|
#include <opm/input/eclipse/Schedule/Well/WellTestState.hpp>
|
||||||
#include <opm/input/eclipse/Schedule/Well/WellTracerProperties.hpp>
|
#include <opm/input/eclipse/Schedule/Well/WellTracerProperties.hpp>
|
||||||
#include <opm/input/eclipse/Schedule/Well/WVFPEXP.hpp>
|
#include <opm/input/eclipse/Schedule/Well/WVFPEXP.hpp>
|
||||||
|
@ -38,6 +38,7 @@
|
|||||||
#include <opm/input/eclipse/Schedule/Network/ExtNetwork.hpp>
|
#include <opm/input/eclipse/Schedule/Network/ExtNetwork.hpp>
|
||||||
#include <opm/input/eclipse/Schedule/Schedule.hpp>
|
#include <opm/input/eclipse/Schedule/Schedule.hpp>
|
||||||
#include <opm/input/eclipse/Schedule/Well/WellConnections.hpp>
|
#include <opm/input/eclipse/Schedule/Well/WellConnections.hpp>
|
||||||
|
#include <opm/input/eclipse/Schedule/Well/WellTestConfig.hpp>
|
||||||
#include <opm/input/eclipse/EclipseState/SummaryConfig/SummaryConfig.hpp>
|
#include <opm/input/eclipse/EclipseState/SummaryConfig/SummaryConfig.hpp>
|
||||||
|
|
||||||
#include <opm/simulators/utils/DeferredLogger.hpp>
|
#include <opm/simulators/utils/DeferredLogger.hpp>
|
||||||
@ -1259,4 +1260,15 @@ getCellsForConnections(const Well& well) const
|
|||||||
return wellCells;
|
return wellCells;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::vector<std::string>
|
||||||
|
BlackoilWellModelGeneric::getWellsForTesting(const int timeStepIdx,
|
||||||
|
const double simulationTime)
|
||||||
|
{
|
||||||
|
const auto& wtest_config = schedule()[timeStepIdx].wtest_config();
|
||||||
|
if (!wtest_config.empty()) { // there is a WTEST request
|
||||||
|
return wellTestState().test_wells(wtest_config, simulationTime);
|
||||||
|
} else
|
||||||
|
return {};
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -345,6 +345,9 @@ protected:
|
|||||||
|
|
||||||
std::vector<int> getCellsForConnections(const Well& well) const;
|
std::vector<int> getCellsForConnections(const Well& well) const;
|
||||||
|
|
||||||
|
std::vector<std::string> getWellsForTesting(const int timeStepIdx,
|
||||||
|
const double simulationTime);
|
||||||
|
|
||||||
Schedule& schedule_;
|
Schedule& schedule_;
|
||||||
const SummaryState& summaryState_;
|
const SummaryState& summaryState_;
|
||||||
const EclipseState& eclState_;
|
const EclipseState& eclState_;
|
||||||
|
@ -379,30 +379,24 @@ namespace Opm {
|
|||||||
const double simulationTime,
|
const double simulationTime,
|
||||||
DeferredLogger& deferred_logger)
|
DeferredLogger& deferred_logger)
|
||||||
{
|
{
|
||||||
const auto& wtest_config = schedule()[timeStepIdx].wtest_config();
|
for (const std::string& well_name : this->getWellsForTesting(timeStepIdx, simulationTime)) {
|
||||||
if (!wtest_config.empty()) { // there is a WTEST request
|
const Well& wellEcl = schedule().getWell(well_name, timeStepIdx);
|
||||||
const std::vector<std::string> wellsForTesting = wellTestState()
|
if (wellEcl.getStatus() == Well::Status::SHUT)
|
||||||
.test_wells(wtest_config, simulationTime);
|
continue;
|
||||||
for (const std::string& well_name : wellsForTesting) {
|
|
||||||
|
|
||||||
const Well& wellEcl = schedule().getWell(well_name, timeStepIdx);
|
WellInterfacePtr well = createWellForWellTest(well_name, timeStepIdx, deferred_logger);
|
||||||
if (wellEcl.getStatus() == Well::Status::SHUT)
|
// some preparation before the well can be used
|
||||||
continue;
|
well->init(&phase_usage_, depth_, gravity_, local_num_cells_, B_avg_, true);
|
||||||
|
|
||||||
WellInterfacePtr well = createWellForWellTest(well_name, timeStepIdx, deferred_logger);
|
double well_efficiency_factor = wellEcl.getEfficiencyFactor();
|
||||||
// some preparation before the well can be used
|
WellGroupHelpers::accumulateGroupEfficiencyFactor(schedule().getGroup(wellEcl.groupName(), timeStepIdx),
|
||||||
well->init(&phase_usage_, depth_, gravity_, local_num_cells_, B_avg_, true);
|
schedule(), timeStepIdx, well_efficiency_factor);
|
||||||
|
|
||||||
double well_efficiency_factor = wellEcl.getEfficiencyFactor();
|
well->setWellEfficiencyFactor(well_efficiency_factor);
|
||||||
WellGroupHelpers::accumulateGroupEfficiencyFactor(schedule().getGroup(wellEcl.groupName(), timeStepIdx),
|
well->setVFPProperties(vfp_properties_.get());
|
||||||
schedule(), timeStepIdx, well_efficiency_factor);
|
well->setGuideRate(&guideRate_);
|
||||||
|
|
||||||
well->setWellEfficiencyFactor(well_efficiency_factor);
|
well->wellTesting(ebosSimulator_, simulationTime, this->wellState(), this->groupState(), wellTestState(), deferred_logger);
|
||||||
well->setVFPProperties(vfp_properties_.get());
|
|
||||||
well->setGuideRate(&guideRate_);
|
|
||||||
|
|
||||||
well->wellTesting(ebosSimulator_, simulationTime, this->wellState(), this->groupState(), wellTestState(), deferred_logger);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -24,6 +24,7 @@
|
|||||||
|
|
||||||
#include <opm/input/eclipse/Schedule/Well/WellConnections.hpp>
|
#include <opm/input/eclipse/Schedule/Well/WellConnections.hpp>
|
||||||
#include <opm/input/eclipse/Schedule/Well/WellEconProductionLimits.hpp>
|
#include <opm/input/eclipse/Schedule/Well/WellEconProductionLimits.hpp>
|
||||||
|
#include <opm/input/eclipse/Schedule/Well/WellTestConfig.hpp>
|
||||||
#include <opm/input/eclipse/Schedule/Well/WellTestState.hpp>
|
#include <opm/input/eclipse/Schedule/Well/WellTestState.hpp>
|
||||||
|
|
||||||
#include <opm/simulators/utils/DeferredLogger.hpp>
|
#include <opm/simulators/utils/DeferredLogger.hpp>
|
||||||
|
Loading…
Reference in New Issue
Block a user