diff --git a/AMDiS/Reinit/Makefile b/AMDiS/Reinit/Makefile
deleted file mode 100644
index 9a9fc95922fd2f8ed26321bd1438cfec14e79d6a..0000000000000000000000000000000000000000
--- a/AMDiS/Reinit/Makefile
+++ /dev/null
@@ -1,44 +0,0 @@
-SHELL = /bin/sh
-COMPILE = g++
-DEFS = -DPACKAGE=\"AMDiS\" -DVERSION=\"0.1\" -DHAVE_DLFCN_H=1 
-DEBUG = 0
-AMDIS_DIR = ../
-
-INCLUDES = -I./src -I$(AMDIS_DIR)/src -I$(AMDIS_DIR)/compositeFEM/src -I$(AMDIS_DIR)/lib/mtl4
-
-ifeq ($(strip $(DEBUG)), 0)
-       CPPFLAGS = -O2
-else
-       CPPFLAGS = -g -O0
-endif
-CPPFLAGS +=  -ftemplate-depth-40
-
-VPATH = .:$(AMDIS_DIR)/Reinit/src
-
-LIBOFILES = \
-BoundaryElementDist.o \
-BoundaryElementNormalDist.o \
-BoundaryElementLevelSetDist.o \
-BoundaryElementTopDist.o \
-BoundaryElementEdgeDist.o \
-ElementLevelSet.o \
-ElementUpdate_2d.o \
-ElementUpdate_3d.o \
-HL_SignedDist.o \
-HL_SignedDistTraverse.o \
-VelocityExt.o \
-VelocityExtFromVelocityField.o \
-NormEps.o 
-
-all: libreinit.a
-
-# statische Bibliothek
-libreinit.a: $(LIBOFILES)
-	rm -f lib/libreinit.a
-	ar cq lib/libreinit.a $(LIBOFILES)
-
-.cc.o: $*.cc
-	$(COMPILE) $(DEFS) $(INCLUDES) $(CPPFLAGS) -c -o $*.o $<
-
-clean: 
-	-rm -rf *.o
diff --git a/AMDiS/Reinit/src/HL_SignedDistLevels.cc b/AMDiS/Reinit/src/HL_SignedDistLevels.cc
deleted file mode 100644
index 09d53e6c80d49104d4a2c1c735f13b28d983e2ad..0000000000000000000000000000000000000000
--- a/AMDiS/Reinit/src/HL_SignedDistLevels.cc
+++ /dev/null
@@ -1,1372 +0,0 @@
-//
-// Software License for AMDiS
-//
-// Copyright (c) 2010 Dresden University of Technology 
-// All rights reserved.
-// Authors: Simon Vey, Thomas Witkowski et al.
-//
-// This file is part of AMDiS
-//
-// See also license.opensource.txt in the distribution.
-
-
-#include "HL_SignedDistLevels.h"
-
-#include "VelocityExtFromVelocityField.h"
-
-void 
-HL_SignedDistLevels::initializeBoundary() 
-{
-  FUNCNAME("HL_SignedDistLevels::initializeBoundary()");
-  
-  TraverseStack stack;
-  FixVec<double, VERTEX> distVec(dim, NO_INIT);
-  int elStatus;
-  const int *elVertStatusVec;
-  int NumVertIntPoints;
-  int ElNum;
-  clock_t time1;
-  clock_t time2;
-  double TIME;
-  
-  //=== transvering Mesh to SMI and add quantities
-  time1 = clock();
-  Mesh_to_SMI_and_quantity();
-  time2 = clock();
-  TIME = TIME_USED(time1, time2);
-  
-  cout <<"Zeit zum Transformieren nach SMI: "<<TIME<<" sec.\n";
-  
-  // ===== All non-boundary vertices are initialized with "infinity". =====
-  sD_DOF->set(inftyValue);
-  
-  // ===== Traverse mesh and initialize boundary elements. =====
-  const int nBasFcts = feSpace->getBasisFcts()->getNumber();
-  DegreeOfFreedom *locInd = GET_MEMORY(DegreeOfFreedom, nBasFcts);
-
-  ElInfo *elInfo;
-  if (velExt && velExtType.isSet(VEL_EXT_FROM_VEL_FIELD)) {
-    elInfo = stack.traverseFirst(feSpace->getMesh(),
-				 -1, 
-				 Mesh::CALL_LEAF_EL | 
-				 Mesh::FILL_BOUND |
-				 Mesh::FILL_COORDS |
-				 Mesh::FILL_GRD_LAMBDA);
-  } 
-  else {
-    elInfo = stack.traverseFirst(feSpace->getMesh(),
-				 -1, 
-				 Mesh::CALL_LEAF_EL | 
-				 Mesh::FILL_BOUND |
-				 Mesh::FILL_COORDS);
-  }
-  while(elInfo) {
-
-    // Set elInfo in case velocity extension from velocity field is used.
-    if (velExt && velExtType.isSet(VEL_EXT_FROM_VEL_FIELD)) {
-      ((VelocityExtFromVelocityField *)velExt)->setElInfo(elInfo);
-    }  
-    
-    // Get local indices of vertices.
-    feSpace->getBasisFcts()->getLocalIndices(
-			     const_cast<Element *>(elInfo->getElement()),
-			     const_cast<DOFAdmin *>(feSpace->getAdmin()),
-			     locInd); 
-    
-    // Get element status.
-    elStatus = elLS->createElementLevelSet(elInfo);
-    
-    //Get some information for creating the first list
-    
-    elVertStatusVec = elLS->getElVertStatusVec();
-    
-    //Beginn creating the first list
-    
-    NumVertIntPoints = elLS->getNumVertIntPoints();
-    ElNum = elInfo->getElement()->getIndex();
-    
-    createFirstList( elStatus, elVertStatusVec, ElNum, NumVertIntPoints);
-
-    //end creating the first list
-    
-    // Is element cut by the interface ?
-    if (elStatus == ElementLevelSet::LEVEL_SET_BOUNDARY) {
-      
-      // Reset element distance vector.
-      for (int i=0; i<=dim; ++i) {
-	distVec[i] = inftyValue;
-      }
-      
-      // Mark all vertices as boundary vertices.
-      for (int i=0; i<=dim; ++i) {
-	(*bound_DOF)[locInd[i]] = 1.0;
-      }
-      
-      // Calculate distance for all vertices.
-      if (bndElDist->calcDistOnBoundaryElement(elInfo, distVec) !=
-	  ElementLevelSet::LEVEL_SET_BOUNDARY) {
-	ERROR_EXIT("error in distance calculation !\n");
-	}
-      else {
-	
-	// If distance is smaller, correct to new distance.
-	for (int i=0; i<=dim; ++i) {
-	  if ((*sD_DOF)[locInd[i]] > distVec[i]) {
-	    (*sD_DOF)[locInd[i]] = distVec[i];
-	    //If distance is corrected, calculate new velocity.
-	    if(velExt != NULL)
-	      {
-		velExt->calcVelocityBoundary(locInd, i);
-	      }
-	  }
-	}
-      }
-    }  // end of: elStatus == ElementLevelSet::LEVEL_SET_BOUNDARY
-    
-    else if (elLS->getNumVertIntPoints() != 0){
-//       // Interface cuts element only in vertices.
-//       elVertStatusVec = elLS->getElVertStatusVec();
-      
-//       for (int i=0; i<=dim; ++i) {
-// 	if (elVertStatusVec[i] == ElementLevelSet::LEVEL_SET_BOUNDARY) {
-// 	  (*bound_DOF)[locInd[i]] = 1.0;
-// 	  (*sD_DOF)[locInd[i]] = 0.0;
-// 	  }
-//       }
-
-      ERROR_EXIT("intersection point is element vertex. should never happen !\n");
-    } 
-    
-    elInfo = stack.traverseNext(elInfo);
-  }  // end of: mesh traverse
-  
-  FREE_MEMORY(locInd, DegreeOfFreedom, nBasFcts);
-  
-  return;
-}
-
-void 
-HL_SignedDistLevels::Mesh_to_SMI_and_quantity()
-{
-  if(!smiAdapter)
-    {
-      smiAdapter = NEW SMIAdapter(1, 1,
-				  const_cast<FiniteElemSpace*>(feSpace),
-				  1, -1);
-    }
-  
-  // cout << "\n\n\tSMI-Adapter angelegt !\n\n";
-  
-  //====== transfer Mesh to SMI ======================
-  
-  smiAdapter->addNeighbourInfo();
-  
-  // cout << "\n\n\tNachbarschafts-Infos in SMI ergaenzt !\n\n";
-  
-  smiAdapter-> transferMeshToSMI();
-  
-  //   cout << "\n\n\tGitter nach SMI geschrieben !\n\n";
-  
-  int smiError = SMI_Begin_write_transaction(1,1);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Begin_write_transaction() failed with error %d\n", smiError);
-  
-  int nul = 0;
-  int *null = new int [dim+1];
-  for (int i=0; i<=dim; i++)
-    {
-      null[i] = nul;
-    }
-
-  //which pair of element and node is saved in list
-  smiError = 
-    SMI_Add_quantity(1, 1, 1, SMI_LOC_ELEM, SMI_TYPE_INT, dim+1, null);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Add_quantity() failed with error %d\n", smiError);
-
-  //which node is a boundary-node
-  smiError = SMI_Add_quantity(1, 1, 2, SMI_LOC_NODE, SMI_TYPE_INT, 1, &nul);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Add_quantity() failed with error %d\n", smiError);
-
-  //saves the number of tried updates
-  smiError = SMI_Add_quantity(1, 1, 3, SMI_LOC_NODE, SMI_TYPE_INT, 1, &nul);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Add_quantity() failed with error %d\n", smiError);
-
-  //saves the number of updates
-  smiError = SMI_Add_quantity(1, 1, 4, SMI_LOC_NODE, SMI_TYPE_INT, 1, &nul);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Add_quantity() failed with error %d\n", smiError);
-
-  //how often a node is saved in the second list
-  smiError = SMI_Add_quantity(1, 1, 5, SMI_LOC_NODE, SMI_TYPE_INT, 1, &nul);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Add_quantity() failed with error %d\n", smiError);
-
-  //saves the level of an element
-  smiError = SMI_Add_quantity(1, 1, 6, SMI_LOC_ELEM, SMI_TYPE_INT, 1, 
-			      &inftyValue);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Add_quantity() failed with error %d\n", smiError);
-
-  // cout << "\n\n\tQuantities in SMI ergaenzt !\n\n";
-
-  delete [] null;
-}
-
-void 
-HL_SignedDistLevels::createFirstList(const int elStatus, 
-				     const int *elVertStatusVec, 
-				     int ElNum, 
-				     const int NumVertIntPoints)
-{
-  int *sv = new int[dim+1];
-  int *nodeIndices;
-  int nul = 0;
-  int smiError;
-  
-  if (elStatus == ElementLevelSet::LEVEL_SET_BOUNDARY)
-    {
-      List_Element.push(ElNum);
-
-      smiError = 
-	SMI_Set_quantity_values(1, 1, 6, SMI_TYPE_INT, 1, 1, &ElNum, &nul);
-      TEST_EXIT(smiError == SMI_OK)
-	("SMI_Set_quantity_values() failed with error %d\n", smiError);
-
-      //saving which nodes are boundary-nodes
-      for (int i=0; i<=dim; i++)
-	{
-	  sv[i] = 1;
-	}
-
-      smiError =
-	SMI_Get_elems(1, 1, 1, const_cast<DegreeOfFreedom*>(&ElNum),
-		      NULL, &nodeIndices, NULL, NULL);
-      TEST_EXIT(smiError == SMI_OK)
-	("SMI_Get_elems() failed with error %d\n", smiError);
-      
-      smiError = 
-	SMI_Set_quantity_values(1, 1, 2, SMI_TYPE_INT, 1, 3, nodeIndices, sv);
-      TEST_EXIT(smiError == SMI_OK)
-	("SMI_Set_quantity_values() failed with error %d\n", smiError);
-    }
-  //if the elemet isn't a boundary-element, but the interface cuts the FE in two nodes
-//   else if (NumVertIntPoints == dim)
-//     {
-//       List_Element.push( ElNum );           
-
-//       smiError = 
-// 	SMI_Set_quantity_values(1, 1, 6, SMI_TYPE_INT, 1, 1, &ElNum, &nul);
-//       TEST_EXIT(smiError == SMI_OK)
-// 	("SMI_Set_quantity_values() failed with error %d\n", smiError);
-      
-//       //saving which nodes are boundary-nodes
-//       for (int i=0; i<=dim; i++)
-// 	{
-// 	  if(elVertStatusVec[i] == ElementLevelSet::LEVEL_SET_BOUNDARY)
-// 	    {
-// 	      sv[i] = 1;
-// 	    }
-// 	  else
-// 	    {
-// 	      sv[i] = 0;
-// 	    }
-
-// 	  smiError = 
-// 	    SMI_Get_elems(1, 1, 1, const_cast<DegreeOfFreedom*>(&ElNum),
-// 			  NULL, &nodeIndices, NULL, NULL);
-// 	  TEST_EXIT(smiError == SMI_OK)
-// 	    ("SMI_Get_elems() failed with error %d\n", smiError);
-
-// 	  smiError = 
-// 	    SMI_Set_quantity_values(1, 1, 2, SMI_TYPE_INT, 1, 3,
-// 				    nodeIndices, sv);
-// 	  TEST_EXIT(smiError == SMI_OK)
-// 	    ("SMI_Set_quantity_values() failed with error %d\n", smiError);
-// 	}
-//     }
-  
-  delete [] sv;
-}
-  
-void 
-HL_SignedDistLevels::HL_updateIteration()
-{
-  int numNodes;
-  int *nodeIndices;
-  int max_q3 = 0;
-  int max_q4 = 0;
-  int sum_q3 = 0;
-  int sum_q4 = 0;
-  clock_t time1;
-  clock_t time2;
-  double TIME;
-  int control;
-  
-  int smiError = 
-    SMI_Get_all_nodes(1, 1, const_cast<DegreeOfFreedom*>(&numNodes),
-		      &nodeIndices);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Get_all_nodes() failed with error %d\n", smiError);
-
-  int *values_q3 = new int [numNodes];
-  int *values_q4 = new int [numNodes];
-  
-  GET_PARAMETER(0,"SignedDist->count updates", "%d", &count_updates);
-  
-  time1 = clock();
-  control = traverseListElement();
-  time2 = clock();
-  TIME = TIME_USED(time1, time2);
-  
-  cout<<"Zeit zum durchlaufen der ersten (Elementen-) Liste: "<<TIME<<" sec.\n\n";
-  if(control == 1)
-    {
-      createLevels ();
-    }
-  
-  /////////////////////////////////
-  
-  
-  //print chosen level in a file
-  if (print_level == 1)
-    {
-      DOFVector<double> *level_DOF = NEW DOFVector<double>(sD_DOF->getFeSpace(), 
-							   "level_DOF");
-      
-      int numElems;
-      int *elemIndices;
-      int *NodeIndices;
-      
-      smiError = SMI_Get_all_elems(1, 1, &numElems, &elemIndices);
-      TEST_EXIT(smiError == SMI_OK)
-	("SMI_Get_all_elems() failed with error %d\n", smiError);
-      
-      int *value_q6 = new int [numElems];
-      
-      smiError =
-	SMI_Get_quantity_values(1, 1, 6, SMI_TYPE_INT, 1, numElems,
-				elemIndices, value_q6);
-      TEST_EXIT(smiError == SMI_OK)
-	("SMI_Get_quantity_values() failed with error %d\n", smiError);
-      
-      for(int i=0; i<numElems; i++)
-	{	  
-	  smiError = 
-	    SMI_Get_elems(1, 1, 1, &elemIndices[i], NULL, &NodeIndices, 
-			  NULL, NULL);
-	  TEST_EXIT(smiError == SMI_OK)
-	    ("SMI_Get_elems() failed with error %d\n", smiError);
-
-	  for(int j=0; j<=dim; j++)
-	    {
-	      (*level_DOF)[NodeIndices[j]] = -1;
-	    }
-	}
-      for(int i=0; i<numElems; i++)
-	{	  
-	  smiError = 
-	    SMI_Get_elems(1, 1, 1, &elemIndices[i], NULL, &NodeIndices, 
-			  NULL, NULL);
-	  TEST_EXIT(smiError == SMI_OK)
-	    ("SMI_Get_elems() failed with error %d\n", smiError);
-
-	  if (value_q6[i] == chosen_level)
-	    {
-	      for(int j=0; j<dim+1; j++)
-		{
-		  (*level_DOF)[NodeIndices[j]] = 0;
-		}
-	    }
-	}
-      
-      FileWriter *levelFileWriter = 
-	NEW FileWriter("level->output",
-		       level_DOF->getFeSpace()->getMesh(),
-		       level_DOF);
-      levelFileWriter->writeFiles (adaptInfo, false);
-      
-      DELETE levelFileWriter;
-    }
-  
-  //end of the part for printing chosen levels
-  
-  
-  time1 = clock();
-  traversingListLevel_ ( sD_DOF );
-  time2 = clock();
-  TIME = TIME_USED(time1,time2);
-  
-  cout<<"Zeit zum Durchlaufen der zweiten  Liste (Liste von Listen): "<<TIME<<" sec.\n\n";
-  
-  std::string smiOutFile;
-  GET_PARAMETER(0, "SignedDist->count updates->output->filename", &smiOutFile);
-  cout << "count updates Ausgabe-Datei:  " << smiOutFile.c_str() << "\n\n";
-  
-  ofstream out (smiOutFile.c_str());
-  
-  smiError = 
-    SMI_Get_quantity_values(1, 1, 3, SMI_TYPE_INT, 1, numNodes, nodeIndices,
-			    values_q3);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Get_quantity_values() failed with error %d\n", smiError);
-
-  smiError =
-    SMI_Get_quantity_values(1, 1, 4, SMI_TYPE_INT, 1, numNodes, nodeIndices,
-			    values_q4);  
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Get_quantity_values() failed with error %d\n", smiError);
-  
-  for (int i=0; i<numNodes; i++)
-    {
-      out<<nodeIndices[i]<<" "<<values_q3[i]<<" "<<values_q4[i]<<"\n";
-      
-      if(max_q3 < values_q3[i])
-	{
-	  max_q3 = values_q3[i];
-	}
-      if(max_q4 < values_q4[i])
-	{
-	  max_q4 = values_q4[i];
-	}
-      sum_q3 = sum_q3 + values_q3[i];
-      sum_q4 = sum_q4 + values_q4[i];
-    }
-  
-  out<<"\n\n maximale Anzahl an versuchten Updates auf einem Knoten: "<<max_q3<<"\n maximale Anzahl an durchgefuehrten Updates auf einem Knoten:  "<<max_q4<<"\n";
-  out<<"\n Summe aller versuchten Updates: "<<sum_q3<<"\n Summe aller durchgefuehrten updates: "<<sum_q4<<"\n";
-  
-  out<<"Anzahl an Knoten: "<<numNodes<<"\n";
-  
-  out.close();
-  
-  smiError = SMI_End_write_transaction(1, 1);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_End_write_transaction() failed with error %d\n", smiError);
-  
-  return;
-}
- 
-int 
-HL_SignedDistLevels::traverseListElement()
-{
-  int Element;
-  
-  bool neighboursExist;
-  bool neighbourInNewListSet = false;
-  
-  while (List_Element.size() != 0)
-    {
-      Element = List_Element.front();
-      
-      neighboursExist =  collectNeighbours_setLevels (Element, 0, &neighbourInNewListSet);
-      
-      List_Element.pop();
-    }
-  
-  //within the function "collectNeighbours_setLevels" the new pairs are saved in the list "level"
-  //this list will be one entry of the list "Level_"
-  if (neighbourInNewListSet)
-    {
-      Level_.push_back (Level);
-    }
-  
-  while (Level.size() != 0)
-    {
-      Level.pop();
-    }
-  if (!neighbourInNewListSet)
-    {
-      return 0;
-    }
-  else
-    {
-      return 1;
-    }
-  
-}
-
-void 
-HL_SignedDistLevels::createLevels ()
-{
-  bool neighbourExists = true;
-  bool stop = false;
-  Vert_Struct vertStruct;
-  int i = 0;
-  bool elementInNextListSet = true;
-  int value_q2;
-  int smiError;
-  
-  while(elementInNextListSet)
-    {
-      stop = false;
-      neighbourExists = false;
-      elementInNextListSet = false;
-      
-      while(Level_[i].size() != 0) 
-	{
-	  vertStruct =  Level_[i].front();
-	  
-	  neighbourExists = collectNeighbours_setLevels (vertStruct.ElNum, i+1, &elementInNextListSet);
-	  
-	  smiError = 
-	    SMI_Get_quantity_values(1, 1, 2, SMI_TYPE_INT, 1, 1, 
-				    &vertStruct.VertNum, &value_q2);
-	  TEST_EXIT(smiError == SMI_OK)
-	    ("SMI_Get_quantity_values() failed with error %d\n", smiError);
-
-	  if(value_q2 == 0)
-	    {
-	      helpLevel.push (vertStruct);
-	    }
-	  Level_[i].pop();
-	}
-      
-      Level_[i] = helpLevel;
-      while (helpLevel.size() != 0)
-	{
-	  helpLevel.pop();
-	}
-      
-      if(elementInNextListSet)
-	{
-	  Level_.push_back (Level);
-	}
-      
-      while (Level.size() != 0)
-	{
-	  Level.pop();
-	}
-      i++;
-    }
-}
-
-bool 
-HL_SignedDistLevels::collectNeighbours_setLevels (const int Element,
-						  const int currentIndex,
-						  bool *elementInNewListSet)
-{
-  Vert_Struct vertStruct;
-  
-  int *neighbour=new int[dim+1];
-  int *oppVertices=new int[dim+1];
-  int *value = new int [dim+1];
-  int saved_level;
-  int value_q5;
-  int *nodeIndices;
-  int *nodeIndicesOfElem;
-  int smiError;
-
-  bool neighbourExists = false;
-  
-  smiAdapter->getNeighbourInfo(Element, neighbour, oppVertices);
-  
-  for ( int i=0; i<=dim; i++)
-    {
-      //if this neighbour exists it will be saved in a list according to it's level
-      if(neighbour[i] != -1)
-	{
-	  neighbourExists = true;
-
-	  //calling old level and saving new level if necessary
-	  smiError =
-	    SMI_Get_quantity_values(1, 1, 6, SMI_TYPE_INT, 1, 1, 
-				    &neighbour[i], &saved_level);
-	  TEST_EXIT(smiError == SMI_OK)
-	    ("SMI_Get_quantity_values() failed with error %d\n", smiError);
-
-	  if(saved_level > currentIndex)
-	    {
-	      saved_level = currentIndex+1;
-
-	      smiError =
-		SMI_Set_quantity_values (1, 1, 6, SMI_TYPE_INT, 1, 1, 
-					 &neighbour[i], &saved_level);
-	      TEST_EXIT(smiError == SMI_OK)
-		("SMI_Set_quantity_values() failed with error %d\n", 
-		 smiError);
-	      
-	      smiError =
-		SMI_Get_elems(1, 1, 1, &neighbour[i], NULL, &nodeIndices, 
-			      NULL,NULL);
-	      TEST_EXIT(smiError == SMI_OK)
-		("SMI_Get_elems() failed with error %d\n", 
-		 smiError);
-	      
-	      smiError = 
-		SMI_Get_quantity_values(1, 1, 1, SMI_TYPE_INT, dim+1, 1,
-					&neighbour[i], value);
-	      TEST_EXIT(smiError == SMI_OK)
-		("SMI_Get_quantity_values() failed with error %d\n", 
-		 smiError);
-
-	      if (value[oppVertices[i]] == 0)
-		{
-		  vertStruct.ElNum = neighbour[i] ;
-		  vertStruct.VertNum = oppVertices[i];                           
-		  Level.push( vertStruct );
-		  value[oppVertices[i]] = 1;
-		  (*elementInNewListSet) = true;
-		  
-		  //counts how often a node is saved in the list of lists
-		  if(count_in_list == 1)
-		    {
-		      smiError = 
-			SMI_Get_elems(1, 1, 1,
-				      const_cast<DegreeOfFreedom*>(&(vertStruct.ElNum)), 
-				      NULL, &nodeIndicesOfElem, NULL, NULL);
-		      TEST_EXIT(smiError == SMI_OK)
-			("SMI_Get_elems() failed with error %d\n", smiError);
-
-		      smiError = 
-			SMI_Get_quantity_values(1, 1, 5, SMI_TYPE_INT, 1, 1,
-						const_cast<DegreeOfFreedom*>(& nodeIndicesOfElem[vertStruct.VertNum]),
-						&value_q5);
-		      TEST_EXIT(smiError == SMI_OK)
-			("SMI_Get_quantity_values() failed with error %d\n", 
-			 smiError);
-
-		      value_q5 = value_q5 + 1;
-
-		      smiError =
-			SMI_Set_quantity_values(1, 1, 5, SMI_TYPE_INT, 1, 1,
-						const_cast<DegreeOfFreedom*>(& nodeIndicesOfElem[vertStruct.VertNum]),
-						&value_q5);
-		      TEST_EXIT(smiError == SMI_OK)
-			("SMI_Set_quantity_values() failed with error %d\n", 
-			 smiError);
-		    }
-		}
-	      //save which pairs of elements and nodes is saved in a list
-	      smiError = 
-		SMI_Set_quantity_values(1, 1, 1, SMI_TYPE_INT, dim+1, 1,
-// 					&neighbour[i], value);
-					neighbour+i, value);
-	      TEST_EXIT(smiError == SMI_OK)
-		("SMI_Set_quantity_values() failed with error %d\n", 
-		 smiError);
-	    }
-	}
-    }
-  
-  delete [] neighbour;
-  delete [] oppVertices;
-  delete [] value;
-  
-  return neighbourExists;
-  
-  
-}
-
-void 
-HL_SignedDistLevels::traversingListLevel_ ( DOFVector<double> *boundVal_DOF )
-{
-  bool Continue = true;
-  
-  Vert_Struct El_Vert;
-  
-  int Vert;
-  
-  int locVert;
-  int value_q3;
-  int value_q4;
-  int value_q5;
-  int counter = 0;
-  int *nodeIndices;
-  int *nodeIndicesOfElem;
-  double *coords = new double [(dim+1)*dim];
-  int *valuesINT=new int[dim+1];
-  double update;
-  int counter_list = 0;
-  int counter_lists_of_lists = 0;
-  FixVec<WorldVector<double> *, VERTEX> coordsOfNodes(dim);
-  for ( int i=0; i<=dim; i++)
-    {
-      coordsOfNodes[i] = new WorldVector<double>;
-    }
-  FixVec<double,VERTEX> boundVal(dim,NO_INIT);
-  WorldVector<double> helpVec;
-  int smiError;
-  
-  //for repeating the traverse of the list "Level_"
-  while (Continue == true)
-    {
-      Continue = false;
-      
-      //for traversing of the list "Level_"
-      for (int j=0; j < (signed int) Level_.size();j++)
-	{ 
-	  //for traversing the entries of the List "Level_"                    
-
-	  while (Level_[j].size() != 0)
-	    {
-	      El_Vert = Level_[j].front();
-	      Vert = El_Vert.VertNum;
-	      
-	      smiError = 
-		SMI_Get_elems (1, 1, 1, &(El_Vert.ElNum), NULL, 
-			       &(nodeIndices), NULL, NULL);
-	      TEST_EXIT(smiError == SMI_OK)
-		("SMI_Get_elems() failed with error %d\n", smiError);
-
-	      smiError =
-		SMI_Get_nodes (1, 1, 3, dim, nodeIndices, coords);
-	      TEST_EXIT(smiError == SMI_OK)
-		("SMI_Get_nodes() failed with error %d\n", smiError);
-	      
-	      //sorting of the nodes for calculating the update
-	      counter = 0;
-	      for (int i=0; i<=dim; i++)
-		{
-		  if (i == El_Vert.VertNum)      
-		    {
-		      (*(coordsOfNodes[dim]))[0]=coords[i*2];
-		      (*(coordsOfNodes[dim]))[1]=coords[i*2+1];
-		      boundVal[dim] = (*boundVal_DOF)[nodeIndices[i]];
-		      locVert = i;
-		    }
-		  else
-		    {
-		      (*(coordsOfNodes[counter]))[0]=coords[i*2];
-		      (*(coordsOfNodes[counter]))[1]=coords[i*2+1];
-		      boundVal[counter] = (*boundVal_DOF)[nodeIndices[i]];
-		      counter = counter+1;
-		    }
-		}
-	      
-	      //save permutation of vertexes for calculation of the velocity
-	      if(velExt != NULL)
-		{
-		  velExt->setPermutation(locVert, 0);
-		}
-	      update = elUpdate->calcElementUpdate( coordsOfNodes, boundVal );
-	      
-	      //for counting tried updates
-	      if(count_updates == 1)
-		{
-		  smiError =
-		    SMI_Get_quantity_values(1, 1, 3, SMI_TYPE_INT, 1, 1,
-					    &nodeIndices[locVert], &value_q3);
-		  TEST_EXIT(smiError == SMI_OK)
-		    ("SMI_Get_quantity_values() failed with error %d\n", 
-		     smiError);
-
-		  value_q3 = value_q3 + 1;
-
-		  smiError = 
-		    SMI_Set_quantity_values(1, 1, 3, SMI_TYPE_INT, 1, 1,
-					    const_cast<DegreeOfFreedom*>(&nodeIndices[locVert]),
-					    &value_q3);
-		  TEST_EXIT(smiError == SMI_OK)
-		    ("SMI_Set_quantity_values() failed with error %d\n", 
-		     smiError);
-		}
-	      
-	      //checking whether the calculated update will be set as new distance
-	      if (update < (*boundVal_DOF)[nodeIndices[locVert]] && ((*boundVal_DOF)[nodeIndices[locVert]]-update) > tol)
-		{
-		  (*boundVal_DOF)[nodeIndices[locVert]] = update;
-		  //If distance is corrected, calculate new velocity.
-		  if(velExt != NULL)
-		    {
-		      velExt->calcVelocity(nodeIndices, locVert);
-		    }
-
-		  //for counting successful updates
-		  if(count_updates == 1)
-		    {
-		      smiError =
-			SMI_Get_quantity_values(1, 1, 4, SMI_TYPE_INT, 1, 1,
-						&nodeIndices[locVert],
-						&value_q4); 
-		      TEST_EXIT(smiError == SMI_OK)
-			("SMI_Get_quantity_values() failed with error %d\n", 
-			 smiError);
-
-		      value_q4 = value_q4 + 1;
-
-		      smiError =
-			SMI_Set_quantity_values(1, 1, 4, SMI_TYPE_INT, 1, 1,
-						const_cast<DegreeOfFreedom*>(&nodeIndices[locVert]),
-						&value_q4);
-		      TEST_EXIT(smiError == SMI_OK)
-			("SMI_Set_quantity_values() failed with error %d\n", 
-			 smiError);
-		    }
-		  //??
-		  Continue = search_and_include_comb(El_Vert.ElNum, 
-						     Vert, nodeIndices, j);
-		} 
-	      
-	      smiError =
-		SMI_Get_quantity_values(1, 1, 1, SMI_TYPE_INT, dim+1, 1,
-					&El_Vert.ElNum, valuesINT);
-	      TEST_EXIT(smiError == SMI_OK)
-		("SMI_Get_quantity_values() failed with error %d\n", 
-		 smiError);
-
-	      Level_[j].pop();
-	      valuesINT[locVert] = 0;
-
-	      smiError =
-		SMI_Set_quantity_values(1, 1, 1, SMI_TYPE_INT, dim+1, 1,
-					&El_Vert.ElNum, valuesINT);
-	      TEST_EXIT(smiError == SMI_OK)
-		("SMI_Set_quantity_values() failed with error %d\n", 
-		 smiError);
-	      
-	      //counts how often a node is saved in the list of lists
-	      if(count_in_list == 1)
-		{
-		  smiError =
-		    SMI_Get_elems(1, 1, 1, 
-				  const_cast<DegreeOfFreedom*>(&(El_Vert.ElNum)), 
-				  NULL, &nodeIndicesOfElem, NULL, NULL);
-		  TEST_EXIT(smiError == SMI_OK)
-		    ("SMI_Get_elems() failed with error %d\n", smiError);
-		  
-		  smiError =
-		    SMI_Get_quantity_values(1, 1, 5, SMI_TYPE_INT, 1, 1,
-					    const_cast<DegreeOfFreedom*>(& nodeIndicesOfElem[El_Vert.VertNum]),
-					    &value_q5);
-		  TEST_EXIT(smiError == SMI_OK)
-		    ("SMI_Get_quantity_values() failed with error %d\n", 
-		     smiError);
-
-		  value_q5 = value_q5 - 1;
-
-		  smiError =
-		    SMI_Set_quantity_values(1, 1, 5, SMI_TYPE_INT, 1, 1,
-					    const_cast<DegreeOfFreedom*>(& nodeIndicesOfElem[El_Vert.VertNum]),
-					    &value_q5);
-		  TEST_EXIT(smiError == SMI_OK)
-		    ("SMI_Set_quantity_values() failed with error %d\n", 
-		     smiError);
-		}
-	      
-	      //for printing which node is how often saved in a list after a special number of tried updates
-	      if(count_in_list == 1)
-		{
-		  counter_list++;
-		  if(counter_list % print_in_list == 0)
-		    {
-		      print_quantity_5(counter_list);
-		    }
-		}	 
-	    }
-	}
-      //for printing which node is how often saved in a list at the end of the ..th traverse of the list "Level_"
-      if(count_in_list == 1)
-	{
-	  counter_lists_of_lists++;
-	  if(counter_lists_of_lists == print_in_list_2)
-	    {
-	      print_quantity_5(counter_lists_of_lists);
-	    }
-	}
-      
-    }
-  
-  delete [] coords;
-  delete [] valuesINT;
-  for ( int i=0; i<Global::getGeo(VERTEX,dim); i++)
-    {
-      delete coordsOfNodes[i];
-    }
-}
-
-bool 
-HL_SignedDistLevels::search_and_include_comb(int ElNum, 
-					     int Vert, 
-					     int *nodeIndices, 
-					     const int Index)
-{
-  bool stop_l = false;
-  bool stop_r = false;
-  bool Continue = false;
-  bool continue_out = false;
-  int neighbour_l;
-  int neighbour_r;
-  int Vert_1_l;
-  int Vert_2_l;
-  int Vert_1_r;
-  int Vert_2_r;
-  int counter;
-  int elem_l;
-  int elem_r;
-  int node_l;
-  int node_r;
-  int VertGlobal;
-  int *nodeIndicesOfElem;
-  
-  int smiError = 
-    SMI_Get_elems(1, 1, 1, const_cast<DegreeOfFreedom*>(&(ElNum)), NULL, 
-		  &nodeIndicesOfElem, NULL, NULL);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Get_elems() failed with error %d\n", smiError);
-
-  VertGlobal = nodeIndicesOfElem[Vert];
-  
-  //here the process of including elements/nodes into the second list
-  stop_l = false;
-  stop_r = false;	      
-  
-  elem_l = ElNum;
-  if (elem_l == -1)
-    {
-      stop_l = true;
-    }
-  elem_r = ElNum;
-  if (elem_r == -1)
-    {
-      stop_r = true;
-    }
-  
-  counter = 0;
-  for (int i=0; i<=dim; i++)
-    {
-      if(i != Vert && counter == 1)  
-	{
-	  node_r = i;                
-	  counter = counter + 1;
-	}
-      if(i != Vert && counter == 0)  
-	{
-	  node_l = i;                
-	  counter = counter + 1;
-	}
-      
-    }
-  
-  while (!stop_l || !stop_r)
-    {
-      //get next neighbour
-      if (!stop_l)
-	{
-	  stop_l = getNextNeighbour (elem_l, VertGlobal, node_l, neighbour_l, Vert_1_l, Vert_2_l);
-	}
-      if(!stop_r)
-	{
-	  stop_r = getNextNeighbour (elem_r, VertGlobal, node_r, neighbour_r, Vert_1_r, Vert_2_r);
-	}
-      
-      if(neighbour_l == elem_r)
-	{
-	  break;
-	}
-      
-      //indclude into the second list (only if possible)
-      if (!stop_l)
-	{
-	  Continue = includeIntoList (neighbour_l, Vert_1_l, Vert_2_l, Index);
-	  if(Continue == true)
-	    {
-	      continue_out = Continue;
-	    }
-	  if(neighbour_l == neighbour_r)
-	    {
-	      break;
-	    }
-	  //"elem_l", "node_l", "elem_r", "node_r" have to be set on the next elements
-	  node_l = getNext_node_l_r(elem_l,neighbour_l, node_l,VertGlobal);
-	  elem_l = neighbour_l;
-	  
-	}
-      if (!stop_r && neighbour_l != neighbour_r)
-	{
-	  Continue = includeIntoList (neighbour_r, Vert_1_r, Vert_2_r, Index);
-	  if(Continue == true)
-	    {
-	      continue_out = Continue;
-	    }
-	  //"elem_l", "node_l", "elem_r", "node_r" have to be set on the next elements
-	  node_r = getNext_node_l_r(elem_r,neighbour_r, node_r, VertGlobal);
-	  elem_r = neighbour_r;
-	}
-    }
-  return continue_out;                  
-}
-
-bool 
-HL_SignedDistLevels::includeIntoList (int ElNum_in, 
-				      int VertNum_1_in, 
-				      int VertNum_2_in, 
-				      const int Index)
-{
-  Vert_Struct vertStruct_0;
-  Vert_Struct vertStruct_1;
-  
-  int *nodeIndices;
-  int *valuesINT = new int[dim+1];
-  int *locVert = new int[dim];
-  int value_q2;
-  int value_q5;
-  int value_q6;
-  int smiError;
-  
-  bool Continue = false;
-  
-  if(ElNum_in != -1)
-    {
-      smiError = 
-	SMI_Get_elems(1, 1, 1, &ElNum_in, NULL, &nodeIndices, NULL, NULL); 
-      TEST_EXIT(smiError == SMI_OK)
-	("SMI_Get_elems() failed with error %d\n", smiError);
-      
-      smiError =
-	SMI_Get_quantity_values(1, 1, 1, SMI_TYPE_INT, dim+1, 1,
-				const_cast<DegreeOfFreedom*>(&ElNum_in),
-				valuesINT);
-      TEST_EXIT(smiError == SMI_OK)
-	("SMI_Get_quantity_values() failed with error %d\n", smiError);
-      
-      //if the pair of element and node isn't saved in any List and if it isn't a boundary-node include into adapting list
-      smiError = SMI_Get_quantity_values(1, 1, 2, SMI_TYPE_INT, 1, 1, 
-					 &nodeIndices[VertNum_1_in], 
-					 &value_q2);
-      TEST_EXIT(smiError == SMI_OK)
-	("SMI_Get_quantity_values() failed with error %d\n", smiError);
-
-      if(valuesINT[VertNum_1_in] == 0 && value_q2 == 0)
-	{
-	  vertStruct_0.ElNum = ElNum_in;
-	  vertStruct_0.VertNum = VertNum_1_in;
-
-	  smiError =
-	    SMI_Get_quantity_values (1, 1, 6, SMI_TYPE_INT, 1, 1, &ElNum_in,
-				     &value_q6); 
-	  TEST_EXIT(smiError == SMI_OK)
-	    ("SMI_Get_quantity_values() failed with error %d\n", smiError);
-
-	  Level_[value_q6-1].push( vertStruct_0 );
-	  
-	  //counts how often a node is saved in the list of lists
-	  if(count_in_list == 1)
-	    {
-	      smiError =
-		SMI_Get_quantity_values(1, 1, 5, SMI_TYPE_INT, 1, 1,
-					const_cast<DegreeOfFreedom*>(& nodeIndices[vertStruct_0.VertNum]),
-					&value_q5);
-	      TEST_EXIT(smiError == SMI_OK)
-		("SMI_Get_quantity_values() failed with error %d\n", 
-		 smiError);
-
-	      value_q5 = value_q5 + 1;
-
-	      smiError =
-		SMI_Set_quantity_values(1, 1, 5, SMI_TYPE_INT, 1, 1,
-					const_cast<DegreeOfFreedom*>(& nodeIndices[vertStruct_0.VertNum]),
-					&value_q5);
-	      TEST_EXIT(smiError == SMI_OK)
-		("SMI_Set_quantity_values() failed with error %d\n", 
-		 smiError);
-	    }
-	  
-	  if(value_q6-1 < Index)
-	    {
-	      Continue = true;
-	    }
-	  
-	  valuesINT[VertNum_1_in] = 1;
-
-	  smiError =
-	    SMI_Set_quantity_values(1, 1, 1, SMI_TYPE_INT, dim+1, 1,
-// 				    &ElNum_in, &valuesINT);
-				    &ElNum_in, valuesINT);
-	  TEST_EXIT(smiError == SMI_OK)
-	    ("SMI_Set_quantity_values() failed with error %d\n", smiError);
-	}
-      
-      smiError =
-	SMI_Get_quantity_values(1, 1, 2, SMI_TYPE_INT, 1, 1, 
-				&nodeIndices[VertNum_2_in], &value_q2);
-      TEST_EXIT(smiError == SMI_OK)
-	("SMI_Get_quantity_values() failed with error %d\n", smiError);
-
-      if(valuesINT[VertNum_2_in] == 0 && value_q2 == 0)
-	{
-	  vertStruct_1.ElNum = ElNum_in;
-	  vertStruct_1.VertNum = VertNum_2_in;
-
-	  smiError =
-	    SMI_Get_quantity_values(1, 1, 6, SMI_TYPE_INT, 1, 1, &ElNum_in,
-				    &value_q6); 
-	  TEST_EXIT(smiError == SMI_OK)
-	    ("SMI_Get_quantity_values() failed with error %d\n", smiError);
-
-	  Level_[value_q6-1].push( vertStruct_1 );
-	  
-	  //counts how often a node is saved in the list of lists
-	  if(count_in_list == 1)
-	    {
-	      smiError =
-		SMI_Get_quantity_values(1, 1, 5, SMI_TYPE_INT, 1, 1,
-					const_cast<DegreeOfFreedom*>(& nodeIndices[vertStruct_1.VertNum]),
-					&value_q5);
-	      TEST_EXIT(smiError == SMI_OK)
-		("SMI_Get_quantity_values() failed with error %d\n", 
-		 smiError);
-
-	      value_q5 = value_q5 + 1;
-
-	      smiError =
-		SMI_Set_quantity_values(1, 1, 5, SMI_TYPE_INT, 1, 1,
-					const_cast<DegreeOfFreedom*>(& nodeIndices[vertStruct_1.VertNum]),
-					&value_q5);
-	      TEST_EXIT(smiError == SMI_OK)
-		("SMI_Set_quantity_values() failed with error %d\n", 
-		 smiError);
-	    }
-	  
-	  if(value_q6-1 < Index)
-	    {
-	      Continue = true;
-	    }
-	  
-	  valuesINT[VertNum_2_in] = 1;
-	  
-	  smiError =
-	    SMI_Set_quantity_values(1, 1, 1, SMI_TYPE_INT, dim+1, 1, 
-				    &ElNum_in,
-				    //&valuesINT);
-				    valuesINT); 
-	  TEST_EXIT(smiError == SMI_OK)
-	    ("SMI_Set_quantity_values() failed with error %d\n", smiError);
-	}
-    }
-  
-  delete [] valuesINT;
-  delete [] locVert;
-  
-  return Continue;
-}
-
-bool 
-HL_SignedDistLevels::getNextNeighbour (const int ElNum_in, 
-				       const int Vert_Up_in, 
-				       const int VertNum_in, 
-				       int &ElNum_out, 
-				       int &VertNum_1_out, 
-				       int &VertNum_2_out)
-{
-  int *neighbour = new int[dim+1];
-  int *oppVertices = new int[dim+1];
-  int *nodeIndicesOfElem;
-  int smiError;
-  
-  smiAdapter->getNeighbourInfo(ElNum_in, neighbour,oppVertices);
-  
-  ElNum_out = neighbour [VertNum_in];
-  
-  if(ElNum_out != -1)
-    {
-      smiError =
-	SMI_Get_elems(1, 1, 1, const_cast<DegreeOfFreedom*>(&(ElNum_out)),
-		      NULL, &nodeIndicesOfElem, NULL, NULL);
-      TEST_EXIT(smiError == SMI_OK)
-	("SMI_Get_elems() failed with error %d\n", smiError);
-
-      VertNum_1_out = oppVertices[VertNum_in];
-      for (int i=0; i<=dim; i++)
-	{
-	  if (nodeIndicesOfElem[i] != Vert_Up_in && i != VertNum_1_out)  
-	    {  
-	      VertNum_2_out = i;    
-	    }
-	}
-    }
-  
-  delete [] neighbour;
-  delete [] oppVertices;
-  
-  if (ElNum_out == -1)
-    {
-      return true;
-    }
-  
-  return false;
-  
-} 
-
-int 
-HL_SignedDistLevels::getNext_node_l_r (int elem_l_r_in,
-				       int neighbour_l_r_in, 
-				       int node_l_r_in, 
-				       const int Vert)
-{
-  FUNCNAME("getNext_node_l_r()");
-
-  int *nodeIndicesOfElem;
-  int *nodeIndicesOfNeighbour = new int[dim+1];
-  int globalNextNode_l_r_out;
-  
-  int smiError =
-    SMI_Get_elems(1, 1, 1, const_cast<DegreeOfFreedom*>(&neighbour_l_r_in),
-		  NULL, &nodeIndicesOfElem, NULL, NULL);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Get_elems() failed with error %d\n", smiError);
-
-  for(int i=0; i<=dim; i++)
-    {
-      nodeIndicesOfNeighbour[i] = nodeIndicesOfElem[i];
-    }
-
-  smiError =
-    SMI_Get_elems(1, 1, 1, const_cast<DegreeOfFreedom*>(&elem_l_r_in),
-		  NULL, &nodeIndicesOfElem, NULL, NULL);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Get_elems() failed with error %d\n", smiError);
-  
-  for (int i=0; i<=dim; i++)
-    {
-      if(nodeIndicesOfElem[i] != Vert && i != node_l_r_in) 
-	{
-	  globalNextNode_l_r_out = nodeIndicesOfElem[i];
-	}
-    }
-  for (int i=0; i<=dim; i++)
-    {
-      if(nodeIndicesOfNeighbour[i] == globalNextNode_l_r_out) 
-	{
-	  return i;
-	}
-    }
-
-  ERROR_EXIT("should never be reached !\n");
-  return 0;
-}
-
-void 
-HL_SignedDistLevels::print_quantity_5 (int cntr)
-{
-  int numNodes;
-  int*nodeIndices;
-  double *coords = new double[dim];
-
-  int smiError =
-    SMI_Get_all_nodes(1, 1, const_cast<DegreeOfFreedom*>(&numNodes),
-		      &nodeIndices);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Get_alls() failed with error %d\n", smiError);
-
-  int *values_q5 = new int [numNodes];
-  
-  std::string q5_OutFile_0;
-  std::string q5_OutFile_1;
-  std::string q5_OutFile_2;
-  std::string q5_OutFile_3;
-  std::string q5_OutFile_4;
-  
-  GET_PARAMETER(0, "SignedDist->count saving->output->filename_0", &q5_OutFile_0);
-  GET_PARAMETER(0, "SignedDist->count saving->output->filename_1", &q5_OutFile_1);
-  GET_PARAMETER(0, "SignedDist->count saving->output->filename_2", &q5_OutFile_2);
-  GET_PARAMETER(0, "SignedDist->count saving->output->filename_3", &q5_OutFile_3);
-  GET_PARAMETER(0, "SignedDist->count saving->output->filename_4", &q5_OutFile_4);
-  
-  
-  char cntrStr[20];
-  sprintf(cntrStr, "%d", cntr);
-  q5_OutFile_0 += cntrStr;
-  q5_OutFile_1 += cntrStr;
-  q5_OutFile_2 += cntrStr;
-  q5_OutFile_3 += cntrStr;
-  q5_OutFile_4 += cntrStr;
-  
-  cout << "count saving Ausgabe-Datei_0:  " << q5_OutFile_0.c_str() << "\n\n";
-  cout << "count saving Ausgabe-Datei_1:  " << q5_OutFile_1.c_str() << "\n\n";
-  cout << "count saving Ausgabe-Datei_2:  " << q5_OutFile_2.c_str() << "\n\n";
-  cout << "count saving Ausgabe-Datei_3:  " << q5_OutFile_3.c_str() << "\n\n";
-  cout << "count saving Ausgabe-Datei_4:  " << q5_OutFile_4.c_str() << "\n\n";
-  
-  ofstream out_0 (q5_OutFile_0.c_str());
-  ofstream out_1 (q5_OutFile_1.c_str());
-  ofstream out_2 (q5_OutFile_2.c_str());
-  ofstream out_3 (q5_OutFile_3.c_str());
-  ofstream out_4 (q5_OutFile_4.c_str());
-
-  smiError =  
-    SMI_Get_quantity_values(1, 1, 5, SMI_TYPE_INT, 1, numNodes, nodeIndices,
-			    values_q5);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Get_quantity_values() failed with error %d\n", smiError);
-  
-  for (int i=0; i<numNodes; i++)
-    {
-      smiError =
-	SMI_Get_nodes (1, 1, 1, dim, 
-		       const_cast<DegreeOfFreedom*>(&nodeIndices[i]),
-		       coords);
-      
-      if(values_q5[i] == 0)
-	{
-	  out_0<<coords[0]<<" "<<coords[1]<<"\n";
-	}
-      if(values_q5[i] == 1)
-	{
-	  out_1<<coords[0]<<" "<<coords[1]<<"\n";
-	}
-      if(values_q5[i] == 2)
-	{
-	  out_2<<coords[0]<<" "<<coords[1]<<"\n";
-	}
-      if(values_q5[i] == 3)
-	{
-	  out_3<<coords[0]<<" "<<coords[1]<<"\n";
-	}
-      if(values_q5[i] >= 4)
-	{
-	  out_4<<coords[0]<<" "<<coords[1]<<"\n";
-	}
-      
-      
-    }
-  
-  out_0.close();
-  out_1.close();
-  out_2.close();
-  out_3.close();
-  out_4.close();
-  
-  delete [] coords;
-  delete [] values_q5;
-}
-
-void 
-HL_SignedDistLevels::print_quantity_6 ()
-{
-  std::string smiOutFile2;
-  GET_PARAMETER(0, "SignedDist->print levels->filename2", &smiOutFile2);
-  cout << "count levels Ausgabe-Datei:  " << smiOutFile2.c_str() << "\n\n";
-  
-  ofstream out2 (smiOutFile2.c_str());
-  
-  int numElems;
-  int *elemIndices;
-  
-  int smiError = SMI_Get_all_elems(1, 1, &numElems, &elemIndices);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Get_all_elems() failed with error %d\n", smiError);
-  
-  int *value_q6 = new int [numElems];
-  
-  smiError =
-    SMI_Get_quantity_values(1, 1, 6, SMI_TYPE_INT, 1, numElems, elemIndices,
-			    value_q6);
-  TEST_EXIT(smiError == SMI_OK)
-    ("SMI_Get_quantity_values() failed with error %d\n", smiError);
-
-  int cl=0;
-  for (int i=0; i<numElems; i++)
-    {
-      out2<<elemIndices[i]<<" "<<value_q6[i]<<"\n";
-      
-      if(value_q6[i] == 100000)
-	{
-	  cl=cl +1;
-	}
-    }
-  
-  out2.close();
-}
diff --git a/AMDiS/Reinit/src/HL_SignedDistLevels.h b/AMDiS/Reinit/src/HL_SignedDistLevels.h
deleted file mode 100644
index 38eb9712fce4397bbb86854c80c46351c74b384c..0000000000000000000000000000000000000000
--- a/AMDiS/Reinit/src/HL_SignedDistLevels.h
+++ /dev/null
@@ -1,246 +0,0 @@
-// ============================================================================
-// ==                                                                        ==
-// == AMDiS - Adaptive multidimensional simulations                          ==
-// ==                                                                        ==
-// ==  http://www.amdis-fem.org                                              ==
-// ==                                                                        ==
-// ============================================================================
-//
-// Software License for AMDiS
-//
-// Copyright (c) 2010 Dresden University of Technology 
-// All rights reserved.
-// Authors: Simon Vey, Thomas Witkowski et al.
-//
-// This file is part of AMDiS
-//
-// See also license.opensource.txt in the distribution.
-
-
-
-
-#ifndef HL_SIGNEDDISTLEVELS
-#define HL_SIGNEDDISTLEVELS
-
-#include <queue>
-#include <vector>
-#include <time.h>
-#include "ElInfo.h"
-#include "FixVec.h"
-#include "Traverse.h"
-#include "ElementLevelSet.h"
-#include "BoundaryElementDist.h"
-#include "ElementUpdate.h"
-#include "ElementUpdate_2d.h"
-#include "ElementUpdate_3d.h"
-#include "HL_SignedDist.h"
-#include "VelocityExt.h"
-#include "SMIAdapter.h"
-#include "smi.h"
-
-using namespace AMDiS;
-
-typedef struct
-{
-  int ElNum;
-  int VertNum;
-} Vert_Struct;
-
-class HL_SignedDistLevels : public HL_SignedDist
-{
-public:
-  HL_SignedDistLevels(const char *name_, 
-		      int dim_,
-		      bool doVelocityExt = false,
-		      Flag velExtType_ = VEL_EXT)
-    : HL_SignedDist(name_, dim_, doVelocityExt, velExtType_),
-      smiAdapter(NULL)
-  {
-    FUNCNAME("HL_SignedDistLevels::HL_SignedDistLevels()");
-
-    // ===== Read parameters from init file. =====
-    GET_PARAMETER(0, name + "->tolerance", "%f", &tol);
-    GET_PARAMETER(0, name + "->count_how_often_saved_in_list", "%d", &count_in_list);
-    GET_PARAMETER(0, name + "->save_in_list->the ..th", "%d", &print_in_list);
-    GET_PARAMETER(0, name + "->save_in_list->after the ..th traversing of the list", "%d", &print_in_list_2);
-    GET_PARAMETER(0, name + "->print_level", "%d", &chosen_level);
-    GET_PARAMETER(0, name + "->print_level_yes_no", "%d", &print_level);
-
-    TEST_EXIT(tol > 0)("illegal tolerance !\n");
-  }
-
- protected:
-  /**
-   * Initializes the boundary: calculation of the distance of boundary 
-   * vertices to the interface. 
-   * Interface is given by \ref lS_DOF and result is stored in 
-   * \ref sD_DOF.
-   */
-  void initializeBoundary();
-
-  /**
-   * function for transvering Mesh to SMi an Adding the quantities
-   **/
-  void Mesh_to_SMI_and_quantity ();
-
-  /**
-   * function for creating the first list, in which elementnumber of 
-   * boundary-elements are saved
-   */
-  void createFirstList(const int elStatus, 
-		       const int *elVertStatusVec, 
-		       int ElNum, 
-		       const int NumVertIntPoints);
-
-  /**
-   * Calculates the distance function and stores result in sD_DOF.
-   * Requirement: The boundary values are already set in \ref sD_DOF.
-   */
-  void HL_updateIteration();
-
-  /**
-   * function for traversing the list "List_Element"
-   * returns 1 if min one element is set in the new list
-   * returns 0 if no element is set in the new list
-   */ 
-  int traverseListElement();
-
-  /**
-   * function for creating all levels higher than 1 an saving pairs of 
-   * elements and node in the right list
-   **/
-  void createLevels ();
- 
-  /**
-   * function collects the next neighbours, creates an according list 
-   * and saves the pair in it
-   * returns true if one or more neighbours exist and false if not
-   **/
-  bool collectNeighbours_setLevels (const int Element,
-				    const int currentIndex,
-				    bool *elementInNewListSet);
-
-  /**
-   * function for traversing the list of list, named "Level_"
-   **/ 
-  void traversingListLevel_ ( DOFVector<double> *boundVal_DOF );
- 
-  /**
-   * calls the next neighbours and puts them into the right list
-   * returns true if an element had to be saved in an lower level 
-   * than the current index
-   * this means the loop over all lists Level_[i] has to be repaeated again
-   * "Vert" is a local node
-   **/
-  bool search_and_include_comb(int ElNum, 
-			       int Vert, 
-			       int *nodeIndices, 
-			       const int Index);
-
-  /**
-   * checking whether the element "ElNum_in" has to be included into 
-   * the second list
-   * if yes it will be included
-   * returns true if the level of the element is smaler than he current index
-   * returns false if the level is greater thean the current index
-   * "Vert_1_in" and "Vert_2_in" are localvertizes
-   */ 
-  bool includeIntoList (int ElNum_in, 
-			int VertNum_1_in, 
-			int VertNum_2_in, 
-			const int Index);
- 
-  /**
-   * gets the neighbour according to the node "VertNum_in" and two of 
-   * its nodes (in local koordinates)
-   * returns "false" if the called neighbour exists and "true" if not
-   * Vert_Up_in is given in global coordinates, the other points are 
-   * given in local coordinates
-   */ 
-  bool getNextNeighbour (const int ElNum_in, 
-			 const int Vert_Up_in, 
-			 const int VertNum_in, 
-			 int &ElNum_out, 
-			 int &VertNum_1_out, 
-			 int &VertNum_2_out);
-
-  /**
-   * function needed in the function "traversingListELVert"
-   **/
-  int getNext_node_l_r (int elem_l_r_in,
-			int neighbour_l_r_in, 
-			int node_l_r_in, 
-			const int Vert);
-
-  //==================================
-  void print_quantity_5 (int cntr);
-
-  /**
-   * function for printinq the quantity 6
-   * attention: we need at least read_transaction in smi for calling 
-   * this function
-   **/
-  void print_quantity_6 ();
-  //====================================
-
- protected:
-  /**
-   * Tolerance for Hopf-Lax update iteration loop.
-   */
-  double tol;
-
-  /**
-   * is needed for transfering the mesh to SMI
-   */
-  SMIAdapter *smiAdapter;
-
-  /**
-   * in this list boundary-elements are saved;
-   * is needed for creating the list "List_El_Vert"
-   */
-  queue<int> List_Element;
-  
-  /**
-   * in this list structs filled with element-number and vertex-number 
-   * are saved;
-   * is needed for traversing the mesh efficiently
-   */
-  queue<Vert_Struct> Level;
-  
-  queue<Vert_Struct> helpLevel;
-  
-  queue<Vert_Struct> List_El_Vert;       //Listen noch einmal kontrollieren!
-  
-  /**
-   * in this vector the lists of different levels are saved
-   **/
-  vector<queue<Vert_Struct> > Level_;
-
-  /**
-   * 0 ->do not count updates
-   * 1 ->count updates
-   **/ 
-  int count_updates; 
-
-  /**
-   * 1 -> it will be count how often a node is saved in the second list
-   * 0 ->it will not be count
-   **/ 
-  int count_in_list; 
-
-  int print_in_list;
-  int print_in_list_2;
-  
-  /**
-   * level which will be printed in a file
-   **/
-  int chosen_level;
-  
-  /**
-   * 1->a special level will be printed in a file
-   * 0->no level is printed in a file
-   **/
-  int print_level;
-};
-
-#endif  // HL_SIGNEDDISTLEVELS
diff --git a/AMDiS/src/Makefile.am b/AMDiS/src/Makefile.am
index 6596db1e68d404acfb43f4307d18ee673d4a58a3..0bdb5be1344b6463f84d0eabd90f00d80fd201f9 100644
--- a/AMDiS/src/Makefile.am
+++ b/AMDiS/src/Makefile.am
@@ -1,4 +1,4 @@
-lib_LTLIBRARIES = libamdis.la libcompositeFEM.la
+lib_LTLIBRARIES = libamdis.la libcompositeFEM.la libreinit.la
 
 LIB_DIR = ../lib
 PARALLEL_DIR = $(SOURCE_DIR)
