From daa74558e7026e1413477adcba7b5201e9431242 Mon Sep 17 00:00:00 2001
From: Oliver Sander <sander@igpm.rwth-aachen.de>
Date: Wed, 14 May 2014 10:38:06 +0000
Subject: [PATCH] Print status messages only if our rank is '0'

[[Imported from SVN: r9724]]
---
 dune/gfe/riemanniantrsolver.cc | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/dune/gfe/riemanniantrsolver.cc b/dune/gfe/riemanniantrsolver.cc
index ccfffd74..5d8ea2c3 100644
--- a/dune/gfe/riemanniantrsolver.cc
+++ b/dune/gfe/riemanniantrsolver.cc
@@ -418,7 +418,7 @@ void RiemannianTrustRegionSolver<GridType,TargetSpace>::solve()
 
         double relativeModelDecrease = modelDecrease / std::fabs(energy);
 
-        if (this->verbosity_ == NumProc::FULL) {
+        if (this->verbosity_ == NumProc::FULL and rank==0) {
             std::cout << "Absolute model decrease: " << modelDecrease
                       << ",  functional decrease: " << oldEnergy - energy << std::endl;
             std::cout << "Relative model decrease: " << relativeModelDecrease
@@ -427,17 +427,17 @@ void RiemannianTrustRegionSolver<GridType,TargetSpace>::solve()
 
         assert(modelDecrease >= 0);
 
-        if (energy >= oldEnergy) {
+        if (energy >= oldEnergy and rank==0) {
             if (this->verbosity_ == NumProc::FULL)
                 printf("Richtung ist keine Abstiegsrichtung!\n");
         }
 
         if (energy >= oldEnergy &&
             (std::abs(oldEnergy-energy)/energy < 1e-9 || relativeModelDecrease < 1e-9)) {
-            if (this->verbosity_ == NumProc::FULL)
+            if (this->verbosity_ == NumProc::FULL and rank==0)
                 std::cout << "Suspecting rounding problems" << std::endl;
 
-            if (this->verbosity_ != NumProc::QUIET)
+            if (this->verbosity_ != NumProc::QUIET and rank==0)
                 std::cout << i+1 << " trust-region steps were taken." << std::endl;
 
             x_ = newIterate;
@@ -475,7 +475,7 @@ void RiemannianTrustRegionSolver<GridType,TargetSpace>::solve()
             // Decrease the trust-region radius
             trustRegion.scale(0.5);
 
-            if (this->verbosity_ == NumProc::FULL)
+            if (this->verbosity_ == NumProc::FULL and rank==0)
                 std::cout << "Unsuccessful iteration!" << std::endl;
         }
 
@@ -498,7 +498,9 @@ void RiemannianTrustRegionSolver<GridType,TargetSpace>::solve()
             fclose(fpIterate);
 
         }
-        std::cout << "iteration took " << totalTimer.elapsed() << " sec." << std::endl;
+
+        if (rank==0)
+            std::cout << "iteration took " << totalTimer.elapsed() << " sec." << std::endl;
     }
 
     // //////////////////////////////////////////////
-- 
GitLab