diff --git a/dune/elasticity/common/trustregionsolver.cc b/dune/elasticity/common/trustregionsolver.cc index 279dcf1f7525ac82da50578291636399f9db52fb..92e45badc309eeecd4e8d128103f6fbb6913dede 100644 --- a/dune/elasticity/common/trustregionsolver.cc +++ b/dune/elasticity/common/trustregionsolver.cc @@ -551,16 +551,12 @@ void TrustRegionSolver<BasisType,VectorType>::solve() if (correctionInfinityNorm < this->tolerance_) { if (this->verbosity_ == NumProc::FULL and rank==0) - std::cout << "CORRECTION IS SMALL ENOUGH" << std::endl; - - if (this->verbosity_ != NumProc::QUIET and rank==0) - std::cout << i+1 << " trust-region steps were taken." << std::endl; - break; - } - - if (trustRegion.radius() < this->tolerance_) { - if (this->verbosity_ == NumProc::FULL and rank==0) - std::cout << "TRUST REGION RADIUS IS TOO SMALL, SMALLER THAN TOLERANCE, STOPPING NOW" << std::endl; + { + if (correctionInfinityNorm < trustRegion.radius()) + std::cout << "CORRECTION IS SMALL ENOUGH" << std::endl; + else + std::cout << "TRUST-REGION UNDERFLOW!" << std::endl; + } if (this->verbosity_ != NumProc::QUIET and rank==0) std::cout << i+1 << " trust-region steps were taken." << std::endl;