rename "top hole pressure" to "tubing head pressure"

"BHP" stands for "bottom hole pressure" so it sounded logical that
"THP" is an acronym for "top hole pressure". It isn't but the quantity
in question is still the pressure which is seen at the top of the
well's bore hole...
This commit is contained in:
Andreas Lauser 2014-12-15 18:09:29 +01:00
parent a508def86e
commit c1a7dd53f0
2 changed files with 28 additions and 29 deletions

View File

@ -204,7 +204,7 @@ class EclPeacemanWell : public BaseAuxiliaryModule<TypeTag>
public:
enum ControlMode {
BottomHolePressure,
TopHolePressure,
TubingHeadPressure,
VolumetricSurfaceRate,
VolumetricReservoirRate
};
@ -444,22 +444,22 @@ public:
*
* // set the minimum pressure at the bottom of the well (Pa,
* // optional, if not specified, the well is assumes it estimates
* // the bottom hole pressure based on the top hole pressure
* // the bottom hole pressure based on the tubing head pressure
* // assuming hydrostatic conditions.)
* setMinimumBottomHolePressure(somePressure);
*
* // set the pressure at the top of the well (Pa,
* // optional, if not specified, the top hole pressure is
* // optional, if not specified, the tubing head pressure is
* // assumed to be 1 bar)
* setTopHolePressure(somePressure);
* setTubingHeadPressure(somePressure);
*
* // set the control mode of the well [m].
* // optional, if not specified, it is assumed to be "BottomHolePressure"
* setControlMode(Well::TopHolePressure);
* setControlMode(Well::TubingHeadPressure);
*
* // set the top hole pressure of the well [Pa]
* // only require if the control mode is "TopHolePressure"
* setTopHolePressure(1e5);
* // set the tubing head pressure of the well [Pa]
* // only require if the control mode is "TubingHeadPressure"
* setTubingHeadPressure(1e5);
*/
void beginSpec()
{
@ -470,7 +470,7 @@ public:
// By default, take the bottom hole pressure as a given
controlMode_ = ControlMode::BottomHolePressure;
// use one bar for the default bottom and top hole
// use one bar for the default bottom hole and tubing head
// pressures. For the bottom hole pressure, this is probably
// off by at least one magnitude...
bhpLimit_ = 1e5;
@ -728,23 +728,23 @@ public:
{ return actualBottomHolePressure_; }
/*!
* \brief Set the top hole pressure [Pa] of the well.
* \brief Set the tubing head pressure [Pa] of the well.
*/
void setTargetTopHolePressure(Scalar val)
void setTargetTubingHeadPressure(Scalar val)
{ thpLimit_ = val; }
/*!
* \brief Return the maximum/minimum top hole pressure [Pa] of the well.
* \brief Return the maximum/minimum tubing head pressure [Pa] of the well.
*
* For injectors, this is the maximum, for producers it's the minimum.
*/
Scalar targetTopHolePressure() const
Scalar targetTubingHeadPressure() const
{ return thpLimit_; }
/*!
* \brief Return the maximum/minimum top hole pressure [Pa] of the well.
* \brief Return the maximum/minimum tubing head pressure [Pa] of the well.
*/
Scalar topHolePressure() const
Scalar tubingHeadPressure() const
{
// warning: this is a bit hacky...
Scalar rho = 650; // kg/m^3
@ -854,7 +854,7 @@ public:
void beginTimeStep()
{
// calculate the bottom hole pressure to be actually used
if (controlMode_ == ControlMode::TopHolePressure) {
if (controlMode_ == ControlMode::TubingHeadPressure) {
// assume a density of 650 kg/m^3 for the bottom hole pressure
// calculation
Scalar rho = 650.0;
@ -863,7 +863,7 @@ public:
else if (controlMode_ == ControlMode::BottomHolePressure)
targetBottomHolePressure_ = bhpLimit_;
else
// TODO: also take the top hole pressure limit into account...
// TODO: also take the tubing head pressure limit into account...
targetBottomHolePressure_ = bhpLimit_;
// make it very likely that we screw up if we control for {surface,reservoir}
@ -878,7 +878,7 @@ public:
* \brief Informs the well that an iteration has just begun.
*
* The beginIteration*() methods, the well calculates the bottom
* and top hole pressures, the actual unconstraint production and
* and tubing head pressures, the actual unconstraint production and
* injection rates, etc. The callback is split into three parts as
* this arrangement avoids iterating over the whole grid and to
* re-calculate the volume variables for each well.
@ -1469,7 +1469,7 @@ protected:
// the sum of the total volumes of all the degrees of freedoms that interact with the well
Scalar wellTotalVolume_;
// The assumed bottom and top hole pressures as specified by the user
// The assumed bottom hole and tubing head pressures as specified by the user
Scalar bhpLimit_;
Scalar thpLimit_;
@ -1482,7 +1482,7 @@ protected:
WellType wellType_;
// The bottom hole pressure to be targeted by the well model. This may be computed
// from the top hole pressure (if the control mode is TopHolePressure), or it may be
// from the tubing head pressure (if the control mode is TubingHeadPressure), or it may be
// just the user-specified bottom hole pressure if the control mode is
// BottomHolePressure.
Scalar targetBottomHolePressure_;

View File

@ -181,7 +181,7 @@ public:
break;
case Opm::WellInjector::THP:
well->setControlMode(Well::ControlMode::TopHolePressure);
well->setControlMode(Well::ControlMode::TubingHeadPressure);
break;
case Opm::WellInjector::GRUP:
@ -216,8 +216,8 @@ public:
well->setTargetBottomHolePressure(injectProperties.BHPLimit);
// TODO
well->setTargetTopHolePressure(1e100);
//well->setTargetTopHolePressure(injectProperties.THPLimit);
well->setTargetTubingHeadPressure(1e100);
//well->setTargetTubingHeadPressure(injectProperties.THPLimit);
}
if (deckWell->isProducer(episodeIdx)) {
@ -266,7 +266,7 @@ public:
break;
case Opm::WellProducer::THP:
well->setControlMode(Well::ControlMode::TopHolePressure);
well->setControlMode(Well::ControlMode::TubingHeadPressure);
break;
case Opm::WellProducer::GRUP:
@ -281,8 +281,8 @@ public:
well->setTargetBottomHolePressure(producerProperties.BHPLimit);
// TODO
well->setTargetTopHolePressure(-1e100);
//well->setTargetTopHolePressure(producerProperties.THPLimit);
well->setTargetTubingHeadPressure(-1e100);
//well->setTargetTubingHeadPressure(producerProperties.THPLimit);
}
}
}
@ -354,9 +354,8 @@ public:
/*!
* \brief Informs the well that an iteration has just begun.
*
* In this method, the well calculates the bottom and top hole
* pressures, the actual unconstraint production and injection
* rates, etc.
* In this method, the well calculates the bottom hole and tubing head pressures, the
* actual unconstraint production and injection rates, etc.
*/
void beginIteration()
{