Added well->Injectortype
This commit is contained in:
@@ -35,6 +35,7 @@ namespace Opm {
|
||||
m_reservoirInjectionRate(new DynamicState<double>(timeMap, 0.0)),
|
||||
m_BHPLimit(new DynamicState<double>(timeMap , 0.0)),
|
||||
m_THPLimit(new DynamicState<double>(timeMap , 0.0)),
|
||||
m_injectorType(new DynamicState<InjectorType::InjectorEnum>(timeMap, InjectorType::WATER)),
|
||||
m_inPredictionMode(new DynamicState<bool>(timeMap, true)),
|
||||
m_isProducer(new DynamicState<bool>(timeMap, true)) ,
|
||||
m_completions( new DynamicState<CompletionSetConstPtr>( timeMap , CompletionSetConstPtr( new CompletionSet()) )),
|
||||
@@ -76,6 +77,14 @@ namespace Opm {
|
||||
m_THPLimit->add(timeStep, THPLimit);
|
||||
}
|
||||
|
||||
InjectorType::InjectorEnum Well::getInjectorType(size_t timeStep) const {
|
||||
return m_injectorType->get(timeStep);
|
||||
}
|
||||
|
||||
void Well::setInjectorType(size_t timeStep, InjectorType::InjectorEnum injectorType) {
|
||||
m_injectorType->add(timeStep , injectorType);
|
||||
}
|
||||
|
||||
|
||||
double Well::getOilRate(size_t timeStep) const {
|
||||
return m_oilRate->get(timeStep);
|
||||
|
||||
@@ -54,6 +54,8 @@ namespace Opm {
|
||||
void setBHPLimit(size_t timeStep, double BHPLimit);
|
||||
double getTHPLimit(size_t timeStep) const;
|
||||
void setTHPLimit(size_t timeStep, double THPLimit);
|
||||
InjectorType::InjectorEnum getInjectorType(size_t timeStep) const;
|
||||
void setInjectorType(size_t timeStep, InjectorType::InjectorEnum injectorType);
|
||||
|
||||
|
||||
int getHeadI() const;
|
||||
@@ -81,6 +83,7 @@ namespace Opm {
|
||||
std::shared_ptr<DynamicState<double> > m_reservoirInjectionRate;
|
||||
std::shared_ptr<DynamicState<double> > m_BHPLimit;
|
||||
std::shared_ptr<DynamicState<double> > m_THPLimit;
|
||||
std::shared_ptr<DynamicState<InjectorType::InjectorEnum> > m_injectorType;
|
||||
|
||||
std::shared_ptr<DynamicState<bool> > m_inPredictionMode;
|
||||
std::shared_ptr<DynamicState<bool> > m_isProducer;
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
#include <opm/parser/eclipse/Deck/DeckRecord.hpp>
|
||||
#include <opm/parser/eclipse/Deck/DeckStringItem.hpp>
|
||||
|
||||
#include <opm/parser/eclipse/EclipseState/Schedule/ScheduleEnums.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Schedule/Well.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Schedule/TimeMap.hpp>
|
||||
|
||||
@@ -253,3 +254,13 @@ BOOST_AUTO_TEST_CASE(XHPLimitDefault) {
|
||||
BOOST_CHECK_EQUAL( 200 , well.getTHPLimit( 5 ));
|
||||
}
|
||||
|
||||
|
||||
|
||||
BOOST_AUTO_TEST_CASE(InjectorType) {
|
||||
Opm::TimeMapPtr timeMap = createXDaysTimeMap(10);
|
||||
Opm::Well well("WELL1", 1, 2, 2334.32, timeMap, 0);
|
||||
|
||||
well.setInjectorType( 1 , Opm::InjectorType::WATER );
|
||||
BOOST_CHECK_EQUAL( Opm::InjectorType::WATER , well.getInjectorType( 5 ));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user