diff --git a/CMake/CMakePackages.txt b/CMake/CMakePackages.txt
index f1f371400b880aa027a6ae47a1c62f7a5ef15ae5..57c2c82ba516231e67a1897f6fb7a9dab47622fa 100644
--- a/CMake/CMakePackages.txt
+++ b/CMake/CMakePackages.txt
@@ -1,5 +1,5 @@
-#SUBDIRS(numerics/algebra/examples/tutorial)
-#SUBDIRS(numerics/geometry3d/examples/stl2inp)
+#SUBDIRS(algebra/examples/tutorial)
+#SUBDIRS(geometry3d/examples/stl2inp)
 #SUBDIRS(lbmd2q9/a2pII/testcases/inputfile)
 SUBDIRS(lbmd2q9/a2pII/testcases/SFC_arne)
 IF(NEED_METIS)
diff --git a/apps/cpu/CylinderSt/cylinder_st.cpp b/apps/cpu/CylinderSt/cylinder_st.cpp
index e25250c0b69af9cc73e8f8dd031cdeebda835309..824a4d12e8eac4187e06f394a01dddf0f7f5dbde 100644
--- a/apps/cpu/CylinderSt/cylinder_st.cpp
+++ b/apps/cpu/CylinderSt/cylinder_st.cpp
@@ -1,12 +1,12 @@
 #include <iostream>
 #include <string>
 
-#include "numerics/geometry3d/CoordinateTransformation3D.h"
+#include "geometry3d/CoordinateTransformation3D.h"
 #include "Grid3D.h"
 #include "GenBlocksGridVisitor.h"
-#include "numerics/geometry3d/GbSystem3D.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
-#include "numerics/geometry3d/GbCylinder3D.h"
+#include "geometry3d/GbSystem3D.h"
+#include "geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCylinder3D.h"
 #include "basics/writer/WbWriterVtkXmlASCII.h"
 #include "basics/writer/WbWriterVtkXmlBinary.h"
 #include "RefineCrossAndInsideGbObjectBlockVisitor.h"
diff --git a/apps/cpu/FlowAroundCylinder/cylinder.cpp1 b/apps/cpu/FlowAroundCylinder/cylinder.cpp1
index b7ddec982c4a70a153fb1f6bf95de85c903fcc6a..5321a23d1c03fe85270cf8e382b8d50dc5df4351 100644
--- a/apps/cpu/FlowAroundCylinder/cylinder.cpp1
+++ b/apps/cpu/FlowAroundCylinder/cylinder.cpp1
@@ -1,12 +1,12 @@
 #include <iostream>
 #include <string>
 
-#include "numerics/geometry3d/CoordinateTransformation3D.h"
+#include "geometry3d/CoordinateTransformation3D.h"
 #include "Grid3D.h"
 #include "GenBlocksGridVisitor.h"
-#include "numerics/geometry3d/GbSystem3D.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
-#include "numerics/geometry3d/GbCylinder3D.h"
+#include "geometry3d/GbSystem3D.h"
+#include "geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCylinder3D.h"
 #include "basics/writer/WbWriterVtkXmlASCII.h"
 #include "basics/writer/WbWriterVtkXmlBinary.h"
 #include "RefineCrossAndInsideGbObjectBlockVisitor.h"
diff --git a/apps/cpu/FlowAroundCylinder/cylinder.cpp2 b/apps/cpu/FlowAroundCylinder/cylinder.cpp2
index 35d9e975742e0365e4c4827d4bb8f3ebbacf3d4b..4dc7285b37131250607166cca3de70db53935156 100644
--- a/apps/cpu/FlowAroundCylinder/cylinder.cpp2
+++ b/apps/cpu/FlowAroundCylinder/cylinder.cpp2
@@ -1,12 +1,12 @@
 #include <iostream>
 #include <string>
 
-#include "numerics/geometry3d/CoordinateTransformation3D.h"
+#include "geometry3d/CoordinateTransformation3D.h"
 #include "Grid3D.h"
 #include "GenBlocksGridVisitor.h"
-#include "numerics/geometry3d/GbSystem3D.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
-#include "numerics/geometry3d/GbCylinder3D.h"
+#include "geometry3d/GbSystem3D.h"
+#include "geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCylinder3D.h"
 #include "basics/writer/WbWriterVtkXmlASCII.h"
 #include "basics/writer/WbWriterVtkXmlBinary.h"
 #include "RefineCrossAndInsideGbObjectBlockVisitor.h"
diff --git a/apps/cpu/IncludsList.cmake b/apps/cpu/IncludsList.cmake
index 98341df07ca3318610f9f32fe840c5bce7e7fd8c..05135befe2d02829ac84ccb07c225f6ba6bd66b3 100644
--- a/apps/cpu/IncludsList.cmake
+++ b/apps/cpu/IncludsList.cmake
@@ -2,9 +2,9 @@ INCLUDE_DIRECTORIES(${APPS_ROOT_CPU})
 INCLUDE(${CMAKE_SOURCE_DIR}/src/cpu/VirtualFluidsCore/IncludsList.cmake)
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/basics)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/basics/numerics/geometry3d)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/basics/numerics/geometry3d/Creator)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/basics/numerics/geometry3d/KdTree)
+INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/basics/geometry3d)
+INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/basics/geometry3d/Creator)
+INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/basics/geometry3d/KdTree)
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/basics/basics/container)
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/basics/basics/memory)
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/basics/basics/objects)
diff --git a/apps/cpu/VirtualFluids.h b/apps/cpu/VirtualFluids.h
index 2fd3321905ffdd14ba2860282b02e6e6bae9651c..9d667ae25532b111bed78393f5bcfdc67bae4645 100644
--- a/apps/cpu/VirtualFluids.h
+++ b/apps/cpu/VirtualFluids.h
@@ -197,52 +197,38 @@
 #include <LBM/LBMUnitConverter.h>
 #include <LBM/LBMKernelETD3Q27BGK.h>
 
