|
typedef WellInterface< TypeTag > | Base |
|
typedef Dune::FieldVector< Scalar, numWellEq > | VectorBlockWellType |
|
typedef Dune::BlockVector< VectorBlockWellType > | BVectorWell |
|
typedef Dune::FieldMatrix< Scalar, numWellEq, numWellEq > | DiagMatrixBlockWellType |
|
typedef Dune::BCRSMatrix< DiagMatrixBlockWellType > | DiagMatWell |
|
typedef Dune::FieldMatrix< Scalar, numWellEq, numEq > | OffDiagMatrixBlockWellType |
|
typedef Dune::BCRSMatrix< OffDiagMatrixBlockWellType > | OffDiagMatWell |
|
typedef DenseAd::Evaluation< double, numEq+numWellEq > | EvalWell |
|
using | WellState = WellStateFullyImplicitBlackoil |
|
typedef BlackoilModelParameters | ModelParameters |
|
typedef double | Scalar |
|
typedef Dune::BCRSMatrix< MatrixBlockType > | Mat |
|
typedef Dune::BlockVector< VectorBlockType > | BVector |
|
typedef DenseAd::Evaluation< double, numEq > | Eval |
|
using | WellState = WellStateFullyImplicitBlackoil |
|
typedef BlackoilModelParameters | ModelParameters |
|
typedef double | Scalar |
|
typedef Dune::FieldVector< Scalar, numEq > | VectorBlockType |
|
typedef Dune::FieldMatrix< Scalar, numEq, numEq > | MatrixBlockType |
|
typedef Dune::BCRSMatrix< MatrixBlockType > | Mat |
|
typedef Dune::BlockVector< VectorBlockType > | BVector |
|
typedef DenseAd::Evaluation< double, numEq > | Eval |
|
typedef Ewoms::BlackOilPolymerModule< TypeTag > | PolymerModule |
|
|
| MultisegmentWell (const Well *well, const int time_step, const Wells *wells, const ModelParameters ¶m) |
|
virtual void | init (const PhaseUsage *phase_usage_arg, const std::vector< bool > *active_arg, const std::vector< double > &depth_arg, const double gravity_arg, const int num_cells) |
|
virtual void | initPrimaryVariablesEvaluation () const |
|
virtual void | assembleWellEq (Simulator &ebosSimulator, const double dt, WellState &well_state, bool only_wells) |
|
virtual void | updateWellStateWithTarget (const int current, WellState &well_state) const |
| updating the well state based the control mode specified with current
|
|
virtual ConvergenceReport | getWellConvergence (const std::vector< double > &B_avg) const |
| check whether the well equations get converged for this well
|
|
virtual void | apply (const BVector &x, BVector &Ax) const |
| Ax = Ax - C D^-1 B x.
|
|
virtual void | apply (BVector &r) const |
| r = r - C D^-1 Rw
|
|
virtual void | recoverWellSolutionAndUpdateWellState (const BVector &x, WellState &well_state) const |
| using the solution x to recover the solution xw for wells and applying xw to update Well State
|
|
virtual void | computeWellPotentials (const Simulator &ebosSimulator, const WellState &well_state, std::vector< double > &well_potentials) |
| computing the well potentials for group control
|
|
virtual void | updatePrimaryVariables (const WellState &well_state) const |
|
virtual void | solveEqAndUpdateWellState (WellState &well_state) |
|
virtual void | calculateExplicitQuantities (const Simulator &ebosSimulator, const WellState &well_state) |
|
int | numberOfSegments () const |
| number of segments for this well int number_of_segments_;
|
|
int | numberOfPerforations () const |
|
typedef | GET_PROP_TYPE (TypeTag, Grid) Grid |
|
typedef | GET_PROP_TYPE (TypeTag, Simulator) Simulator |
|
typedef | GET_PROP_TYPE (TypeTag, FluidSystem) FluidSystem |
|
typedef | GET_PROP_TYPE (TypeTag, Indices) BlackoilIndices |
|
typedef | GET_PROP_TYPE (TypeTag, IntensiveQuantities) IntensiveQuantities |
|
typedef | GET_PROP_TYPE (TypeTag, MaterialLaw) MaterialLaw |
|
| WellInterface (const Well *well, const int time_step, const Wells *wells, const ModelParameters ¶m) |
| Constructor.
|
|
virtual | ~WellInterface () |
| Virutal destructor.
|
|
const std::string & | name () const |
| Well name.
|
|
const std::vector< int > & | cells () |
| Well cells.
|
|
WellType | wellType () const |
| Well type, INJECTOR or PRODUCER.
|
|
WellControls * | wellControls () const |
| Well controls.
|
|
void | setVFPProperties (const VFPProperties *vfp_properties_arg) |
|
void | updateListEconLimited (const WellState &well_state, DynamicListEconLimited &list_econ_limited) const |
|
void | setWellEfficiencyFactor (const double efficiency_factor) |
|
void | computeRepRadiusPerfLength (const Grid &grid, const std::map< int, int > &cartesian_to_compressed) |
|
void | updateWellControl (WellState &xw, wellhelpers::WellSwitchingLogger &logger) const |
|
|
WellSegment::CompPressureDropEnum | compPressureDrop () const |
|
WellSegment::MultiPhaseModelEnum | multiphaseModel () const |
|
const SegmentSet & | segmentSet () const |
|
int | segmentNumberToIndex (const int segment_number) const |
|
void | initMatrixAndVectors (const int num_cells) const |
|
void | recoverSolutionWell (const BVector &x, BVectorWell &xw) const |
|
void | updateWellState (const BVectorWell &dwells, const bool inner_iteration, WellState &well_state) const |
|
void | initSegmentRatesWithWellRates (WellState &well_state) const |
|
void | computeInitialComposition () |
|
void | computePerfCellPressDiffs (const Simulator &ebosSimulator) |
|
EvalWell | volumeFraction (const int seg, const int comp_idx) const |
|
EvalWell | volumeFractionScaled (const int seg, const int comp_idx) const |
|
EvalWell | surfaceVolumeFraction (const int seg, const int comp_idx) const |
|
void | computePerfRate (const IntensiveQuantities &int_quants, const std::vector< EvalWell > &mob_perfcells, const int seg, const int perf, const EvalWell &segment_pressure, const bool &allow_cf, std::vector< EvalWell > &cq_s) const |
|
EvalWell | extendEval (const Eval &in) const |
|
void | computeSegmentFluidProperties (const Simulator &ebosSimulator) |
|
EvalWell | getSegmentPressure (const int seg) const |
|
EvalWell | getSegmentRate (const int seg, const int comp_idx) const |
|
EvalWell | getSegmentGTotal (const int seg) const |
|
void | getMobility (const Simulator &ebosSimulator, const int perf, std::vector< EvalWell > &mob) const |
|
void | assembleControlEq () const |
|
void | assemblePressureEq (const int seg) const |
|
EvalWell | getHydroPressureLoss (const int seg) const |
|
EvalWell | getFrictionPressureLoss (const int seg) const |
|
void | handleAccelerationPressureLoss (const int seg) const |
|
void | processFractions (const int seg) const |
|
void | updateWellStateFromPrimaryVariables (WellState &well_state) const |
|
double | scalingFactor (const int comp_idx) const |
|
bool | frictionalPressureLossConsidered () const |
|
bool | accelerationalPressureLossConsidered () const |
|
void | iterateWellEquations (Simulator &ebosSimulator, const double dt, WellState &well_state) |
|
void | assembleWellEqWithoutIteration (Simulator &ebosSimulator, const double dt, WellState &well_state, bool only_wells) |
|
const std::vector< bool > & | active () const |
|
const PhaseUsage & | phaseUsage () const |
|
const std::string & | name () const |
| Well name.
|
|
int | numComponents () const |
|
int | flowPhaseToEbosPhaseIdx (const int phaseIdx) const |
|
int | flowPhaseToEbosCompIdx (const int phaseIdx) const |
|
bool | getAllowCrossFlow () const |
|
bool | getAllowCrossFlow () const |
|
const std::vector< bool > & | active () const |
|
const PhaseUsage & | phaseUsage () const |
|
int | flowPhaseToEbosCompIdx (const int phaseIdx) const |
|
int | flowPhaseToEbosPhaseIdx (const int phaseIdx) const |
|
int | numComponents () const |
|
double | wsolvent () const |
|
double | wpolymer () const |
|
bool | checkRateEconLimits (const WellEconProductionLimits &econ_production_limits, const WellState &well_state) const |
|
bool | wellHasTHPConstraints () const |
|
const std::vector< double > & | compFrac () const |
|
double | mostStrictBhpFromBhpLimits () const |
|
RatioCheckTuple | checkMaxWaterCutLimit (const WellEconProductionLimits &econ_production_limits, const WellState &well_state) const |
|
RatioCheckTuple | checkRatioEconLimits (const WellEconProductionLimits &econ_production_limits, const WellState &well_state) const |
|