diff --git a/inputs/cellsolver.parset b/inputs/cellsolver.parset
index 1cd513ebd1bba927ad125b592c5084f6bfe58edb..a16cca4fed8e19837d285199b0f3b1be98b3e399 100644
--- a/inputs/cellsolver.parset
+++ b/inputs/cellsolver.parset
@@ -27,8 +27,8 @@ cellDomain=1
 ## {start,finish} computes on all grid from 2^(start) to 2^finish refinement
 #----------------------------------------------------
 
-numLevels= 2  2
-#numLevels =  1 1   # computes all levels from first to second entry
+numLevels= 2  4
+#numLevels =  0 0   # computes all levels from first to second entry
 #numLevels =  2 2   # computes all levels from first to second entry
 #numLevels =  1 3   # computes all levels from first to second entry
 #numLevels = 4 4    # computes all levels from first to second entry
@@ -113,8 +113,8 @@ write_VTK = true
 #############################################
 #  Assembly options
 #############################################
-#set_IntegralZero = true
-set_IntegralZero = false
+set_IntegralZero = true
+#set_IntegralZero = false
 
 #arbitraryLocalIndex = 7
 #arbitraryElementNumber = 3
diff --git a/src/Cell-Problem.cc b/src/Cell-Problem.cc
index 223a5d3b17f5c655558899494dc599d636364353..3b81eed9220bbe1fef2adf8a9bea2012569a0bdd 100644
--- a/src/Cell-Problem.cc
+++ b/src/Cell-Problem.cc
@@ -228,15 +228,15 @@ void computeElementStiffnessMatrix(const LocalView& localView,
   std::array<MatrixRT,3 > basisContainer = {G_1, G_2, G_3};
 
 //   int orderQR = 2*(dim*localFiniteElement.localBasis().order()-1)+5;  // TEST
-//   int orderQR = 2*(dim*localFiniteElement.localBasis().order()-1);
+  int orderQR = 2*(dim*localFiniteElement.localBasis().order()-1);
 //   int orderQR = 0;
 //   int orderQR = 1;
-  int orderQR = 2;
+//   int orderQR = 2;
   const auto& quad = QuadratureRules<double,dim>::rule(element.type(), orderQR);
   
   
   
-//   std::cout << "Print QuadratureOrder:" << orderQR << std::endl;  //TEST
+//   std::cout << "Print QuadratureOrder:" << orderQR << std::endl;  //TEST`
 
   for (const auto& quadPoint : quad)
   {
@@ -411,17 +411,17 @@ void computeElementLoadVector( const LocalView& localView,
   //////////////////////////////////////////////
   MatrixRT G_1 {{1.0, 0.0, 0.0}, {0.0, 0.0, 0.0}, {0.0, 0.0, 0.0}};
   MatrixRT G_2 {{0.0, 0.0, 0.0}, {0.0, 1.0, 0.0}, {0.0, 0.0, 0.0}};
+  
   MatrixRT G_3 {{0.0, 1.0/sqrt(2.0), 0.0}, {1.0/sqrt(2.0), 0.0, 0.0}, {0.0, 0.0, 0.0}};
   std::array<MatrixRT,3 > basisContainer = {G_1, G_2, G_3};
 
 //   int orderQR = 2*(dim*localFiniteElement.localBasis().order()-1)+5;  // TEST
 //   int orderQR = 0;
 //   int orderQR = 1;
-  int orderQR = 2;
-//   int orderQR = 2*(dim*localFiniteElement.localBasis().order()-1);   // für simplex
+//   int orderQR = 2;
+  int orderQR = 3;
+//   int orderQR = 2*(dim*localFiniteElement.localBasis().order()-1);  
   const auto& quad = QuadratureRules<double,dim>::rule(element.type(), orderQR);
-  
-  
 //   std::cout << "Quad-Rule order used: " << orderQR << std::endl;
 
   for (const auto& quadPoint : quad)
@@ -442,10 +442,16 @@ void computeElementLoadVector( const LocalView& localView,
 //     std::cout << forceTerm(element.geometry().global(quadPos)) << std::endl;
 //     std::cout << "forceTerm(quadPos)" << std::endl;
 //     std::cout << forceTerm(quadPos) << std::endl;
-    
-    //TEST QUadrature 
-    std::cout << "mu(quadPos) :" << mu(quadPos) << std::endl;
-    std::cout << "lambda(quadPos) :" << lambda(quadPos) << std::endl;
+//     
+//     //TEST QUadrature 
+//     std::cout << "quadPos:" << quadPos << std::endl;
+// //     std::cout << "element.geometry().global(quadPos):" << element.geometry().global(quadPos) << std::endl;
+// //     
+// //     
+//     std::cout << "quadPoint.weight() :" << quadPoint.weight()  << std::endl;
+// //     std::cout << "integrationElement(quadPos):" << integrationElement << std::endl;
+//     std::cout << "mu(quadPos) :" << mu(quadPos) << std::endl;
+//     std::cout << "lambda(quadPos) :" << lambda(quadPos) << std::endl;
     
 
     // "f*phi"-part
@@ -462,6 +468,7 @@ void computeElementLoadVector( const LocalView& localView,
         defGradientV = crossSectionDirectionScaling((1/gamma),defGradientV);
 
         double energyDensity = linearizedStVenantKirchhoffDensity(mu(quadPos), lambda(quadPos),forceTerm(quadPos), defGradientV );
+//         double energyDensity = linearizedStVenantKirchhoffDensity(mu(quadPos), lambda(quadPos),(-1.0)*forceTerm(quadPos), defGradientV ); //TEST
 //         double energyDensity = linearizedStVenantKirchhoffDensity(mu(quadPos), lambda(quadPos),forceTerm(element.geometry().global(quadPos)), defGradientV ); //TEST 
         
         size_t row = localView.tree().child(k).localIndex(i);
@@ -472,8 +479,10 @@ void computeElementLoadVector( const LocalView& localView,
     for (size_t m=0; m<3; m++)
     {
       double energyDensityfG = linearizedStVenantKirchhoffDensity(mu(quadPos), lambda(quadPos), forceTerm(quadPos),basisContainer[m] );
+//       double energyDensityfG = linearizedStVenantKirchhoffDensity(mu(quadPos), lambda(quadPos), (-1.0)*forceTerm(quadPos),basisContainer[m] ); //TEST
 //       double energyDensityfG = linearizedStVenantKirchhoffDensity(mu(quadPos), lambda(quadPos), forceTerm(element.geometry().global(quadPos)),basisContainer[m] );//TEST 
       elementRhs[localPhiOffset+m] += energyDensityfG * quadPoint.weight() * integrationElement;
+//       std::cout << "energyDensityfG * quadPoint.weight() * integrationElement: " << energyDensityfG * quadPoint.weight() * integrationElement << std::endl;   
     }
   }
 }
@@ -570,6 +579,7 @@ void assembleCellLoad(const Basis& basis,
   auto loadGVF  = Dune::Functions::makeGridViewFunction(forceTerm, basis.gridView());
   auto loadFunctional = localFunction(loadGVF);      
 
+  int counter = 1;
   for (const auto& element : elements(basis.gridView()))
   {
     localView.bind(element);
@@ -581,6 +591,8 @@ void assembleCellLoad(const Basis& basis,
     //         std::cout << "localPhiOffset : " << localPhiOffset << std::endl;
 
     BlockVector<FieldVector<double,1> > elementRhs;
+//     std::cout << "----------------------------------Element : " <<  counter << std::endl; //TEST
+    counter++;
     computeElementLoadVector(localView, muLocal, lambdaLocal, gamma, elementRhs, loadFunctional);
 //     computeElementLoadVector(localView, muLocal, lambdaLocal, gamma, elementRhs, forceTerm); //TEST
 //     printvector(std::cout, elementRhs, "elementRhs", "--");
@@ -648,7 +660,8 @@ auto energy(const Basis& basis,
 //     int orderQR = 2*(dim*localFiniteElement.localBasis().order()-1);
 //     int orderQR = 0;
 //     int orderQR = 1;
-    int orderQR = 2;
+//     int orderQR = 2;
+    int orderQR = 3;
     const QuadratureRule<double, dim>& quad = QuadratureRules<double, dim>::rule(e.type(), orderQR);
 
     for (const auto& quadPoint : quad) 
@@ -997,7 +1010,8 @@ auto test_derivative(const Basis& basis,
 //     int orderQR = 2*(dim*localFiniteElement.localBasis().order()-1 + 5 );  // TEST
 //     int orderQR = 0;
 //     int orderQR = 1;
-    int orderQR = 2;
+//     int orderQR = 2;
+    int orderQR = 3;
 //     int orderQR = 2*(dim*localFiniteElement.localBasis().order()-1);
     const QuadratureRule<double, dim>& quad = QuadratureRules<double, dim>::rule(e.type(), orderQR);
 
@@ -1178,7 +1192,8 @@ auto check_Orthogonality(const Basis& basis,
 //     int orderQR = 2*(dim*localFiniteElement.localBasis().order()-1);
 //     int orderQR = 0;
 //     int orderQR = 1;
-    int orderQR = 2;
+//     int orderQR = 2;
+    int orderQR = 3;
     const QuadratureRule<double, dim>& quad = QuadratureRules<double, dim>::rule(e.type(), orderQR);
 
     for (const auto& quadPoint : quad) 
@@ -1292,7 +1307,8 @@ auto computeFullQ(const Basis& basis,
 //     int orderQR = 2*(dim*localFiniteElement.localBasis().order()-1);
 //     int orderQR = 0;
 //     int orderQR = 1;
-    int orderQR = 2;
+//     int orderQR = 2;
+    int orderQR = 3;
     const QuadratureRule<double, dim>& quad = QuadratureRules<double, dim>::rule(e.type(), orderQR);
 
     for (const auto& quadPoint : quad) 
@@ -1655,6 +1671,8 @@ int main(int argc, char *argv[])
     Func2Tensor x3G_2neg = [x3G_2] (const Domain& x) {return -1.0*x3G_2(x);};
     Func2Tensor x3G_3neg = [x3G_3] (const Domain& x) {return -1.0*x3G_3(x);};
     
+    //TODO eigentlich funtkioniert es ja mit x3G_1 etc doch auch ?!
+    
     
     
     
@@ -1719,6 +1737,10 @@ int main(int argc, char *argv[])
     assembleCellLoad(Basis_CE, muLocal, lambdaLocal,gamma, load_alpha1 ,x3G_1neg);
     assembleCellLoad(Basis_CE, muLocal, lambdaLocal,gamma, load_alpha2 ,x3G_2neg);
     assembleCellLoad(Basis_CE, muLocal, lambdaLocal,gamma, load_alpha3 ,x3G_3neg);
+    //TEST
+//     assembleCellLoad(Basis_CE, muLocal, lambdaLocal,gamma, load_alpha1 ,x3G_1);
+//     assembleCellLoad(Basis_CE, muLocal, lambdaLocal,gamma, load_alpha2 ,x3G_2);
+//     assembleCellLoad(Basis_CE, muLocal, lambdaLocal,gamma, load_alpha3 ,x3G_3);
 //     printmatrix(std::cout, stiffnessMatrix_CE, "StiffnessMatrix", "--");
 //     printvector(std::cout, load_alpha1, "load_alpha1", "--");
 
@@ -1734,7 +1756,7 @@ int main(int argc, char *argv[])
     {
         setOneBaseFunctionToZero(Basis_CE, stiffnessMatrix_CE, load_alpha1, load_alpha2, load_alpha3, parameterSet);
     //     printmatrix(std::cout, stiffnessMatrix_CE, "StiffnessMatrix after setOneBasisFunctionToZero", "--");
-        printvector(std::cout, load_alpha1, "load_alpha1 after setOneBaseFunctionToZero", "--");
+//         printvector(std::cout, load_alpha1, "load_alpha1 after setOneBaseFunctionToZero", "--");
     }
     
     //TEST: Compute Condition Number  (Can be very expensive !)