Added BHPLimit as well property.
This commit is contained in:
@@ -33,6 +33,7 @@ namespace Opm {
|
||||
m_waterRate(new DynamicState<double>(timeMap, 0.0)),
|
||||
m_surfaceInjectionRate(new DynamicState<double>(timeMap, 0.0)),
|
||||
m_reservoirInjectionRate(new DynamicState<double>(timeMap, 0.0)),
|
||||
m_BHPLimit(new DynamicState<double>(timeMap , 0.0)),
|
||||
m_inPredictionMode(new DynamicState<bool>(timeMap, true)),
|
||||
m_isProducer(new DynamicState<bool>(timeMap, true)) ,
|
||||
m_completions( new DynamicState<CompletionSetConstPtr>( timeMap , CompletionSetConstPtr( new CompletionSet()) )),
|
||||
@@ -58,6 +59,15 @@ namespace Opm {
|
||||
}
|
||||
|
||||
|
||||
double Well::getBHPLimit(size_t timeStep) const {
|
||||
return m_BHPLimit->get(timeStep);
|
||||
}
|
||||
|
||||
void Well::setBHPLimit(size_t timeStep, double BHPLimit) {
|
||||
m_BHPLimit->add(timeStep, BHPLimit);
|
||||
}
|
||||
|
||||
|
||||
double Well::getOilRate(size_t timeStep) const {
|
||||
return m_oilRate->get(timeStep);
|
||||
}
|
||||
|
||||
@@ -50,6 +50,9 @@ namespace Opm {
|
||||
void setSurfaceInjectionRate(size_t timeStep, double injectionRate);
|
||||
double getReservoirInjectionRate(size_t timeStep) const;
|
||||
void setReservoirInjectionRate(size_t timeStep, double injectionRate);
|
||||
double getBHPLimit(size_t timeStep) const;
|
||||
void setBHPLimit(size_t timeStep, double BHPLimit);
|
||||
|
||||
|
||||
int getHeadI() const;
|
||||
int getHeadJ() const;
|
||||
@@ -74,6 +77,7 @@ namespace Opm {
|
||||
std::shared_ptr<DynamicState<double> > m_waterRate;
|
||||
std::shared_ptr<DynamicState<double> > m_surfaceInjectionRate;
|
||||
std::shared_ptr<DynamicState<double> > m_reservoirInjectionRate;
|
||||
std::shared_ptr<DynamicState<double> > m_BHPLimit;
|
||||
|
||||
std::shared_ptr<DynamicState<bool> > m_inPredictionMode;
|
||||
std::shared_ptr<DynamicState<bool> > m_isProducer;
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#include <boost/test/unit_test.hpp>
|
||||
#include <boost/date_time/posix_time/posix_time.hpp>
|
||||
|
||||
|
||||
#include <opm/parser/eclipse/Units/ConversionFactors.hpp>
|
||||
#include <opm/parser/eclipse/Deck/DeckRecord.hpp>
|
||||
#include <opm/parser/eclipse/Deck/DeckStringItem.hpp>
|
||||
|
||||
@@ -240,3 +240,13 @@ BOOST_AUTO_TEST_CASE(addWELSPECS_setData_dataSet) {
|
||||
BOOST_CHECK_EQUAL(42, well.getHeadJ());
|
||||
BOOST_CHECK_EQUAL(2334.32, well.getRefDepth());
|
||||
}
|
||||
|
||||
|
||||
BOOST_AUTO_TEST_CASE(XHPLimitDefault) {
|
||||
Opm::TimeMapPtr timeMap = createXDaysTimeMap(10);
|
||||
Opm::Well well("WELL1", 1, 2, 2334.32, timeMap, 0);
|
||||
|
||||
well.setBHPLimit( 1 , 100 );
|
||||
BOOST_CHECK_EQUAL( 100 , well.getBHPLimit( 5 ));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user