@@ -249,6 +249,21 @@ parallel/ParMetisPartitioner.h \
 parallel/PetscSolver.h \
 parallel/StdMpi.h \
 parallel/ZoltanPartitioner.h \
+reinit/BoundaryElementDist.h \
+reinit/BoundaryElementEdgeDist.h \
+reinit/BoundaryElementLevelSetDist.h \
+reinit/BoundaryElementNormalDist.h \
+reinit/BoundaryElementTopDist.h \
+reinit/ElementLevelSet.h \
+reinit/ElementUpdate.h \
+reinit/ElementUpdate_2d.h \
+reinit/ElementUpdate_3d.h \
+reinit/HL_SignedDist.h \
+reinit/HL_SignedDistBornemann.h \
+reinit/HL_SignedDistTraverse.h \
+reinit/NormEps.h \
+reinit/VelocityExt.h \
+reinit/VelocityExtFromVelocityField.h \
 time/RosenbrockAdaptInstationary.h \
 time/RosenbrockStationary.h \
 time/RosenbrockMethod.h 
@@ -377,3 +392,19 @@ compositeFEM/LevelSetAdaptMesh.cc \
 compositeFEM/PenaltyOperator.cc \
 compositeFEM/SubElementAssembler.cc \
 compositeFEM/SubPolytope.cc