-#include <numerics/geometry3d/CoordinateTransformation3D.h>
-#include <numerics/geometry3d/GbCuboid3D.h>
-#include <numerics/geometry3d/GbCylinder3D.h>
-#include <numerics/geometry3d/GbHalfSpace3D.h>
-#include <numerics/geometry3d/GbHalfSpaceKrischan3D.h>
-#include <numerics/geometry3d/GbLine3D.h>
-#include <numerics/geometry3d/GbMeshTools3D.h>
-#include <numerics/geometry3d/GbObject3D.h>
-#include <numerics/geometry3d/GbObject3DManager.h>
-#include <numerics/geometry3d/GbObjectGroup3D.h>
-#include <numerics/geometry3d/GbPoint3D.h>
-#include <numerics/geometry3d/GbPolygon3D.h>
-#include <numerics/geometry3d/GbQuadFaceMesh3D.h>
-#include <numerics/geometry3d/GbSphere3D.h>
-#include <numerics/geometry3d/GbSystem3D.h>
-#include <numerics/geometry3d/GbTriangle3D.h>
-#include <numerics/geometry3d/GbTriangularMesh3D.h>
-#include <numerics/geometry3d/GbTriFaceMesh3D.h>
-#include <numerics/geometry3d/GbVector3D.h>
-#include <numerics/geometry3d/GbVoxelMatrix3D.h>
-#include <numerics/geometry3d/creator/GbCuboid3DCreator.h>
-#include <numerics/geometry3d/creator/GbCylinder3DCreator.h>
-#include <numerics/geometry3d/creator/GbLine3DCreator.h>
-#include <numerics/geometry3d/creator/GbObject3DCreator.h>
-#include <numerics/geometry3d/creator/GbObject3DFactory.h>
-#include <numerics/geometry3d/creator/GbPoint3DCreator.h>
-#include <numerics/geometry3d/creator/GbPolygon3DCreator.h>
-#include <numerics/geometry3d/creator/GbQuadFaceMesh3DCreator.h>
-#include <numerics/geometry3d/creator/GbSphere3DCreator.h>
-#include <numerics/geometry3d/creator/GbTriangle3DCreator.h>
-#include <numerics/geometry3d/creator/GbTriangularMesh3DCreator.h>
-#include <numerics/geometry3d/creator/GbTriFaceMesh3DCreator.h>
-#include <numerics/geometry3d/creator/GbVoxelMatrix3DCreator.h>
-#include <numerics/geometry3d/KdTree/KdNode.h>
-#include <numerics/geometry3d/KdTree/KdRay.h>
-#include <numerics/geometry3d/KdTree/KdSplitCandidate.h>
-#include <numerics/geometry3d/KdTree/KdSplitCandidateManager.h>
-#include <numerics/geometry3d/KdTree/KdTree.h>
-#include <numerics/geometry3d/KdTree/KdUtilities.h>
-#include <numerics/geometry3d/KdTree/intersectionhandler/KdCountLineIntersectionHandler.h>
-#include <numerics/geometry3d/KdTree/intersectionhandler/KdCountRayIntersectionHandler.h>
-#include <numerics/geometry3d/KdTree/intersectionhandler/KdLineIntersectionHandler.h>
-#include <numerics/geometry3d/KdTree/intersectionhandler/KdRayIntersectionHandler.h>
-#include <numerics/geometry3d/KdTree/splitalgorithms/KdSAHSplit.h>
-#include <numerics/geometry3d/KdTree/splitalgorithms/KdSpatiallMedianSplit.h>
-#include <numerics/geometry3d/KdTree/splitalgorithms/KdSplitAlgorithm.h>
+#include <geometry3d/CoordinateTransformation3D.h>
+#include <geometry3d/GbCuboid3D.h>
+#include <geometry3d/GbCylinder3D.h>
+#include <geometry3d/GbHalfSpace3D.h>
+#include <geometry3d/GbHalfSpaceKrischan3D.h>
+#include <geometry3d/GbLine3D.h>
+#include <geometry3d/GbMeshTools3D.h>
+#include <geometry3d/GbObject3D.h>
+#include <geometry3d/GbObjectGroup3D.h>
+#include <geometry3d/GbPoint3D.h>
+#include <geometry3d/GbPolygon3D.h>
+#include <geometry3d/GbQuadFaceMesh3D.h>
+#include <geometry3d/GbSphere3D.h>
+#include <geometry3d/GbSystem3D.h>
+#include <geometry3d/GbTriangle3D.h>
+#include <geometry3d/GbTriangularMesh3D.h>
+#include <geometry3d/GbTriFaceMesh3D.h>
+#include <geometry3d/GbVector3D.h>
+#include <geometry3d/GbVoxelMatrix3D.h>
+#include <geometry3d/KdTree/KdNode.h>
+#include <geometry3d/KdTree/KdRay.h>
+#include <geometry3d/KdTree/KdSplitCandidate.h>
+#include <geometry3d/KdTree/KdSplitCandidateManager.h>
+#include <geometry3d/KdTree/KdTree.h>
+#include <geometry3d/KdTree/KdUtilities.h>
+#include <geometry3d/KdTree/intersectionhandler/KdCountLineIntersectionHandler.h>
+#include <geometry3d/KdTree/intersectionhandler/KdCountRayIntersectionHandler.h>
+#include <geometry3d/KdTree/intersectionhandler/KdLineIntersectionHandler.h>
+#include <geometry3d/KdTree/intersectionhandler/KdRayIntersectionHandler.h>
+#include <geometry3d/KdTree/splitalgorithms/KdSAHSplit.h>
+#include <geometry3d/KdTree/splitalgorithms/KdSpatiallMedianSplit.h>
+#include <geometry3d/KdTree/splitalgorithms/KdSplitAlgorithm.h>
 
 #include <Parallel/Communicator.h>
 #include <Parallel/MetisPartitioner.h>
diff --git a/apps/cpu/bananas/bananas.cpp b/apps/cpu/bananas/bananas.cpp
index 9e6744f42318af1cda99edd8ee2e3fdfcd62578b..223fe402890758427361f7861f8ded5fffaa16e1 100644
--- a/apps/cpu/bananas/bananas.cpp
+++ b/apps/cpu/bananas/bananas.cpp
@@ -1,13 +1,13 @@
 #include <iostream>
 #include <string>
 
-#include "numerics/geometry3d/CoordinateTransformation3D.h"
+#include "geometry3d/CoordinateTransformation3D.h"
 #include "Grid3D.h"
 #include "GenBlocksGridVisitor.h"
-#include "numerics/geometry3d/GbSystem3D.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
-#include "numerics/geometry3d/GbCylinder3D.h"
-#include <numerics/geometry3d/GbSphere3D.h>
+#include "geometry3d/GbSystem3D.h"
+#include "geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCylinder3D.h"
+#include <geometry3d/GbSphere3D.h>
 #include "basics/writer/WbWriterVtkXmlASCII.h"
 #include "basics/writer/WbWriterVtkXmlBinary.h"
 #include "RefineCrossAndInsideGbObjectBlockVisitor.h"
@@ -39,14 +39,14 @@
 #include "D3Q27OffsetInterpolationProcessor.h"
 #include "D3Q27CompactInterpolationProcessor.h"
 #include "SyncBcBlockVisitor.h"
