|
StandardWell.hpp
Go to the documentation of this file.
63 // dealing with derivatives. It can be beneficial to make functions can work with either AD or scalar value.
64 // And also, it can also be beneficial to make these functions hanle different types of AD variables.
Contains classes extending the black-oil model. \detail This file holds dummy definitions,... Definition: blackoilfoammodules.hh:57 Definition: ConvergenceReport.hpp:38 Definition: DeferredLogger.hpp:57 Definition: GroupStateHelper.hpp:56 Class encapsulating some information about parallel wells. Definition: ParallelWellInfo.hpp:217 Definition: StandardWellEval.hpp:48 DenseAd::Evaluation< Scalar, Indices::numDerivatives > Eval Definition: StandardWellEval.hpp:67 static constexpr int numWellDofs Definition: StandardWellEval.hpp:80 void addBCDMatrix(std::vector< BMatrix > &b_matrices, std::vector< CMatrix > &c_matrices, std::vector< DMatrix > &d_matrices, Opm::SparseTable< int > &wcells) const typename StandardWellEquations< Scalar, IndexTraits, Indices::numEq >::BVectorWell BVectorWell Definition: StandardWellEval.hpp:68 typename PrimaryVariables::EvalWell EvalWell Definition: StandardWellEval.hpp:66 static constexpr int WQTotal Definition: StandardWellEval.hpp:57 Definition: StandardWell.hpp:55 void getScaledWellFractions(std::vector< Scalar > &scaled_fractions, DeferredLogger &deferred_logger) const override Definition: StandardWell_impl.hpp:2670 EvalWell wpolymermw(const Scalar throughput, const EvalWell &water_velocity, DeferredLogger &deferred_logger) const Definition: StandardWell_impl.hpp:2091 std::vector< Scalar > computeWellPotentialWithTHP(const Simulator &ebosSimulator, const GroupStateHelperType &groupStateHelper, const WellStateType &well_state) const Definition: StandardWell_impl.hpp:1634 void updateWellStateFromPrimaryVariables(WellStateType &well_state, const SummaryState &summary_state, DeferredLogger &deferred_logger) const Definition: StandardWell_impl.hpp:817 static constexpr int numStaticWellEq Definition: StandardWell.hpp:97 virtual ConvergenceReport getWellConvergence(const GroupStateHelperType &groupStateHelper, const std::vector< Scalar > &B_avg, const bool relax_tolerance) const override check whether the well equations get converged for this well Definition: StandardWell_impl.hpp:1233 WellConnectionProps computePropertiesForWellConnectionPressures(const Simulator &simulator, const WellStateType &well_state) const Definition: StandardWell_impl.hpp:1182 std::optional< Scalar > computeBhpAtThpLimitProdWithAlq(const Simulator &ebos_simulator, const GroupStateHelperType &groupStateHelper, const SummaryState &summary_state, const Scalar alq_value, bool iterate_if_no_solution) const override Definition: StandardWell_impl.hpp:2297 typename StdWellEval::BVectorWell BVectorWell Definition: StandardWell.hpp:117 void addWellContributions(SparseMatrixAdapter &mat) const override Definition: StandardWell_impl.hpp:1988 std::vector< Scalar > getPrimaryVars() const override Definition: StandardWell_impl.hpp:2640 void updateWellState(const Simulator &simulator, const BVectorWell &dwells, const GroupStateHelperType &groupStateHelper, WellStateType &well_state) Definition: StandardWell_impl.hpp:765 void updatePrimaryVariables(const GroupStateHelperType &groupStateHelper) override Definition: StandardWell_impl.hpp:1888 void solveEqAndUpdateWellState(const Simulator &simulator, const GroupStateHelperType &groupStateHelper, WellStateType &well_state) override Definition: StandardWell_impl.hpp:1425 void computeWellConnectionDensitesPressures(const Simulator &simulator, const GroupStateHelperType &groupStateHelper, const WellConnectionProps &props) Definition: StandardWell_impl.hpp:1351 BlackOilPolymerModule< TypeTag, has_polymer > PolymerModule Definition: StandardWell.hpp:88 std::optional< Scalar > computeBhpAtThpLimitProd(const WellStateType &well_state, const Simulator &simulator, const GroupStateHelperType &groupStateHelper, const SummaryState &summary_state) const Definition: StandardWell_impl.hpp:2282 void addWellPressureEquations(PressureMatrix &mat, const BVector &x, const int pressureVarIndex, const bool use_well_weights, const WellStateType &well_state) const override Definition: StandardWell_impl.hpp:1996 void updateWaterMobilityWithPolymer(const Simulator &simulator, const int perf, std::vector< EvalWell > &mob_water, DeferredLogger &deferred_logger) const Definition: StandardWell_impl.hpp:1922 bool iterateWellEqWithControl(const Simulator &simulator, const double dt, const Well::InjectionControls &inj_controls, const Well::ProductionControls &prod_controls, const GroupStateHelperType &groupStateHelper, WellStateType &well_state) override Definition: StandardWell_impl.hpp:2404 std::vector< Scalar > computeCurrentWellRates(const Simulator &ebosSimulator, DeferredLogger &deferred_logger) const override Definition: StandardWell_impl.hpp:2602 void calculateSinglePerf(const Simulator &simulator, const int perf, WellStateType &well_state, std::vector< RateVector > &connectionRates, std::vector< EvalWell > &cq_s, EvalWell &water_flux_s, EvalWell &cq_s_zfrac_effective, DeferredLogger &deferred_logger) const Definition: StandardWell_impl.hpp:511 void computeWellConnectionPressures(const Simulator &simulator, const GroupStateHelperType &groupStateHelper) Definition: StandardWell_impl.hpp:1408 void updatePrimaryVariablesNewton(const BVectorWell &dwells, const bool stop_or_zero_rate_target, DeferredLogger &deferred_logger) Definition: StandardWell_impl.hpp:794 void assembleWellEqWithoutIteration(const Simulator &simulator, const GroupStateHelperType &groupStateHelper, const double dt, const Well::InjectionControls &inj_controls, const Well::ProductionControls &prod_controls, WellStateType &well_state, const bool solving_with_zero_rate) override Definition: StandardWell_impl.hpp:342 void computeWellPotentials(const Simulator &simulator, const WellStateType &well_state, const GroupStateHelperType &groupStateHelper, std::vector< Scalar > &well_potentials) override computing the well potentials for group control Definition: StandardWell_impl.hpp:1806 StandardWell(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: StandardWell_impl.hpp:53 std::optional< Scalar > computeBhpAtThpLimitInj(const Simulator &simulator, const GroupStateHelperType &groupStateHelper, const SummaryState &summary_state) const Definition: StandardWell_impl.hpp:2371 typename StdWellEval::StdWellConnections::Properties WellConnectionProps Definition: StandardWell.hpp:276 void computeWellRatesWithBhpIterations(const Simulator &ebosSimulator, const Scalar &bhp, const GroupStateHelperType &groupStateHelper, std::vector< Scalar > &well_flux) const override Definition: StandardWell_impl.hpp:1563 void updateConnectionRatePolyMW(const EvalWell &cq_s_poly, const IntensiveQuantities &int_quants, const WellStateType &well_state, const int perf, std::vector< RateVector > &connectionRates, DeferredLogger &deferred_logger) const Definition: StandardWell_impl.hpp:2240 void computeWellRatesWithBhp(const Simulator &ebosSimulator, const Scalar &bhp, std::vector< Scalar > &well_flux, DeferredLogger &deferred_logger) const override Definition: StandardWell_impl.hpp:1515 void updateIPRImplicit(const Simulator &simulator, const GroupStateHelperType &groupStateHelper, WellStateType &well_state) override Definition: StandardWell_impl.hpp:933 void getMobility(const Simulator &simulator, const int perf, std::vector< Value > &mob, DeferredLogger &deferred_logger) const Definition: StandardWell_impl.hpp:709 void getTransMult(Value &trans_mult, const Simulator &simulator, const int cell_indx) const Definition: StandardWell_impl.hpp:689 void updateIPR(const Simulator &simulator, DeferredLogger &deferred_logger) const override Definition: StandardWell_impl.hpp:841 void addBCDMatrix(std::vector< typename Base::BMatrix > &b_matrices, std::vector< typename Base::CMatrix > &c_matrices, std::vector< typename Base::DMatrix > &d_matrices, Opm::SparseTable< int > &wcells) const override Definition: StandardWell.hpp:251 void handleInjectivityEquations(const Simulator &simulator, const WellStateType &well_state, const int perf, const EvalWell &water_flux_s, DeferredLogger &deferred_logger) Definition: StandardWell_impl.hpp:2174 virtual void apply(const BVector &x, BVector &Ax) const override Ax = Ax - C D^-1 B x. Definition: StandardWell_impl.hpp:1463 void checkConvergenceExtraEqs(const std::vector< Scalar > &res, ConvergenceReport &report) const Definition: StandardWell_impl.hpp:2221 void computeWellRatesWithThpAlqProd(const Simulator &ebos_simulator, const GroupStateHelperType &groupStateHelper, const SummaryState &summary_state, std::vector< Scalar > &potentials, Scalar alq) const Definition: StandardWell_impl.hpp:1789 Scalar computeWellRatesAndBhpWithThpAlqProd(const Simulator &ebos_simulator, const GroupStateHelperType &groupStateHelper, const SummaryState &summary_state, std::vector< Scalar > &potentials, Scalar alq) const Definition: StandardWell_impl.hpp:1759 bool openCrossFlowAvoidSingularity(const Simulator &simulator) const Definition: StandardWell_impl.hpp:1171 bool computeWellPotentialsImplicit(const Simulator &ebos_simulator, const GroupStateHelperType &groupStateHelper, std::vector< Scalar > &well_potentials) const Definition: StandardWell_impl.hpp:1670 void recoverWellSolutionAndUpdateWellState(const Simulator &simulator, const BVector &x, const GroupStateHelperType &groupStateHelper, WellStateType &well_state) override Definition: StandardWell_impl.hpp:1495 Scalar maxPerfPress(const Simulator &simulator) const override Definition: StandardWell_impl.hpp:2761 bool iterateWellEqWithSwitching(const Simulator &simulator, const double dt, const Well::InjectionControls &inj_controls, const Well::ProductionControls &prod_controls, const GroupStateHelperType &groupStateHelper, WellStateType &well_state, const bool fixed_control, const bool fixed_status, const bool solving_with_zero_rate) override Definition: StandardWell_impl.hpp:2469 typename FluidSystem::IndexTraitsType IndexTraits Definition: StandardWell.hpp:119 void assembleWellEqWithoutIterationImpl(const Simulator &simulator, const GroupStateHelperType &groupStateHelper, const double dt, const Well::InjectionControls &inj_controls, const Well::ProductionControls &prod_controls, WellStateType &well_state, const bool solving_with_zero_rate) Definition: StandardWell_impl.hpp:369 bool allDrawDownWrongDirection(const Simulator &simulator) const Definition: StandardWell_impl.hpp:1129 EvalWell pskin(const Scalar throughput, const EvalWell &water_velocity, const EvalWell &poly_inj_conc, DeferredLogger &deferred_logger) const Definition: StandardWell_impl.hpp:2047 void computePerfRate(const IntensiveQuantities &intQuants, const std::vector< Value > &mob, const Value &bhp, const std::vector< Value > &Tw, const int perf, const bool allow_cf, std::vector< Value > &cq_s, PerforationRates< Scalar > &perf_rates, DeferredLogger &deferred_logger) const Definition: StandardWell_impl.hpp:94 static constexpr int numWellConservationEq Definition: StandardWell.hpp:92 int setPrimaryVars(typename std::vector< Scalar >::const_iterator it) override Definition: StandardWell_impl.hpp:2657 void updateWaterThroughput(const double dt, WellStateType &well_state) const override Definition: StandardWell_impl.hpp:2120 void checkOperabilityUnderBHPLimit(const WellStateType &well_state, const Simulator &simulator, DeferredLogger &deferred_logger) override Definition: StandardWell_impl.hpp:1010 EvalWell pskinwater(const Scalar throughput, const EvalWell &water_velocity, DeferredLogger &deferred_logger) const Definition: StandardWell_impl.hpp:2016 void handleInjectivityRate(const Simulator &simulator, const int perf, std::vector< EvalWell > &cq_s) const Definition: StandardWell_impl.hpp:2151 virtual 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: StandardWell_impl.hpp:77 void updateProductivityIndex(const Simulator &simulator, const WellProdIndexCalculator< Scalar > &wellPICalc, WellStateType &well_state, DeferredLogger &deferred_logger) const override Definition: StandardWell_impl.hpp:1276 void calculateExplicitQuantities(const Simulator &simulator, const GroupStateHelperType &groupStateHelper) override Definition: StandardWell_impl.hpp:1450 static constexpr int numWellControlEq Definition: StandardWell.hpp:94 Scalar getRefDensity() const override Definition: StandardWell_impl.hpp:1911 void checkOperabilityUnderTHPLimit(const Simulator &simulator, const WellStateType &well_state, const GroupStateHelperType &groupStateHelper) override Definition: StandardWell_impl.hpp:1079 Scalar connectionDensity(const int globalConnIdx, const int openConnIdx) const override Definition: StandardWell_impl.hpp:1873 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:136 const std::string & name() const Well name. const VFPProperties< FluidSystem::Scalar, FluidSystem::IndexTraitsType > * vfp_properties_ Definition: WellInterfaceGeneric.hpp:575 Definition: WellInterface.hpp:79 GetPropType< TypeTag, Properties::Simulator > Simulator Definition: WellInterface.hpp:84 typename WellInterfaceFluidSystem< FluidSystem >::RateConverterType RateConverterType Definition: WellInterface.hpp:110 const std::vector< RateVector > & connectionRates() const Definition: WellInterface.hpp:362 Dune::BCRSMatrix< Opm::MatrixBlock< Scalar, 1, 1 > > PressureMatrix Definition: WellInterface.hpp:100 GetPropType< TypeTag, Properties::IntensiveQuantities > IntensiveQuantities Definition: WellInterface.hpp:89 GetPropType< TypeTag, Properties::Scalar > Scalar Definition: WellInterface.hpp:85 GetPropType< TypeTag, Properties::MaterialLaw > MaterialLaw Definition: WellInterface.hpp:90 Dune::BlockVector< VectorBlockType > BVector Definition: WellInterface.hpp:99 static constexpr bool has_bioeffects Definition: WellInterface.hpp:131 static constexpr bool has_polymermw Definition: WellInterface.hpp:125 typename Base::ModelParameters ModelParameters Definition: WellInterface.hpp:116 GetPropType< TypeTag, Properties::FluidSystem > FluidSystem Definition: WellInterface.hpp:86 GetPropType< TypeTag, Properties::RateVector > RateVector Definition: WellInterface.hpp:92 BlackOilFluidStateType< Eval > FluidState Definition: WellInterface.hpp:148 GetPropType< TypeTag, Properties::Indices > Indices Definition: WellInterface.hpp:88 GetPropType< TypeTag, Properties::SparseMatrixAdapter > SparseMatrixAdapter Definition: WellInterface.hpp:91 GroupStateHelper< Scalar, IndexTraits > GroupStateHelperType Definition: WellInterface.hpp:104 static constexpr bool has_zFraction Definition: WellInterface.hpp:119 Definition: WellProdIndexCalculator.hpp:37 Definition: WellState.hpp:68 Definition: blackoilbioeffectsmodules.hh:45 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:72 |