+
+libreinit_la_CXXFLAGS = $(libamdis_la_CXXFLAGS)
+libreinit_la_SOURCES = \
+reinit/BoundaryElementDist.cc \
+reinit/BoundaryElementEdgeDist.cc \
+reinit/BoundaryElementLevelSetDist.cc \
+reinit/BoundaryElementNormalDist.cc \
+reinit/BoundaryElementTopDist.cc \
+reinit/ElementLevelSet.cc \
+reinit/ElementUpdate_2d.cc \
+reinit/ElementUpdate_3d.cc \
+reinit/HL_SignedDist.cc \
+reinit/HL_SignedDistTraverse.cc \
+reinit/NormEps.cc \
+reinit/VelocityExt.cc \
+reinit/VelocityExtFromVelocityField.cc
\ No newline at end of file
diff --git a/AMDiS/src/Makefile.in b/AMDiS/src/Makefile.in
index f09b96de44432b8fe08adb0c41beb311ff375ffd..57fb5d7559ea4d12b25e458f6fbb3bf657dd1c23 100644
--- a/AMDiS/src/Makefile.in
+++ b/AMDiS/src/Makefile.in
@@ -213,6 +213,19 @@ am_libcompositeFEM_la_OBJECTS = libcompositeFEM_la-CFE_Integration.lo \
 	libcompositeFEM_la-SubElementAssembler.lo \
 	libcompositeFEM_la-SubPolytope.lo
 libcompositeFEM_la_OBJECTS = $(am_libcompositeFEM_la_OBJECTS)