-#include "numerics/geometry3d/creator/GbTriFaceMesh3DCreator.h"
-#include "numerics/geometry3d/GbTriFaceMesh3D.h"
+#include "geometry3d/creator/GbTriFaceMesh3DCreator.h"
+#include "geometry3d/GbTriFaceMesh3D.h"
 #include "D3Q27TriFaceMeshInteractor.h"
 #include "basics/utilities/UbFileOutputASCII.h"
 #include "basics/utilities/UbFileInputASCII.h"
 #include "basics/utilities/UbFileInputBinary.h"
 #include "basics/container/CbArray3D.h"
-#include "numerics/geometry3d/GbVoxelMatrix3D.h"
+#include "geometry3d/GbVoxelMatrix3D.h"
 
 #define CONVEXHULL
 
diff --git a/apps/cpu/bananas2/bananas2.cpp b/apps/cpu/bananas2/bananas2.cpp
index 01a969315c78d2da7418565761f71fe5c75311a3..4a348c219e975782ed52b6a6ac2e6481ed9c63b4 100644
--- a/apps/cpu/bananas2/bananas2.cpp
+++ b/apps/cpu/bananas2/bananas2.cpp
@@ -1,13 +1,13 @@
 #include <iostream>
 #include <string>
 
-#include "numerics/geometry3d/CoordinateTransformation3D.h"
+#include "geometry3d/CoordinateTransformation3D.h"
 #include "Grid3D.h"
 #include "GenBlocksGridVisitor.h"
-#include "numerics/geometry3d/GbSystem3D.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
-#include "numerics/geometry3d/GbCylinder3D.h"
-#include <numerics/geometry3d/GbSphere3D.h>
+#include "geometry3d/GbSystem3D.h"
+#include "geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCylinder3D.h"
+#include <geometry3d/GbSphere3D.h>
 #include "basics/writer/WbWriterVtkXmlASCII.h"
 #include "basics/writer/WbWriterVtkXmlBinary.h"
 #include "RefineCrossAndInsideGbObjectBlockVisitor.h"
@@ -39,14 +39,14 @@
 #include "D3Q27OffsetInterpolationProcessor.h"
 #include "D3Q27CompactInterpolationProcessor.h"
 #include "SyncBcBlockVisitor.h"
-#include "numerics/geometry3d/creator/GbTriFaceMesh3DCreator.h"
-#include "numerics/geometry3d/GbTriFaceMesh3D.h"
+#include "geometry3d/creator/GbTriFaceMesh3DCreator.h"
+#include "geometry3d/GbTriFaceMesh3D.h"
 #include "D3Q27TriFaceMeshInteractor.h"
 #include "basics/utilities/UbFileOutputASCII.h"
 #include "basics/utilities/UbFileInputASCII.h"
 #include "basics/utilities/UbFileInputBinary.h"
 #include "basics/container/CbArray3D.h"
