dont check if group has converged in solveWellEq

This commit is contained in:
Tor Harald Sandve
2020-04-01 09:55:29 +02:00
committed by Atgeirr Flø Rasmussen
parent f30ddffdb7
commit 70b7bed057
2 changed files with 8 additions and 6 deletions

View File

@@ -243,7 +243,7 @@ namespace Opm {
void applyScaleAdd(const Scalar alpha, const BVector& x, BVector& Ax) const;
// Check if well equations is converged.
ConvergenceReport getWellConvergence(const std::vector<Scalar>& B_avg) const;
ConvergenceReport getWellConvergence(const std::vector<Scalar>& B_avg, const bool checkGroupConvergence = false) const;
// return the internal well state, ignore the passed one.
// Used by the legacy code to make it compatible with the legacy well models.

View File

@@ -1103,7 +1103,7 @@ namespace Opm {
template<typename TypeTag>
ConvergenceReport
BlackoilWellModel<TypeTag>::
getWellConvergence(const std::vector<Scalar>& B_avg) const
getWellConvergence(const std::vector<Scalar>& B_avg, bool checkGroupConvergence) const
{
Opm::DeferredLogger local_deferredLogger;
@@ -1132,10 +1132,12 @@ namespace Opm {
}
}
const int reportStepIdx = ebosSimulator_.episodeIndex();
const Group& fieldGroup = schedule().getGroup("FIELD", reportStepIdx);
bool violated = checkGroupConstraints(fieldGroup, global_deferredLogger);
report.setGroupConverged(!violated);
if (checkGroupConvergence) {
const int reportStepIdx = ebosSimulator_.episodeIndex();
const Group& fieldGroup = schedule().getGroup("FIELD", reportStepIdx);
bool violated = checkGroupConstraints(fieldGroup, global_deferredLogger);
report.setGroupConverged(!violated);
}
return report;
}