+libreinit_la_LIBADD =
+am_libreinit_la_OBJECTS = libreinit_la-BoundaryElementDist.lo \
+	libreinit_la-BoundaryElementEdgeDist.lo \
+	libreinit_la-BoundaryElementLevelSetDist.lo \
+	libreinit_la-BoundaryElementNormalDist.lo \
+	libreinit_la-BoundaryElementTopDist.lo \
+	libreinit_la-ElementLevelSet.lo \
+	libreinit_la-ElementUpdate_2d.lo \
+	libreinit_la-ElementUpdate_3d.lo libreinit_la-HL_SignedDist.lo \
+	libreinit_la-HL_SignedDistTraverse.lo libreinit_la-NormEps.lo \
+	libreinit_la-VelocityExt.lo \
+	libreinit_la-VelocityExtFromVelocityField.lo
+libreinit_la_OBJECTS = $(am_libreinit_la_OBJECTS)
 DEFAULT_INCLUDES = -I. -I$(srcdir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__depfiles_maybe = depfiles
@@ -224,9 +237,10 @@ LTCXXCOMPILE = $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) \
 CXXLD = $(CXX)
 CXXLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXXLD) $(AM_CXXFLAGS) \
 	$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-SOURCES = $(libamdis_la_SOURCES) $(libcompositeFEM_la_SOURCES)
