24#ifndef OPM_WELL_ASSEMBLE_HEADER_INCLUDED
25#define OPM_WELL_ASSEMBLE_HEADER_INCLUDED
27#include <opm/input/eclipse/Schedule/ScheduleTypes.hpp>
28#include <opm/input/eclipse/Schedule/Well/WellEnums.hpp>
37template<
class Scalar>
class GroupState;
40template<
typename Flu
idSystem>
class WellInterfaceFluidSystem;
41template<
typename Scalar,
typename IndexTraits>
class WellState;
42template<
typename Scalar,
typename IndexTraits>
class GroupStateHelper;
43struct WellInjectionControls;
44struct WellProductionControls;
46template<
typename Flu
idSystem>
48 static constexpr int Water = FluidSystem::waterPhaseIdx;
49 static constexpr int Oil = FluidSystem::oilPhaseIdx;
50 static constexpr int Gas = FluidSystem::gasPhaseIdx;
51 using Scalar =
typename FluidSystem::Scalar;
52 using IndexTraits =
typename FluidSystem::IndexTraitsType;
58 template<
class EvalWell>
60 const WellProductionControls& controls,
62 const std::vector<EvalWell>& rates,
63 const std::function<EvalWell()>& bhp_from_thp,
67 template<
class EvalWell>
69 const WellInjectionControls& controls,
71 const EvalWell& injection_rate,
72 const std::function<EvalWell()>& bhp_from_thp,
Definition: DeferredLogger.hpp:57
Definition: GroupStateHelper.hpp:53
Definition: WellAssemble.hpp:47
WellAssemble(const WellInterfaceFluidSystem< FluidSystem > &well)
void assembleControlEqInj(const GroupStateHelperType &groupStateHelper, const WellInjectionControls &controls, const EvalWell &bhp, const EvalWell &injection_rate, const std::function< EvalWell()> &bhp_from_thp, EvalWell &control_eq, DeferredLogger &deferred_logger) const
void assembleControlEqProd(const GroupStateHelperType &groupStateHelper, const WellProductionControls &controls, const EvalWell &bhp, const std::vector< EvalWell > &rates, const std::function< EvalWell()> &bhp_from_thp, EvalWell &control_eq, DeferredLogger &deferred_logger) const
Definition: WellInterfaceFluidSystem.hpp:50
Definition: blackoilbioeffectsmodules.hh:43