diff --git a/opm/autodiff/FullyImplicitBlackoilSolver.cpp b/opm/autodiff/FullyImplicitBlackoilSolver.cpp index fd51f3d36..9a0efed21 100644 --- a/opm/autodiff/FullyImplicitBlackoilSolver.cpp +++ b/opm/autodiff/FullyImplicitBlackoilSolver.cpp @@ -1267,23 +1267,22 @@ namespace { double FullyImplicitBlackoilSolver::residualNorm() const { - double r = 0; - for (std::vector::const_iterator - b = residual_.mass_balance.begin(), - e = residual_.mass_balance.end(); - b != e; ++b) + double globalNorm = 0; + std::vector::const_iterator quantityIt = residual_.mass_balance.begin(); + const std::vector::const_iterator endQuantityIt = residual_.mass_balance.end(); + for (; quantityIt != endQuantityIt; ++quantityIt) { - const double rowResid = (*b).value().matrix().norm(); - if (!std::isfinite(rowResid)) { + const double quantityResid = (*quantityIt).value().matrix().norm(); + if (!std::isfinite(quantityResid)) { OPM_THROW(Opm::NumericalProblem, "Encountered a non-finite residual"); } - r = std::max(r, rowResid); + globalNorm = std::max(globalNorm, quantityResid); } - r = std::max(r, residual_.well_flux_eq.value().matrix().norm()); - r = std::max(r, residual_.well_eq.value().matrix().norm()); + globalNorm = std::max(globalNorm, residual_.well_flux_eq.value().matrix().norm()); + globalNorm = std::max(globalNorm, residual_.well_eq.value().matrix().norm()); - return r; + return globalNorm; }