+SOURCES = $(libamdis_la_SOURCES) $(libcompositeFEM_la_SOURCES) \
+	$(libreinit_la_SOURCES)
 DIST_SOURCES = $(am__libamdis_la_SOURCES_DIST) \
-	$(libcompositeFEM_la_SOURCES)
+	$(libcompositeFEM_la_SOURCES) $(libreinit_la_SOURCES)
 nobase_includeHEADERS_INSTALL = $(install_sh_DATA)
 HEADERS = $(nobase_include_HEADERS)
 ETAGS = etags
@@ -356,12 +370,11 @@ sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-lib_LTLIBRARIES = libamdis.la libcompositeFEM.la
+lib_LTLIBRARIES = libamdis.la libcompositeFEM.la libreinit.la
 LIB_DIR = ../lib
 PARALLEL_DIR = $(SOURCE_DIR)
 PARMETIS_DIR = ../lib/ParMetis-3.1
-AMDIS_INCLUDES = -I$(SOURCE_DIR) $(am__append_3) $(am__append_5) \
-	$(am__append_8)
+AMDIS_INCLUDES = $(am__append_3) $(am__append_5) $(am__append_8)
 libamdis_la_CXXFLAGS = $(am__append_2) $(am__append_4) $(am__append_6) \
 	$(am__append_7) $(am__append_9) $(am__append_10) \
 	$(am__append_11)