-#include "numerics/geometry3d/GbVoxelMatrix3D.h"
+#include "geometry3d/GbVoxelMatrix3D.h"
 
 
 /* 
diff --git a/apps/cpu/block_test/block_test_all.hpp b/apps/cpu/block_test/block_test_all.hpp
index c51e77b162017322623eeca0e467f6eb482ed3d1..d530c0a11e0d01af705337d84d5e7142cc5f5185 100644
--- a/apps/cpu/block_test/block_test_all.hpp
+++ b/apps/cpu/block_test/block_test_all.hpp
@@ -1,12 +1,12 @@
 #include <iostream>
 #include <string>
 
-#include "numerics/geometry3d/CoordinateTransformation3D.h"
+#include "geometry3d/CoordinateTransformation3D.h"
 #include "Grid3D.h"
 #include "GenBlocksGridVisitor.h"
-#include "numerics/geometry3d/GbSystem3D.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
-#include "numerics/geometry3d/GbCylinder3D.h"
+#include "geometry3d/GbSystem3D.h"
+#include "geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCylinder3D.h"
 #include "basics/writer/WbWriterVtkXmlASCII.h"
 #include "basics/writer/WbWriterVtkXmlBinary.h"
 #include "RefineCrossAndInsideGbObjectBlockVisitor.h"
diff --git a/apps/cpu/greenvortex/greenvortex.cpp b/apps/cpu/greenvortex/greenvortex.cpp
index e9b1327e4451ea03e9cb7afd85110096eed1d6d4..618bcf0b93cc44bed4bbc4d229a143d570214843 100644
--- a/apps/cpu/greenvortex/greenvortex.cpp
+++ b/apps/cpu/greenvortex/greenvortex.cpp
@@ -1,13 +1,13 @@
 #include <iostream>
 #include <string>
 
-#include "numerics/geometry3d/CoordinateTransformation3D.h"
+#include "geometry3d/CoordinateTransformation3D.h"
 #include "Grid3D.h"
 #include "GenBlocksGridVisitor.h"
-#include "numerics/geometry3d/GbSystem3D.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
-#include "numerics/geometry3d/GbCylinder3D.h"
-#include <numerics/geometry3d/GbSphere3D.h>
+#include "geometry3d/GbSystem3D.h"
+#include "geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCylinder3D.h"
+#include <geometry3d/GbSphere3D.h>
 #include "basics/writer/WbWriterVtkXmlASCII.h"
 #include "basics/writer/WbWriterVtkXmlBinary.h"
 #include "RefineCrossAndInsideGbObjectBlockVisitor.h"
diff --git a/apps/cpu/gridRf/gridRf.cpp b/apps/cpu/gridRf/gridRf.cpp
index a406609e9f970632eb0e906b47c5c23c93275ebc..6064022b851637f6b68e09919d1ffa677785d7e5 100644
--- a/apps/cpu/gridRf/gridRf.cpp
+++ b/apps/cpu/gridRf/gridRf.cpp
@@ -1,13 +1,13 @@
 #include <iostream>
 #include <string>
 
-#include "numerics/geometry3d/CoordinateTransformation3D.h"
+#include "geometry3d/CoordinateTransformation3D.h"
 #include "Grid3D.h"
 #include "GenBlocksGridVisitor.h"
-#include "numerics/geometry3d/GbSystem3D.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
-#include "numerics/geometry3d/GbCylinder3D.h"
-#include <numerics/geometry3d/GbSphere3D.h>
+#include "geometry3d/GbSystem3D.h"
+#include "geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCylinder3D.h"
+#include <geometry3d/GbSphere3D.h>
 #include "basics/writer/WbWriterVtkXmlASCII.h"
 #include "basics/writer/WbWriterVtkXmlBinary.h"
 #include "RefineCrossAndInsideGbObjectBlockVisitor.h"
diff --git a/apps/cpu/micropart/micropartSetup1.hpp b/apps/cpu/micropart/micropartSetup1.hpp
index 79fe30059a596f9a9600c4eb45eddd248bb35a62..268009681451845ffd3945de1338dec01f976b42 100644
--- a/apps/cpu/micropart/micropartSetup1.hpp
+++ b/apps/cpu/micropart/micropartSetup1.hpp
@@ -6,10 +6,10 @@
 #include "RatioSmoothBlockVisitor.h"
 #include "OverlapBlockVisitor.h"
 #include "SetInterpolationDirsBlockVisitor.h"
-#include "numerics/geometry3d/GbSystem3D.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
-#include "numerics/geometry3d/GbCylinder3D.h"
-#include "numerics/geometry3d/GbSphere3D.h"
+#include "geometry3d/GbSystem3D.h"
+#include "geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCylinder3D.h"
+#include "geometry3d/GbSphere3D.h"
 #include "BlocksPostprocessor.h"
 #include "Grid3D.h"
 #include "Patch3D.h"
@@ -45,8 +45,8 @@
    //
 #include "basics/writer/WbWriterVtkXmlBinary.h"
 #include "basics/writer/WbWriterVtkXmlASCII.h"
-#include "numerics/geometry3d/creator/GbTriFaceMesh3DCreator.h"
-#include "numerics/geometry3d/GbTriFaceMesh3D.h"
+#include "geometry3d/creator/GbTriFaceMesh3DCreator.h"
+#include "geometry3d/GbTriFaceMesh3D.h"
 #include "D3Q27System.h"
 #include <basics/transmitter/TbTransmitterMpiPool.h>
 #include "MathUtil.hpp"
@@ -394,7 +394,7 @@ void runSetup1(const char *cstr)
 
          //if(myid == 0)
          //{
-         //   //Abstände "q" als Linien rausschreiben
+         //   //Abst�nde "q" als Linien rausschreiben
          //   std::vector< UbTupleFloat3 > nodes;
          //   std::vector< UbTupleInt2 >   lines;
          //   geoInt->addQsLineSet(nodes, lines);
diff --git a/apps/cpu/micropart/micropartSetup2.hpp b/apps/cpu/micropart/micropartSetup2.hpp
index e2ee2d18c6eea114bdbd9e161d9e8628b5ef42aa..0e8f904dbfa446a77c9295bbb143521bf027c48f 100644
--- a/apps/cpu/micropart/micropartSetup2.hpp
+++ b/apps/cpu/micropart/micropartSetup2.hpp
@@ -6,10 +6,10 @@
 #include "RatioSmoothBlockVisitor.h"
 #include "OverlapBlockVisitor.h"
 #include "SetInterpolationDirsBlockVisitor.h"
-#include "numerics/geometry3d/GbSystem3D.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
-#include "numerics/geometry3d/GbCylinder3D.h"
-#include "numerics/geometry3d/GbSphere3D.h"
+#include "geometry3d/GbSystem3D.h"
+#include "geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCylinder3D.h"
+#include "geometry3d/GbSphere3D.h"
 #include "BlocksPostprocessor.h"
 #include "Grid3D.h"
 #include "Patch3D.h"
@@ -45,8 +45,8 @@
    //
 #include "basics/writer/WbWriterVtkXmlBinary.h"
 #include "basics/writer/WbWriterVtkXmlASCII.h"
-#include "numerics/geometry3d/creator/GbTriFaceMesh3DCreator.h"
-#include "numerics/geometry3d/GbTriFaceMesh3D.h"
+#include "geometry3d/creator/GbTriFaceMesh3DCreator.h"
+#include "geometry3d/GbTriFaceMesh3D.h"
 #include "D3Q27System.h"
 #include <basics/transmitter/TbTransmitterMpiPool.h>
 #include "MathUtil.hpp"
@@ -388,7 +388,7 @@ void runSetup2(const char *cstr)
 
          //if(myid == 0)
          //{
-         //   //Abstände "q" als Linien rausschreiben
+         //   //Abst�nde "q" als Linien rausschreiben
          //   std::vector< UbTupleFloat3 > nodes;
          //   std::vector< UbTupleInt2 >   lines;
          //   geoInt->addQsLineSet(nodes, lines);
diff --git a/apps/cpu/micropart/micropartTestQs2.hpp b/apps/cpu/micropart/micropartTestQs2.hpp
index bcaa75a458fb0cdf3126d8bce7a72d853dd0bc21..210b295336cb0171c450d5d04e10f9c3575a2d23 100644
--- a/apps/cpu/micropart/micropartTestQs2.hpp
+++ b/apps/cpu/micropart/micropartTestQs2.hpp
@@ -6,10 +6,10 @@
 #include "RatioSmoothBlockVisitor.h"
 #include "OverlapBlockVisitor.h"
 #include "SetInterpolationDirsBlockVisitor.h"
-#include "numerics/geometry3d/GbSystem3D.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
-#include "numerics/geometry3d/GbCylinder3D.h"
-#include "numerics/geometry3d/GbSphere3D.h"
+#include "geometry3d/GbSystem3D.h"
+#include "geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCylinder3D.h"
+#include "geometry3d/GbSphere3D.h"
 #include "BlocksPostprocessor.h"
 #include "Grid3D.h"
 #include "Patch3D.h"
@@ -45,8 +45,8 @@
    //
 #include "basics/writer/WbWriterVtkXmlBinary.h"
 #include "basics/writer/WbWriterVtkXmlASCII.h"
-#include "numerics/geometry3d/creator/GbTriFaceMesh3DCreator.h"
-#include "numerics/geometry3d/GbTriFaceMesh3D.h"
+#include "geometry3d/creator/GbTriFaceMesh3DCreator.h"
+#include "geometry3d/GbTriFaceMesh3D.h"
 #include "D3Q27System.h"
 #include <basics/transmitter/TbTransmitterMpiPool.h>
 #include "MathUtil.hpp"
@@ -469,7 +469,7 @@ void micropartTestQs2(const char *cstr)
 
          if(myid == 0)
          {
-            //Abstände "q" als Linien rausschreiben
+            //Abst�nde "q" als Linien rausschreiben
             std::vector< UbTupleFloat3 > nodes;
             std::vector< UbTupleInt2 >   lines;
             geoInt->addQsLineSet(nodes, lines);
diff --git a/apps/cpu/micropart/miro.txt b/apps/cpu/micropart/miro.txt
index 7ed704098a74d3ea0db5fea3a9cf21810bcbeb8e..d66356a8eb7d6dc58d65434f24a5833eb52357d2 100644
--- a/apps/cpu/micropart/miro.txt
+++ b/apps/cpu/micropart/miro.txt
@@ -6,10 +6,10 @@
 #include "RatioSmoothBlockVisitor.h"
 #include "OverlapBlockVisitor.h"
 #include "SetInterpolationDirsBlockVisitor.h"
-#include "numerics/geometry3d/GbSystem3D.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
-#include "numerics/geometry3d/GbCylinder3D.h"
-#include "numerics/geometry3d/GbSphere3D.h"
+#include "geometry3d/GbSystem3D.h"
+#include "geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCylinder3D.h"
+#include "geometry3d/GbSphere3D.h"
 #include "BlocksPostprocessor.h"
 #include "Grid3D.h"
 #include "Patch3D.h"
@@ -45,8 +45,8 @@
    //
 #include "basics/writer/WbWriterVtkXmlBinary.h"
 #include "basics/writer/WbWriterVtkXmlASCII.h"
-#include "numerics/geometry3d/creator/GbTriFaceMesh3DCreator.h"
-#include "numerics/geometry3d/GbTriFaceMesh3D.h"
+#include "geometry3d/creator/GbTriFaceMesh3DCreator.h"
+#include "geometry3d/GbTriFaceMesh3D.h"
 #include "D3Q27System.h"
 #include <basics/transmitter/TbTransmitterMpiPool.h>
 #include "MathUtil.hpp"
@@ -462,7 +462,7 @@ if(myid == 0) UBLOG(logINFO,"line"<<__LINE__);
 
          if(myid == 0)
          {
-            //Abstände "q" als Linien rausschreiben
+            //Abst�nde "q" als Linien rausschreiben
             std::vector< UbTupleFloat3 > nodes;
             std::vector< UbTupleInt2 >   lines;
             geoInt->addQsLineSet(nodes, lines);
diff --git a/apps/cpu/reefer/reefer.cpp b/apps/cpu/reefer/reefer.cpp
index 74bfc3d2d600be085faffc73cd68eca8d09fc698..d66cf9705570f3ba40c619ac6638e6b782bd8ecb 100644
--- a/apps/cpu/reefer/reefer.cpp
+++ b/apps/cpu/reefer/reefer.cpp
@@ -1,13 +1,13 @@
 #include <iostream>
 #include <string>
 
-#include "numerics/geometry3d/CoordinateTransformation3D.h"
+#include "geometry3d/CoordinateTransformation3D.h"
 #include "Grid3D.h"
 #include "GenBlocksGridVisitor.h"
-#include "numerics/geometry3d/GbSystem3D.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
-#include "numerics/geometry3d/GbCylinder3D.h"
-#include <numerics/geometry3d/GbSphere3D.h>
+#include "geometry3d/GbSystem3D.h"
+#include "geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCylinder3D.h"
+#include <geometry3d/GbSphere3D.h>
 #include "basics/writer/WbWriterVtkXmlASCII.h"
 #include "basics/writer/WbWriterVtkXmlBinary.h"
 #include "RefineCrossAndInsideGbObjectBlockVisitor.h"
@@ -39,8 +39,8 @@
 #include "D3Q27OffsetInterpolationProcessor.h"
 #include "D3Q27CompactInterpolationProcessor.h"
 #include "SyncBcBlockVisitor.h"
-#include "numerics/geometry3d/creator/GbTriFaceMesh3DCreator.h"
-#include "numerics/geometry3d/GbTriFaceMesh3D.h"
+#include "geometry3d/creator/GbTriFaceMesh3DCreator.h"
+#include "geometry3d/GbTriFaceMesh3D.h"
 #include "D3Q27TriFaceMeshInteractor.h"
 #include "MathUtil.hpp"
 #include "SolidBlocksHelper.h"
diff --git a/apps/cpu/vfscript/vfscript.cpp b/apps/cpu/vfscript/vfscript.cpp
index e7322b73f0807c0f8891e6706545b605b05d7fb9..2d915b69247787edfe8dfcf8f4d295672d9a8a2a 100644
--- a/apps/cpu/vfscript/vfscript.cpp
+++ b/apps/cpu/vfscript/vfscript.cpp
@@ -1,13 +1,13 @@
 #include <iostream>
 #include <string>
 
-#include "numerics/geometry3d/CoordinateTransformation3D.h"
+#include "geometry3d/CoordinateTransformation3D.h"
 #include "Grid3D.h"
 #include "GenBlocksGridVisitor.h"
-#include "numerics/geometry3d/GbSystem3D.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
-#include "numerics/geometry3d/GbCylinder3D.h"
-#include <numerics/geometry3d/GbSphere3D.h>
+#include "geometry3d/GbSystem3D.h"
+#include "geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCylinder3D.h"
+#include <geometry3d/GbSphere3D.h>
 #include "basics/writer/WbWriterVtkXmlASCII.h"
 #include "basics/writer/WbWriterVtkXmlBinary.h"
 #include "RefineCrossAndInsideGbObjectBlockVisitor.h"
diff --git a/src/basics/basics/utilities/UbMath.h b/src/basics/basics/utilities/UbMath.h
index bf0466eee44ab9653e9070056fbe2dc9c4481829..659b66cc5d12dab588034e3f7997fe448f769a46 100644
--- a/src/basics/basics/utilities/UbMath.h
+++ b/src/basics/basics/utilities/UbMath.h
@@ -475,6 +475,26 @@ namespace UbMath
    static const double c56 = 56.0;
    static const double c152 = 152.0;
    static const double c130 = 130.0;
+   static const double one = 1.0;
+   static const double two = 2.0;
+   static const double three = 3.0;
+   static const double four = 4.0;
+   static const double five = 5.0;
+   static const double six = 6.0;
+   static const double seven = 7.0;
+   static const double eight = 8.0;
+   static const double nine = 9.0;
+   static const double fourteen = 14.0;
+   static const double fiveteen = 15.0;
+   static const double sixteen = 16.0;
+   static const double twentyone = 21.0;
+   static const double twentyfour = 24.0;
+   static const double twentyeight = 28.0;
+   static const double twentynine = 29.0;
+   static const double fourtyeight = 48.0;
+   static const double fifty = 50.0;
+   static const double fiftysix = 56.0;
+
 }
 
 #endif
diff --git a/src/basics/basics/utilities/UbTuple.h b/src/basics/basics/utilities/UbTuple.h
index 4643a08e9aa1389ad141e68f493886bc39540020..6b9b8b52aef2cb498c127506125b644113456aad 100644
--- a/src/basics/basics/utilities/UbTuple.h
+++ b/src/basics/basics/utilities/UbTuple.h
@@ -616,6 +616,7 @@ typedef UbTuple<int,int,int,int>                           UbTupleInt4;
 typedef UbTuple<int,int,int,int,int>                       UbTupleInt5;
 typedef UbTuple<int,int,int,int,int,int>                   UbTupleInt6;
 typedef UbTuple<int,int,int,int,int,int,int,int>           UbTupleInt8;
+typedef UbTuple<unsigned int,unsigned int,unsigned int,unsigned int,unsigned int,unsigned int,unsigned int,unsigned int> UbTupleUInt8;
 typedef UbTuple<double,double>                             UbTupleDouble2;
 typedef UbTuple<double,double,double>                      UbTupleDouble3;
 typedef UbTuple<double,double,double,double>               UbTupleDouble4;
diff --git a/src/basics/basics/writer/WbWriter.h b/src/basics/basics/writer/WbWriter.h
index b8d68db7d232990df738b23c6b2d00a95103c40d..510c160a9d0bde85fddd0ff1137a81a05130d0a7 100644
--- a/src/basics/basics/writer/WbWriter.h
+++ b/src/basics/basics/writer/WbWriter.h
@@ -105,7 +105,7 @@ public:
    //   0 ---- 1
    virtual std::string writeOcts(const std::string& filename,std::vector< UbTupleFloat3 >& nodes, std::vector< UbTupleInt8 >& cells){ throw UbException(UB_EXARGS,"not implemented for "+(std::string)typeid(*this).name() );  }
    virtual std::string writeOctsWithCellData(const std::string& filename,std::vector<UbTupleFloat3 >& nodes, std::vector<UbTupleInt8 >& cells, std::vector<std::string >& datanames, std::vector<std::vector<double > >& celldata){ throw UbException(UB_EXARGS,"not implemented for "+(std::string)typeid(*this).name() );  }
-   virtual std::string writeOctsWithNodeData(const std::string& filename,std::vector<UbTupleFloat3 >& nodes, std::vector<UbTupleInt8 >& cells, std::vector<std::string >& datanames, std::vector<std::vector<double > >& nodedata){ throw UbException(UB_EXARGS,"not implemented for "+(std::string)typeid(*this).name() );  }
+   virtual std::string writeOctsWithNodeData(const std::string& filename,std::vector<UbTupleFloat3 >& nodes, std::vector<UbTupleUInt8 >& cells, std::vector<std::string >& datanames, std::vector<std::vector<double > >& nodedata){ throw UbException(UB_EXARGS,"not implemented for "+(std::string)typeid(*this).name() );  }
 
 private:
 
diff --git a/src/basics/geometry3d/CoordinateTransformation3D.h b/src/basics/geometry3d/CoordinateTransformation3D.h
index 9e7448fb9967d1a024b788eb43a4a459c13fb012..362da6b624a32688841c223b14c5344ae9df5bb9 100644
--- a/src/basics/geometry3d/CoordinateTransformation3D.h
+++ b/src/basics/geometry3d/CoordinateTransformation3D.h
@@ -120,6 +120,13 @@ private:
    bool   active;
    bool   transformation;
 
+    friend class MPIIOCoProcessor;
+    friend class MPIIORestartCoProcessor;
+    friend class MPIIOMigrationCoProcessor;
+    friend class MPIIOMigrationBECoProcessor;
+    friend class CheckpointConverter;
+
+
 };
 
 #endif //COORDINATETRANSFORMATION3D_H
diff --git a/src/cpu/VirtualFluidsCore/BoundaryConditions/SlipBCAdapter.cpp b/src/cpu/VirtualFluidsCore/BoundaryConditions/SlipBCAdapter.cpp
index 9e367fa991036a3a80a05ff7fc2c8e703d171c92..2dbfba24283d2319a2163bb0f5afe9aa1264c93f 100644
--- a/src/cpu/VirtualFluidsCore/BoundaryConditions/SlipBCAdapter.cpp
+++ b/src/cpu/VirtualFluidsCore/BoundaryConditions/SlipBCAdapter.cpp
@@ -1,7 +1,7 @@
 #include "SlipBCAdapter.h"
 #include "D3Q27System.h"
 #include "D3Q27Interactor.h"
-#include "numerics/geometry3d/GbCuboid3D.h"
+#include "geometry3d/GbCuboid3D.h"
 
 
 //*==========================================================*/
