From 6cccee3a040baa69c314872501939aa6f03fe8fd Mon Sep 17 00:00:00 2001
From: Oliver Sander <sander@igpm.rwth-aachen.de>
Date: Wed, 23 Jul 2008 12:09:52 +0000
Subject: [PATCH] compile with recent changes in ag-common

[[Imported from SVN: r9918]]
---
 linelast.cc    |  8 +++++---
 nonlinelast.cc | 43 ++++++++++++++++++++++++++++++++++++++++---
 2 files changed, 45 insertions(+), 6 deletions(-)

diff --git a/linelast.cc b/linelast.cc
index c245b7b..65f37ed 100644
--- a/linelast.cc
+++ b/linelast.cc
@@ -15,13 +15,15 @@
 #include <dune/ag-common/sampleonbitfield.hh>
 #include <dune/ag-common/prolongboundarypatch.hh>
 #include <dune/ag-common/readbitfield.hh>
-#include <dune/ag-common/linearipopt.hh>
+#ifdef HAVE_IPOPT_CPP
+#include <dune/ag-common/quadraticipopt.hh>
+#endif
 #include <dune/ag-common/blockgsstep.hh>
 #include <dune/ag-common/multigridstep.hh>
 #include <dune/ag-common/multigridtransfer.hh>
 #include <dune/ag-common/iterativesolver.hh>
 
-#include <dune/ag-common/energynorm.hh>
+#include <dune/ag-common/norm/energynorm.hh>
 
 #include <dune/ag-common/hierarchicestimator.hh>
 
@@ -139,7 +141,7 @@ int main (int argc, char *argv[]) try
         // First create a base solver
 #ifdef IPOPT_BASE
         
-        LinearIPOptSolver<VectorType> baseSolver;
+        QuadraticIPOptSolver<OperatorType,VectorType> baseSolver;
         
 #else // Gauss-Seidel is the base solver
         
diff --git a/nonlinelast.cc b/nonlinelast.cc
index 2c6a973..0ab7e32 100644
--- a/nonlinelast.cc
+++ b/nonlinelast.cc
@@ -16,8 +16,8 @@
 #include <dune/ag-common/readbitfield.hh>
 #include <dune/ag-common/quadraticipopt.hh>
 #include <dune/ag-common/iterativesolver.hh>
-#include <dune/ag-common/energynorm.hh>
-#include <dune/ag-common/mmgstep.hh>
+#include <dune/ag-common/norm/energynorm.hh>
+#include <dune/ag-common/solver/mmgstep.hh>
 
 // Choose a solver
 #define IPOPT
@@ -94,8 +94,45 @@ int main (int argc, char *argv[]) try
 
     }
 
+    // hack Dirichlet data
+    dirichletNodes[numLevels-1][2*61  ] = false;
+    dirichletNodes[numLevels-1][2*61+1] = false;
+    dirichletNodes[numLevels-1][2*62  ] = false;
+    dirichletNodes[numLevels-1][2*62+1] = false;
+    dirichletNodes[numLevels-1][2*56  ] = false;
+    dirichletNodes[numLevels-1][2*56+1] = false;
+    dirichletNodes[numLevels-1][2*58  ] = false;
+    dirichletNodes[numLevels-1][2*58+1] = false;
+    dirichletNodes[numLevels-1][2*79  ] = false;
+    dirichletNodes[numLevels-1][2*79+1] = false;
+    dirichletNodes[numLevels-1][2*74  ] = false;
+    dirichletNodes[numLevels-1][2*74+1] = false;
+    dirichletNodes[numLevels-1][2*76  ] = false;
+    dirichletNodes[numLevels-1][2*76+1] = false;
+    dirichletNodes[numLevels-1][2*73  ] = false;
+    dirichletNodes[numLevels-1][2*73+1] = false;
+
+    dirichletNodes[numLevels-1][2*4  ] = false;
+    dirichletNodes[numLevels-1][2*4+1] = false;
+    dirichletNodes[numLevels-1][2*1  ] = false;
+    dirichletNodes[numLevels-1][2*1+1] = false;
+    dirichletNodes[numLevels-1][2*11  ] = false;
+    dirichletNodes[numLevels-1][2*11+1] = false;
+    dirichletNodes[numLevels-1][2*9  ] = false;
+    dirichletNodes[numLevels-1][2*9+1] = false;
+    dirichletNodes[numLevels-1][2*27  ] = false;
+    dirichletNodes[numLevels-1][2*27+1] = false;
+    dirichletNodes[numLevels-1][2*25  ] = false;
+    dirichletNodes[numLevels-1][2*25+1] = false;
+    dirichletNodes[numLevels-1][2*33  ] = false;
+    dirichletNodes[numLevels-1][2*33+1] = false;
+    
+
     sampleOnBitField(grid, dirichletValues, dirichletNodes);
 
+    dirichletValues[numLevels-1][0][1] = 0.2;
+    dirichletValues[numLevels-1][31][1] = 0.2;
+
     int maxlevel = grid.maxLevel();
 
   // Determine Dirichlet dofs
@@ -241,7 +278,7 @@ int main (int argc, char *argv[]) try
   LeafAmiraMeshWriter<GridType> amiramesh;
   amiramesh.addLeafGrid(grid,true);
   amiramesh.addVertexData(x, grid.leafIndexSet());
-  amiramesh.write("resultGrid");
+  amiramesh.write("resultGrid",true);
 
  } catch (Exception e) {
 
-- 
GitLab