@@ -559,6 +572,21 @@ parallel/ParMetisPartitioner.h \
 parallel/PetscSolver.h \
 parallel/StdMpi.h \
 parallel/ZoltanPartitioner.h \
+reinit/BoundaryElementDist.h \
+reinit/BoundaryElementEdgeDist.h \
+reinit/BoundaryElementLevelSetDist.h \
+reinit/BoundaryElementNormalDist.h \
+reinit/BoundaryElementTopDist.h \
+reinit/ElementLevelSet.h \
+reinit/ElementUpdate.h \
+reinit/ElementUpdate_2d.h \
+reinit/ElementUpdate_3d.h \
+reinit/HL_SignedDist.h \
+reinit/HL_SignedDistBornemann.h \
+reinit/HL_SignedDistTraverse.h \
+reinit/NormEps.h \
+reinit/VelocityExt.h \
+reinit/VelocityExtFromVelocityField.h \
 time/RosenbrockAdaptInstationary.h \
 time/RosenbrockStationary.h \
 time/RosenbrockMethod.h 
@@ -685,6 +713,22 @@ compositeFEM/PenaltyOperator.cc \
 compositeFEM/SubElementAssembler.cc \
 compositeFEM/SubPolytope.cc
 
+libreinit_la_CXXFLAGS = $(libamdis_la_CXXFLAGS)
+libreinit_la_SOURCES = \
+reinit/BoundaryElementDist.cc \
+reinit/BoundaryElementEdgeDist.cc \
+reinit/BoundaryElementLevelSetDist.cc \
+reinit/BoundaryElementNormalDist.cc \
+reinit/BoundaryElementTopDist.cc \
+reinit/ElementLevelSet.cc \
+reinit/ElementUpdate_2d.cc \
+reinit/ElementUpdate_3d.cc \
+reinit/HL_SignedDist.cc \
+reinit/HL_SignedDistTraverse.cc \
+reinit/NormEps.cc \
+reinit/VelocityExt.cc \
+reinit/VelocityExtFromVelocityField.cc
+
 all: all-am
 
 .SUFFIXES:
@@ -749,6 +793,8 @@ libamdis.la: $(libamdis_la_OBJECTS) $(libamdis_la_DEPENDENCIES)
 	$(CXXLINK) -rpath $(libdir) $(libamdis_la_LDFLAGS) $(libamdis_la_OBJECTS) $(libamdis_la_LIBADD) $(LIBS)
 libcompositeFEM.la: $(libcompositeFEM_la_OBJECTS) $(libcompositeFEM_la_DEPENDENCIES) 
 	$(CXXLINK) -rpath $(libdir) $(libcompositeFEM_la_LDFLAGS) $(libcompositeFEM_la_OBJECTS) $(libcompositeFEM_la_LIBADD) $(LIBS)
+libreinit.la: $(libreinit_la_OBJECTS) $(libreinit_la_DEPENDENCIES) 
+	$(CXXLINK) -rpath $(libdir) $(libreinit_la_LDFLAGS) $(libreinit_la_OBJECTS) $(libreinit_la_LIBADD) $(LIBS)
 
 mostlyclean-compile:
 	-rm -f *.$(OBJEXT)
@@ -883,6 +929,19 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcompositeFEM_la-PenaltyOperator.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcompositeFEM_la-SubElementAssembler.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcompositeFEM_la-SubPolytope.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libreinit_la-BoundaryElementDist.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libreinit_la-BoundaryElementEdgeDist.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libreinit_la-BoundaryElementLevelSetDist.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libreinit_la-BoundaryElementNormalDist.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libreinit_la-BoundaryElementTopDist.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libreinit_la-ElementLevelSet.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libreinit_la-ElementUpdate_2d.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libreinit_la-ElementUpdate_3d.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libreinit_la-HL_SignedDist.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libreinit_la-HL_SignedDistTraverse.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libreinit_la-NormEps.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libreinit_la-VelocityExt.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libreinit_la-VelocityExtFromVelocityField.Plo@am__quote@
 
 .cc.o:
 @am__fastdepCXX_TRUE@	if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
@@ -1794,6 +1853,97 @@ libcompositeFEM_la-SubPolytope.lo: compositeFEM/SubPolytope.cc
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcompositeFEM_la_CXXFLAGS) $(CXXFLAGS) -c -o libcompositeFEM_la-SubPolytope.lo `test -f 'compositeFEM/SubPolytope.cc' || echo '$(srcdir)/'`compositeFEM/SubPolytope.cc
 
