Removed unused Well::m_injectionControls, moved m_injectorType to WellInjectionProperties.
This commit is contained in:
@@ -301,9 +301,9 @@ namespace Opm {
|
||||
properties.ReservoirInjectionRate = reservoirInjectionRate;
|
||||
properties.BHPLimit = BHPLimit;
|
||||
properties.THPLimit = THPLimit;
|
||||
properties.InjectorType = injectorType;
|
||||
well->setInjectionProperties(currentStep, properties);
|
||||
well->setInjectorControlMode(currentStep , controlMode );
|
||||
well->setInjectorType( currentStep , injectorType );
|
||||
well->setInPredictionMode(currentStep, true);
|
||||
|
||||
if (record->getItem("RATE")->defaultApplied())
|
||||
|
||||
@@ -28,11 +28,11 @@
|
||||
namespace Opm {
|
||||
|
||||
Well::Well(const std::string& name, int headI, int headJ, double refDepth, TimeMapConstPtr timeMap , size_t creationTimeStep)
|
||||
: m_injectorType(new DynamicState<WellInjector::TypeEnum>(timeMap, WellInjector::WATER)),
|
||||
: //m_injectorType(new DynamicState<WellInjector::TypeEnum>(timeMap, WellInjector::WATER)),
|
||||
m_injectorControlMode(new DynamicState<WellInjector::ControlModeEnum>(timeMap, WellInjector::RATE)),
|
||||
m_producerControlMode(new DynamicState<WellProducer::ControlModeEnum>(timeMap, WellProducer::ORAT)),
|
||||
m_status(new DynamicState<WellCommon::StatusEnum>(timeMap, WellCommon::OPEN)),
|
||||
m_injectionControls(new DynamicState<int>(timeMap, 0)),
|
||||
//m_injectionControls(new DynamicState<int>(timeMap, 0)),
|
||||
m_inPredictionMode(new DynamicState<bool>(timeMap, true)),
|
||||
m_isProducer(new DynamicState<bool>(timeMap, true)),
|
||||
m_isAvailableForGroupControl(new DynamicState<bool>(timeMap, true)),
|
||||
@@ -90,13 +90,13 @@ namespace Opm {
|
||||
}
|
||||
|
||||
|
||||
WellInjector::TypeEnum Well::getInjectorType(size_t timeStep) const {
|
||||
return m_injectorType->get(timeStep);
|
||||
}
|
||||
// WellInjector::TypeEnum Well::getInjectorType(size_t timeStep) const {
|
||||
// return m_injectorType->get(timeStep);
|
||||
// }
|
||||
|
||||
void Well::setInjectorType(size_t timeStep, WellInjector::TypeEnum injectorType) {
|
||||
m_injectorType->add(timeStep , injectorType);
|
||||
}
|
||||
// void Well::setInjectorType(size_t timeStep, WellInjector::TypeEnum injectorType) {
|
||||
// m_injectorType->add(timeStep , injectorType);
|
||||
// }
|
||||
|
||||
WellInjector::ControlModeEnum Well::getInjectorControlMode(size_t timeStep) const {
|
||||
return m_injectorControlMode->get(timeStep);
|
||||
|
||||
@@ -60,16 +60,17 @@ namespace Opm {
|
||||
double ReservoirInjectionRate;
|
||||
double BHPLimit;
|
||||
double THPLimit;
|
||||
WellInjector::TypeEnum InjectorType;
|
||||
int InjectionControls;
|
||||
|
||||
WellInjectionProperties()
|
||||
{SurfaceInjectionRate=0.0; ReservoirInjectionRate=0.0;
|
||||
BHPLimit=0.0; THPLimit=0.0; InjectionControls=0;}
|
||||
BHPLimit=0.0; THPLimit=0.0; InjectorType=WellInjector::WATER, InjectionControls=0;}
|
||||
WellInjectionProperties(const WellInjectionProperties& props)
|
||||
{SurfaceInjectionRate=props.SurfaceInjectionRate;
|
||||
ReservoirInjectionRate=props.ReservoirInjectionRate;
|
||||
BHPLimit=props.BHPLimit; THPLimit=props.THPLimit;
|
||||
InjectionControls=props.InjectionControls;}
|
||||
InjectorType=props.InjectorType; InjectionControls=props.InjectionControls;}
|
||||
} WellInjectionProperties;
|
||||
|
||||
class Well {
|
||||
@@ -81,8 +82,8 @@ namespace Opm {
|
||||
const std::string getGroupName(size_t timeStep) const;
|
||||
void setGroupName(size_t timeStep , const std::string& groupName);
|
||||
|
||||
WellInjector::TypeEnum getInjectorType(size_t timeStep) const;
|
||||
void setInjectorType(size_t timeStep, WellInjector::TypeEnum injectorType);
|
||||
// WellInjector::TypeEnum getInjectorType(size_t timeStep) const;
|
||||
// void setInjectorType(size_t timeStep, WellInjector::TypeEnum injectorType);
|
||||
WellInjector::ControlModeEnum getInjectorControlMode(size_t timeStep) const;
|
||||
void setInjectorControlMode(size_t timeStep, WellInjector::ControlModeEnum injectorControlMode);
|
||||
WellProducer::ControlModeEnum getProducerControlMode(size_t timeStep) const;
|
||||
@@ -130,11 +131,10 @@ namespace Opm {
|
||||
size_t m_creationTimeStep;
|
||||
std::string m_name;
|
||||
|
||||
std::shared_ptr<DynamicState<WellInjector::TypeEnum> > m_injectorType;
|
||||
//std::shared_ptr<DynamicState<WellInjector::TypeEnum> > m_injectorType;
|
||||
std::shared_ptr<DynamicState<WellInjector::ControlModeEnum> > m_injectorControlMode;
|
||||
std::shared_ptr<DynamicState<WellProducer::ControlModeEnum> > m_producerControlMode;
|
||||
std::shared_ptr<DynamicState<WellCommon::StatusEnum> > m_status;
|
||||
std::shared_ptr<DynamicState<int> > m_injectionControls;
|
||||
|
||||
std::shared_ptr<DynamicState<bool> > m_inPredictionMode;
|
||||
std::shared_ptr<DynamicState<bool> > m_isProducer;
|
||||
|
||||
@@ -322,8 +322,10 @@ BOOST_AUTO_TEST_CASE(InjectorType) {
|
||||
Opm::TimeMapPtr timeMap = createXDaysTimeMap(10);
|
||||
Opm::Well well("WELL1", 1, 2, 2334.32, timeMap, 0);
|
||||
|
||||
well.setInjectorType( 1 , Opm::WellInjector::WATER );
|
||||
BOOST_CHECK_EQUAL( Opm::WellInjector::WATER , well.getInjectorType( 5 ));
|
||||
Opm::WellInjectionProperties injectionProps(well.getInjectionProperties(1));
|
||||
injectionProps.InjectorType = Opm::WellInjector::WATER;
|
||||
well.setInjectionProperties(1, injectionProps);
|
||||
BOOST_CHECK_EQUAL( Opm::WellInjector::WATER , well.getInjectionProperties(5).InjectorType);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user