setPrimaryVarsDomain: move to BlackoilWellModelGeneric

This commit is contained in:
Arne Morten Kvarving
2024-11-18 11:11:19 +01:00
parent a36d40957b
commit 3d10b549e7
4 changed files with 15 additions and 19 deletions

View File

@@ -387,8 +387,6 @@ template<class Scalar> class WellContributions;
const Domain& domain);
void updateWellControlsDomain(DeferredLogger& deferred_logger, const Domain& domain);
void setPrimaryVarsDomain(const int domainIdx, const std::vector<Scalar>& vars);
void setupDomains(const std::vector<Domain>& domains);
protected:

View File

@@ -2071,6 +2071,20 @@ getPrimaryVarsDomain(const int domainIdx) const
return ret;
}
template<class Scalar>
void BlackoilWellModelGeneric<Scalar>::
setPrimaryVarsDomain(const int domainIdx, const std::vector<Scalar>& vars)
{
std::size_t offset = 0;
for (auto& well : this->well_container_generic_) {
if (this->well_domain_.at(well->name()) == domainIdx) {
int num_pri_vars = well->setPrimaryVars(vars.begin() + offset);
offset += num_pri_vars;
}
}
assert(offset == vars.size());
}
template class BlackoilWellModelGeneric<double>;
#if FLOW_INSTANTIATE_FLOAT

View File

@@ -221,6 +221,7 @@ public:
void logPrimaryVars() const;
std::vector<Scalar> getPrimaryVarsDomain(const int domainIdx) const;
void setPrimaryVarsDomain(const int domainIdx, const std::vector<Scalar>& vars);
template<class Serializer>
void serializeOp(Serializer& serializer)

View File

@@ -2985,23 +2985,6 @@ namespace Opm {
}
template <typename TypeTag>
void
BlackoilWellModel<TypeTag>::
setPrimaryVarsDomain(const int domainIdx, const std::vector<Scalar>& vars)
{
std::size_t offset = 0;
for (auto& well : well_container_) {
if (this->well_domain_.at(well->name()) == domainIdx) {
int num_pri_vars = well->setPrimaryVars(vars.begin() + offset);
offset += num_pri_vars;
}
}
assert(offset == vars.size());
}
template <typename TypeTag>
void
BlackoilWellModel<TypeTag>::