+libreinit_la-BoundaryElementDist.lo: reinit/BoundaryElementDist.cc
+@am__fastdepCXX_TRUE@	if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -MT libreinit_la-BoundaryElementDist.lo -MD -MP -MF "$(DEPDIR)/libreinit_la-BoundaryElementDist.Tpo" -c -o libreinit_la-BoundaryElementDist.lo `test -f 'reinit/BoundaryElementDist.cc' || echo '$(srcdir)/'`reinit/BoundaryElementDist.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libreinit_la-BoundaryElementDist.Tpo" "$(DEPDIR)/libreinit_la-BoundaryElementDist.Plo"; else rm -f "$(DEPDIR)/libreinit_la-BoundaryElementDist.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='reinit/BoundaryElementDist.cc' object='libreinit_la-BoundaryElementDist.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -c -o libreinit_la-BoundaryElementDist.lo `test -f 'reinit/BoundaryElementDist.cc' || echo '$(srcdir)/'`reinit/BoundaryElementDist.cc
+
+libreinit_la-BoundaryElementEdgeDist.lo: reinit/BoundaryElementEdgeDist.cc
+@am__fastdepCXX_TRUE@	if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -MT libreinit_la-BoundaryElementEdgeDist.lo -MD -MP -MF "$(DEPDIR)/libreinit_la-BoundaryElementEdgeDist.Tpo" -c -o libreinit_la-BoundaryElementEdgeDist.lo `test -f 'reinit/BoundaryElementEdgeDist.cc' || echo '$(srcdir)/'`reinit/BoundaryElementEdgeDist.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libreinit_la-BoundaryElementEdgeDist.Tpo" "$(DEPDIR)/libreinit_la-BoundaryElementEdgeDist.Plo"; else rm -f "$(DEPDIR)/libreinit_la-BoundaryElementEdgeDist.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='reinit/BoundaryElementEdgeDist.cc' object='libreinit_la-BoundaryElementEdgeDist.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -c -o libreinit_la-BoundaryElementEdgeDist.lo `test -f 'reinit/BoundaryElementEdgeDist.cc' || echo '$(srcdir)/'`reinit/BoundaryElementEdgeDist.cc
+
+libreinit_la-BoundaryElementLevelSetDist.lo: reinit/BoundaryElementLevelSetDist.cc
+@am__fastdepCXX_TRUE@	if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -MT libreinit_la-BoundaryElementLevelSetDist.lo -MD -MP -MF "$(DEPDIR)/libreinit_la-BoundaryElementLevelSetDist.Tpo" -c -o libreinit_la-BoundaryElementLevelSetDist.lo `test -f 'reinit/BoundaryElementLevelSetDist.cc' || echo '$(srcdir)/'`reinit/BoundaryElementLevelSetDist.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libreinit_la-BoundaryElementLevelSetDist.Tpo" "$(DEPDIR)/libreinit_la-BoundaryElementLevelSetDist.Plo"; else rm -f "$(DEPDIR)/libreinit_la-BoundaryElementLevelSetDist.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='reinit/BoundaryElementLevelSetDist.cc' object='libreinit_la-BoundaryElementLevelSetDist.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -c -o libreinit_la-BoundaryElementLevelSetDist.lo `test -f 'reinit/BoundaryElementLevelSetDist.cc' || echo '$(srcdir)/'`reinit/BoundaryElementLevelSetDist.cc
+
+libreinit_la-BoundaryElementNormalDist.lo: reinit/BoundaryElementNormalDist.cc
+@am__fastdepCXX_TRUE@	if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -MT libreinit_la-BoundaryElementNormalDist.lo -MD -MP -MF "$(DEPDIR)/libreinit_la-BoundaryElementNormalDist.Tpo" -c -o libreinit_la-BoundaryElementNormalDist.lo `test -f 'reinit/BoundaryElementNormalDist.cc' || echo '$(srcdir)/'`reinit/BoundaryElementNormalDist.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libreinit_la-BoundaryElementNormalDist.Tpo" "$(DEPDIR)/libreinit_la-BoundaryElementNormalDist.Plo"; else rm -f "$(DEPDIR)/libreinit_la-BoundaryElementNormalDist.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='reinit/BoundaryElementNormalDist.cc' object='libreinit_la-BoundaryElementNormalDist.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -c -o libreinit_la-BoundaryElementNormalDist.lo `test -f 'reinit/BoundaryElementNormalDist.cc' || echo '$(srcdir)/'`reinit/BoundaryElementNormalDist.cc
+
+libreinit_la-BoundaryElementTopDist.lo: reinit/BoundaryElementTopDist.cc
+@am__fastdepCXX_TRUE@	if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -MT libreinit_la-BoundaryElementTopDist.lo -MD -MP -MF "$(DEPDIR)/libreinit_la-BoundaryElementTopDist.Tpo" -c -o libreinit_la-BoundaryElementTopDist.lo `test -f 'reinit/BoundaryElementTopDist.cc' || echo '$(srcdir)/'`reinit/BoundaryElementTopDist.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libreinit_la-BoundaryElementTopDist.Tpo" "$(DEPDIR)/libreinit_la-BoundaryElementTopDist.Plo"; else rm -f "$(DEPDIR)/libreinit_la-BoundaryElementTopDist.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='reinit/BoundaryElementTopDist.cc' object='libreinit_la-BoundaryElementTopDist.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -c -o libreinit_la-BoundaryElementTopDist.lo `test -f 'reinit/BoundaryElementTopDist.cc' || echo '$(srcdir)/'`reinit/BoundaryElementTopDist.cc
+
+libreinit_la-ElementLevelSet.lo: reinit/ElementLevelSet.cc
+@am__fastdepCXX_TRUE@	if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -MT libreinit_la-ElementLevelSet.lo -MD -MP -MF "$(DEPDIR)/libreinit_la-ElementLevelSet.Tpo" -c -o libreinit_la-ElementLevelSet.lo `test -f 'reinit/ElementLevelSet.cc' || echo '$(srcdir)/'`reinit/ElementLevelSet.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libreinit_la-ElementLevelSet.Tpo" "$(DEPDIR)/libreinit_la-ElementLevelSet.Plo"; else rm -f "$(DEPDIR)/libreinit_la-ElementLevelSet.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='reinit/ElementLevelSet.cc' object='libreinit_la-ElementLevelSet.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -c -o libreinit_la-ElementLevelSet.lo `test -f 'reinit/ElementLevelSet.cc' || echo '$(srcdir)/'`reinit/ElementLevelSet.cc
+
+libreinit_la-ElementUpdate_2d.lo: reinit/ElementUpdate_2d.cc
+@am__fastdepCXX_TRUE@	if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -MT libreinit_la-ElementUpdate_2d.lo -MD -MP -MF "$(DEPDIR)/libreinit_la-ElementUpdate_2d.Tpo" -c -o libreinit_la-ElementUpdate_2d.lo `test -f 'reinit/ElementUpdate_2d.cc' || echo '$(srcdir)/'`reinit/ElementUpdate_2d.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libreinit_la-ElementUpdate_2d.Tpo" "$(DEPDIR)/libreinit_la-ElementUpdate_2d.Plo"; else rm -f "$(DEPDIR)/libreinit_la-ElementUpdate_2d.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='reinit/ElementUpdate_2d.cc' object='libreinit_la-ElementUpdate_2d.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -c -o libreinit_la-ElementUpdate_2d.lo `test -f 'reinit/ElementUpdate_2d.cc' || echo '$(srcdir)/'`reinit/ElementUpdate_2d.cc
+
+libreinit_la-ElementUpdate_3d.lo: reinit/ElementUpdate_3d.cc
+@am__fastdepCXX_TRUE@	if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -MT libreinit_la-ElementUpdate_3d.lo -MD -MP -MF "$(DEPDIR)/libreinit_la-ElementUpdate_3d.Tpo" -c -o libreinit_la-ElementUpdate_3d.lo `test -f 'reinit/ElementUpdate_3d.cc' || echo '$(srcdir)/'`reinit/ElementUpdate_3d.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libreinit_la-ElementUpdate_3d.Tpo" "$(DEPDIR)/libreinit_la-ElementUpdate_3d.Plo"; else rm -f "$(DEPDIR)/libreinit_la-ElementUpdate_3d.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='reinit/ElementUpdate_3d.cc' object='libreinit_la-ElementUpdate_3d.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -c -o libreinit_la-ElementUpdate_3d.lo `test -f 'reinit/ElementUpdate_3d.cc' || echo '$(srcdir)/'`reinit/ElementUpdate_3d.cc
+
+libreinit_la-HL_SignedDist.lo: reinit/HL_SignedDist.cc
+@am__fastdepCXX_TRUE@	if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -MT libreinit_la-HL_SignedDist.lo -MD -MP -MF "$(DEPDIR)/libreinit_la-HL_SignedDist.Tpo" -c -o libreinit_la-HL_SignedDist.lo `test -f 'reinit/HL_SignedDist.cc' || echo '$(srcdir)/'`reinit/HL_SignedDist.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libreinit_la-HL_SignedDist.Tpo" "$(DEPDIR)/libreinit_la-HL_SignedDist.Plo"; else rm -f "$(DEPDIR)/libreinit_la-HL_SignedDist.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='reinit/HL_SignedDist.cc' object='libreinit_la-HL_SignedDist.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -c -o libreinit_la-HL_SignedDist.lo `test -f 'reinit/HL_SignedDist.cc' || echo '$(srcdir)/'`reinit/HL_SignedDist.cc
+
+libreinit_la-HL_SignedDistTraverse.lo: reinit/HL_SignedDistTraverse.cc
+@am__fastdepCXX_TRUE@	if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -MT libreinit_la-HL_SignedDistTraverse.lo -MD -MP -MF "$(DEPDIR)/libreinit_la-HL_SignedDistTraverse.Tpo" -c -o libreinit_la-HL_SignedDistTraverse.lo `test -f 'reinit/HL_SignedDistTraverse.cc' || echo '$(srcdir)/'`reinit/HL_SignedDistTraverse.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libreinit_la-HL_SignedDistTraverse.Tpo" "$(DEPDIR)/libreinit_la-HL_SignedDistTraverse.Plo"; else rm -f "$(DEPDIR)/libreinit_la-HL_SignedDistTraverse.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='reinit/HL_SignedDistTraverse.cc' object='libreinit_la-HL_SignedDistTraverse.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -c -o libreinit_la-HL_SignedDistTraverse.lo `test -f 'reinit/HL_SignedDistTraverse.cc' || echo '$(srcdir)/'`reinit/HL_SignedDistTraverse.cc
+
+libreinit_la-NormEps.lo: reinit/NormEps.cc
+@am__fastdepCXX_TRUE@	if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -MT libreinit_la-NormEps.lo -MD -MP -MF "$(DEPDIR)/libreinit_la-NormEps.Tpo" -c -o libreinit_la-NormEps.lo `test -f 'reinit/NormEps.cc' || echo '$(srcdir)/'`reinit/NormEps.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libreinit_la-NormEps.Tpo" "$(DEPDIR)/libreinit_la-NormEps.Plo"; else rm -f "$(DEPDIR)/libreinit_la-NormEps.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='reinit/NormEps.cc' object='libreinit_la-NormEps.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -c -o libreinit_la-NormEps.lo `test -f 'reinit/NormEps.cc' || echo '$(srcdir)/'`reinit/NormEps.cc
+
+libreinit_la-VelocityExt.lo: reinit/VelocityExt.cc
+@am__fastdepCXX_TRUE@	if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -MT libreinit_la-VelocityExt.lo -MD -MP -MF "$(DEPDIR)/libreinit_la-VelocityExt.Tpo" -c -o libreinit_la-VelocityExt.lo `test -f 'reinit/VelocityExt.cc' || echo '$(srcdir)/'`reinit/VelocityExt.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libreinit_la-VelocityExt.Tpo" "$(DEPDIR)/libreinit_la-VelocityExt.Plo"; else rm -f "$(DEPDIR)/libreinit_la-VelocityExt.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='reinit/VelocityExt.cc' object='libreinit_la-VelocityExt.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -c -o libreinit_la-VelocityExt.lo `test -f 'reinit/VelocityExt.cc' || echo '$(srcdir)/'`reinit/VelocityExt.cc
+
+libreinit_la-VelocityExtFromVelocityField.lo: reinit/VelocityExtFromVelocityField.cc
+@am__fastdepCXX_TRUE@	if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -MT libreinit_la-VelocityExtFromVelocityField.lo -MD -MP -MF "$(DEPDIR)/libreinit_la-VelocityExtFromVelocityField.Tpo" -c -o libreinit_la-VelocityExtFromVelocityField.lo `test -f 'reinit/VelocityExtFromVelocityField.cc' || echo '$(srcdir)/'`reinit/VelocityExtFromVelocityField.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libreinit_la-VelocityExtFromVelocityField.Tpo" "$(DEPDIR)/libreinit_la-VelocityExtFromVelocityField.Plo"; else rm -f "$(DEPDIR)/libreinit_la-VelocityExtFromVelocityField.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='reinit/VelocityExtFromVelocityField.cc' object='libreinit_la-VelocityExtFromVelocityField.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libreinit_la_CXXFLAGS) $(CXXFLAGS) -c -o libreinit_la-VelocityExtFromVelocityField.lo `test -f 'reinit/VelocityExtFromVelocityField.cc' || echo '$(srcdir)/'`reinit/VelocityExtFromVelocityField.cc
+
 mostlyclean-libtool:
 	-rm -f *.lo
 
@@ -1872,7 +2022,7 @@ distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 distdir: $(DISTFILES)
-	$(mkdir_p) $(distdir)/compositeFEM $(distdir)/io $(distdir)/itl $(distdir)/parallel $(distdir)/time
+	$(mkdir_p) $(distdir)/compositeFEM $(distdir)/io $(distdir)/itl $(distdir)/parallel $(distdir)/reinit $(distdir)/time
 	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
 	list='$(DISTFILES)'; for file in $$list; do \
diff --git a/AMDiS/Reinit/src/BoundaryElementDist.cc b/AMDiS/src/reinit/BoundaryElementDist.cc
similarity index 100%
rename from AMDiS/Reinit/src/BoundaryElementDist.cc
rename to AMDiS/src/reinit/BoundaryElementDist.cc
diff --git a/AMDiS/Reinit/src/BoundaryElementDist.h b/AMDiS/src/reinit/BoundaryElementDist.h
similarity index 100%
rename from AMDiS/Reinit/src/BoundaryElementDist.h
rename to AMDiS/src/reinit/BoundaryElementDist.h
diff --git a/AMDiS/Reinit/src/BoundaryElementEdgeDist.cc b/AMDiS/src/reinit/BoundaryElementEdgeDist.cc
similarity index 100%
rename from AMDiS/Reinit/src/BoundaryElementEdgeDist.cc
rename to AMDiS/src/reinit/BoundaryElementEdgeDist.cc
diff --git a/AMDiS/Reinit/src/BoundaryElementEdgeDist.h b/AMDiS/src/reinit/BoundaryElementEdgeDist.h
similarity index 100%
rename from AMDiS/Reinit/src/BoundaryElementEdgeDist.h
rename to AMDiS/src/reinit/BoundaryElementEdgeDist.h
diff --git a/AMDiS/Reinit/src/BoundaryElementLevelSetDist.cc b/AMDiS/src/reinit/BoundaryElementLevelSetDist.cc
similarity index 100%
rename from AMDiS/Reinit/src/BoundaryElementLevelSetDist.cc
rename to AMDiS/src/reinit/BoundaryElementLevelSetDist.cc
diff --git a/AMDiS/Reinit/src/BoundaryElementLevelSetDist.h b/AMDiS/src/reinit/BoundaryElementLevelSetDist.h
similarity index 100%
rename from AMDiS/Reinit/src/BoundaryElementLevelSetDist.h
rename to AMDiS/src/reinit/BoundaryElementLevelSetDist.h
diff --git a/AMDiS/Reinit/src/BoundaryElementNormalDist.cc b/AMDiS/src/reinit/BoundaryElementNormalDist.cc
similarity index 100%
rename from AMDiS/Reinit/src/BoundaryElementNormalDist.cc
rename to AMDiS/src/reinit/BoundaryElementNormalDist.cc
diff --git a/AMDiS/Reinit/src/BoundaryElementNormalDist.h b/AMDiS/src/reinit/BoundaryElementNormalDist.h
similarity index 100%
rename from AMDiS/Reinit/src/BoundaryElementNormalDist.h
rename to AMDiS/src/reinit/BoundaryElementNormalDist.h
diff --git a/AMDiS/Reinit/src/BoundaryElementTopDist.cc b/AMDiS/src/reinit/BoundaryElementTopDist.cc
similarity index 100%
rename from AMDiS/Reinit/src/BoundaryElementTopDist.cc
rename to AMDiS/src/reinit/BoundaryElementTopDist.cc
diff --git a/AMDiS/Reinit/src/BoundaryElementTopDist.h b/AMDiS/src/reinit/BoundaryElementTopDist.h
similarity index 100%
rename from AMDiS/Reinit/src/BoundaryElementTopDist.h
rename to AMDiS/src/reinit/BoundaryElementTopDist.h
diff --git a/AMDiS/Reinit/src/ElementLevelSet.cc b/AMDiS/src/reinit/ElementLevelSet.cc
similarity index 100%
rename from AMDiS/Reinit/src/ElementLevelSet.cc
rename to AMDiS/src/reinit/ElementLevelSet.cc
diff --git a/AMDiS/Reinit/src/ElementLevelSet.h b/AMDiS/src/reinit/ElementLevelSet.h
similarity index 100%
rename from AMDiS/Reinit/src/ElementLevelSet.h
rename to AMDiS/src/reinit/ElementLevelSet.h
diff --git a/AMDiS/Reinit/src/ElementUpdate.h b/AMDiS/src/reinit/ElementUpdate.h
similarity index 100%
rename from AMDiS/Reinit/src/ElementUpdate.h
rename to AMDiS/src/reinit/ElementUpdate.h
diff --git a/AMDiS/Reinit/src/ElementUpdate_2d.cc b/AMDiS/src/reinit/ElementUpdate_2d.cc
similarity index 100%
rename from AMDiS/Reinit/src/ElementUpdate_2d.cc
rename to AMDiS/src/reinit/ElementUpdate_2d.cc
diff --git a/AMDiS/Reinit/src/ElementUpdate_2d.h b/AMDiS/src/reinit/ElementUpdate_2d.h
similarity index 100%
rename from AMDiS/Reinit/src/ElementUpdate_2d.h
rename to AMDiS/src/reinit/ElementUpdate_2d.h
diff --git a/AMDiS/Reinit/src/ElementUpdate_3d.cc b/AMDiS/src/reinit/ElementUpdate_3d.cc
similarity index 100%
rename from AMDiS/Reinit/src/ElementUpdate_3d.cc
rename to AMDiS/src/reinit/ElementUpdate_3d.cc
diff --git a/AMDiS/Reinit/src/ElementUpdate_3d.h b/AMDiS/src/reinit/ElementUpdate_3d.h
similarity index 100%
rename from AMDiS/Reinit/src/ElementUpdate_3d.h
rename to AMDiS/src/reinit/ElementUpdate_3d.h
diff --git a/AMDiS/Reinit/src/HL_SignedDist.cc b/AMDiS/src/reinit/HL_SignedDist.cc
similarity index 100%
rename from AMDiS/Reinit/src/HL_SignedDist.cc
rename to AMDiS/src/reinit/HL_SignedDist.cc
diff --git a/AMDiS/Reinit/src/HL_SignedDist.h b/AMDiS/src/reinit/HL_SignedDist.h
similarity index 100%
rename from AMDiS/Reinit/src/HL_SignedDist.h
rename to AMDiS/src/reinit/HL_SignedDist.h
diff --git a/AMDiS/Reinit/src/HL_SignedDistBornemann.h b/AMDiS/src/reinit/HL_SignedDistBornemann.h
similarity index 100%
rename from AMDiS/Reinit/src/HL_SignedDistBornemann.h
rename to AMDiS/src/reinit/HL_SignedDistBornemann.h
diff --git a/AMDiS/Reinit/src/HL_SignedDistTraverse.cc b/AMDiS/src/reinit/HL_SignedDistTraverse.cc
similarity index 98%
rename from AMDiS/Reinit/src/HL_SignedDistTraverse.cc
rename to AMDiS/src/reinit/HL_SignedDistTraverse.cc
index 3ece9b84763c4edcb57540457d74aa0d2869f5f7..a0bb681f81a5cef93a8c3abe210dde7afb7cc661 100644
--- a/AMDiS/Reinit/src/HL_SignedDistTraverse.cc
+++ b/AMDiS/src/reinit/HL_SignedDistTraverse.cc
@@ -26,7 +26,7 @@ void HL_SignedDistTraverse::initializeBoundary()
   int elStatus;
   
   const int nBasFcts = feSpace->getBasisFcts()->getNumber();
