|
MultisegmentWell.hpp
Go to the documentation of this file.
74 using FSInfo = std::tuple<Scalar,typename std::decay<decltype(std::declval<decltype(std::declval<const Simulator&>().model().intensiveQuantities(0, 0).fluidState())>().saltConcentration())>::type>;
Definition: ConvergenceReport.hpp:38 Definition: DeferredLogger.hpp:57 Definition: GroupState.hpp:41 Definition: MultisegmentWellEval.hpp:48 MultisegmentWellEquations< Scalar, IndexTraits, numWellEq, Indices::numEq > Equations Definition: MultisegmentWellEval.hpp:57 static constexpr int SPres Definition: MultisegmentWellEval.hpp:54 typename PrimaryVariables::EvalWell EvalWell Definition: MultisegmentWellEval.hpp:66 typename Equations::BVectorWell BVectorWell Definition: MultisegmentWellEval.hpp:61 Definition: MultisegmentWell.hpp:38 std::optional< Scalar > computeBhpAtThpLimitProd(const WellStateType &well_state, const Simulator &ebos_simulator, const WellGroupHelperType &wgHelper, const SummaryState &summary_state, DeferredLogger &deferred_logger) const Definition: MultisegmentWell_impl.hpp:2073 void updateWellState(const Simulator &simulator, const BVectorWell &dwells, WellStateType &well_state, DeferredLogger &deferred_logger, const Scalar relaxation_factor=1.0) Definition: MultisegmentWell_impl.hpp:716 void updateWaterThroughput(const double dt, WellStateType &well_state) const override Definition: MultisegmentWell_impl.hpp:2040 void addWellPressureEquations(PressureMatrix &mat, const BVector &x, const int pressureVarIndex, const bool use_well_weights, const WellStateType &well_state) const override Definition: MultisegmentWell_impl.hpp:888 Scalar connectionDensity(const int globalConnIdx, const int openConnIdx) const override Definition: MultisegmentWell_impl.hpp:853 void addWellContributions(SparseMatrixAdapter &jacobian) const override Definition: MultisegmentWell_impl.hpp:875 bool iterateWellEqWithControl(const Simulator &simulator, const double dt, const Well::InjectionControls &inj_controls, const Well::ProductionControls &prod_controls, const WellGroupHelperType &wgHelper, WellStateType &well_state, DeferredLogger &deferred_logger) override Definition: MultisegmentWell_impl.hpp:1496 void solveEqAndUpdateWellState(const Simulator &simulator, WellStateType &well_state, DeferredLogger &deferred_logger) override Definition: MultisegmentWell_impl.hpp:611 Scalar getRefDensity() const override Definition: MultisegmentWell_impl.hpp:1201 std::optional< Scalar > computeBhpAtThpLimitProdWithAlq(const Simulator &simulator, const WellGroupHelperType &wgHelper, const SummaryState &summary_state, const Scalar alq_value, DeferredLogger &deferred_logger, bool iterate_if_no_solution) const override Definition: MultisegmentWell_impl.hpp:2093 std::vector< Scalar > getPrimaryVars() const override Definition: MultisegmentWell_impl.hpp:2277 bool iterateWellEqWithSwitching(const Simulator &simulator, const double dt, const Well::InjectionControls &inj_controls, const Well::ProductionControls &prod_controls, const WellGroupHelperType &wgHelper, WellStateType &well_state, DeferredLogger &deferred_logger, const bool fixed_control=false, const bool fixed_status=false) override Definition: MultisegmentWell_impl.hpp:1621 void computeWellRatesWithBhpIterations(const Simulator &simulator, const Scalar &bhp, const WellGroupHelperType &wgHelper, std::vector< Scalar > &well_flux, DeferredLogger &deferred_logger) const override Definition: MultisegmentWell_impl.hpp:407 void computeWellPotentials(const Simulator &simulator, const WellStateType &well_state, const WellGroupHelperType &wgHelper, std::vector< Scalar > &well_potentials, DeferredLogger &deferred_logger) override computing the well potentials for group control Definition: MultisegmentWell_impl.hpp:297 std::vector< Scalar > computeCurrentWellRates(const Simulator &simulator, DeferredLogger &deferred_logger) const override Definition: MultisegmentWell_impl.hpp:2233 void apply(const BVector &x, BVector &Ax) const override Ax = Ax - C D^-1 B x. Definition: MultisegmentWell_impl.hpp:230 MultisegmentWell(const Well &well, const ParallelWellInfo< Scalar > &pw_info, const int time_step, const ModelParameters ¶m, const RateConverterType &rate_converter, const int pvtRegionIdx, const int num_conservation_quantities, const int num_phases, const int index_of_well, const std::vector< PerforationData< Scalar > > &perf_data) Definition: MultisegmentWell_impl.hpp:62 void checkOperabilityUnderBHPLimit(const WellStateType &well_state, const Simulator &ebos_simulator, DeferredLogger &deferred_logger) override Definition: MultisegmentWell_impl.hpp:1209 void getMobility(const Simulator &simulator, const int local_perf_index, std::vector< Value > &mob, DeferredLogger &deferred_logger) const Definition: MultisegmentWell_impl.hpp:1161 void computePerfRate(const IntensiveQuantities &int_quants, const std::vector< Value > &mob_perfcells, const std::vector< Scalar > &Tw, const int seg, const int perf, const Value &segment_pressure, const bool &allow_cf, std::vector< Value > &cq_s, Value &perf_press, PerforationRates< Scalar > &perf_rates, DeferredLogger &deferred_logger) const Definition: MultisegmentWell_impl.hpp:1057 void updateIPRImplicit(const Simulator &simulator, WellStateType &well_state, DeferredLogger &deferred_logger) override Definition: MultisegmentWell_impl.hpp:1374 bool openCrossFlowAvoidSingularity(const Simulator &simulator) const Definition: MultisegmentWell_impl.hpp:1978 void computeSegmentFluidProperties(const Simulator &simulator, DeferredLogger &deferred_logger) Definition: MultisegmentWell_impl.hpp:1130 bool computeWellPotentialsImplicit(const Simulator &simulator, const WellGroupHelperType &wgHelper, std::vector< Scalar > &well_potentials, DeferredLogger &deferred_logger) const Definition: MultisegmentWell_impl.hpp:536 int setPrimaryVars(typename std::vector< Scalar >::const_iterator it) override Definition: MultisegmentWell_impl.hpp:2295 void computeWellRatesWithBhp(const Simulator &simulator, const Scalar &bhp, std::vector< Scalar > &well_flux, DeferredLogger &deferred_logger) const override Definition: MultisegmentWell_impl.hpp:360 void scaleSegmentRatesAndPressure(WellStateType &well_state) const override updating the segment pressure and rates based the current bhp and well rates Definition: MultisegmentWell_impl.hpp:173 bool allDrawDownWrongDirection(const Simulator &simulator) const Definition: MultisegmentWell_impl.hpp:1987 int debug_cost_counter_ Definition: MultisegmentWell.hpp:182 ConvergenceReport getWellConvergence(const Simulator &simulator, const WellStateType &well_state, const std::vector< Scalar > &B_avg, DeferredLogger &deferred_logger, const bool relax_tolerance) const override check whether the well equations get converged for this well Definition: MultisegmentWell_impl.hpp:204 void updateProductivityIndex(const Simulator &simulator, const WellProdIndexCalculator< Scalar > &wellPICalc, WellStateType &well_state, DeferredLogger &deferred_logger) const override Definition: MultisegmentWell_impl.hpp:771 std::optional< Scalar > computeBhpAtThpLimitInj(const Simulator &ebos_simulator, const WellGroupHelperType &wgHelper, const SummaryState &summary_state, DeferredLogger &deferred_logger) const Definition: MultisegmentWell_impl.hpp:2150 void computePerfCellPressDiffs(const Simulator &simulator) Definition: MultisegmentWell_impl.hpp:640 void computeWellRatesAtBhpLimit(const Simulator &simulator, const WellGroupHelperType &wgHelper, std::vector< Scalar > &well_flux, DeferredLogger &deferred_logger) const Definition: MultisegmentWell_impl.hpp:343 void recoverWellSolutionAndUpdateWellState(const Simulator &simulator, const BVector &x, WellStateType &well_state, DeferredLogger &deferred_logger) override Definition: MultisegmentWell_impl.hpp:265 std::vector< Scalar > computeWellPotentialWithTHP(const WellStateType &well_state, const Simulator &simulator, const WellGroupHelperType &wgHelper, DeferredLogger &deferred_logger) const Definition: MultisegmentWell_impl.hpp:484 void updateIPR(const Simulator &ebos_simulator, DeferredLogger &deferred_logger) const override Definition: MultisegmentWell_impl.hpp:1275 FSInfo getFirstPerforationFluidStateInfo(const Simulator &simulator) const Definition: MultisegmentWell_impl.hpp:2311 std::tuple< Scalar, typename std::decay< decltype(std::declval< decltype(std::declval< const Simulator & >().model().intensiveQuantities(0, 0).fluidState())>().saltConcentration())>::type > FSInfo Definition: MultisegmentWell.hpp:74 void init(const std::vector< Scalar > &depth_arg, const Scalar gravity_arg, const std::vector< Scalar > &B_avg, const bool changed_to_open_this_step) override Definition: MultisegmentWell_impl.hpp:122 void assembleWellEqWithoutIteration(const Simulator &simulator, const double dt, const Well::InjectionControls &inj_controls, const Well::ProductionControls &prod_controls, WellStateType &well_state, const GroupState< Scalar > &group_state, DeferredLogger &deferred_logger) override Definition: MultisegmentWell_impl.hpp:1797 Scalar maxPerfPress(const Simulator &simulator) const Definition: MultisegmentWell_impl.hpp:2205 void computeInitialSegmentFluids(const Simulator &simulator, DeferredLogger &deferred_logger) Definition: MultisegmentWell_impl.hpp:697 std::vector< std::vector< Scalar > > segment_fluid_initial_ Definition: MultisegmentWell.hpp:180 void checkOperabilityUnderTHPLimit(const Simulator &ebos_simulator, const WellStateType &well_state, const WellGroupHelperType &wgHelper, DeferredLogger &deferred_logger) override Definition: MultisegmentWell_impl.hpp:1443 void updatePrimaryVariables(const Simulator &simulator, const WellStateType &well_state, DeferredLogger &deferred_logger) override Definition: MultisegmentWell_impl.hpp:157 EvalWell getSegmentSurfaceVolume(const Simulator &simulator, const int seg_idx, DeferredLogger &deferred_logger) const Definition: MultisegmentWell_impl.hpp:2051 void calculateExplicitQuantities(const Simulator &simulator, const WellStateType &well_state, DeferredLogger &deferred_logger) override Definition: MultisegmentWell_impl.hpp:755 void updateWellStateWithTarget(const Simulator &simulator, const WellGroupHelperType &wgHelper, WellStateType &well_state, DeferredLogger &deferred_logger) const override updating the well state based the current control mode Definition: MultisegmentWell_impl.hpp:184 Class encapsulating some information about parallel wells. Definition: ParallelWellInfo.hpp:198 Definition: WellGroupHelper.hpp:51 static constexpr int Oil Definition: WellInterfaceFluidSystem.hpp:65 static constexpr int Water Definition: WellInterfaceFluidSystem.hpp:64 static constexpr int Gas Definition: WellInterfaceFluidSystem.hpp:66 int pvtRegionIdx() const Definition: WellInterfaceGeneric.hpp:130 Definition: WellInterface.hpp:77 GetPropType< TypeTag, Properties::Simulator > Simulator Definition: WellInterface.hpp:82 typename WellInterfaceFluidSystem< FluidSystem >::RateConverterType RateConverterType Definition: WellInterface.hpp:105 BlackOilFluidState< Eval, FluidSystem, has_temperature, has_energy, Indices::compositionSwitchIdx >=0, has_watVapor, has_brine, has_saltPrecip, has_disgas_in_water, Indices::numPhases > FluidState Definition: WellInterface.hpp:139 Dune::BCRSMatrix< Opm::MatrixBlock< Scalar, 1, 1 > > PressureMatrix Definition: WellInterface.hpp:98 GetPropType< TypeTag, Properties::IntensiveQuantities > IntensiveQuantities Definition: WellInterface.hpp:87 GetPropType< TypeTag, Properties::Scalar > Scalar Definition: WellInterface.hpp:83 GetPropType< TypeTag, Properties::MaterialLaw > MaterialLaw Definition: WellInterface.hpp:88 typename FluidSystem::IndexTraitsType IndexTraits Definition: WellInterface.hpp:85 Dune::BlockVector< VectorBlockType > BVector Definition: WellInterface.hpp:97 typename Base::ModelParameters ModelParameters Definition: WellInterface.hpp:111 GetPropType< TypeTag, Properties::FluidSystem > FluidSystem Definition: WellInterface.hpp:84 WellGroupHelper< Scalar, IndexTraits > WellGroupHelperType Definition: WellInterface.hpp:102 WellState< Scalar, IndexTraits > WellStateType Definition: WellInterface.hpp:100 GetPropType< TypeTag, Properties::Indices > Indices Definition: WellInterface.hpp:86 GetPropType< TypeTag, Properties::SparseMatrixAdapter > SparseMatrixAdapter Definition: WellInterface.hpp:89 Definition: WellProdIndexCalculator.hpp:37 Definition: WellState.hpp:66 Defines the common properties required by the porous medium multi-phase models. Definition: blackoilbioeffectsmodules.hh:43 typename Properties::Detail::GetPropImpl< TypeTag, Property >::type::type GetPropType get the type alias defined in the property (equivalent to old macro GET_PROP_TYPE(.... Definition: propertysystem.hh:233 Static data associated with a well perforation. Definition: PerforationData.hpp:30 Definition: PerforationData.hpp:41 |