From e27212edf7b63c57a74b19bd148a0940adf96f9f Mon Sep 17 00:00:00 2001
From: Rainer Backofen <rainer.backofen@tu-dresden.de>
Date: Tue, 31 May 2011 07:25:47 +0000
Subject: [PATCH] set debug mode flag in init file for time strategies in
 AdaptInstat

---
 AMDiS/src/AdaptInfo.h            | 10 +++++-----
 AMDiS/src/AdaptInstationary.cc   |  9 ++++++++-
 AMDiS/src/parallel/PetscSolver.h |  1 +
 3 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/AMDiS/src/AdaptInfo.h b/AMDiS/src/AdaptInfo.h
index ec8b7f60..7ef68b22 100644
--- a/AMDiS/src/AdaptInfo.h
+++ b/AMDiS/src/AdaptInfo.h
@@ -247,15 +247,15 @@ namespace AMDiS {
     void printTimeErrorLowInfo() 
     {
       for (unsigned int i = 0; i < scalContents.size(); i++){
-	std::cout << "    Time error estimate  = " 
+	std::cout << "    Time error estimate     ["<<i<<"] = " 
 		  << getTimeEstCombined(i) << "\n"
-		  << "    Time error estimate sum = " 
+		  << "    Time error estimate sum ["<<i<<"] = " 
 		  << scalContents[i]->est_t_sum << "\n" 
-		  << "    Time error estimate max = " 
+		  << "    Time error estimate max ["<<i<<"] = " 
 		  << scalContents[i]->est_t_max << "\n"
-		  << "    Time error low bound = " 
+		  << "    Time error low bound    ["<<i<<"] = " 
 		  << scalContents[i]->timeErrLow << "\n"
-		  << "    Time error high bound = " 
+		  << "    Time error high bound   ["<<i<<"] = " 
 		  << scalContents[i]->timeTolerance << "\n";
       }
     }
diff --git a/AMDiS/src/AdaptInstationary.cc b/AMDiS/src/AdaptInstationary.cc
index 996bf0c8..0306a206 100644
--- a/AMDiS/src/AdaptInstationary.cc
+++ b/AMDiS/src/AdaptInstationary.cc
@@ -235,7 +235,7 @@ namespace AMDiS {
 
   void AdaptInstationary::simpleAdaptiveTimeStrategy()
   {
-    FUNCNAME("AdaptInstationary::explicitTimeStrategy()");
+    FUNCNAME("AdaptInstationary::simpleAdaptiveTimeStrategy()");
 
     // estimate before first adaption
     if (adaptInfo->getTime() <= adaptInfo->getStartTime())
@@ -250,6 +250,12 @@ namespace AMDiS {
     problemIteration->oneIteration(adaptInfo, FULL_ITERATION);
 
     adaptInfo->setLastProcessedTimestep(adaptInfo->getTimestep());        
+
+    if (dbgMode) {
+	std::cout << "=== ADAPT INFO DEBUG MODE           ===\n";
+	std::cout << "=== in simpleAdaptiveTimeStrategy() ===\n";
+	adaptInfo->printTimeErrorLowInfo();
+    }
     
     // First, check for increase of timestep
     if (!fixedTimestep && adaptInfo->timeErrorLow())
@@ -360,6 +366,7 @@ namespace AMDiS {
     Parameters::get(aName + "->time delta 2", timeDelta2);
     Parameters::get(aName + "->info", info);
     Parameters::get(aName + "->break when stable", breakWhenStable);
+    Parameters::get(aName + "->time adaptivity debug mode", dbgMode);
     Parameters::get(aName + "->queue->runtime", queueRuntime);
     Parameters::get(aName + "->queue->serialization filename", 
 		    queueSerializationFilename);
diff --git a/AMDiS/src/parallel/PetscSolver.h b/AMDiS/src/parallel/PetscSolver.h
index 6dc58ee1..d5f344f0 100644
--- a/AMDiS/src/parallel/PetscSolver.h
+++ b/AMDiS/src/parallel/PetscSolver.h
@@ -36,6 +36,7 @@
 #include <petsc.h>
 #include <petscsys.h>
 #include <petscao.h>
+#include <petscksp.h>
 
 namespace AMDiS {
 
-- 
GitLab