43 std::vector<Scalar> getPrimaryVarsDomain(
const int domainIdx)
const;
44 void setPrimaryVarsDomain(
const int domainIdx,
const std::vector<Scalar>&
vars);
47 {
return well_local_cells_; }
49 const std::map<std::string, int>& well_domain()
const
50 {
return well_domain_; }
54 : genWellModel_(model)
57 void calcDomains(
const std::vector<const SubDomainIndices*>&
domains);
60 void logDomains()
const;
62 void findWellDomains(
const std::vector<const SubDomainIndices*>&
domains);
64 void calcLocalIndices(
const std::vector<const SubDomainIndices*>&
domains);
69 std::map<std::string, int> well_domain_{};
79 typename GetPropType<TypeTag, Properties::FluidSystem>::IndexTraitsType>
85 using PressureMatrix =
typename BlackoilWellModel<TypeTag>::PressureMatrix;
86 using BVector =
typename BlackoilWellModel<TypeTag>::BVector;
88 using IndexTraits =
typename FluidSystem::IndexTraitsType;
98 void addWellPressureEquations(PressureMatrix& jacobian,
99 const BVector& weights,
112 void setupDomains(
const std::vector<Domain>&
domains);
116 const std::vector<Scalar>&
B_avg,
121 void recoverWellSolutionAndUpdateWellState(
const BVector& x,
125 int numLocalWells()
const
127 return wellModel_.numLocalWells();
131 int numLocalWellsEnd()
const
133 return wellModel_.numLocalWellsEnd();
139 void assembleWellEq(
const double dt,
147 mutable BVector x_local_;
constexpr auto getPropValue()
get the value data member of a property
Definition propertysystem.hh:240
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
Representing a part of a grid, in a way suitable for performing local solves.
Definition SubDomain.hpp:85