-  if (locInd.size() < nBasFcts)
+  if (static_cast<int>(locInd.size()) < nBasFcts)
     locInd.resize(nBasFcts);
   
   ElInfo *elInfo;
@@ -101,6 +101,7 @@ void HL_SignedDistTraverse::initializeBoundary()
   }  // end of: mesh traverse 
 }
 
+
 void HL_SignedDistTraverse::HL_updateIteration()
 {
   // ===== Create DOF vector for the last iteration step. =====
@@ -150,13 +151,14 @@ void HL_SignedDistTraverse::HL_updateIteration()
   cout << "\tnumber of iterations needed: " << itCntr << "\n\n";
 }
 
+
 void HL_SignedDistTraverse::HL_elementUpdate(ElInfo *elInfo) 
 {
   FUNCNAME("HL_SignedDistTraverse::HL_elementUpdate()");
    
   // ===== Get global indices of vertices of element. =====
   const int nBasFcts = feSpace->getBasisFcts()->getNumber();
-  if (locInd.size() < nBasFcts)
+  if (static_cast<int>(locInd.size()) < nBasFcts)
     locInd.resize(nBasFcts);
   
   feSpace->getBasisFcts()->getLocalIndices(
@@ -195,6 +197,7 @@ void HL_SignedDistTraverse::HL_elementUpdate(ElInfo *elInfo)
   } 
 }
 
+
 double HL_SignedDistTraverse::calcElementUpdate(ElInfo *elInfo, 
 						int nXh,
 						const DegreeOfFreedom *locInd) 
@@ -241,6 +244,7 @@ double HL_SignedDistTraverse::calcElementUpdate(ElInfo *elInfo,
   return elUpdate->calcElementUpdate(elVert, uhVal);
 }
 
+
 bool HL_SignedDistTraverse::checkTol()
 {
   DOFVector<double>::Iterator it_sD(sD_DOF, USED_DOFS);
diff --git a/AMDiS/Reinit/src/HL_SignedDistTraverse.h b/AMDiS/src/reinit/HL_SignedDistTraverse.h
similarity index 100%
rename from AMDiS/Reinit/src/HL_SignedDistTraverse.h
rename to AMDiS/src/reinit/HL_SignedDistTraverse.h
diff --git a/AMDiS/Reinit/src/NormEps.cc b/AMDiS/src/reinit/NormEps.cc
similarity index 100%
rename from AMDiS/Reinit/src/NormEps.cc
rename to AMDiS/src/reinit/NormEps.cc
diff --git a/AMDiS/Reinit/src/NormEps.h b/AMDiS/src/reinit/NormEps.h
similarity index 100%
rename from AMDiS/Reinit/src/NormEps.h
rename to AMDiS/src/reinit/NormEps.h
diff --git a/AMDiS/Reinit/src/VelocityExt.cc b/AMDiS/src/reinit/VelocityExt.cc
similarity index 100%
rename from AMDiS/Reinit/src/VelocityExt.cc
rename to AMDiS/src/reinit/VelocityExt.cc
diff --git a/AMDiS/Reinit/src/VelocityExt.h b/AMDiS/src/reinit/VelocityExt.h
similarity index 77%
rename from AMDiS/Reinit/src/VelocityExt.h
rename to AMDiS/src/reinit/VelocityExt.h
index 1b73b5b8fd77b43b63e937532fe3d6ed790f3677..6996b869f82121776331f874fdd0d4b06b2cecfa 100644
--- a/AMDiS/Reinit/src/VelocityExt.h
+++ b/AMDiS/src/reinit/VelocityExt.h
@@ -50,7 +50,7 @@ public:
   {
     FUNCNAME("VelocityExt::printVelDOF()");
 
-    TEST_EXIT(i < velDOF.size())("illegal index !\n");
+    TEST_EXIT(i < static_cast<int>(velDOF.size()))("Illegal index!\n");
 
     FileWriter *fileWriter = new FileWriter(
 			     "VelocityExt->velocity output", 
@@ -66,7 +66,7 @@ public:
   {
     FUNCNAME("VelocityExt::printOrigVelDOF()");
 
-    TEST_EXIT(i < origVelDOF.size())("illegal index !\n");
+    TEST_EXIT(i < static_cast<int>(origVelDOF.size()))("Illegal index!\n");
 
     FileWriter *fileWriter = new FileWriter(
 			     "VelocityExt->interface velocity output", 
@@ -75,11 +75,9 @@ public:
     fileWriter->writeFiles(adaptInfo, false);
 
     delete fileWriter;
-  };
+  }
 
-  /**
-   * Set velocity (one velocity vector).
-   */
+  /// Set velocity (one velocity vector).
   void setVelocity(DOFVector<double> *origVelDOF_,
 		   DOFVector<double> *velDOF_)
   {
@@ -97,11 +95,9 @@ public:
 
     origVelDOF.push_back(origVelDOF_);
     velDOF.push_back(velDOF_);
-  };
+  }
 
-  /**
-   * Set velocity (multiple velocity vectors).
-   */
+  /// Set velocity (multiple velocity vectors).
   void setVelocity(std::vector<DOFVector<double> *> &origVelDOF_,
 		   std::vector<DOFVector<double> *> &velDOF_)
   {
@@ -109,8 +105,8 @@ public:
 
     nVelDOFs = origVelDOF_.size();
 
-    TEST_EXIT(nVelDOFs > 0)("illegal number of velocity vectors !\n");
-    TEST_EXIT(nVelDOFs == velDOF_.size())("different sizes !\n");
+    TEST_EXIT(nVelDOFs > 0)("Illegal number of velocity vectors!\n");
+    TEST_EXIT(nVelDOFs == static_cast<int>(velDOF_.size()))("Different sizes!\n");
 
     for (int i=0; i<nVelDOFs; ++i) {
       TEST_EXIT(origVelDOF_[i])("illegal velocity vector origVelDOF !\n");
@@ -146,18 +142,27 @@ public:
    * indexV is the index of the vertex(with respect to the numeration on the element),
    * for that the coordinates shall be stored.
    */
-  void setBarycentricCoords_2D_boundary(const double &l_0, const double &l_1, const double &l_2, const int indexV);
+  void setBarycentricCoords_2D_boundary(const double &l_0, 
+					const double &l_1, 
+					const double &l_2, 
+					const int indexV);
 
   /**
    * Sets barycentric coordinates for 2D for a vertex on a non-boundary element.
    * l_0. l_1, l_2 are the coordinates.
    */
-  void setBarycentricCoords_2D(const double &l_0, const double &l_1, const double &l_2);
+  void setBarycentricCoords_2D(const double &l_0, 
+			       const double &l_1, 
+			       const double &l_2);
 
   /**
-   * Calculates the barycentric coordinates for 2D for a vertex on a non-boundary element.
+   * Calculates the barycentric coordinates for 2D for a vertex on a 
+   * non-boundary element.
    */
-  void calcBarycentricCoords_2D(const double &c_delta, const double &c_alpha, const double &norm_zhminusyh, const double &norm_xhminusyh);
+  void calcBarycentricCoords_2D(const double &c_delta, 
+				const double &c_alpha, 
+				const double &norm_zhminusyh, 
+				const double &norm_xhminusyh);
 
   /**
    * Sets barycentric coordinates for 3D for a vertex on a boundary element
@@ -166,24 +171,33 @@ public:
    * indexV is the index of the vertex(with respect to the numeration on the element),
    * for that the coordinates shall be stored.
    */
-  void setBarycentricCoords_3D_boundary(const double &l_0, const double &l_1, const double &l_2, const double &l_3, const int indexV);
+  void setBarycentricCoords_3D_boundary(const double &l_0, 
+					const double &l_1, 
+					const double &l_2, 
+					const double &l_3, 
+					const int indexV);
+
+  /// Calculates the barycentric coordinates for 3D for a boundary vertex.
+  void calcBarycentricCoords_3D_boundary(const DimVec<double> sp1, 
+					 const DimVec<double> sp2, 
+					 const double lambda, 
+					 int i);
 
   /**
-   * Calculates the barycentric coordinates for 3D for a boundary vertex.
+   * Expands 3 coordinates from a face update to 4 coordinates and stores them in 
+   * lamVec[index]. vertNum is the index of the element face the coordinates 
+   * belong to (0, 1 or 2).
    */
-  void calcBarycentricCoords_3D_boundary(const DimVec<double> sp1, const DimVec<double> sp2, const double lambda, int i);
+  void copyAndExpandFaceCoords_3D(int vertNum, int index);
 
   /**
-   * Expands 3 coordinates from a face update to 4 coordinates and stores them in lamVec[index].
-   * vertNum is the index of the element face the coordinates belong to(0,1,or 2).
-   */
-  void copyAndExpandFaceCoords_3D(int vertNum,int index);
-
-/**
    * Sets barycentric coordinates for 3D for a vertex on a non-boundary element.
    * l_0, l_1, l-2, l_3 are the coordinates.
    */
-  void setBarycentricCoords_3D(const double &l_0, const double &l_1, const double &l_2, const double &l_3);
+  void setBarycentricCoords_3D(const double &l_0, 
+			       const double &l_1, 
+			       const double &l_2, 
+			       const double &l_3);
 
   /**
    * Stores the index of element face with the shortest distance to the interface so far.
@@ -201,45 +215,29 @@ public:
    */
   void setPermutation(int vertNum, int mTrav);
 
-  /**
-   * Sets the permutation.
-   */
+  /// Sets the permutation.
   void setPermutation(int vertNum);
 
-  /**
-   * Sets the permutation of the vertices in 2D.
-   */
+  /// Sets the permutation of the vertices in 2D.
   void setPermutation_2D(int i_0, int i_1, int i_2);
 
-  /**
-   * Sets the permutation of the vertices in 3D.
-   */
+  /// Sets the permutation of the vertices in 3D.
   void setPermutation_3D(int i_0, int i_1, int i_2, int i_3);
 
-  /**
-   * Swaps two vertices in the permutation.
-   */
+  /// Swaps two vertices in the permutation.
   void swapVertices(int i1, int i2);
 
  protected:
-  /**
-   * Original velocity vector.
-   */
+  /// Original velocity vector.
   std::vector<DOFVector<double> *> origVelDOF;
 
-  /**
-   * Dimension of mesh.
-   */
+  /// Dimension of mesh.
   int dim;
 
-  /**
-   * Dof vector with extended velocity.
-   */
+  /// DOF vector with extended velocity.
   std::vector<DOFVector<double> *> velDOF;
 
-  /** 
-   * Number of velocity vectors to be extended.
-   */
+  /// Number of velocity vectors to be extended.
   int nVelDOFs;
 
   /**
@@ -257,9 +255,7 @@ public:
    */
   int indexFace;
 
-  /**
-   * List with the permutation of the vertices.
-   */
+  /// List with the permutation of the vertices.
   DimVec<int> permutation;
 };
 
diff --git a/AMDiS/Reinit/src/VelocityExtFromVelocityField.cc b/AMDiS/src/reinit/VelocityExtFromVelocityField.cc
similarity index 100%
rename from AMDiS/Reinit/src/VelocityExtFromVelocityField.cc
rename to AMDiS/src/reinit/VelocityExtFromVelocityField.cc
diff --git a/AMDiS/Reinit/src/VelocityExtFromVelocityField.h b/AMDiS/src/reinit/VelocityExtFromVelocityField.h
similarity index 100%
rename from AMDiS/Reinit/src/VelocityExtFromVelocityField.h
rename to AMDiS/src/reinit/VelocityExtFromVelocityField.h