diff --git a/src/cpu/VirtualFluidsCore/CMakeLists.txt b/src/cpu/VirtualFluidsCore/CMakeLists.txt
index 48e357c496102890e952fb958a25d22ef250961b..083b96fd54b57b490d7f2fe04cd7b41b2032b42b 100644
--- a/src/cpu/VirtualFluidsCore/CMakeLists.txt
+++ b/src/cpu/VirtualFluidsCore/CMakeLists.txt
@@ -99,9 +99,8 @@ vf_add_library(BUILDTYPE static DEPENDS basics MuParser ${CAB_ADDITIONAL_LINK_LI
 
 vf_get_library_name(library_name)
 target_include_directories(${library_name} PRIVATE ${CMAKE_SOURCE_DIR}/src/basics)
-target_include_directories(${library_name} PRIVATE ${CMAKE_SOURCE_DIR}/src/basics/numerics/geometry3d)
-target_include_directories(${library_name} PRIVATE ${CMAKE_SOURCE_DIR}/src/basics/numerics/geometry3d/Creator)
-target_include_directories(${library_name} PRIVATE ${CMAKE_SOURCE_DIR}/src/basics/numerics/geometry3d/KdTree)
+target_include_directories(${library_name} PRIVATE ${CMAKE_SOURCE_DIR}/src/basics/geometry3d)
+target_include_directories(${library_name} PRIVATE ${CMAKE_SOURCE_DIR}/src/basics/geometry3d/KdTree)
 target_include_directories(${library_name} PRIVATE ${CMAKE_SOURCE_DIR}/src/basics/basics/container)
 target_include_directories(${library_name} PRIVATE ${CMAKE_SOURCE_DIR}/src/basics/basics/memory)
 target_include_directories(${library_name} PRIVATE ${CMAKE_SOURCE_DIR}/src/basics/basics/objects)
diff --git a/src/cpu/VirtualFluidsCore/CoProcessors/IntegrateValuesHelper.cpp b/src/cpu/VirtualFluidsCore/CoProcessors/IntegrateValuesHelper.cpp
index ac67dea0d70cc49205d415efb7193c3b8844cf67..793013dc327e63e7aaf1f4bc117bde6801fbe598 100644
--- a/src/cpu/VirtualFluidsCore/CoProcessors/IntegrateValuesHelper.cpp
+++ b/src/cpu/VirtualFluidsCore/CoProcessors/IntegrateValuesHelper.cpp
@@ -1,8 +1,8 @@
 #include "IntegrateValuesHelper.h"
 
 
-#include <numerics/geometry3d/GbCuboid3D.h>
-#include <numerics/geometry3d/CoordinateTransformation3D.h>
+#include <geometry3d/GbCuboid3D.h>
+#include <geometry3d/CoordinateTransformation3D.h>
 #include <vector>
 
 #include "LBMKernel.h"
diff --git a/src/cpu/VirtualFluidsCore/Grid/Grid3D.cpp b/src/cpu/VirtualFluidsCore/Grid/Grid3D.cpp
index 2cbf52fa51d5f52b90391bc24726d3d8853a7a71..d83e22be30296621fec256c5124f3412ff97d9c8 100644
--- a/src/cpu/VirtualFluidsCore/Grid/Grid3D.cpp
+++ b/src/cpu/VirtualFluidsCore/Grid/Grid3D.cpp
@@ -2,7 +2,7 @@
 
 #include <set>
 
-#include <numerics/geometry3d/CoordinateTransformation3D.h>
+#include <geometry3d/CoordinateTransformation3D.h>
 #include <basics/writer/WbWriterVtkXmlASCII.h>
 
 #include "Grid3DVisitor.h"
diff --git a/src/cpu/VirtualFluidsCore/Interactors/D3Q27Interactor.cpp b/src/cpu/VirtualFluidsCore/Interactors/D3Q27Interactor.cpp
index 820324c726cd964cb7464e45a3f11931ad46f0fe..437524cf5d4f11f730e52f384925e6d7c422d16f 100644
--- a/src/cpu/VirtualFluidsCore/Interactors/D3Q27Interactor.cpp
+++ b/src/cpu/VirtualFluidsCore/Interactors/D3Q27Interactor.cpp
@@ -4,8 +4,8 @@
 
 #include <basics/writer/WbWriterVtkXmlBinary.h>
 
-#include <numerics/geometry3d/GbCuboid3D.h>
-#include <numerics/geometry3d/GbLine3D.h>
+#include <geometry3d/GbCuboid3D.h>
+#include <geometry3d/GbLine3D.h>
 #include "Block3D.h"
 #include "Grid3D.h"
 #include "BCArray3D.h"
diff --git a/src/cpu/VirtualFluidsCore/Interactors/D3Q27Interactor.h b/src/cpu/VirtualFluidsCore/Interactors/D3Q27Interactor.h
index 796490116a48a9dba5184ab54fb8aece40227d54..8262dd1df886a4c18ab8dddff7b0af25dde3bf92 100644
--- a/src/cpu/VirtualFluidsCore/Interactors/D3Q27Interactor.h
+++ b/src/cpu/VirtualFluidsCore/Interactors/D3Q27Interactor.h
@@ -55,8 +55,6 @@ public:
    bool setDifferencesToGbObject3D(const SPtr<Block3D> block/*, const double& x1, const double& x2, const double& x3, const double& blockLengthX1, const double& blockLengthX2, const double& blockLengthX3, const double& timestep=0*/);
 
    ObObject* clone() { throw UbException(UB_EXARGS,"not implemented");	}
-   ObObjectCreator* getCreator();
-
 
    void writeValidationAVSFile(std::string filename);  
    virtual std::vector< std::pair<GbPoint3D,GbPoint3D> >  getQsLineSet();
diff --git a/src/cpu/VirtualFluidsCore/Interactors/D3Q27TriFaceMeshInteractor.cpp b/src/cpu/VirtualFluidsCore/Interactors/D3Q27TriFaceMeshInteractor.cpp
index 3ec38f463e00d1b2f622744e03d723f64e26c0c4..3bf919dde1593bf930712076d48d07142c4dbbec 100644
--- a/src/cpu/VirtualFluidsCore/Interactors/D3Q27TriFaceMeshInteractor.cpp
+++ b/src/cpu/VirtualFluidsCore/Interactors/D3Q27TriFaceMeshInteractor.cpp
@@ -8,10 +8,10 @@
 #include <basics/writer/WbWriterVtkASCII.h>
 #include "basics/writer/WbWriterVtkXmlASCII.h"
 
-#include <numerics/geometry3d/GbSystem3D.h>
-#include <numerics/geometry3d/GbCuboid3D.h>
-#include <numerics/geometry3d/GbHalfSpace3D.h>
-#include <numerics/geometry3d/GbMeshTools3D.h>
+#include <geometry3d/GbSystem3D.h>
+#include <geometry3d/GbCuboid3D.h>
+#include <geometry3d/GbHalfSpace3D.h>
+#include <geometry3d/GbMeshTools3D.h>
 #include "Block3D.h"
 #include "Grid3D.h"
 #include "BCArray3D.h"
@@ -21,7 +21,7 @@
 #include "BCProcessor.h"
 #include "basics/utilities/UbTiming.h"
 
-#include <numerics/geometry3d/GbTriFaceMesh3D.h>
+#include <geometry3d/GbTriFaceMesh3D.h>
 
 //#include <omp.h>
 
diff --git a/src/cpu/VirtualFluidsCore/Interactors/D3Q27TriFaceMeshInteractor.h b/src/cpu/VirtualFluidsCore/Interactors/D3Q27TriFaceMeshInteractor.h
index 3e2428d0cff8428853cd6d8e94c66d50154b5b32..c462b34cef388acc3eab1887791d6c26837cfac4 100644
--- a/src/cpu/VirtualFluidsCore/Interactors/D3Q27TriFaceMeshInteractor.h
+++ b/src/cpu/VirtualFluidsCore/Interactors/D3Q27TriFaceMeshInteractor.h
@@ -44,7 +44,6 @@ public:
    void setRegardPointInObjectTest( bool opt ) { this->regardPIOTest = opt; }
 
    ObObject*        clone() { throw UbException(UB_EXARGS,"not implemented");	}
-   ObObjectCreator* getCreator();
 
    UbTupleDouble3 getForces();
    UbTupleDouble3 getForcesTriangle();
diff --git a/src/cpu/VirtualFluidsCore/Interactors/Interactor3D.cpp b/src/cpu/VirtualFluidsCore/Interactors/Interactor3D.cpp
index 17adeb82a6c894804a3e3acc3b9cd861203bad59..1b39e29a4836f6d22afd90310980b62c3a3bd041 100644
--- a/src/cpu/VirtualFluidsCore/Interactors/Interactor3D.cpp
+++ b/src/cpu/VirtualFluidsCore/Interactors/Interactor3D.cpp
@@ -3,7 +3,7 @@
 
 
 #include <fstream>
-#include <numerics/geometry3d/GbCuboid3D.h>
+#include <geometry3d/GbCuboid3D.h>
 #include <basics/utilities/UbMath.h>
 #include <basics/utilities/UbFileOutput.h>
 #include "UbException.h"
diff --git a/src/cpu/VirtualFluidsCore/Visitors/CoarsenCrossAndInsideGbObjectBlockVisitor.cpp b/src/cpu/VirtualFluidsCore/Visitors/CoarsenCrossAndInsideGbObjectBlockVisitor.cpp
index 4c76abb3e62ecfefccfc9102864b369dccbfdc6c..d4185ceff9f51fb33299f1c7a7eff927fe997d9f 100644
--- a/src/cpu/VirtualFluidsCore/Visitors/CoarsenCrossAndInsideGbObjectBlockVisitor.cpp
+++ b/src/cpu/VirtualFluidsCore/Visitors/CoarsenCrossAndInsideGbObjectBlockVisitor.cpp
@@ -1,7 +1,7 @@
 #include "CoarsenCrossAndInsideGbObjectBlockVisitor.h"
 #include "Block3D.h"
 #include "Grid3D.h"
-#include <numerics/geometry3d/GbObject3D.h>
+#include <geometry3d/GbObject3D.h>
 
 CoarsenCrossAndInsideGbObjectBlockVisitor::CoarsenCrossAndInsideGbObjectBlockVisitor()
    : Block3DVisitor(), notActive(true)
diff --git a/src/cpu/VirtualFluidsCore/Visitors/GenBlocksGridVisitor.cpp b/src/cpu/VirtualFluidsCore/Visitors/GenBlocksGridVisitor.cpp
index 1d3f09c944ad233f411a1848bf28c92ce10a486b..020a9f493c144f4c0e57c630be657ce3431b627d 100644
--- a/src/cpu/VirtualFluidsCore/Visitors/GenBlocksGridVisitor.cpp
+++ b/src/cpu/VirtualFluidsCore/Visitors/GenBlocksGridVisitor.cpp
@@ -4,7 +4,7 @@
 #include "Block3D.h"
 #include "Grid3D.h"
 
-#include <numerics/geometry3d/GbObject3D.h>
+#include <geometry3d/GbObject3D.h>
 
 GenBlocksGridVisitor::GenBlocksGridVisitor(SPtr<GbObject3D> boundingBox) :
    boundingBox(boundingBox)
diff --git a/src/cpu/VirtualFluidsCore/Visitors/RefineCrossAndInsideGbObjectBlockVisitor.cpp b/src/cpu/VirtualFluidsCore/Visitors/RefineCrossAndInsideGbObjectBlockVisitor.cpp
index 64c7617d9cc0fb0e6d4637f73e94aef9cbad8ba9..ef6052170479d50813e5d5f059e2badf343dc6c2 100644
--- a/src/cpu/VirtualFluidsCore/Visitors/RefineCrossAndInsideGbObjectBlockVisitor.cpp
+++ b/src/cpu/VirtualFluidsCore/Visitors/RefineCrossAndInsideGbObjectBlockVisitor.cpp
@@ -1,6 +1,6 @@
 #include "RefineCrossAndInsideGbObjectBlockVisitor.h"
 
-#include <numerics/geometry3d/GbObject3D.h>
+#include <geometry3d/GbObject3D.h>
 #include "Grid3D.h"
 #include "Block3D.h"
 
diff --git a/src/cpu/VirtualFluidsCore/Visitors/RefineInterGbObjectsVisitor.cpp b/src/cpu/VirtualFluidsCore/Visitors/RefineInterGbObjectsVisitor.cpp
index 862ef47880e1d3cb19cc37af172adecaa2de736f..eb24f08d37bdce1e997dcf23ad3a5ae4401712bb 100644
--- a/src/cpu/VirtualFluidsCore/Visitors/RefineInterGbObjectsVisitor.cpp
+++ b/src/cpu/VirtualFluidsCore/Visitors/RefineInterGbObjectsVisitor.cpp
@@ -1,6 +1,6 @@
 #include "RefineInterGbObjectsVisitor.h"
 
-#include <numerics/geometry3d/GbObject3D.h>
+#include <geometry3d/GbObject3D.h>
 #include "Grid3D.h"
 #include "Block3D.h"
 
diff --git a/src/cpu/VirtualFluidsCore/Visitors/SpongeLayerBlockVisitor.cpp b/src/cpu/VirtualFluidsCore/Visitors/SpongeLayerBlockVisitor.cpp
index 4bbea1fd8c03d6f7f6dbc59589c09769ea22c45f..55edc6e1c2975a65c695b0edf12c5f8676916c0c 100644
--- a/src/cpu/VirtualFluidsCore/Visitors/SpongeLayerBlockVisitor.cpp
+++ b/src/cpu/VirtualFluidsCore/Visitors/SpongeLayerBlockVisitor.cpp
@@ -9,7 +9,7 @@
 #include "D3Q27System.h"
 #include "BCArray3D.h"
 #include "BCProcessor.h"
-#include <numerics/geometry3d/GbCuboid3D.h>
+#include <geometry3d/GbCuboid3D.h>
 
 using namespace std;
 
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.cu b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.cu
index e351b69fc4b38f983038680f93ee3f1b9fac2bc3..a856613875da5bd8179b9bb67fc707f84fec08cd 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.cu
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.cu
@@ -2,7 +2,7 @@
 
 #include "Core/Timer/Timer.h"
 
-#include "basics/numerics/geometry3d/GbTriFaceMesh3D.h"
+#include "basics/geometry3d/GbTriFaceMesh3D.h"
 
 #include "geometries/TriangularMesh/triangleNeighborFinder/TriangleNeighborFinder.h"
 #include "geometries/TriangularMesh/TriangularMeshStrategy.h"
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.cpp b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.cpp
index 3fea77f5434b7e1d02fef5fce096247727259e5c..f4d5d64c1b2c82a7855747343bcc2c04a7b192cb 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.cpp
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.cpp
@@ -2,7 +2,7 @@
 
 #include "Core/Timer/Timer.h"
 
-#include "basics/numerics/geometry3d/GbTriFaceMesh3D.h"
+#include "basics/geometry3d/GbTriFaceMesh3D.h"
 
 #include "geometries/Triangle/Triangle.h"
 #include "geometries/TriangularMesh/TriangularMesh.h"