diff --git a/apps/cpu/GyroidsRow/GyroidsRow.cpp b/apps/cpu/GyroidsRow/GyroidsRow.cpp
index d9d16743cc15598134b4296490c26e27b7460aa6..eee5282f23a472c2e63fba9892a15042419b6dbc 100644
--- a/apps/cpu/GyroidsRow/GyroidsRow.cpp
+++ b/apps/cpu/GyroidsRow/GyroidsRow.cpp
@@ -81,7 +81,7 @@ void run(const vf::basics::ConfigurationFile& config)
 
         if (myid == 0) {
             stringstream logFilename;
-            logFilename << pathname + "/logfile" + UbSystem::toString(UbSystem::getTimeStamp()) + ".txt";
+            logFilename << pathname + "/logfile" + ub_system::toString(ub_system::getTimeStamp()) + ".txt";
             UbLog::output_policy::setStream(logFilename.str());
         }
     }
@@ -150,14 +150,14 @@ void run(const vf::basics::ConfigurationFile& config)
 
         SPtr<GbObject3D> gridCube(new GbCuboid3D(g_minX1, g_minX2, g_minX3, g_maxX1, g_maxX2, g_maxX3));
         if (myid == 0)
-            GbSystem3D::writeGeoObject(gridCube.get(), pathname + "/geo/gridCube",
+            gb_system_3d::writeGeoObject(gridCube.get(), pathname + "/geo/gridCube",
                                         WbWriterVtkXmlBinary::getInstance());
 
             
         SPtr<GbCuboid3D> spongecube(new GbCuboid3D(TPMSOrigin[0] + TPMSL[0], g_minX2 - dx, g_minX3 - dx,
                                                     g_maxX1 + dx, g_maxX2 + dx, g_maxX3 + dx));
         if (myid == 0)
-            GbSystem3D::writeGeoObject(spongecube.get(), pathname + "/geo/spongecube",
+            gb_system_3d::writeGeoObject(spongecube.get(), pathname + "/geo/spongecube",
                                         WbWriterVtkXmlBinary::getInstance());
         if (myid == 0) {
             // UBLOG(logINFO,"rho = " << rhoLB );
@@ -189,13 +189,13 @@ void run(const vf::basics::ConfigurationFile& config)
         GbCuboid3DPtr zMax(new GbCuboid3D(g_minX1 - dx, g_minX2 - dx, g_maxX3, g_maxX1 + dx, g_maxX2 + dx, g_maxX3 + dx));
 
         if (myid == 0)
-            GbSystem3D::writeGeoObject(xMin.get(), pathname + "/geo/xMin", WbWriterVtkXmlBinary::getInstance());
+            gb_system_3d::writeGeoObject(xMin.get(), pathname + "/geo/xMin", WbWriterVtkXmlBinary::getInstance());
         if (myid == 0)
-            GbSystem3D::writeGeoObject(xMax.get(), pathname + "/geo/xMax", WbWriterVtkXmlBinary::getInstance());
+            gb_system_3d::writeGeoObject(xMax.get(), pathname + "/geo/xMax", WbWriterVtkXmlBinary::getInstance());
         if (myid == 0)
-            GbSystem3D::writeGeoObject(zMin.get(), pathname + "/geo/zMin", WbWriterVtkXmlBinary::getInstance());
+            gb_system_3d::writeGeoObject(zMin.get(), pathname + "/geo/zMin", WbWriterVtkXmlBinary::getInstance());
         if (myid == 0)
-            GbSystem3D::writeGeoObject(zMax.get(), pathname + "/geo/zMax", WbWriterVtkXmlBinary::getInstance());
+            gb_system_3d::writeGeoObject(zMax.get(), pathname + "/geo/zMax", WbWriterVtkXmlBinary::getInstance());
 
         SPtr<D3Q27Interactor> tpmsInt = SPtr<D3Q27Interactor>(new D3Q27Interactor(tpms, grid, tpmsNoslipAdapter, Interactor3D::SOLID, Interactor3D::POINTS));
         SPtr<D3Q27Interactor> xMinInt = SPtr<D3Q27Interactor>(new D3Q27Interactor(xMin, grid, xMinApr, Interactor3D::SOLID, Interactor3D::POINTS));
diff --git a/apps/cpu/LaminarPipeFlow/LaminarPipeFlow.cpp b/apps/cpu/LaminarPipeFlow/LaminarPipeFlow.cpp
index 82ab41a999d335628ed7eadb49d55085e1e80966..8551c01f8837fa809fba3e8b4431fe163b6c387c 100644
--- a/apps/cpu/LaminarPipeFlow/LaminarPipeFlow.cpp
+++ b/apps/cpu/LaminarPipeFlow/LaminarPipeFlow.cpp
@@ -132,11 +132,11 @@ void run(const vf::basics::ConfigurationFile& config)
         real g_maxX3 = length[2] / 2.0;
 
         SPtr<GbObject3D> cylinder(new GbCylinder3D(g_minX1 - 2.0 * dx, 0.0, 0.0, g_maxX1 + 2.0 * dx, 0.0, 0.0, dLB / 2.0));
-        GbSystem3D::writeGeoObject(cylinder.get(), pathname + "/geo/cylinder", WbWriterVtkXmlBinary::getInstance());
+        gb_system_3d::writeGeoObject(cylinder.get(), pathname + "/geo/cylinder", WbWriterVtkXmlBinary::getInstance());
 
         SPtr<GbObject3D> gridCube(new GbCuboid3D(g_minX1, g_minX2, g_minX3, g_maxX1, g_maxX2, g_maxX3));
         if (myid == 0)
-            GbSystem3D::writeGeoObject(gridCube.get(), pathname + "/geo/gridCube", WbWriterVtkXmlBinary::getInstance());
+            gb_system_3d::writeGeoObject(gridCube.get(), pathname + "/geo/gridCube", WbWriterVtkXmlBinary::getInstance());
 
         real blockLength = 3. * dx;
 
@@ -147,29 +147,29 @@ void run(const vf::basics::ConfigurationFile& config)
         grid->setPeriodicX3(false);
 
         if (myid == 0)
-            GbSystem3D::writeGeoObject(gridCube.get(), pathname + "/geo/gridCube", WbWriterVtkXmlBinary::getInstance());
+            gb_system_3d::writeGeoObject(gridCube.get(), pathname + "/geo/gridCube", WbWriterVtkXmlBinary::getInstance());
 
         GenBlocksGridVisitor genBlocks(gridCube);
         grid->accept(genBlocks);
 
         SPtr<GbObject3D> refineCube1_1(new GbCuboid3D(g_minX1, g_minX2, g_minX3, g_maxX1, g_minX2 + blockLength, g_maxX3));
         if (myid == 0)
-            GbSystem3D::writeGeoObject(refineCube1_1.get(), pathname + "/geo/refineCube1_1",
+            gb_system_3d::writeGeoObject(refineCube1_1.get(), pathname + "/geo/refineCube1_1",
                                        WbWriterVtkXmlBinary::getInstance());
 
         SPtr<GbObject3D> refineCube1_2(new GbCuboid3D(g_minX1, g_maxX2 - blockLength, g_minX3, g_maxX1, g_maxX2, g_maxX3));
         if (myid == 0)
-            GbSystem3D::writeGeoObject(refineCube1_2.get(), pathname + "/geo/refineCube1_2",
+            gb_system_3d::writeGeoObject(refineCube1_2.get(), pathname + "/geo/refineCube1_2",
                                        WbWriterVtkXmlBinary::getInstance());
 
         SPtr<GbObject3D> refineCube1_3(new GbCuboid3D(g_minX1, g_minX2, g_minX3, g_maxX1, g_maxX2, g_minX3 + blockLength));
         if (myid == 0)
-            GbSystem3D::writeGeoObject(refineCube1_3.get(), pathname + "/geo/refineCube1_3",
+            gb_system_3d::writeGeoObject(refineCube1_3.get(), pathname + "/geo/refineCube1_3",
                                        WbWriterVtkXmlBinary::getInstance());
 
         SPtr<GbObject3D> refineCube1_4(new GbCuboid3D(g_minX1, g_minX2, g_maxX3 - blockLength, g_maxX1, g_maxX2, g_maxX3));
         if (myid == 0)
-            GbSystem3D::writeGeoObject(refineCube1_4.get(), pathname + "/geo/refineCube1_4",
+            gb_system_3d::writeGeoObject(refineCube1_4.get(), pathname + "/geo/refineCube1_4",
                                        WbWriterVtkXmlBinary::getInstance());
 
         if (refineLevel > 0) {
@@ -189,13 +189,13 @@ void run(const vf::basics::ConfigurationFile& config)
         GbCuboid3DPtr geoInflow(new GbCuboid3D(g_minX1 - blockLength, g_minX2 - blockLength, g_minX3 - blockLength, g_minX1,
                                                g_maxX2 + blockLength, g_maxX3 + blockLength));
         if (myid == 0)
-            GbSystem3D::writeGeoObject(geoInflow.get(), pathname + "/geo/geoInflow", WbWriterVtkXmlASCII::getInstance());
+            gb_system_3d::writeGeoObject(geoInflow.get(), pathname + "/geo/geoInflow", WbWriterVtkXmlASCII::getInstance());
 
         // outflow
         GbCuboid3DPtr geoOutflow(new GbCuboid3D(g_maxX1, g_minX2 - blockLength, g_minX3 - blockLength, g_maxX1 + blockLength,
                                                 g_maxX2 + blockLength, g_maxX3 + blockLength));
         if (myid == 0)
-            GbSystem3D::writeGeoObject(geoOutflow.get(), pathname + "/geo/geoOutflow", WbWriterVtkXmlASCII::getInstance());
+            gb_system_3d::writeGeoObject(geoOutflow.get(), pathname + "/geo/geoOutflow", WbWriterVtkXmlASCII::getInstance());
 
         SPtr<D3Q27Interactor> cylinderInt(new D3Q27Interactor(cylinder, grid, noSlipBC, Interactor3D::INVERSESOLID));
 
@@ -221,7 +221,7 @@ void run(const vf::basics::ConfigurationFile& config)
         ppblocks.reset();
 
         if (myid == 0)
-            VF_LOG_INFO("{}", Utilities::toString(grid, comm->getNumberOfProcesses()));
+            VF_LOG_INFO("{}", utilities::toString(grid, comm->getNumberOfProcesses()));
 
         SetKernelBlockVisitor kernelVisitor(kernel, nuLB, comm->getNumberOfProcesses());
         grid->accept(kernelVisitor);
diff --git a/apps/cpu/LaminarPlaneFlow/LaminarPlaneFlow.cpp b/apps/cpu/LaminarPlaneFlow/LaminarPlaneFlow.cpp
index 7805a797ad465def68d4c5a7884914e110fb3119..19988e7c2829109e49db6f8197c02e11d3217478 100644
--- a/apps/cpu/LaminarPlaneFlow/LaminarPlaneFlow.cpp
+++ b/apps/cpu/LaminarPlaneFlow/LaminarPlaneFlow.cpp
@@ -104,19 +104,19 @@ void run(const vf::basics::ConfigurationFile& config)
 
     SPtr<GbObject3D> gridCube(new GbCuboid3D(g_minX1, g_minX2, g_minX3, g_maxX1, g_maxX2, g_maxX3));
     if (myid == 0)
-        GbSystem3D::writeGeoObject(gridCube.get(), pathname + "/geo/gridCube", WbWriterVtkXmlBinary::getInstance());
+        gb_system_3d::writeGeoObject(gridCube.get(), pathname + "/geo/gridCube", WbWriterVtkXmlBinary::getInstance());
 
     real k1 = 4;
 
     SPtr<GbObject3D> refineCube1_1(new GbCuboid3D(g_minX1, g_minX2, g_minX3, g_maxX1, g_maxX2 / k1 - 1.0, g_maxX3));
     if (myid == 0)
-        GbSystem3D::writeGeoObject(refineCube1_1.get(), pathname + "/geo/refineCube1_1",
+        gb_system_3d::writeGeoObject(refineCube1_1.get(), pathname + "/geo/refineCube1_1",
                                    WbWriterVtkXmlBinary::getInstance());
 
     SPtr<GbObject3D> refineCube1_2(
         new GbCuboid3D(g_minX1, g_maxX2 - g_maxX2 / k1 + 1.0, g_minX3, g_maxX1, g_maxX2, g_maxX3));
     if (myid == 0)
-        GbSystem3D::writeGeoObject(refineCube1_2.get(), pathname + "/geo/refineCube1_2",
+        gb_system_3d::writeGeoObject(refineCube1_2.get(), pathname + "/geo/refineCube1_2",
                                    WbWriterVtkXmlBinary::getInstance());
 
     SPtr<LBMKernel> kernel;
@@ -159,24 +159,24 @@ void run(const vf::basics::ConfigurationFile& config)
         GbCuboid3DPtr addWallYmin(new GbCuboid3D(g_minX1 - blockLength, g_minX2 - blockLength, g_minX3 - blockLength,
                                                  g_maxX1 + blockLength, g_minX2, g_maxX3 + blockLength));
         if (myid == 0)
-            GbSystem3D::writeGeoObject(addWallYmin.get(), pathname + "/geo/addWallYmin", WbWriterVtkXmlASCII::getInstance());
+            gb_system_3d::writeGeoObject(addWallYmin.get(), pathname + "/geo/addWallYmin", WbWriterVtkXmlASCII::getInstance());
 
         GbCuboid3DPtr addWallYmax(new GbCuboid3D(g_minX1 - blockLength, g_maxX2, g_minX3 - blockLength,
                                                  g_maxX1 + blockLength, g_maxX2 + blockLength, g_maxX3 + blockLength));
         if (myid == 0)
-            GbSystem3D::writeGeoObject(addWallYmax.get(), pathname + "/geo/addWallYmax", WbWriterVtkXmlASCII::getInstance());
+            gb_system_3d::writeGeoObject(addWallYmax.get(), pathname + "/geo/addWallYmax", WbWriterVtkXmlASCII::getInstance());
 
         // inflow
         GbCuboid3DPtr geoInflow(new GbCuboid3D(g_minX1 - blockLength, g_minX2 - blockLength, g_minX3 - blockLength, g_minX1,
                                                g_maxX2 + blockLength, g_maxX3 + blockLength));
         if (myid == 0)
-            GbSystem3D::writeGeoObject(geoInflow.get(), pathname + "/geo/geoInflow", WbWriterVtkXmlASCII::getInstance());
+            gb_system_3d::writeGeoObject(geoInflow.get(), pathname + "/geo/geoInflow", WbWriterVtkXmlASCII::getInstance());
 
         // outflow
         GbCuboid3DPtr geoOutflow(new GbCuboid3D(g_maxX1, g_minX2 - blockLength, g_minX3 - blockLength, g_maxX1 + blockLength,
                                                 g_maxX2 + blockLength, g_maxX3 + blockLength));
         if (myid == 0)
-            GbSystem3D::writeGeoObject(geoOutflow.get(), pathname + "/geo/geoOutflow", WbWriterVtkXmlASCII::getInstance());
+            gb_system_3d::writeGeoObject(geoOutflow.get(), pathname + "/geo/geoOutflow", WbWriterVtkXmlASCII::getInstance());
 
         SPtr<SimulationObserver> ppblocks(new WriteBlocksSimulationObserver(
             grid, SPtr<UbScheduler>(new UbScheduler(1)), pathname, WbWriterVtkXmlBinary::getInstance(), comm));
@@ -232,7 +232,7 @@ void run(const vf::basics::ConfigurationFile& config)
         ppblocks.reset();
 
         if (myid == 0)
-            VF_LOG_INFO("{}", Utilities::toString(grid, comm->getNumberOfProcesses()));
+            VF_LOG_INFO("{}", utilities::toString(grid, comm->getNumberOfProcesses()));
 
         SetKernelBlockVisitor kernelVisitor(kernel, nu);
         grid->accept(kernelVisitor);
diff --git a/apps/cpu/LidDrivenCavity/LidDrivenCavity.cpp b/apps/cpu/LidDrivenCavity/LidDrivenCavity.cpp
index 37c29df6de2d0c4b9d418cf114e2f94fbc26b6bf..8244182d18d410c1583d90f58212bc4987c7c9a5 100644
--- a/apps/cpu/LidDrivenCavity/LidDrivenCavity.cpp
+++ b/apps/cpu/LidDrivenCavity/LidDrivenCavity.cpp
@@ -91,7 +91,7 @@ int main(int argc, char* argv[])
 
         // Create simulation bounding box
         SPtr<GbObject3D> gridCube(new GbCuboid3D(g_minX1, g_minX2, g_minX3, g_maxX1, g_maxX2, g_maxX3));
-        GbSystem3D::writeGeoObject(gridCube.get(), path + "/geo/gridCube", WbWriterVtkXmlBinary::getInstance());
+        gb_system_3d::writeGeoObject(gridCube.get(), path + "/geo/gridCube", WbWriterVtkXmlBinary::getInstance());
 
         UBLOG(logINFO, "Lid Driven Cavity:");
         UBLOG(logINFO, "Domain size = " << nx << " x " << nx << " x " << nx);
@@ -143,19 +143,19 @@ int main(int argc, char* argv[])
 
         // Create boundary conditions geometry
         GbCuboid3DPtr wallXmin(new GbCuboid3D(g_minX1 - dx, g_minX2 - dx, g_minX3 - dx, g_minX1, g_maxX2 + dx, g_maxX3));
-        GbSystem3D::writeGeoObject(wallXmin.get(), path + "/geo/wallXmin", WbWriterVtkXmlASCII::getInstance());
+        gb_system_3d::writeGeoObject(wallXmin.get(), path + "/geo/wallXmin", WbWriterVtkXmlASCII::getInstance());
         GbCuboid3DPtr wallXmax(new GbCuboid3D(g_maxX1, g_minX2 - dx, g_minX3 - dx, g_maxX1 + dx, g_maxX2 + dx, g_maxX3));
-        GbSystem3D::writeGeoObject(wallXmax.get(), path + "/geo/wallXmax", WbWriterVtkXmlASCII::getInstance());
+        gb_system_3d::writeGeoObject(wallXmax.get(), path + "/geo/wallXmax", WbWriterVtkXmlASCII::getInstance());
         GbCuboid3DPtr wallYmin(new GbCuboid3D(g_minX1 - dx, g_minX2 - dx, g_minX3 - dx, g_maxX1 + dx, g_minX2, g_maxX3));
-        GbSystem3D::writeGeoObject(wallYmin.get(), path + "/geo/wallYmin", WbWriterVtkXmlASCII::getInstance());
+        gb_system_3d::writeGeoObject(wallYmin.get(), path + "/geo/wallYmin", WbWriterVtkXmlASCII::getInstance());
         GbCuboid3DPtr wallYmax(new GbCuboid3D(g_minX1 - dx, g_maxX2, g_minX3 - dx, g_maxX1 + dx, g_maxX2 + dx, g_maxX3));
-        GbSystem3D::writeGeoObject(wallYmax.get(), path + "/geo/wallYmax", WbWriterVtkXmlASCII::getInstance());
+        gb_system_3d::writeGeoObject(wallYmax.get(), path + "/geo/wallYmax", WbWriterVtkXmlASCII::getInstance());
         GbCuboid3DPtr wallZmin(
             new GbCuboid3D(g_minX1 - dx, g_minX2 - dx, g_minX3 - dx, g_maxX1 + dx, g_maxX2 + dx, g_minX3));
-        GbSystem3D::writeGeoObject(wallZmin.get(), path + "/geo/wallZmin", WbWriterVtkXmlASCII::getInstance());
+        gb_system_3d::writeGeoObject(wallZmin.get(), path + "/geo/wallZmin", WbWriterVtkXmlASCII::getInstance());
         GbCuboid3DPtr wallZmax(
             new GbCuboid3D(g_minX1 - dx, g_minX2 - dx, g_maxX3, g_maxX1 + dx, g_maxX2 + dx, g_maxX3 + dx));
-        GbSystem3D::writeGeoObject(wallZmax.get(), path + "/geo/wallZmax", WbWriterVtkXmlASCII::getInstance());
+        gb_system_3d::writeGeoObject(wallZmax.get(), path + "/geo/wallZmax", WbWriterVtkXmlASCII::getInstance());
 
         // Add boundary conditions to grid generator
         SPtr<D3Q27Interactor> wallXminInt(new D3Q27Interactor(wallXmin, grid, noSlipBC, Interactor3D::SOLID));
@@ -178,7 +178,7 @@ int main(int argc, char* argv[])
         intHelper.selectBlocks();
 
         if (myid == 0)
-            VF_LOG_INFO("{}", Utilities::toString(grid, comm->getNumberOfProcesses()));
+            VF_LOG_INFO("{}", utilities::toString(grid, comm->getNumberOfProcesses()));
 
         // Generate grid
         SetKernelBlockVisitor kernelVisitor(kernel, viscosityLB);
@@ -204,10 +204,10 @@ int main(int argc, char* argv[])
 
         UBLOG(logINFO, "Preprocess - end");
 
-        UBLOG(logINFO, "Total Physical Memory (RAM): " << Utilities::getTotalPhysMem() / 1e9 << " GB");
-        UBLOG(logINFO, "Physical Memory currently used: " << Utilities::getPhysMemUsed() / 1e9 << " GB");
+        UBLOG(logINFO, "Total Physical Memory (RAM): " << utilities::getTotalPhysMem() / 1e9 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used: " << utilities::getPhysMemUsed() / 1e9 << " GB");
         UBLOG(logINFO,
-              "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1e9 << " GB");
+              "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1e9 << " GB");
 
         // Create coprocessor object for writing macroscopic quantities to VTK-file
         SPtr<UbScheduler> visSch(new UbScheduler(timeStepOut));
diff --git a/apps/gpu/AtmosphericBoundaryLayer/AtmosphericBoundaryLayer.cpp b/apps/gpu/AtmosphericBoundaryLayer/AtmosphericBoundaryLayer.cpp
index b692e5b704de25ca1b544f8dd0ea7f13ab40162d..3940c1f51a67138c6eebd87d30e1948e059082ba 100644
--- a/apps/gpu/AtmosphericBoundaryLayer/AtmosphericBoundaryLayer.cpp
+++ b/apps/gpu/AtmosphericBoundaryLayer/AtmosphericBoundaryLayer.cpp
@@ -281,23 +281,23 @@ void run(const vf::basics::ConfigurationFile& config)
 
     if (numberOfProcesses > 1) {
         if (isFirstSubDomain || isMidSubDomain) {
-            gridBuilder->findCommunicationIndices(CommunicationDirections::PX);
-            gridBuilder->setCommunicationProcess(CommunicationDirections::PX, processID + 1);
+            gridBuilder->findCommunicationIndices(communication_directions::PX);
+            gridBuilder->setCommunicationProcess(communication_directions::PX, processID + 1);
         }
 
         if (isLastSubDomain || isMidSubDomain) {
-            gridBuilder->findCommunicationIndices(CommunicationDirections::MX, true);
-            gridBuilder->setCommunicationProcess(CommunicationDirections::MX, processID - 1);
+            gridBuilder->findCommunicationIndices(communication_directions::MX, true);
+            gridBuilder->setCommunicationProcess(communication_directions::MX, processID - 1);
         }
 
         if (isFirstSubDomain && !usePrecursorInflow) {
-            gridBuilder->findCommunicationIndices(CommunicationDirections::MX);
-            gridBuilder->setCommunicationProcess(CommunicationDirections::MX, numberOfProcesses - 1);
+            gridBuilder->findCommunicationIndices(communication_directions::MX);
+            gridBuilder->setCommunicationProcess(communication_directions::MX, numberOfProcesses - 1);
         }
 
         if (isLastSubDomain && !usePrecursorInflow) {
-            gridBuilder->findCommunicationIndices(CommunicationDirections::PX);
-            gridBuilder->setCommunicationProcess(CommunicationDirections::PX, 0);
+            gridBuilder->findCommunicationIndices(communication_directions::PX);
+            gridBuilder->setCommunicationProcess(communication_directions::PX, 0);
         }
     }
 
diff --git a/pythonbindings/src/basics/submodules/configuration_file.cpp b/pythonbindings/src/basics/submodules/configuration_file.cpp
index 16f47fc3c670899143d2b838204a0d7f87a85186..4a1b4c8bdb20d79ed87fb948ac72ee4ea69dd16a 100644
--- a/pythonbindings/src/basics/submodules/configuration_file.cpp
+++ b/pythonbindings/src/basics/submodules/configuration_file.cpp
@@ -30,6 +30,7 @@
 //=======================================================================================
 #include <pybind11/pybind11.h>
 #include "basics/config/ConfigurationFile.h"
+#include "basics/DataTypes.h"
 
 namespace configuration
 {
diff --git a/src/basics/container/CbVector.h b/src/basics/container/CbVector.h
index 14b7b2e2f0fa369a6d1de30a8eb915d48b34a254..47b3155a52bd62be142b2048ce4d819d537060ce 100644
--- a/src/basics/container/CbVector.h
+++ b/src/basics/container/CbVector.h
@@ -185,8 +185,8 @@ public:
     {
 #if !defined(VF_NO_RANGECHECK) && (defined(VF_DEBUG) || defined(VF_RANGECHECK))
         if (i >= dataSize)
-            UB_THROW(UbException(UB_EXARGS, "T=" + (std::string) typeid(*this).name() + UbSystem::toString(i) +
-                                                " out of range (size=" + UbSystem::toString(dataSize) + ")"));
+            UB_THROW(UbException(UB_EXARGS, "T=" + (std::string) typeid(*this).name() + ub_system::toString(i) +
+                                                " out of range (size=" + ub_system::toString(dataSize) + ")"));
 #endif // VF_DEBUG
 
         return ptrData[i];
@@ -196,8 +196,8 @@ public:
     {
 #if !defined(VF_NO_RANGECHECK) && (defined(VF_DEBUG) || defined(VF_RANGECHECK))
         if (i >= dataSize)
-            UB_THROW(UbException(UB_EXARGS, "T=" + (std::string) typeid(*this).name() + UbSystem::toString(i) +
-                                                " out of range (size=" + UbSystem::toString(dataSize) + ")"));
+            UB_THROW(UbException(UB_EXARGS, "T=" + (std::string) typeid(*this).name() + ub_system::toString(i) +
+                                                " out of range (size=" + ub_system::toString(dataSize) + ")"));
 #endif // VF_DEBUG
 
         return ptrData[i];
diff --git a/src/basics/container/CbVectorPool.h b/src/basics/container/CbVectorPool.h
index 92df4ccaa98ad583179b79dfd113b036ff0cceca..ba337c8c303497e26e3dc711b73eff252f862987 100644
--- a/src/basics/container/CbVectorPool.h
+++ b/src/basics/container/CbVectorPool.h
@@ -145,7 +145,7 @@ public:
             return this->allocData(allocator, vec, dataSize, value);
         }
 
-        UB_THROW(UbException(UB_EXARGS, "vector-key=" + UbSystem::toString(allocator.key) + " already taken! (e.g. SetConnectorBlockVisitor was called several times"));
+        UB_THROW(UbException(UB_EXARGS, "vector-key=" + ub_system::toString(allocator.key) + " already taken! (e.g. SetConnectorBlockVisitor was called several times"));
     }
     /*==================================================================*/
     bool resizeVectorData(CbVector<value_type> &vec, const size_type &dataSize, const value_type &value = value_type())
diff --git a/src/basics/geometry3d/CoordinateTransformation3D.cpp b/src/basics/geometry3d/CoordinateTransformation3D.cpp
index 75cada29ec6a8e0ca539e88a0245d54bae345091..dbbe8a58bfa6448c95384303e0b10c39e3d25249 100644
--- a/src/basics/geometry3d/CoordinateTransformation3D.cpp
+++ b/src/basics/geometry3d/CoordinateTransformation3D.cpp
@@ -102,7 +102,7 @@ void CoordinateTransformation3D::setTransformationValues(const double &originX1,
                                                          const double &dx3, const double &alpha, const double &beta,
                                                          const double &gamma)
 {
-    if (UbMath::zero(dx1) || UbMath::zero(dx2) || UbMath::zero(dx3))
+    if (ub_math::zero(dx1) || ub_math::zero(dx2) || ub_math::zero(dx3))
         throw UbException(UB_EXARGS, "error: at least one delta==0.0");
 
     this->Tx1   = originX1;
@@ -115,13 +115,13 @@ void CoordinateTransformation3D::setTransformationValues(const double &originX1,
     this->beta  = beta;
     this->gamma = gamma;
 
-    double ra   = UbMath::PI * alpha / 180.0;
+    double ra   = ub_math::PI * alpha / 180.0;
     double cosA = cos(ra);
     double sinA = sin(ra);
-    double rb   = UbMath::PI * beta / 180.0;
+    double rb   = ub_math::PI * beta / 180.0;
     double cosB = cos(rb);
     double sinB = sin(rb);
-    double rg   = UbMath::PI * gamma / 180.0;
+    double rg   = ub_math::PI * gamma / 180.0;
     double cosG = cos(rg);
     double sinG = sin(rg);
 
diff --git a/src/basics/geometry3d/GbCuboid3D.cpp b/src/basics/geometry3d/GbCuboid3D.cpp
index ef85c06cc01d8ebc676a3d44f6f7e32197080282..b2f313b53c09a4776156b2697c6720316fcc5318 100644
--- a/src/basics/geometry3d/GbCuboid3D.cpp
+++ b/src/basics/geometry3d/GbCuboid3D.cpp
@@ -177,17 +177,17 @@ double GbCuboid3D::getLengthX3() { return (this->getX3Maximum() - this->getX3Min
 bool GbCuboid3D::isPointInGbObject3D(const double &x1p, const double &x2p, const double &x3p)
 {
     // true, wenn 'in Object' oder 'auf Boundary'!
-    if (UbMath::less(x1p, this->getX1Minimum()))
+    if (ub_math::less(x1p, this->getX1Minimum()))
         return false;
-    else if (UbMath::less(x2p, this->getX2Minimum()))
+    else if (ub_math::less(x2p, this->getX2Minimum()))
         return false;
-    else if (UbMath::less(x3p, this->getX3Minimum()))
+    else if (ub_math::less(x3p, this->getX3Minimum()))
         return false;
-    else if (UbMath::greater(x1p, this->getX1Maximum()))
+    else if (ub_math::greater(x1p, this->getX1Maximum()))
         return false;
-    else if (UbMath::greater(x2p, this->getX2Maximum()))
+    else if (ub_math::greater(x2p, this->getX2Maximum()))
         return false;
-    else if (UbMath::greater(x3p, this->getX3Maximum()))
+    else if (ub_math::greater(x3p, this->getX3Maximum()))
         return false;
 
     return true;
@@ -198,30 +198,30 @@ bool GbCuboid3D::isPointInGbObject3D(const double &x1p, const double &x2p, const
     pointIsOnBoundary = false;
 
     // true, wenn 'in Object' oder 'auf Boundary'!
-    if (UbMath::less(x1p, this->getX1Minimum()))
+    if (ub_math::less(x1p, this->getX1Minimum()))
         return false;
-    else if (UbMath::less(x2p, this->getX2Minimum()))
+    else if (ub_math::less(x2p, this->getX2Minimum()))
         return false;
-    else if (UbMath::less(x3p, this->getX3Minimum()))
+    else if (ub_math::less(x3p, this->getX3Minimum()))
         return false;
-    else if (UbMath::greater(x1p, this->getX1Maximum()))
+    else if (ub_math::greater(x1p, this->getX1Maximum()))
         return false;
-    else if (UbMath::greater(x2p, this->getX2Maximum()))
+    else if (ub_math::greater(x2p, this->getX2Maximum()))
         return false;
-    else if (UbMath::greater(x3p, this->getX3Maximum()))
+    else if (ub_math::greater(x3p, this->getX3Maximum()))
         return false;
 
-    if (UbMath::equal(x1p, this->getX1Minimum()))
+    if (ub_math::equal(x1p, this->getX1Minimum()))
         pointIsOnBoundary = true;
-    else if (UbMath::equal(x2p, this->getX2Minimum()))
+    else if (ub_math::equal(x2p, this->getX2Minimum()))
         pointIsOnBoundary = true;
-    else if (UbMath::equal(x3p, this->getX3Minimum()))
+    else if (ub_math::equal(x3p, this->getX3Minimum()))
         pointIsOnBoundary = true;
-    else if (UbMath::equal(x1p, this->getX1Maximum()))
+    else if (ub_math::equal(x1p, this->getX1Maximum()))
         pointIsOnBoundary = true;
-    else if (UbMath::equal(x2p, this->getX2Maximum()))
+    else if (ub_math::equal(x2p, this->getX2Maximum()))
         pointIsOnBoundary = true;
-    else if (UbMath::equal(x3p, this->getX3Maximum()))
+    else if (ub_math::equal(x3p, this->getX3Maximum()))
         pointIsOnBoundary = true;
 
     return true;
@@ -230,17 +230,17 @@ bool GbCuboid3D::isPointInGbObject3D(const double &x1p, const double &x2p, const
 bool GbCuboid3D::isCellInsideGbObject3D(const double &x1p1, const double &x2p1, const double &x3p1, const double &x1p2,
                                         const double &x2p2, const double &x3p2)
 {
-    if (UbMath::less(x1p1, this->getX1Minimum()))
+    if (ub_math::less(x1p1, this->getX1Minimum()))
         return false;
-    else if (UbMath::less(x2p1, this->getX2Minimum()))
+    else if (ub_math::less(x2p1, this->getX2Minimum()))
         return false;
-    else if (UbMath::less(x3p1, this->getX3Minimum()))
+    else if (ub_math::less(x3p1, this->getX3Minimum()))
         return false;
-    else if (UbMath::greater(x1p2, this->getX1Maximum()))
+    else if (ub_math::greater(x1p2, this->getX1Maximum()))
         return false;
-    else if (UbMath::greater(x2p2, this->getX2Maximum()))
+    else if (ub_math::greater(x2p2, this->getX2Maximum()))
         return false;
-    else if (UbMath::greater(x3p2, this->getX3Maximum()))
+    else if (ub_math::greater(x3p2, this->getX3Maximum()))
         return false;
 
     return true;
@@ -264,7 +264,7 @@ bool GbCuboid3D::isCellCuttingGbObject3D(const double &x1a, const double &x2a, c
 
     return false;
 
-    // GbCuboid3D* cube = GbSystem3D::clipRectangle3D(*this->p1, *this->p2, x1a,x2a,x3a,x1b,x2b,x3b);
+    // GbCuboid3D* cube = gb_system_3d::clipRectangle3D(*this->p1, *this->p2, x1a,x2a,x3a,x1b,x2b,x3b);
     // if(cube)
     //{
     //   cube->finalize();
@@ -290,13 +290,13 @@ bool GbCuboid3D::isCellInsideOrCuttingGbObject3D(const double &x1a, const double
     //                |<----------------- T --------------->|
     // ist |T| <= dxA + dxB -> overlap!
 
-    if (UbMath::lessEqual(std::fabs(this->getX1Centroid() - 0.5 * (x1b + x1a) /*Tx1*/),
+    if (ub_math::lessEqual(std::fabs(this->getX1Centroid() - 0.5 * (x1b + x1a) /*Tx1*/),
                           0.5 * (this->getLengthX1() + std::fabs(x1b - x1a) /*dx1A+dx1B*/))
 
-        && UbMath::lessEqual(std::fabs(this->getX2Centroid() - 0.5 * (x2b + x2a) /*Tx2*/),
+        && ub_math::lessEqual(std::fabs(this->getX2Centroid() - 0.5 * (x2b + x2a) /*Tx2*/),
                              0.5 * (this->getLengthX2() + std::fabs(x2b - x2a) /*dx2A+dx2B*/))
 
-        && UbMath::lessEqual(std::fabs(this->getX3Centroid() - 0.5 * (x3b + x3a) /*Tx3*/),
+        && ub_math::lessEqual(std::fabs(this->getX3Centroid() - 0.5 * (x3b + x3a) /*Tx3*/),
                              0.5 * (this->getLengthX3() + std::fabs(x3b - x3a) /*dx3A+dx3B*/))) {
         return true;
     }
@@ -410,7 +410,7 @@ GbPoint3D *GbCuboid3D::calculateInterSectionPoint3D(GbPoint3D & /*point1*/, GbPo
 /*=======================================================*/
 GbLine3D *GbCuboid3D::createClippedLine3D(GbPoint3D &point1, GbPoint3D &point2)
 {
-    return GbSystem3D::createClipLine3D(point1, point2, p1->getX1Coordinate(), p1->getX2Coordinate(),
+    return gb_system_3d::createClipLine3D(point1, point2, p1->getX1Coordinate(), p1->getX2Coordinate(),
                                         p1->getX3Coordinate(), p2->getX1Coordinate(), p2->getX2Coordinate(),
                                         p2->getX3Coordinate());
 }
@@ -479,7 +479,7 @@ double GbCuboid3D::getCellVolumeInsideGbObject3D(const double &x1a, const double
     if (!(this->isCellCuttingGbObject3D(x1a, x2a, x3a, x1b, x2b, x3b)))
         return 0.0;
 
-    GbCuboid3D *cube = GbSystem3D::clipRectangle3D(*this->p1, *this->p2, x1a, x2a, x3a, x1b, x2b, x3b);
+    GbCuboid3D *cube = gb_system_3d::clipRectangle3D(*this->p1, *this->p2, x1a, x2a, x3a, x1b, x2b, x3b);
 
     if (cube) {
         double eps;
diff --git a/src/basics/geometry3d/GbCuboid3D.h b/src/basics/geometry3d/GbCuboid3D.h
index 8e57d10ab1153a22141f942c217ec98531815be8..024e980fe80f127cebb11ca9ae6b2a6e4ecce507 100644
--- a/src/basics/geometry3d/GbCuboid3D.h
+++ b/src/basics/geometry3d/GbCuboid3D.h
@@ -126,11 +126,11 @@ public:
 
         // falls punkt innerhalt ist: minimalen abstand ausrechnen
         if (this->isPointInGbObject3D(x1p, x2p, x3p)) {
-            double x1Dist = UbMath::min(std::abs(x1p - this->getX1Minimum()), std::abs(x1p - this->getX1Maximum()));
-            double x2Dist = UbMath::min(std::abs(x2p - this->getX2Minimum()), std::abs(x2p - this->getX2Maximum()));
-            double x3Dist = UbMath::min(std::abs(x3p - this->getX3Minimum()), std::abs(x3p - this->getX3Maximum()));
+            double x1Dist = ub_math::min(std::abs(x1p - this->getX1Minimum()), std::abs(x1p - this->getX1Maximum()));
+            double x2Dist = ub_math::min(std::abs(x2p - this->getX2Minimum()), std::abs(x2p - this->getX2Maximum()));
+            double x3Dist = ub_math::min(std::abs(x3p - this->getX3Minimum()), std::abs(x3p - this->getX3Maximum()));
 
-            return UbMath::min(x1Dist, x2Dist, x3Dist);
+            return ub_math::min(x1Dist, x2Dist, x3Dist);
         } else {
         }
     }
diff --git a/src/basics/geometry3d/GbCylinder3D.cpp b/src/basics/geometry3d/GbCylinder3D.cpp
index 79c71be494192010df54eea9b0059f6627f14336..37531a7d5ad0c18fb7e18325645feb56ab32ba4f 100644
--- a/src/basics/geometry3d/GbCylinder3D.cpp
+++ b/src/basics/geometry3d/GbCylinder3D.cpp
@@ -237,17 +237,17 @@ void GbCylinder3D::setPoint2(const double &x1, const double &x2, const double &x
 bool GbCylinder3D::isPointInGbObject3D(const double &x1p, const double &x2p, const double &x3p)
 {
     // true, wenn 'in Object' oder 'auf Boundary'!
-    if (this->isParallelToX1Axis() && (UbMath::less(x1p, minX1) || UbMath::greater(x1p, maxX1)))
+    if (this->isParallelToX1Axis() && (ub_math::less(x1p, minX1) || ub_math::greater(x1p, maxX1)))
         return false;
-    else if (this->isParallelToX2Axis() && (UbMath::less(x2p, minX2) || UbMath::greater(x2p, maxX2)))
+    else if (this->isParallelToX2Axis() && (ub_math::less(x2p, minX2) || ub_math::greater(x2p, maxX2)))
         return false;
-    else if (this->isParallelToX3Axis() && (UbMath::less(x3p, minX3) || UbMath::greater(x3p, maxX3)))
+    else if (this->isParallelToX3Axis() && (ub_math::less(x3p, minX3) || ub_math::greater(x3p, maxX3)))
         return false;
     else if (this->isNotParallelToAxis())
         throw UbException(UB_EXARGS,
                           "derzeit nur zu Achsen orthogonale Zylinder erlaubt... isPointInObject3D funzt sonst ned");
 
-    return UbMath::lessEqual(fabs(mLine->getDistance(x1p, x2p, x3p)), fabs(mRad));
+    return ub_math::lessEqual(fabs(mLine->getDistance(x1p, x2p, x3p)), fabs(mRad));
 }
 /*==========================================================*/
 bool GbCylinder3D::isPointInGbObject3D(const double &x1p, const double &x2p, const double &x3p, bool &pointIsOnBoundary)
@@ -255,11 +255,11 @@ bool GbCylinder3D::isPointInGbObject3D(const double &x1p, const double &x2p, con
     // funzt derzeit nur bei achsparallelen cylindern
     pointIsOnBoundary = false;
 
-    if (this->isParallelToX1Axis() && (UbMath::less(x1p, minX1) || UbMath::greater(x1p, maxX1)))
+    if (this->isParallelToX1Axis() && (ub_math::less(x1p, minX1) || ub_math::greater(x1p, maxX1)))
         return false;
-    else if (this->isParallelToX2Axis() && (UbMath::less(x2p, minX2) || UbMath::greater(x2p, maxX2)))
+    else if (this->isParallelToX2Axis() && (ub_math::less(x2p, minX2) || ub_math::greater(x2p, maxX2)))
         return false;
-    else if (this->isParallelToX3Axis() && (UbMath::less(x3p, minX3) || UbMath::greater(x3p, maxX3)))
+    else if (this->isParallelToX3Axis() && (ub_math::less(x3p, minX3) || ub_math::greater(x3p, maxX3)))
         return false;
     else if (this->isNotParallelToAxis())
         throw UbException(UB_EXARGS,
@@ -269,17 +269,17 @@ bool GbCylinder3D::isPointInGbObject3D(const double &x1p, const double &x2p, con
 
     double dis = mLine->getDistance(x1p, x2p, x3p);
 
-    if (UbMath::equal(dis, mRad))
+    if (ub_math::equal(dis, mRad))
         pointIsOnBoundary = true;
 
-    if (this->isParallelToX1Axis() && (UbMath::equal(x1p, minX1) || UbMath::equal(x1p, maxX1)))
+    if (this->isParallelToX1Axis() && (ub_math::equal(x1p, minX1) || ub_math::equal(x1p, maxX1)))
         pointIsOnBoundary = true;
-    else if (this->isParallelToX2Axis() && (UbMath::equal(x2p, minX2) || UbMath::equal(x2p, maxX2)))
+    else if (this->isParallelToX2Axis() && (ub_math::equal(x2p, minX2) || ub_math::equal(x2p, maxX2)))
         pointIsOnBoundary = true;
-    else if (this->isParallelToX3Axis() && (UbMath::equal(x3p, minX3) || UbMath::equal(x3p, maxX3)))
+    else if (this->isParallelToX3Axis() && (ub_math::equal(x3p, minX3) || ub_math::equal(x3p, maxX3)))
         pointIsOnBoundary = true;
 
-    return UbMath::lessEqual(dis, mRad);
+    return ub_math::lessEqual(dis, mRad);
 }
 /*==========================================================*/
 string GbCylinder3D::toString()
@@ -336,66 +336,66 @@ bool GbCylinder3D::isCellInsideOrCuttingGbObject3D(const double &x1a, const doub
 
     if (this->isParallelToX1Axis()) {
         // check liegt Cell komplett !x1-ausserhalb"?
-        if (UbMath::less(x1a, minX1) && UbMath::less(x1b, minX1))
+        if (ub_math::less(x1a, minX1) && ub_math::less(x1b, minX1))
             return false;
-        if (UbMath::greater(x1a, maxX1) && UbMath::greater(x1b, maxX1))
+        if (ub_math::greater(x1a, maxX1) && ub_math::greater(x1b, maxX1))
             return false;
 
         // mittelpunkt kreis-querschnitt
         double &midX2 = mLine->getPoint1()->x2;
         double &midX3 = mLine->getPoint1()->x3;
-        if (UbMath::less(midX2, x2a))
+        if (ub_math::less(midX2, x2a))
             dmin += std::pow(midX2 - x2a, 2.0);
-        else if (UbMath::greater(midX2, x2b))
+        else if (ub_math::greater(midX2, x2b))
             dmin += std::pow(midX2 - x2b, 2.0);
-        if (UbMath::less(midX3, x3a))
+        if (ub_math::less(midX3, x3a))
             dmin += std::pow(midX3 - x3a, 2.0);
-        else if (UbMath::greater(midX3, x3b))
+        else if (ub_math::greater(midX3, x3b))
             dmin += std::pow(midX3 - x3b, 2.0);
-        if (UbMath::lessEqual(dmin, mRad * mRad))
+        if (ub_math::lessEqual(dmin, mRad * mRad))
             return true;
 
         return false;
     } else if (this->isParallelToX2Axis()) {
         // check liegt Cell komplett !x2-ausserhalb"?
-        if (UbMath::less(x2a, minX2) && UbMath::less(x2b, minX2))
+        if (ub_math::less(x2a, minX2) && ub_math::less(x2b, minX2))
             return false;
-        if (UbMath::greater(x2a, maxX2) && UbMath::greater(x2b, maxX2))
+        if (ub_math::greater(x2a, maxX2) && ub_math::greater(x2b, maxX2))
             return false;
 
         // mittelpunkt kreis-querschnitt
         double &midX1 = mLine->getPoint1()->x1;
         double &midX3 = mLine->getPoint1()->x3;
-        if (UbMath::less(midX1, x1a))
+        if (ub_math::less(midX1, x1a))
             dmin += std::pow(midX1 - x1a, 2.0);
-        else if (UbMath::greater(midX1, x1b))
+        else if (ub_math::greater(midX1, x1b))
             dmin += std::pow(midX1 - x1b, 2.0);
-        if (UbMath::less(midX3, x3a))
+        if (ub_math::less(midX3, x3a))
             dmin += std::pow(midX3 - x3a, 2.0);
-        else if (UbMath::greater(midX3, x3b))
+        else if (ub_math::greater(midX3, x3b))
             dmin += std::pow(midX3 - x3b, 2.0);
-        if (UbMath::lessEqual(dmin, mRad * mRad))
+        if (ub_math::lessEqual(dmin, mRad * mRad))
             return true;
 
     } else if (this->isParallelToX3Axis()) {
         // check liegt Cell komplett !x3-ausserhalb"?
-        if (UbMath::less(x3a, minX3) && UbMath::less(x3b, minX3))
+        if (ub_math::less(x3a, minX3) && ub_math::less(x3b, minX3))
             return false;
-        if (UbMath::greater(x3a, maxX3) && UbMath::greater(x3b, maxX3))
+        if (ub_math::greater(x3a, maxX3) && ub_math::greater(x3b, maxX3))
             return false;
 
         // mittelpunkt kreis-querschnitt
         double &midX1 = mLine->getPoint1()->x1;
         double &midX2 = mLine->getPoint1()->x2;
-        if (UbMath::less(midX1, x1a))
+        if (ub_math::less(midX1, x1a))
             dmin += std::pow(midX1 - x1a, 2.0);
-        else if (UbMath::greater(midX1, x1b))
+        else if (ub_math::greater(midX1, x1b))
             dmin += std::pow(midX1 - x1b, 2.0);
-        if (UbMath::less(midX2, x2a))
+        if (ub_math::less(midX2, x2a))
             dmin += std::pow(midX2 - x2a, 2.0);
-        else if (UbMath::greater(midX2, x2b))
+        else if (ub_math::greater(midX2, x2b))
             dmin += std::pow(midX2 - x2b, 2.0);
-        if (UbMath::lessEqual(dmin, mRad * mRad))
+        if (ub_math::lessEqual(dmin, mRad * mRad))
             return true;
     }
 
@@ -465,18 +465,18 @@ GbLine3D *GbCylinder3D::createClippedLine3D(GbPoint3D &point1, GbPoint3D &point2
     double nenner  = -2.0 * (ya * yb + xa * xb) + xa2 + xb2 + ya2 + yb2;
     double zaehler = 2.0 * (-xa * xm + xb * xm - ya * ym + yb * ym) + xa2 - xb2 + ya2 - yb2;
 
-    if (UbMath::greaterEqual(wurzel, 0.0) && !UbMath::zero(nenner)) // fabs(nenner)>1.E-13)
+    if (ub_math::greaterEqual(wurzel, 0.0) && !ub_math::zero(nenner)) // fabs(nenner)>1.E-13)
     {
         t1 = (zaehler + 2.0 * sqrt(wurzel)) / nenner;
         t2 = (zaehler - 2.0 * sqrt(wurzel)) / nenner;
 
-        if (UbMath::inClosedInterval(t1, -1.0, 1.0)) // Schnittpunkt innerhalb der Strecke
+        if (ub_math::inClosedInterval(t1, -1.0, 1.0)) // Schnittpunkt innerhalb der Strecke
         {
             double x = xa * (0.5 - 0.5 * t1) + xb * (0.5 + 0.5 * t1);
             double y = ya * (0.5 - 0.5 * t1) + yb * (0.5 + 0.5 * t1);
             double z = za * (0.5 - 0.5 * t1) + zb * (0.5 + 0.5 * t1);
 
-            if (UbMath::inClosedInterval(z, zStart, zEnd)) // zWert muss sich innerhal der cylinderlaenge befinden
+            if (ub_math::inClosedInterval(z, zStart, zEnd)) // zWert muss sich innerhal der cylinderlaenge befinden
             {
                 if (this->isParallelToX1Axis())
                     schnittpunkte.push_back(new GbPoint3D(z, x, y));
@@ -486,13 +486,13 @@ GbLine3D *GbCylinder3D::createClippedLine3D(GbPoint3D &point1, GbPoint3D &point2
                     schnittpunkte.push_back(new GbPoint3D(x, y, z));
             }
         }
-        if (fabs(t2 - t1) > 1.E-13 && UbMath::inClosedInterval(t2, -1.0, 1.0)) // Schnittpunkt innerhalb der Strecke
+        if (fabs(t2 - t1) > 1.E-13 && ub_math::inClosedInterval(t2, -1.0, 1.0)) // Schnittpunkt innerhalb der Strecke
         {
             double x = xa * (0.5 - 0.5 * t2) + xb * (0.5 + 0.5 * t2);
             double y = ya * (0.5 - 0.5 * t2) + yb * (0.5 + 0.5 * t2);
             double z = za * (0.5 - 0.5 * t2) + zb * (0.5 + 0.5 * t2);
 
-            if (UbMath::inClosedInterval(z, zStart, zEnd)) // zWert muss sich innerhal der cylinderlaenge befinden
+            if (ub_math::inClosedInterval(z, zStart, zEnd)) // zWert muss sich innerhal der cylinderlaenge befinden
             {
                 if (this->isParallelToX1Axis())
                     schnittpunkte.push_back(new GbPoint3D(z, x, y));
@@ -595,7 +595,7 @@ GbLine3D *GbCylinder3D::createClippedLine3D(GbPoint3D &point1, GbPoint3D &point2
         // double tStrecke =
         // -(-x1a*y2a+x1a*y2b+2.0*y2a*x2b+y1a*x2a-2.0*x2a*y2b-y1a*x2b+y1b*x2a-y1b*x2b-x1b*y2a+x1b*y2b)/nenner2; wenn -1
         // <= t2 <= +1 -> SP mit strecke
-        if (UbMath::inClosedInterval(t1ab, -1.0, 1.0)) // Schnittpunkt innerhalb der Strecke
+        if (ub_math::inClosedInterval(t1ab, -1.0, 1.0)) // Schnittpunkt innerhalb der Strecke
         {
             double x, y, z, abstand_ist;
             if (this->isParallelToX1Axis()) {
@@ -618,7 +618,7 @@ GbLine3D *GbCylinder3D::createClippedLine3D(GbPoint3D &point1, GbPoint3D &point2
 
             // pruefen, ob Punkt Element von Kreisflaeche
             // double abstand_ist=sqrt((y2m-y)*(y2m-y)+(z2m-z)*(z2m-z));
-            if (UbMath::lessEqual(abstand_ist, mRad)) // Punkt ist Schnittpunkt
+            if (ub_math::lessEqual(abstand_ist, mRad)) // Punkt ist Schnittpunkt
             {
                 bool exists = false;
                 for (int pos = 0; pos < (int)schnittpunkte.size(); ++pos) {
@@ -643,7 +643,7 @@ GbLine3D *GbCylinder3D::createClippedLine3D(GbPoint3D &point1, GbPoint3D &point2
                        x1b * y3a - y1b * x3a + y1b * x3b) /
                       nenner1ab;
 
-        if (UbMath::inClosedInterval(t1ab, -1.0, 1.0)) // Schnittpunkt innerhalb der Strecke
+        if (ub_math::inClosedInterval(t1ab, -1.0, 1.0)) // Schnittpunkt innerhalb der Strecke
         {
             double x, y, z, abstand_ist;
             if (this->isParallelToX1Axis()) {
@@ -667,7 +667,7 @@ GbLine3D *GbCylinder3D::createClippedLine3D(GbPoint3D &point1, GbPoint3D &point2
             // pruefen, ob Punkt Element von Kreisflaeche
             // double abstand_ist=sqrt((y2m-y)*(y2m-y)+(z2m-z)*(z2m-z));
 
-            if (UbMath::lessEqual(abstand_ist, mRad)) // Punkt ist Schnittpunkt
+            if (ub_math::lessEqual(abstand_ist, mRad)) // Punkt ist Schnittpunkt
             {
                 bool exists = false;
                 for (int pos = 0; pos < (int)schnittpunkte.size(); ++pos) {
@@ -728,7 +728,7 @@ vector<GbTriangle3D *> GbCylinder3D::getSurfaceTriangleSet()
     vector<GbTriangle3D *> triangles;
 
     int segmentsCircle = 20;
-    double deltaPhi    = UbMath::PI / (double)segmentsCircle;
+    double deltaPhi    = ub_math::PI / (double)segmentsCircle;
 
     double phiX1a, phiX1b;
     double x1a, x2a, x3a, x1b, x2b, x3b, x1c, x2c, x3c, x1d, x2d, x3d;
@@ -739,7 +739,7 @@ vector<GbTriangle3D *> GbCylinder3D::getSurfaceTriangleSet()
         x1a = x1d = x1ma + segCyl * dXCylinder;
         x1b = x1c = x1a + dXCylinder;
 
-        for (phiX1a = 2.0 * UbMath::PI; phiX1a > 0; phiX1a -= deltaPhi) {
+        for (phiX1a = 2.0 * ub_math::PI; phiX1a > 0; phiX1a -= deltaPhi) {
             phiX1b = phiX1a + deltaPhi;
 
             x2a = x2m + mRad * std::sin(phiX1a);
@@ -774,7 +774,7 @@ vector<GbTriangle3D *> GbCylinder3D::getSurfaceTriangleSet()
         if (segCyl == segmentsSide - 1)
             radius1 = mRad;
 
-        for (phiX1a = 2.0 * UbMath::PI; phiX1a > 0; phiX1a -= deltaPhi) {
+        for (phiX1a = 2.0 * ub_math::PI; phiX1a > 0; phiX1a -= deltaPhi) {
             phiX1b = phiX1a + deltaPhi;
 
             x2a = x2m + radius0 * std::sin(phiX1a);
@@ -842,7 +842,7 @@ void GbCylinder3D::addSurfaceTriangleSet(vector<UbTupleFloat3> &nodes, vector<Ub
         throw UbException(UB_EXARGS, "cylinder not axis prallel");
 
     int segmentsCircle = 20;
-    double deltaPhi    = UbMath::PI / (double)segmentsCircle;
+    double deltaPhi    = ub_math::PI / (double)segmentsCircle;
 
     double phiX1a, phiX1b;
     float x1a, x2a, x3a, x1b, x2b, x3b, x1c, x2c, x3c, x1d, x2d, x3d;
@@ -854,7 +854,7 @@ void GbCylinder3D::addSurfaceTriangleSet(vector<UbTupleFloat3> &nodes, vector<Ub
         x1a = x1d = (float)(x1ma + segCyl * dXCylinder);
         x1b = x1c = (float)(x1a + dXCylinder);
 
-        for (phiX1a = 2.0 * UbMath::PI; phiX1a > 0; phiX1a -= deltaPhi) {
+        for (phiX1a = 2.0 * ub_math::PI; phiX1a > 0; phiX1a -= deltaPhi) {
             phiX1b = phiX1a + deltaPhi;
 
             x2a = (float)(x2m + mRad * std::sin(phiX1a));
@@ -899,7 +899,7 @@ void GbCylinder3D::addSurfaceTriangleSet(vector<UbTupleFloat3> &nodes, vector<Ub
         if (segCyl == segmentsSide - 1)
             radius1 = mRad;
 
-        for (phiX1a = 2.0 * UbMath::PI; phiX1a > 0; phiX1a -= deltaPhi) {
+        for (phiX1a = 2.0 * ub_math::PI; phiX1a > 0; phiX1a -= deltaPhi) {
             phiX1b = phiX1a + deltaPhi;
 
             x2a = x2m + (float)(radius0 * std::sin(phiX1a));
@@ -987,7 +987,7 @@ void GbCylinder3D::addSurfaceTriangleSetSegments(vector<UbTupleFloat3> &nodes, v
         throw UbException(UB_EXARGS, "cylinder not axis prallel");
 
     int segmentsCircle = segmentsRound;
-    double deltaPhi    = UbMath::PI / (double)segmentsCircle;
+    double deltaPhi    = ub_math::PI / (double)segmentsCircle;
 
     double phiX1a, phiX1b;
     float x1a, x2a, x3a, x1b, x2b, x3b, x1c, x2c, x3c, x1d, x2d, x3d;
@@ -999,8 +999,8 @@ void GbCylinder3D::addSurfaceTriangleSetSegments(vector<UbTupleFloat3> &nodes, v
         x1a = x1d = (float)(x1ma + segCyl * dXCylinder);
         x1b = x1c = (float)(x1a + dXCylinder);
 
-        // for(phiX1a=2.0*UbMath::PI; phiX1a>0.0; phiX1a-=deltaPhi)
-        for (phiX1a = 0.0; phiX1a < 2.0 * UbMath::PI - 0.5 * deltaPhi; phiX1a += deltaPhi) {
+        // for(phiX1a=2.0*ub_math::PI; phiX1a>0.0; phiX1a-=deltaPhi)
+        for (phiX1a = 0.0; phiX1a < 2.0 * ub_math::PI - 0.5 * deltaPhi; phiX1a += deltaPhi) {
             phiX1b = phiX1a + deltaPhi;
 
             x2a = (float)(x2m + mRad * std::sin(phiX1a));
@@ -1045,8 +1045,8 @@ void GbCylinder3D::addSurfaceTriangleSetSegments(vector<UbTupleFloat3> &nodes, v
         if (segCyl == segmentsSide - 1)
             radius1 = mRad;
 
-        // for(phiX1a=2.0*UbMath::PI; phiX1a>0.0; phiX1a-=deltaPhi)
-        for (phiX1a = 0.0; phiX1a < 2.0 * UbMath::PI - 0.5 * deltaPhi; phiX1a += deltaPhi) {
+        // for(phiX1a=2.0*ub_math::PI; phiX1a>0.0; phiX1a-=deltaPhi)
+        for (phiX1a = 0.0; phiX1a < 2.0 * ub_math::PI - 0.5 * deltaPhi; phiX1a += deltaPhi) {
             phiX1b = phiX1a + deltaPhi;
 
             x2a = x2m + (float)(radius0 * std::sin(phiX1a));
@@ -1134,15 +1134,15 @@ void GbCylinder3D::objectWillBeDeleted(UbObservable *objectForDeletion)
 void GbCylinder3D::scale(const double &sx1, const double &sx2, const double &sx3)
 {
     if (this->isParallelToX1Axis()) {
-        if (!UbMath::equal(sx2, sx3))
+        if (!ub_math::equal(sx2, sx3))
             throw UbException(UB_EXARGS, "|| to x1 -> different scaling sx2 and sx3 not possible");
         this->mRad *= sx2;
     } else if (this->isParallelToX2Axis()) {
-        if (!UbMath::equal(sx1, sx3))
+        if (!ub_math::equal(sx1, sx3))
             throw UbException(UB_EXARGS, "|| to x2 -> different scaling sx1 and sx3 not possible");
         this->mRad *= sx1;
     } else if (this->isParallelToX3Axis()) {
-        if (!UbMath::equal(sx1, sx2))
+        if (!ub_math::equal(sx1, sx2))
             throw UbException(UB_EXARGS, "|| to x3 -> different scaling sx1 and sx2 not possible");
         this->mRad *= sx1;
     } else
@@ -1163,13 +1163,13 @@ double GbCylinder3D::getIntersectionRaytraceFactor(const double &x1, const doubl
     D =   - dw / dc
     */
     double px1, px2, px3;
-    double d = Ub::inf; // Distance to Min or Max Plane of the Zylinder
+    double d = ub_math::inf; // Distance to Min or Max Plane of the Zylinder
                         // final distance should be less that d
 
     if (this->isParallelToX1Axis()) {
-        if (UbMath::equal(x1, minX1) && UbMath::negative(rx1))
+        if (ub_math::equal(x1, minX1) && ub_math::negative(rx1))
             return -1.0;
-        else if (UbMath::equal(x1, maxX1) && UbMath::positive(rx1))
+        else if (ub_math::equal(x1, maxX1) && ub_math::positive(rx1))
             return -1.0;
 
         // falls die Linie nicht parallel zu den Seitenflaechen ist
@@ -1177,17 +1177,17 @@ double GbCylinder3D::getIntersectionRaytraceFactor(const double &x1, const doubl
         {
             px1 = (x1 < minX1 ? minX1 : maxX1);
             // falls die Linie nicht parallel zu den Seitenflaechen ist
-            if (!UbMath::zero(rx1)) {
+            if (!ub_math::zero(rx1)) {
                 // Plane a= 0, b= 1, c=0 d= -1*px2
                 d   = -1.0 * (x1 - px1) / rx1;
                 px2 = x2 + d * rx2;
                 px3 = x3 + d * rx3;
 
-                if (UbMath::greater(mLine->getDistance(px1, px2, px3), mRad)) {
+                if (ub_math::greater(mLine->getDistance(px1, px2, px3), mRad)) {
                     if (x1 < minX1 && rx1 > 0.0)
-                        d = Ub::inf; // punkt liegt "links" vom cylinder und strahl hat evtl weiteren SP auf oberflaeche
+                        d = ub_math::inf; // punkt liegt "links" vom cylinder und strahl hat evtl weiteren SP auf oberflaeche
                     else if (x1 > maxX1 && rx1 < 0.0)
-                        d = Ub::inf;
+                        d = ub_math::inf;
                     else
                         return -1.0;
                 } else
@@ -1195,32 +1195,32 @@ double GbCylinder3D::getIntersectionRaytraceFactor(const double &x1, const doubl
             } else
                 return -1.0;
         } else {
-            if (UbMath::negative(rx1))
+            if (ub_math::negative(rx1))
                 d = -1.0 * (x1 - minX1) / rx1;
-            else if (UbMath::positive(rx1))
+            else if (ub_math::positive(rx1))
                 d = -1.0 * (x1 - maxX1) / rx1;
         }
     } else if (this->isParallelToX2Axis()) {
-        if (UbMath::equal(x2, minX2) && UbMath::negative(rx2))
+        if (ub_math::equal(x2, minX2) && ub_math::negative(rx2))
             return -1;
-        else if (UbMath::equal(x2, maxX2) && UbMath::positive(rx2))
+        else if (ub_math::equal(x2, maxX2) && ub_math::positive(rx2))
             return -1;
 
         if (minX2 > x2 || x2 > maxX2) {
             px2 = (x2 < minX2 ? minX2 : maxX2);
             // falls die Linie nicht parallel zu den Seitenflaechen ist
-            if (!UbMath::zero(rx2)) {
+            if (!ub_math::zero(rx2)) {
                 // Plane a= 0, b= 1, c=0 d= -1*px2
                 d   = -1 * (x2 - px2) / rx2;
                 px1 = x1 + d * rx1;
                 px3 = x3 + d * rx3;
 
-                if (UbMath::greater(mLine->getDistance(px1, px2, px3), mRad)) {
+                if (ub_math::greater(mLine->getDistance(px1, px2, px3), mRad)) {
                     if (x2 < minX2 && rx2 > 0.0)
-                        d = Ub::inf; // punkt liegt "links oberhalb" vom cylinder und strahl mit pos x1 hat evtl
+                        d = ub_math::inf; // punkt liegt "links oberhalb" vom cylinder und strahl mit pos x1 hat evtl
                                      // weiteren SP auf oberflaeche
                     else if (x2 > maxX2 && rx2 < 0.0)
-                        d = Ub::inf;
+                        d = ub_math::inf;
                     else
                         return -1.0;
                 } else
@@ -1228,30 +1228,30 @@ double GbCylinder3D::getIntersectionRaytraceFactor(const double &x1, const doubl
             } else
                 return -1.0;
         } else {
-            if (UbMath::negative(rx2))
+            if (ub_math::negative(rx2))
                 d = -1.0 * (x2 - minX2) / rx2;
-            else if (UbMath::positive(rx2))
+            else if (ub_math::positive(rx2))
                 d = -1.0 * (x2 - maxX2) / rx2;
         }
     } else if (this->isParallelToX3Axis()) {
-        if (UbMath::equal(x3, minX3) && UbMath::negative(rx3))
+        if (ub_math::equal(x3, minX3) && ub_math::negative(rx3))
             return -1.0;
-        else if (UbMath::equal(x3, maxX3) && UbMath::positive(rx3))
+        else if (ub_math::equal(x3, maxX3) && ub_math::positive(rx3))
             return -1.0;
 
         if (minX3 > x3 || x3 > maxX3) {
             px3 = (x3 < minX3 ? minX3 : maxX3);
             // falls die Linie nicht parallel zu den Seitenflaechen ist
-            if (!UbMath::zero(rx3)) {
+            if (!ub_math::zero(rx3)) {
                 // Plane a= 0, b= 0, c=1 d= -1*px3
                 d   = -1.0 * (x3 - px3) / rx3;
                 px2 = x2 + d * rx2;
                 px1 = x1 + d * rx1;
-                if (UbMath::greater(mLine->getDistance(px1, px2, px3), mRad)) {
+                if (ub_math::greater(mLine->getDistance(px1, px2, px3), mRad)) {
                     if (x3 < minX3 && rx3 > 0.0)
-                        d = Ub::inf;
+                        d = ub_math::inf;
                     else if (x3 > maxX3 && rx3 < 0.0)
-                        d = Ub::inf;
+                        d = ub_math::inf;
                     else
                         return -1.0;
                 } else
@@ -1259,9 +1259,9 @@ double GbCylinder3D::getIntersectionRaytraceFactor(const double &x1, const doubl
             } else
                 return -1.0;
         } else {
-            if (UbMath::negative(rx3))
+            if (ub_math::negative(rx3))
                 d = -1.0 * (x3 - minX3) / rx3;
-            else if (UbMath::positive(rx3))
+            else if (ub_math::positive(rx3))
                 d = -1.0 * (x3 - maxX3) / rx3;
         }
     } else
@@ -1286,13 +1286,13 @@ double GbCylinder3D::getIntersectionRaytraceFactor(const double &x1, const doubl
     double nLength = nx1 * nx1 + nx2 * nx2 + nx3 * nx3;
 
     double abs;
-    if (UbMath::zero(nLength)) { /* ray parallel to cyl  */
+    if (ub_math::zero(nLength)) { /* ray parallel to cyl  */
         // abs = RC dot axis
         double tmpabs = RCx1 * axisX1 + RCx2 * axisX2 + RCx3 * axisX3;
         double dx1    = RCx1 - tmpabs * axisX1;
         double dx2    = RCx2 - tmpabs * axisX2;
         double dx3    = RCx3 - tmpabs * axisX3;
-        if (UbMath::greater(dx1 * dx1 + dx2 * dx2 + dx3 * dx3, mRad * mRad))
+        if (ub_math::greater(dx1 * dx1 + dx2 * dx2 + dx3 * dx3, mRad * mRad))
             return -1.0;
     }
 
@@ -1306,7 +1306,7 @@ double GbCylinder3D::getIntersectionRaytraceFactor(const double &x1, const doubl
     // shortest distance  = fabs( RC dot n )
     abs = std::fabs(RCx1 * nx1 + RCx2 * nx2 + RCx3 * nx3);
 
-    if (UbMath::lessEqual(abs, mRad)) { /* if ray hits cylinder */
+    if (ub_math::lessEqual(abs, mRad)) { /* if ray hits cylinder */
         // Ox1 = RC x axis
         double Ox1 = RCx2 * axisX3 - RCx3 * axisX2;
         double Ox2 = RCx3 * axisX1 - RCx1 * axisX3;
@@ -1334,9 +1334,9 @@ double GbCylinder3D::getIntersectionRaytraceFactor(const double &x1, const doubl
         //    (s is always positive)
 
         if (t > s) {
-            return UbMath::min(t - s, d);
+            return ub_math::min(t - s, d);
         } else if ((t + s) > 0) {
-            return UbMath::min(t + s, d);
+            return ub_math::min(t + s, d);
         }
     }
 
diff --git a/src/basics/geometry3d/GbGyroidThirdOrder.cpp b/src/basics/geometry3d/GbGyroidThirdOrder.cpp
index f5c23e382555250cfaee138034201f71e9b86e3e..4a68be45fe8900692044cfdf8643238cb469726a 100644
--- a/src/basics/geometry3d/GbGyroidThirdOrder.cpp
+++ b/src/basics/geometry3d/GbGyroidThirdOrder.cpp
@@ -209,7 +209,7 @@ bool GbGyroidThirdOrder::isPointInGbObject3D(const double& x1, const double& x2,
     //evaluateImplicitFunction(x1,x2,x3, 0., 0., 0.)
     double f1 = evaluateImplicitFunction(x1, x2, x3, 1.);
     double f2 = evaluateImplicitFunction(x1, x2, x3, -1.);
-    return UbMath::lessEqual(f1,0.) && UbMath::greaterEqual(f2,0.);
+    return ub_math::lessEqual(f1,0.) && ub_math::greaterEqual(f2,0.);
 
 }
 
diff --git a/src/basics/geometry3d/GbGyroidThirdOrderLong.cpp b/src/basics/geometry3d/GbGyroidThirdOrderLong.cpp
index 0d0f601fc44db3cfc396fdb78d210b4bec5ed23e..e6a669bbe98121135e189c84836c8acebacfe739 100644
--- a/src/basics/geometry3d/GbGyroidThirdOrderLong.cpp
+++ b/src/basics/geometry3d/GbGyroidThirdOrderLong.cpp
@@ -198,7 +198,7 @@ bool GbGyroidThirdOrderLong::isPointInGbObject3D(const double& x1, const double&
     //evaluateImplicitFunction(x1,x2,x3, 0., 0., 0.)
     double f1 = evaluateImplicitFunction(x1, x2, x3, 1.);
     double f2 = evaluateImplicitFunction(x1, x2, x3, -1.);
-    return UbMath::lessEqual(f1,0.) && UbMath::greaterEqual(f2,0.);
+    return ub_math::lessEqual(f1,0.) && ub_math::greaterEqual(f2,0.);
 }
 
 /*==========================================================*/
diff --git a/src/basics/geometry3d/GbHalfSpace3D.h b/src/basics/geometry3d/GbHalfSpace3D.h
index 40acd53b95ef84ce4a9194b27e3bce3e3bece0c8..2246b06462a72709edd102ac283715ce4b4d5934 100644
--- a/src/basics/geometry3d/GbHalfSpace3D.h
+++ b/src/basics/geometry3d/GbHalfSpace3D.h
@@ -71,20 +71,20 @@ public:
     /*=============================================*/
     bool ptInside(const double &x, const double &y, const double &z)
     {
-        return UbMath::greaterEqual(normalX * x + normalY * y + normalZ * z, this->d);
+        return ub_math::greaterEqual(normalX * x + normalY * y + normalZ * z, this->d);
     }
     /*=============================================*/
     bool ptInside(GbPoint3D *pointX)
     {
         // GbVector3D X(PointX->x1, PointX->x2, PointX->x3 );
-        // return UbMath::greaterEqual(this->Normal.Dot(X), this->d);
-        return UbMath::greaterEqual(normalX * pointX->x1 + normalY * pointX->x2 + normalZ * pointX->x3, this->d);
+        // return ub_math::greaterEqual(this->Normal.Dot(X), this->d);
+        return ub_math::greaterEqual(normalX * pointX->x1 + normalY * pointX->x2 + normalZ * pointX->x3, this->d);
     }
     /*=============================================*/
     bool ptInside(GbVector3D &x)
     {
-        // return UbMath::greaterEqual(this->Normal.Dot(X), this->d);
-        return UbMath::greaterEqual(normalX * x[0] + normalY * x[1] + normalZ * x[2], this->d);
+        // return ub_math::greaterEqual(this->Normal.Dot(X), this->d);
+        return ub_math::greaterEqual(normalX * x[0] + normalY * x[1] + normalZ * x[2], this->d);
     }
     /*=============================================*/
     double getDistance(const double &x1p, const double &x2p, const double &x3p)
diff --git a/src/basics/geometry3d/GbHalfSpaceKrischan3D.cpp b/src/basics/geometry3d/GbHalfSpaceKrischan3D.cpp
index c4c5112acfb7a36c00bf9040457cc97f8e57e45d..2ac690cc8621d33108444bb1abcb26e1c45931cb 100644
--- a/src/basics/geometry3d/GbHalfSpaceKrischan3D.cpp
+++ b/src/basics/geometry3d/GbHalfSpaceKrischan3D.cpp
@@ -124,7 +124,7 @@ double GbHalfSpaceKrischan3D::getCellVolumeInsideGbObject3D(const double &x1a, c
                 // if point is INSIDE the halfspace, distance is smaller than zero
                 // --> loop determines the minimum alpha...i.e. the alpha with maximum absolute value for all points
                 // INSIDE the halfspace
-                if (UbMath::lessEqual(this->getDistance(internX1, internX2, internX3), alpha))
+                if (ub_math::lessEqual(this->getDistance(internX1, internX2, internX3), alpha))
                     alpha = this->getDistance(internX1, internX2, internX3);
                 // cout<<zelltyp<<" "<<kugel->getDistance(internX1,internX2,internX3)<<" "<<alpha<<endl;
             } // end first for
@@ -153,27 +153,27 @@ double GbHalfSpaceKrischan3D::getCellVolumeInsideGbObject3D(const double &x1a, c
     n[1] /= normLength;
     n[2] /= normLength;
 
-    if (UbMath::less(n[0], 0.0))
+    if (ub_math::less(n[0], 0.0))
         n[0] = -n[0];
-    if (UbMath::less(n[1], 0.0))
+    if (ub_math::less(n[1], 0.0))
         n[1] = -n[1];
-    if (UbMath::less(n[2], 0.0))
+    if (ub_math::less(n[2], 0.0))
         n[2] = -n[2];
 
     // cout<<"Normals: "<<n[0]<<" "<<n[1]<<" "<<n[2]<<endl;
 
     double dummy;
-    if (UbMath::greater(n[0], n[1])) {
+    if (ub_math::greater(n[0], n[1])) {
         dummy = n[1];
         n[1]  = n[0];
         n[0]  = dummy;
     }
-    if (UbMath::greater(n[1], n[2])) {
+    if (ub_math::greater(n[1], n[2])) {
         dummy = n[2];
         n[2]  = n[1];
         n[1]  = dummy;
     }
-    if (UbMath::greater(n[0], n[1])) {
+    if (ub_math::greater(n[0], n[1])) {
         dummy = n[1];
         n[1]  = n[0];
         n[0]  = dummy;
@@ -189,21 +189,21 @@ double GbHalfSpaceKrischan3D::getCellVolumeInsideGbObject3D(const double &x1a, c
     double preresult = 0.0, result = 0.0;
 
     // 1D Check
-    if (UbMath::lessEqual(n1, 0.00001) && UbMath::lessEqual(n2, 0.00001)) {
+    if (ub_math::lessEqual(n1, 0.00001) && ub_math::lessEqual(n2, 0.00001)) {
         result = alpha * x1 * x2;
     }
     // 2D Check
-    else if (UbMath::lessEqual(n1, 0.00001)) {
+    else if (ub_math::lessEqual(n1, 0.00001)) {
         preresult = (2 * n2 * n3);
         result    = (alpha * alpha) / preresult;
 
-        if (UbMath::greater(alpha, n2 * x2)) {
+        if (ub_math::greater(alpha, n2 * x2)) {
             result += -(alpha - n2 * x2) * (alpha - n2 * x2) / preresult;
         }
-        if (UbMath::greater(alpha, n3 * x3)) {
+        if (ub_math::greater(alpha, n3 * x3)) {
             result += -(alpha - n3 * x3) * (alpha - n3 * x3) / preresult;
         }
-        if (UbMath::greater(alpha, n2 * x2 + n3 * x3)) {
+        if (ub_math::greater(alpha, n2 * x2 + n3 * x3)) {
             result += (alpha - n2 * x2 - n3 * x3) * (alpha - n2 * x2 - n3 * x3) / preresult;
         }
 
@@ -216,37 +216,37 @@ double GbHalfSpaceKrischan3D::getCellVolumeInsideGbObject3D(const double &x1a, c
 
         result = alpha * alpha * alpha / preresult;
 
-        if (UbMath::greater(alpha, n1 * x1)) {
+        if (ub_math::greater(alpha, n1 * x1)) {
             result += -((alpha - n1 * x1) * (alpha - n1 * x1) * (alpha - n1 * x1)) / preresult;
         }
-        if (UbMath::greater(alpha, n2 * x2)) {
+        if (ub_math::greater(alpha, n2 * x2)) {
             result += -((alpha - n2 * x2) * (alpha - n2 * x2) * (alpha - n2 * x2)) / preresult;
         }
-        if (UbMath::greater(alpha, n3 * x3)) {
+        if (ub_math::greater(alpha, n3 * x3)) {
             result += -((alpha - n3 * x3) * (alpha - n3 * x3) * (alpha - n3 * x3)) / preresult;
         }
-        if (UbMath::greater(alpha, (n1 * x1 + n2 * x2))) {
+        if (ub_math::greater(alpha, (n1 * x1 + n2 * x2))) {
             result += ((alpha - (n1 * x1 + n2 * x2)) * (alpha - (n1 * x1 + n2 * x2)) * (alpha - (n1 * x1 + n2 * x2))) /
                       preresult;
         }
-        if (UbMath::greater(alpha, (n1 * x1 + n3 * x3))) {
+        if (ub_math::greater(alpha, (n1 * x1 + n3 * x3))) {
             result += ((alpha - (n1 * x1 + n3 * x3)) * (alpha - (n1 * x1 + n3 * x3)) * (alpha - (n1 * x1 + n3 * x3))) /
                       preresult;
         }
-        if (UbMath::greater(alpha, (n2 * x2 + n3 * x3))) {
+        if (ub_math::greater(alpha, (n2 * x2 + n3 * x3))) {
             result += ((alpha - (n2 * x2 + n3 * x3)) * (alpha - (n2 * x2 + n3 * x3)) * (alpha - (n2 * x2 + n3 * x3))) /
                       preresult;
         }
 
         // NEW
-        if (UbMath::greater(alpha, (n1 * x1 + n2 * x2 + n3 * x3))) {
+        if (ub_math::greater(alpha, (n1 * x1 + n2 * x2 + n3 * x3))) {
             result += -((alpha - (n1 * x1 + n2 * x2 + n3 * x3)) * (alpha - (n1 * x1 + n2 * x2 + n3 * x3)) *
                         (alpha - (n1 * x1 + n2 * x2 + n3 * x3))) /
                       preresult;
         }
     }
 
-    if (!UbMath::inClosedInterval(result / (x1 * x2 * x3), -0.01, 1.01)) {
+    if (!ub_math::inClosedInterval(result / (x1 * x2 * x3), -0.01, 1.01)) {
         stringstream errMsg;
 
         errMsg << "Danger...Fuellstand " << result << " nicht im Interfall [0.0..1.0]" << endl;
@@ -260,35 +260,35 @@ double GbHalfSpaceKrischan3D::getCellVolumeInsideGbObject3D(const double &x1a, c
     return result;
 
     // double eps=0.0;
-    // if( UbMath::equal(n1,0.0) && UbMath::equal(n2,0.0) )
+    // if( ub_math::equal(n1,0.0) && ub_math::equal(n2,0.0) )
     //{
     //   eps = alpha/n3;
     //}
-    // else if( UbMath::equal(n1,0.0) )
+    // else if( ub_math::equal(n1,0.0) )
     //{
     //   double dim1,dim2;
     //   dim1 = alpha/n2;
     //   dim2 = alpha/n3;
 
     //   eps = 0.5*dim1*dim2;
-    //   if( UbMath::greater(dim1,1.0) )   eps -= 0.5*(dim1-1.0)*dim2/dim1*(dim1-1.0);
-    //   if( UbMath::greater(dim2,1.0) )   eps -= 0.5*(dim2-1.0)*dim1/dim2*(dim2-1.0);
+    //   if( ub_math::greater(dim1,1.0) )   eps -= 0.5*(dim1-1.0)*dim2/dim1*(dim1-1.0);
+    //   if( ub_math::greater(dim2,1.0) )   eps -= 0.5*(dim2-1.0)*dim1/dim2*(dim2-1.0);
     //}
     // else
     //{
     //   eps = alpha*alpha*alpha;
-    //   if( UbMath::greater(alpha,n1) )
+    //   if( ub_math::greater(alpha,n1) )
     //      eps -= (alpha-n1)*(alpha-n1)*(alpha-n1);
-    //   if( UbMath::greater(alpha,n2) )
+    //   if( ub_math::greater(alpha,n2) )
     //      eps -= (alpha-n2)*(alpha-n2)*(alpha-n2);
-    //   if( UbMath::greater(alpha,n3) )
+    //   if( ub_math::greater(alpha,n3) )
     //      eps -= (alpha-n3)*(alpha-n3)*(alpha-n3);
 
-    //   if( UbMath::greater(alpha,n1+n2) )
+    //   if( ub_math::greater(alpha,n1+n2) )
     //      eps += (alpha-n1-n2)*(alpha-n1-n2)*(alpha-n1-n2);
-    //   if( UbMath::greater(alpha,n1+n3) )
+    //   if( ub_math::greater(alpha,n1+n3) )
     //      eps += (alpha-n1-n3)*(alpha-n1-n3)*(alpha-n1-n3);
-    //   if( UbMath::greater(alpha,n2+n3) )
+    //   if( ub_math::greater(alpha,n2+n3) )
     //      eps += (alpha-n2-n3)*(alpha-n2-n3)*(alpha-n2-n3);
 
     //   //attention: use without delta_i
diff --git a/src/basics/geometry3d/GbHalfSpaceKrischan3D.h b/src/basics/geometry3d/GbHalfSpaceKrischan3D.h
index f1bec2064e7406f6916d970a2858a85a20cf827b..d4de07fc2ced550ce203f24ae029992bf433d762 100644
--- a/src/basics/geometry3d/GbHalfSpaceKrischan3D.h
+++ b/src/basics/geometry3d/GbHalfSpaceKrischan3D.h
@@ -72,16 +72,16 @@ public:
     /*=============================================*/
     bool ptInside(const double &x, const double &y, const double &z)
     {
-        return UbMath::lessEqual(Normal[0] * x + Normal[1] * y + Normal[2] * z, this->d);
+        return ub_math::lessEqual(Normal[0] * x + Normal[1] * y + Normal[2] * z, this->d);
     }
     /*=============================================*/
     bool ptInside(GbPoint3D *PointX)
     {
         GbVector3D X(PointX->x1, PointX->x2, PointX->x3);
-        return UbMath::lessEqual(this->Normal.Dot(X), this->d);
+        return ub_math::lessEqual(this->Normal.Dot(X), this->d);
     }
     /*=============================================*/
-    bool ptInside(GbVector3D &X) { return UbMath::lessEqual(this->Normal.Dot(X), this->d); }
+    bool ptInside(GbVector3D &X) { return ub_math::lessEqual(this->Normal.Dot(X), this->d); }
 
     /*=====================================================*/
     // true, wenn 'in Object' oder 'auf Boundary'!
@@ -127,7 +127,7 @@ public:
                 return NULL;
 
             // distance ausrechnen (groesser null)
-            if (UbMath::less(dist1, 0.0))
+            if (ub_math::less(dist1, 0.0))
                 throw UbException(UB_EXARGS, "Punkt ausserhalb, aber Distanz kleiner null???");
 
             p1->x1 = p1->x1 + dist1 / totalDist * p1p2[0];
@@ -140,7 +140,7 @@ public:
                 return NULL;
 
             // distance ausrechnen (groesser null)
-            if (UbMath::less(dist2, 0.0))
+            if (ub_math::less(dist2, 0.0))
                 throw UbException(UB_EXARGS, "Punkt ausserhalb, aber Distanz kleiner null???");
 
             p2->x1 = p2->x1 - dist2 / totalDist * p1p2[0];
diff --git a/src/basics/geometry3d/GbLine3D.cpp b/src/basics/geometry3d/GbLine3D.cpp
index 78ccaa4fad73b0e6995014d8ce14ac2adfcf8e6b..1d36579c4b8e44b330dd2fc3f5bc74b07402d8b4 100644
--- a/src/basics/geometry3d/GbLine3D.cpp
+++ b/src/basics/geometry3d/GbLine3D.cpp
@@ -154,14 +154,14 @@ GbPoint3D *GbLine3D::calculateIntersectionPoint3D(GbLine3D * /*line*/)
 /*======================================================================*/
 GbLine3D *GbLine3D::createClippedLine3D(GbCuboid3D *cuboid)
 {
-    return GbSystem3D::createClipLine3D(*this->p1, *this->p2, cuboid->getPoint1()->x1, cuboid->getPoint1()->x2,
+    return gb_system_3d::createClipLine3D(*this->p1, *this->p2, cuboid->getPoint1()->x1, cuboid->getPoint1()->x2,
                                         cuboid->getPoint1()->x3, cuboid->getPoint2()->x1, cuboid->getPoint2()->x2,
                                         cuboid->getPoint2()->x3);
 }
 /*======================================================================*/
 GbLine3D *GbLine3D::createClippedLine3D(GbPoint3D *pA, GbPoint3D *pE)
 {
-    return GbSystem3D::createClipLine3D(*this->p1, *this->p2, pA->x1, pA->x2, pA->x3, pE->x1, pE->x2, pE->x3);
+    return gb_system_3d::createClipLine3D(*this->p1, *this->p2, pA->x1, pA->x2, pA->x3, pE->x1, pE->x2, pE->x3);
 }
 /*======================================================================*/
 double GbLine3D::getDistance(const GbPoint3D &point) { return this->getDistance(point.x1, point.x2, point.x3); }
diff --git a/src/basics/geometry3d/GbMeshTools3D.h b/src/basics/geometry3d/GbMeshTools3D.h
index 55f110715aada6f90c17feddd09d031897024b52..060386f2b1522c275d996a81e6e05919e44e5af6 100644
--- a/src/basics/geometry3d/GbMeshTools3D.h
+++ b/src/basics/geometry3d/GbMeshTools3D.h
@@ -40,7 +40,7 @@
 
 #include <basics/utilities/UbMath.h>
 
-namespace GbMeshTools3D
+namespace gb_mesh_tools_3d
 {
 inline int planeBoxOverlap(float normal[3], float vert[3], float maxbox[3]) // -NJMP-
 {
@@ -279,22 +279,22 @@ inline int triBoxOverlap(float boxcenter[3], float boxhalfsize[3], float trivert
     /*  the triangle against the AABB */
     /* test in X-direction */
     // FINDMINMAX(v0[0],v1[0],v2[0],min,max);
-    min = (float)UbMath::min(v0[0], v1[0], v2[0]);
-    max = (float)UbMath::max(v0[0], v1[0], v2[0]);
+    min = (float)ub_math::min(v0[0], v1[0], v2[0]);
+    max = (float)ub_math::max(v0[0], v1[0], v2[0]);
     if (min > boxhalfsize[0] || max < -boxhalfsize[0])
         return 0;
 
     /* test in Y-direction */
     // FINDMINMAX(v0[1],v1[1],v2[1],min,max);
-    min = (float)UbMath::min(v0[1], v1[1], v2[1]);
-    max = (float)UbMath::max(v0[1], v1[1], v2[1]);
+    min = (float)ub_math::min(v0[1], v1[1], v2[1]);
+    max = (float)ub_math::max(v0[1], v1[1], v2[1]);
     if (min > boxhalfsize[1] || max < -boxhalfsize[1])
         return 0;
 
     /* test in Z-direction */
     // FINDMINMAX(v0[2],v1[2],v2[2],min,max);
-    min = (float)UbMath::min(v0[2], v1[2], v2[2]);
-    max = (float)UbMath::max(v0[2], v1[2], v2[2]);
+    min = (float)ub_math::min(v0[2], v1[2], v2[2]);
+    max = (float)ub_math::max(v0[2], v1[2], v2[2]);
 
     if (min > boxhalfsize[2] || max < -boxhalfsize[2])
         return 0;
@@ -314,7 +314,7 @@ inline int triBoxOverlap(float boxcenter[3], float boxhalfsize[3], float trivert
     return 1;     /* box and triangle overlaps */
 }
 
-} // namespace GbMeshTools3D
+} // namespace gb_mesh_tools_3d
 
 #endif
 
diff --git a/src/basics/geometry3d/GbObject3D.cpp b/src/basics/geometry3d/GbObject3D.cpp
index f0bb5761b3260b2b34a398dfcd9d272d9a7ebcf8..e3f300a19254debb8d7109527e153b98ea4da5e9 100644
--- a/src/basics/geometry3d/GbObject3D.cpp
+++ b/src/basics/geometry3d/GbObject3D.cpp
@@ -89,9 +89,9 @@ bool GbObject3D::isCellInsideOrCuttingGbObject3D(const double &x1a, const double
 bool GbObject3D::isInsideCell(const double &minX1, const double &minX2, const double &minX3, const double &maxX1,
                               const double &maxX2, const double &maxX3)
 {
-    if (UbMath::greaterEqual(this->getX1Minimum(), minX1) && UbMath::greaterEqual(this->getX2Minimum(), minX2) &&
-        UbMath::greaterEqual(this->getX3Minimum(), minX3) && UbMath::lessEqual(this->getX1Maximum(), maxX1) &&
-        UbMath::lessEqual(this->getX2Maximum(), maxX2) && UbMath::lessEqual(this->getX2Maximum(), maxX3))
+    if (ub_math::greaterEqual(this->getX1Minimum(), minX1) && ub_math::greaterEqual(this->getX2Minimum(), minX2) &&
+        ub_math::greaterEqual(this->getX3Minimum(), minX3) && ub_math::lessEqual(this->getX1Maximum(), maxX1) &&
+        ub_math::lessEqual(this->getX2Maximum(), maxX2) && ub_math::lessEqual(this->getX2Maximum(), maxX3))
         return true;
 
     return false;
diff --git a/src/basics/geometry3d/GbPolygon3D.cpp b/src/basics/geometry3d/GbPolygon3D.cpp
index 801d2d30cf209b7b2dab2cc9e850e82b836c3660..c1638cb9f0d40f01ed28bb600a0d8199077bccd3 100644
--- a/src/basics/geometry3d/GbPolygon3D.cpp
+++ b/src/basics/geometry3d/GbPolygon3D.cpp
@@ -41,7 +41,7 @@ GbPolygon3D::GbPolygon3D()
 {
     init();
     counter++;
-    this->ps = new GbSystem3D::PointSet3(0);
+    this->ps = new gb_system_3d::PointSet3(0);
 }
 void GbPolygon3D::init()
 {
@@ -67,7 +67,7 @@ GbPolygon3D::GbPolygon3D(int capacity)
 {
     init();
     counter++;
-    this->ps = new GbSystem3D::PointSet3(capacity);
+    this->ps = new gb_system_3d::PointSet3(capacity);
     //     this.po = new PointObserver(this);
 }
 /**
@@ -78,7 +78,7 @@ GbPolygon3D::GbPolygon3D(vector<GbPoint3D> &points)
 {
     init();
     counter++;
-    this->ps = new GbSystem3D::PointSet3((int)points.size());
+    this->ps = new gb_system_3d::PointSet3((int)points.size());
     this->addPoints(points);
 }
 /**
@@ -89,7 +89,7 @@ GbPolygon3D::GbPolygon3D(GbPolygon3D *polygon)
 {
     this->init();
     counter++;
-    this->ps               = new GbSystem3D::PointSet3((int)polygon->size());
+    this->ps               = new gb_system_3d::PointSet3((int)polygon->size());
     vector<GbPoint3D> temp = polygon->getPoints();
     this->addPoints(temp);
 }
@@ -200,21 +200,21 @@ vector<GbPoint3D> GbPolygon3D::getPoints(const double &p1x1, const double &p1x2,
 {
     double x1min, x1max, x2min, x2max, x3min, x3max;
 
-    if (UbMath::less(p1x1, p2x1)) {
+    if (ub_math::less(p1x1, p2x1)) {
         x1min = p1x1;
         x1max = p2x1;
     } else {
         x1min = p2x1;
         x1max = p1x1;
     }
-    if (UbMath::less(p1x2, p2x2)) {
+    if (ub_math::less(p1x2, p2x2)) {
         x2min = p1x2;
         x2max = p2x2;
     } else {
         x2min = p2x2;
         x2max = p1x2;
     }
-    if (UbMath::less(p1x3, p2x3)) {
+    if (ub_math::less(p1x3, p2x3)) {
         x3min = p1x3;
         x3max = p2x3;
     } else {
@@ -222,14 +222,14 @@ vector<GbPoint3D> GbPolygon3D::getPoints(const double &p1x1, const double &p1x2,
         x3max = p1x3;
     }
 
-    GbSystem3D::PointSet3 *pts = new GbSystem3D::PointSet3(1);
+    gb_system_3d::PointSet3 *pts = new gb_system_3d::PointSet3(1);
 
     if (!this->consistent)
         this->calculateValues();
     for (int i = this->size() - 1; i >= 0; i--) {
-        if (UbMath::lessEqual(x1min, (this->points)[i].x1) && UbMath::greaterEqual(x1max, (this->points)[i].x1) &&
-            UbMath::lessEqual(x2min, (this->points)[i].x2) && UbMath::greaterEqual(x2max, (this->points)[i].x2) &&
-            UbMath::lessEqual(x3min, (this->points)[i].x3) && UbMath::greaterEqual(x3max, (this->points)[i].x3))
+        if (ub_math::lessEqual(x1min, (this->points)[i].x1) && ub_math::greaterEqual(x1max, (this->points)[i].x1) &&
+            ub_math::lessEqual(x2min, (this->points)[i].x2) && ub_math::greaterEqual(x2max, (this->points)[i].x2) &&
+            ub_math::lessEqual(x3min, (this->points)[i].x3) && ub_math::greaterEqual(x3max, (this->points)[i].x3))
             pts->add((this->points)[i]);
     }
     return (pts->getPoints());
diff --git a/src/basics/geometry3d/GbPolygon3D.h b/src/basics/geometry3d/GbPolygon3D.h
index 9e0e9c7c93ddac18c82d3a2254b2c6ca65912681..b365ee207c619cbf9472c5a526c4eb42c4df8bec 100644
--- a/src/basics/geometry3d/GbPolygon3D.h
+++ b/src/basics/geometry3d/GbPolygon3D.h
@@ -69,7 +69,7 @@ private:
     std::vector<GbPoint3D> points;
     bool consistent;
 
-    GbSystem3D::PointSet3 *ps;
+    gb_system_3d::PointSet3 *ps;
     // private PointObserver     po         = null;
 
     void init();
diff --git a/src/basics/geometry3d/GbSphere3D.cpp b/src/basics/geometry3d/GbSphere3D.cpp
index 3ee0be8974f4d8cfcdc11c7b255bf28f032dae49..0f5c9cd836ef0695dee404f969b6b7bf2c5756b3 100644
--- a/src/basics/geometry3d/GbSphere3D.cpp
+++ b/src/basics/geometry3d/GbSphere3D.cpp
@@ -173,7 +173,7 @@ bool GbSphere3D::isPointInGbObject3D(const double &x1p, const double &x2p, const
     double deltaX2 = x2p - midPoint->getX2Coordinate();
     double deltaX3 = x3p - midPoint->getX3Coordinate();
 
-    return UbMath::lessEqual(deltaX1 * deltaX1 + deltaX2 * deltaX2 + deltaX3 * deltaX3, this->radius * this->radius);
+    return ub_math::lessEqual(deltaX1 * deltaX1 + deltaX2 * deltaX2 + deltaX3 * deltaX3, this->radius * this->radius);
 }
 /*=====================================================*/
 // true, wenn 'in Object' oder 'auf Boundary'!
@@ -186,9 +186,9 @@ bool GbSphere3D::isPointInGbObject3D(const double &x1p, const double &x2p, const
     double distanceSquare = deltaX1 * deltaX1 + deltaX2 * deltaX2 + deltaX3 * deltaX3;
     double radiusSquare   = this->radius * this->radius;
 
-    pointIsOnBoundary = UbMath::equal(distanceSquare, radiusSquare);
+    pointIsOnBoundary = ub_math::equal(distanceSquare, radiusSquare);
 
-    return UbMath::lessEqual(distanceSquare, radiusSquare);
+    return ub_math::lessEqual(distanceSquare, radiusSquare);
 }
 /*=====================================================*/
 // bool GbSphere3D::crossCellCrossSection(double x11,double x21,double x12,double x22, double ra)
@@ -263,18 +263,18 @@ GbLine3D *GbSphere3D::createClippedLine3D(GbPoint3D &point1, GbPoint3D &point2)
 
     vector<GbPoint3D *> schnittpunkte;
 
-    if (fabs(nenner) > 1.E-13 && UbMath::greaterEqual(wurzel, 0.0)) {
+    if (fabs(nenner) > 1.E-13 && ub_math::greaterEqual(wurzel, 0.0)) {
         double t1 = (zaehler + 2.0 * sqrt(wurzel)) / nenner;
         double t2 = (zaehler - 2.0 * sqrt(wurzel)) / nenner;
 
-        if (UbMath::inClosedInterval(t1, -1.0, 1.0)) {
+        if (ub_math::inClosedInterval(t1, -1.0, 1.0)) {
             double x = (xa * (0.5 - 0.5 * t1) + xb * (0.5 + 0.5 * t1)) / factor;
             double y = (ya * (0.5 - 0.5 * t1) + yb * (0.5 + 0.5 * t1)) / factor;
             double z = (za * (0.5 - 0.5 * t1) + zb * (0.5 + 0.5 * t1)) / factor;
 
             schnittpunkte.push_back(new GbPoint3D(x, y, z));
         }
-        if (fabs(t2 - t1) > 1.E-13 && UbMath::inClosedInterval(t2, -1.0, 1.0)) {
+        if (fabs(t2 - t1) > 1.E-13 && ub_math::inClosedInterval(t2, -1.0, 1.0)) {
             double x = (xa * (0.5 - 0.5 * t2) + xb * (0.5 + 0.5 * t2)) / factor;
             double y = (ya * (0.5 - 0.5 * t2) + yb * (0.5 + 0.5 * t2)) / factor;
             double z = (za * (0.5 - 0.5 * t2) + zb * (0.5 + 0.5 * t2)) / factor;
@@ -312,12 +312,12 @@ vector<GbTriangle3D *> GbSphere3D::getSurfaceTriangleSet()
         vector<GbTriangle3D *> triangles;
 
         int segments    = 30;
-        double deltaPhi = UbMath::PI / (double)segments;
+        double deltaPhi = ub_math::PI / (double)segments;
         double phiX1a, phiX1b, phiX3a, phiX3b;
         double x1a, x2a, x3a, x1b, x2b, x3b, x1c, x2c, x3c, x1d, x2d, x3d;
 
-        for (phiX3a = 0.5 * UbMath::PI; phiX3a > -1.5 * UbMath::PI; phiX3a -= deltaPhi) {
-            for (phiX1a = 0.0; phiX1a < UbMath::PI; phiX1a += deltaPhi) {
+        for (phiX3a = 0.5 * ub_math::PI; phiX3a > -1.5 * ub_math::PI; phiX3a -= deltaPhi) {
+            for (phiX1a = 0.0; phiX1a < ub_math::PI; phiX1a += deltaPhi) {
                 phiX1b = phiX1a + deltaPhi;
                 phiX3b = phiX3a + deltaPhi;
 
@@ -334,7 +334,7 @@ vector<GbTriangle3D *> GbSphere3D::getSurfaceTriangleSet()
                 x2d = x2m + radius * cos(phiX3b) * std::sin(phiX1a);
                 x3d = x3m + radius * sin(phiX3b);
 
-                if (UbMath::greater(phiX3b, -0.5 * UbMath::PI) && UbMath::less(phiX3a, 0.5 * UbMath::PI)) {
+                if (ub_math::greater(phiX3b, -0.5 * ub_math::PI) && ub_math::less(phiX3a, 0.5 * ub_math::PI)) {
                     triangles.push_back(new GbTriangle3D(new GbPoint3D(x1a, x2a, x3a), new GbPoint3D(x1b, x2b, x3b),
                                                          new GbPoint3D(x1c, x2c, x3c)));
                     triangles.push_back(new GbTriangle3D(new GbPoint3D(x1a, x2a, x3a), new GbPoint3D(x1c, x2c, x3c),
@@ -457,12 +457,12 @@ void GbSphere3D::addSurfaceTriangleSet(vector<UbTupleFloat3> &nodes, vector<UbTu
         float x3m = (float)midPoint->getX3Coordinate();
 
         int segments   = 30;
-        float deltaPhi = (float)UbMath::PI / (float)segments;
+        float deltaPhi = (float)ub_math::PI / (float)segments;
         float phiX1a, phiX1b, phiX3a, phiX3b;
         float x1a, x2a, x3a, x1b, x2b, x3b, x1c, x2c, x3c, x1d, x2d, x3d;
         int nodeNr = int(nodes.size());
-        for (phiX3a = (float)(0.5 * UbMath::PI); phiX3a > (float)(-1.5 * UbMath::PI); phiX3a -= deltaPhi) {
-            for (phiX1a = 0.0; phiX1a < UbMath::PI; phiX1a += deltaPhi) {
+        for (phiX3a = (float)(0.5 * ub_math::PI); phiX3a > (float)(-1.5 * ub_math::PI); phiX3a -= deltaPhi) {
+            for (phiX1a = 0.0; phiX1a < ub_math::PI; phiX1a += deltaPhi) {
                 phiX1b = phiX1a + deltaPhi;
                 phiX3b = phiX3a + deltaPhi;
 
@@ -479,7 +479,7 @@ void GbSphere3D::addSurfaceTriangleSet(vector<UbTupleFloat3> &nodes, vector<UbTu
                 x2d = x2m + (float)(radius * cos(phiX3b) * std::sin(phiX1a));
                 x3d = x3m + (float)(radius * sin(phiX3b));
 
-                if (UbMath::greater(phiX3b, -0.5 * UbMath::PI) && UbMath::less(phiX3a, 0.5 * UbMath::PI)) {
+                if (ub_math::greater(phiX3b, -0.5 * ub_math::PI) && ub_math::less(phiX3a, 0.5 * ub_math::PI)) {
                     nodes.push_back(makeUbTuple(x1a, x2a, x3a));
                     nodes.push_back(makeUbTuple(x1b, x2b, x3b));
                     nodes.push_back(makeUbTuple(x1c, x2c, x3c));
@@ -650,9 +650,9 @@ bool GbSphere3D::isCellCuttingGbObject3D(const double &x1a, const double &x2a, c
 {
     double midX[] = { this->getX1Centroid(), this->getX2Centroid(), this->getX3Centroid() };
 
-    double Bmin[] = { UbMath::min(x1a, x1b), UbMath::min(x2a, x2b), UbMath::min(x3a, x3b) };
+    double Bmin[] = { ub_math::min(x1a, x1b), ub_math::min(x2a, x2b), ub_math::min(x3a, x3b) };
 
-    double Bmax[] = { UbMath::max(x1a, x1b), UbMath::max(x2a, x2b), UbMath::max(x3a, x3b) };
+    double Bmax[] = { ub_math::max(x1a, x1b), ub_math::max(x2a, x2b), ub_math::max(x3a, x3b) };
 
     /* Solid Box - Hollow Sphere */
     double dmin = 0.0;
@@ -662,13 +662,13 @@ bool GbSphere3D::isCellCuttingGbObject3D(const double &x1a, const double &x2a, c
     for (int i = 0; i < 3; i++) {
         double a = pow(midX[i] - Bmin[i], 2.0);
         double b = pow(midX[i] - Bmax[i], 2.0);
-        dmax += UbMath::max(a, b);
-        if (UbMath::less(midX[i], Bmin[i]))
+        dmax += ub_math::max(a, b);
+        if (ub_math::less(midX[i], Bmin[i]))
             dmin += a;
-        else if (UbMath::greater(midX[i], Bmax[i]))
+        else if (ub_math::greater(midX[i], Bmax[i]))
             dmin += b;
     }
-    if (UbMath::lessEqual(dmin, r2) && UbMath::lessEqual(r2, dmax)) {
+    if (ub_math::lessEqual(dmin, r2) && ub_math::lessEqual(r2, dmax)) {
         return true;
     }
     return false;
@@ -699,22 +699,22 @@ bool GbSphere3D::isCellInsideOrCuttingGbObject3D(const double &x1a, const double
 
     double dmin = 0.0;
 
-    if (UbMath::less(midX1, x1a))
+    if (ub_math::less(midX1, x1a))
         dmin += std::pow(midX1 - x1a, 2.0);
-    else if (UbMath::greater(midX1, x1b))
+    else if (ub_math::greater(midX1, x1b))
         dmin += std::pow(midX1 - x1b, 2.0);
 
-    if (UbMath::less(midX2, x2a))
+    if (ub_math::less(midX2, x2a))
         dmin += std::pow(midX2 - x2a, 2.0);
-    else if (UbMath::greater(midX2, x2b))
+    else if (ub_math::greater(midX2, x2b))
         dmin += std::pow(midX2 - x2b, 2.0);
 
-    if (UbMath::less(midX3, x3a))
+    if (ub_math::less(midX3, x3a))
         dmin += std::pow(midX3 - x3a, 2.0);
-    else if (UbMath::greater(midX3, x3b))
+    else if (ub_math::greater(midX3, x3b))
         dmin += std::pow(midX3 - x3b, 2.0);
 
-    if (UbMath::lessEqual(dmin, radius * radius)) {
+    if (ub_math::lessEqual(dmin, radius * radius)) {
         return true;
     }
 
@@ -781,7 +781,7 @@ double GbSphere3D::getCellVolumeInsideGbObject3DHelperFunction(const double &x1a
                 internX2 = x2a + (x2b - x2a) * x2vers;
                 internX3 = x3a + (x3b - x3a) * x3vers;
 
-                if (UbMath::lessEqual(this->getDistance(internX1, internX2, internX3), alpha))
+                if (ub_math::lessEqual(this->getDistance(internX1, internX2, internX3), alpha))
                     alpha = this->getDistance(internX1, internX2, internX3);
                 // cout<<zelltyp<<" "<<kugel->getDistance(internX1,internX2,internX3)<<" "<<alpha<<endl;
             } // end first for
@@ -809,27 +809,27 @@ double GbSphere3D::getCellVolumeInsideGbObject3DHelperFunction(const double &x1a
     n[1] /= normLength;
     n[2] /= normLength;
 
-    if (UbMath::less(n[0], 0.0))
+    if (ub_math::less(n[0], 0.0))
         n[0] = -n[0];
-    if (UbMath::less(n[1], 0.0))
+    if (ub_math::less(n[1], 0.0))
         n[1] = -n[1];
-    if (UbMath::less(n[2], 0.0))
+    if (ub_math::less(n[2], 0.0))
         n[2] = -n[2];
 
     // cout<<"Normals: "<<n[0]<<" "<<n[1]<<" "<<n[2]<<endl;
 
     double dummy;
-    if (UbMath::greater(n[0], n[1])) {
+    if (ub_math::greater(n[0], n[1])) {
         dummy = n[1];
         n[1]  = n[0];
         n[0]  = dummy;
     }
-    if (UbMath::greater(n[1], n[2])) {
+    if (ub_math::greater(n[1], n[2])) {
         dummy = n[2];
         n[2]  = n[1];
         n[1]  = dummy;
     }
-    if (UbMath::greater(n[0], n[1])) {
+    if (ub_math::greater(n[0], n[1])) {
         dummy = n[1];
         n[1]  = n[0];
         n[0]  = dummy;
@@ -846,25 +846,25 @@ double GbSphere3D::getCellVolumeInsideGbObject3DHelperFunction(const double &x1a
 
     double result = 0.0, preresult = 0.0;
 
-    if (UbMath::lessEqual(maxVol, 0.000001))
+    if (ub_math::lessEqual(maxVol, 0.000001))
         return 0.0;
 
     // 1D Check
-    if (UbMath::lessEqual(n1, 0.001) && UbMath::lessEqual(n2, 0.001)) {
+    if (ub_math::lessEqual(n1, 0.001) && ub_math::lessEqual(n2, 0.001)) {
         result = alpha * deltaX1 * deltaX2;
     }
     // 2D Check
-    else if (UbMath::lessEqual(n1, 0.001)) {
+    else if (ub_math::lessEqual(n1, 0.001)) {
         preresult = (2 * n2 * n3);
         result    = (alpha * alpha) / preresult;
 
-        if (UbMath::greater(alpha, n2 * deltaX2)) {
+        if (ub_math::greater(alpha, n2 * deltaX2)) {
             result += -(alpha - n2 * deltaX2) * (alpha - n2 * deltaX2) / preresult;
         }
-        if (UbMath::greater(alpha, n3 * deltaX3)) {
+        if (ub_math::greater(alpha, n3 * deltaX3)) {
             result += -(alpha - n3 * deltaX3) * (alpha - n3 * deltaX3) / preresult;
         }
-        if (UbMath::greater(alpha, n2 * deltaX2 + n3 * deltaX3)) {
+        if (ub_math::greater(alpha, n2 * deltaX2 + n3 * deltaX3)) {
             result += (alpha - n2 * deltaX2 - n3 * deltaX3) * (alpha - n2 * deltaX2 - n3 * deltaX3) / preresult;
         }
 
@@ -877,30 +877,30 @@ double GbSphere3D::getCellVolumeInsideGbObject3DHelperFunction(const double &x1a
 
         result = alpha * alpha * alpha;
 
-        if (UbMath::greaterEqual(alpha, n1 * deltaX1)) {
+        if (ub_math::greaterEqual(alpha, n1 * deltaX1)) {
             result += -((alpha - n1 * deltaX1) * (alpha - n1 * deltaX1) * (alpha - n1 * deltaX1));
         }
-        if (UbMath::greaterEqual(alpha, n2 * deltaX2)) {
+        if (ub_math::greaterEqual(alpha, n2 * deltaX2)) {
             result += -((alpha - n2 * deltaX2) * (alpha - n2 * deltaX2) * (alpha - n2 * deltaX2));
         }
-        if (UbMath::greaterEqual(alpha, n3 * deltaX3)) {
+        if (ub_math::greaterEqual(alpha, n3 * deltaX3)) {
             result += -((alpha - n3 * deltaX3) * (alpha - n3 * deltaX3) * (alpha - n3 * deltaX3));
         }
-        if (UbMath::greaterEqual(alpha, (n1 * deltaX1 + n2 * deltaX2))) {
+        if (ub_math::greaterEqual(alpha, (n1 * deltaX1 + n2 * deltaX2))) {
             result += ((alpha - (n1 * deltaX1 + n2 * deltaX2)) * (alpha - (n1 * deltaX1 + n2 * deltaX2)) *
                        (alpha - (n1 * deltaX1 + n2 * deltaX2)));
         }
-        if (UbMath::greaterEqual(alpha, (n1 * deltaX1 + n3 * deltaX3))) {
+        if (ub_math::greaterEqual(alpha, (n1 * deltaX1 + n3 * deltaX3))) {
             result += ((alpha - (n1 * deltaX1 + n3 * deltaX3)) * (alpha - (n1 * deltaX1 + n3 * deltaX3)) *
                        (alpha - (n1 * deltaX1 + n3 * deltaX3)));
         }
-        if (UbMath::greaterEqual(alpha, (n2 * deltaX2 + n3 * deltaX3))) {
+        if (ub_math::greaterEqual(alpha, (n2 * deltaX2 + n3 * deltaX3))) {
             result += ((alpha - (n2 * deltaX2 + n3 * deltaX3)) * (alpha - (n2 * deltaX2 + n3 * deltaX3)) *
                        (alpha - (n2 * deltaX2 + n3 * deltaX3)));
         }
 
         // NEW
-        if (UbMath::greaterEqual(alpha, (n1 * deltaX1 + n2 * deltaX2 + n3 * deltaX3))) {
+        if (ub_math::greaterEqual(alpha, (n1 * deltaX1 + n2 * deltaX2 + n3 * deltaX3))) {
             result += -((alpha - (n1 * deltaX1 + n2 * deltaX2 + n3 * deltaX3)) *
                         (alpha - (n1 * deltaX1 + n2 * deltaX2 + n3 * deltaX3)) *
                         (alpha - (n1 * deltaX1 + n2 * deltaX2 + n3 * deltaX3)));
diff --git a/src/basics/geometry3d/GbSystem3D.cpp b/src/basics/geometry3d/GbSystem3D.cpp
index 1c51222c015e3e6060e4e8160143e153b8e27f67..acb758f36f7b0d2c39152d19d9844b2ad72fc014 100644
--- a/src/basics/geometry3d/GbSystem3D.cpp
+++ b/src/basics/geometry3d/GbSystem3D.cpp
@@ -37,7 +37,7 @@
 
 using namespace std;
 
-double GbSystem3D::getDistance(const GbPoint3D &p11, const GbPoint3D &p12)
+double gb_system_3d::getDistance(const GbPoint3D &p11, const GbPoint3D &p12)
 {
     double dx1 = p11.x1 - p12.x1;
     double dx2 = p11.x2 - p12.x2;
@@ -45,19 +45,19 @@ double GbSystem3D::getDistance(const GbPoint3D &p11, const GbPoint3D &p12)
     return std::sqrt(dx1 * dx1 + dx2 * dx2 + dx3 * dx3);
 }
 
-GbPoint3D *GbSystem3D::calculateIntersectionPoint3D(GbPoint3D &p11, GbPoint3D &p12, GbPoint3D &p21, GbPoint3D &p22)
+GbPoint3D *gb_system_3d::calculateIntersectionPoint3D(GbPoint3D &p11, GbPoint3D &p12, GbPoint3D &p21, GbPoint3D &p22)
 {
-    if (UbMath::less2(p11.x1, p12.x1, p21.x1, p22.x1))
+    if (ub_math::less2(p11.x1, p12.x1, p21.x1, p22.x1))
         return NULL;
-    if (UbMath::less2(p11.x2, p12.x2, p21.x2, p22.x2))
+    if (ub_math::less2(p11.x2, p12.x2, p21.x2, p22.x2))
         return NULL;
-    if (UbMath::less2(p11.x3, p12.x3, p21.x3, p22.x3))
+    if (ub_math::less2(p11.x3, p12.x3, p21.x3, p22.x3))
         return NULL;
-    if (UbMath::greater2(p11.x1, p12.x1, p21.x1, p22.x1))
+    if (ub_math::greater2(p11.x1, p12.x1, p21.x1, p22.x1))
         return NULL;
-    if (UbMath::greater2(p11.x2, p12.x2, p21.x2, p22.x2))
+    if (ub_math::greater2(p11.x2, p12.x2, p21.x2, p22.x2))
         return NULL;
-    if (UbMath::greater2(p11.x3, p12.x3, p21.x3, p22.x3))
+    if (ub_math::greater2(p11.x3, p12.x3, p21.x3, p22.x3))
         return NULL;
 
     double a11 = p12.x1 - p11.x1; //..HOW PARAMETERS ARE USED.........
@@ -74,20 +74,20 @@ GbPoint3D *GbSystem3D::calculateIntersectionPoint3D(GbPoint3D &p11, GbPoint3D &p
     double d3  = a12 * a23 - a13 * a22;
     double t;
 
-    if (UbMath::zero(d1) && UbMath::zero(d2) && UbMath::zero(d3))
+    if (ub_math::zero(d1) && ub_math::zero(d2) && ub_math::zero(d3))
         return NULL;
-    if (UbMath::zero(d1)) {
-        if (!UbMath::zero(d2))
+    if (ub_math::zero(d1)) {
+        if (!ub_math::zero(d2))
             t = (a23 * b1 - a21 * b3) / d2;
         else
             t = (a23 * b2 - a22 * b3) / d3;
-    } else if (UbMath::zero(d2)) {
-        if (!UbMath::zero(d1))
+    } else if (ub_math::zero(d2)) {
+        if (!ub_math::zero(d1))
             t = (a22 * b1 - a21 * b2) / d1;
         else
             t = (a23 * b2 - a22 * b3) / d3;
-    } else if (UbMath::zero(d3)) {
-        if (!UbMath::zero(d1))
+    } else if (ub_math::zero(d3)) {
+        if (!ub_math::zero(d1))
             t = (a22 * b1 - a21 * b2) / d1;
         else
             t = (a23 * b1 - a21 * b3) / d2;
@@ -98,28 +98,28 @@ GbPoint3D *GbSystem3D::calculateIntersectionPoint3D(GbPoint3D &p11, GbPoint3D &p
     double x2 = p11.x2 + t * a12;
     double x3 = p11.x3 + t * a13;
 
-    if (UbMath::inClosedInterval(x1, p11.x1, p12.x1) && UbMath::inClosedInterval(x1, p21.x1, p22.x1) &&
-        UbMath::inClosedInterval(x2, p11.x2, p12.x2) && UbMath::inClosedInterval(x2, p21.x2, p22.x2) &&
-        UbMath::inClosedInterval(x3, p11.x3, p12.x3) && UbMath::inClosedInterval(x3, p21.x3, p22.x3))
+    if (ub_math::inClosedInterval(x1, p11.x1, p12.x1) && ub_math::inClosedInterval(x1, p21.x1, p22.x1) &&
+        ub_math::inClosedInterval(x2, p11.x2, p12.x2) && ub_math::inClosedInterval(x2, p21.x2, p22.x2) &&
+        ub_math::inClosedInterval(x3, p11.x3, p12.x3) && ub_math::inClosedInterval(x3, p21.x3, p22.x3))
         return new GbPoint3D(x1, x2, x3);
 
     return NULL;
 }
 /*=================================================================*/
 // Line1: p11 -> p12 and Line2: p21 -> p22
-bool GbSystem3D::hasIntersectionPoint3D(GbPoint3D &p11, GbPoint3D &p12, GbPoint3D &p21, GbPoint3D &p22)
+bool gb_system_3d::hasIntersectionPoint3D(GbPoint3D &p11, GbPoint3D &p12, GbPoint3D &p21, GbPoint3D &p22)
 {
-    if (UbMath::less2(p11.x1, p12.x1, p21.x1, p22.x1))
+    if (ub_math::less2(p11.x1, p12.x1, p21.x1, p22.x1))
         return false;
-    if (UbMath::less2(p11.x2, p12.x2, p21.x2, p22.x2))
+    if (ub_math::less2(p11.x2, p12.x2, p21.x2, p22.x2))
         return false;
-    if (UbMath::less2(p11.x3, p12.x3, p21.x3, p22.x3))
+    if (ub_math::less2(p11.x3, p12.x3, p21.x3, p22.x3))
         return false;
-    if (UbMath::greater2(p11.x1, p12.x1, p21.x1, p22.x1))
+    if (ub_math::greater2(p11.x1, p12.x1, p21.x1, p22.x1))
         return false;
-    if (UbMath::greater2(p11.x2, p12.x2, p21.x2, p22.x2))
+    if (ub_math::greater2(p11.x2, p12.x2, p21.x2, p22.x2))
         return false;
-    if (UbMath::greater2(p11.x3, p12.x3, p21.x3, p22.x3))
+    if (ub_math::greater2(p11.x3, p12.x3, p21.x3, p22.x3))
         return false;
 
     double a11 = p12.x1 - p11.x1; //..HOW PARAMETERS ARE USED.........
@@ -136,20 +136,20 @@ bool GbSystem3D::hasIntersectionPoint3D(GbPoint3D &p11, GbPoint3D &p12, GbPoint3
     double d3  = a12 * a23 - a13 * a22;
     double t;
 
-    if (UbMath::zero(d1) && UbMath::zero(d2) && UbMath::zero(d3))
+    if (ub_math::zero(d1) && ub_math::zero(d2) && ub_math::zero(d3))
         return false;
-    if (UbMath::zero(d1)) {
-        if (!UbMath::zero(d2))
+    if (ub_math::zero(d1)) {
+        if (!ub_math::zero(d2))
             t = (a23 * b1 - a21 * b3) / d2;
         else
             t = (a23 * b2 - a22 * b3) / d3;
-    } else if (UbMath::zero(d2)) {
-        if (!UbMath::zero(d1))
+    } else if (ub_math::zero(d2)) {
+        if (!ub_math::zero(d1))
             t = (a22 * b1 - a21 * b2) / d1;
         else
             t = (a23 * b2 - a22 * b3) / d3;
-    } else if (UbMath::zero(d3)) {
-        if (!UbMath::zero(d1))
+    } else if (ub_math::zero(d3)) {
+        if (!ub_math::zero(d1))
             t = (a22 * b1 - a21 * b2) / d1;
         else
             t = (a23 * b1 - a21 * b3) / d2;
@@ -160,9 +160,9 @@ bool GbSystem3D::hasIntersectionPoint3D(GbPoint3D &p11, GbPoint3D &p12, GbPoint3
     double x2 = p11.x2 + t * a12;
     double x3 = p11.x3 + t * a13;
 
-    if (UbMath::inClosedInterval(x1, p11.x1, p12.x1) && UbMath::inClosedInterval(x1, p21.x1, p22.x1) &&
-        UbMath::inClosedInterval(x2, p11.x2, p12.x2) && UbMath::inClosedInterval(x2, p21.x2, p22.x2) &&
-        UbMath::inClosedInterval(x3, p11.x3, p12.x3) && UbMath::inClosedInterval(x3, p21.x3, p22.x3))
+    if (ub_math::inClosedInterval(x1, p11.x1, p12.x1) && ub_math::inClosedInterval(x1, p21.x1, p22.x1) &&
+        ub_math::inClosedInterval(x2, p11.x2, p12.x2) && ub_math::inClosedInterval(x2, p21.x2, p22.x2) &&
+        ub_math::inClosedInterval(x3, p11.x3, p12.x3) && ub_math::inClosedInterval(x3, p21.x3, p22.x3))
         return true;
     return false;
 }
@@ -172,7 +172,7 @@ bool GbSystem3D::hasIntersectionPoint3D(GbPoint3D &p11, GbPoint3D &p12, GbPoint3
 //   /*======================================================================*/
 //   /*  Private Methoden (Parallelism)                                      */
 //   /*                                                                      */
-bool GbSystem3D::isParallelIn3D(GbPoint3D &p11, GbPoint3D &p12, GbPoint3D &p21, GbPoint3D &p22)
+bool gb_system_3d::isParallelIn3D(GbPoint3D &p11, GbPoint3D &p12, GbPoint3D &p21, GbPoint3D &p22)
 {
     double a11 = p12.x1 - p11.x1; //..HOW PARAMETERS ARE USED.........
     double a12 = p12.x2 - p11.x2; //
@@ -181,8 +181,8 @@ bool GbSystem3D::isParallelIn3D(GbPoint3D &p11, GbPoint3D &p12, GbPoint3D &p21,
     double a22 = p21.x2 - p22.x2; //
     double a23 = p21.x3 - p22.x3; //..................................
 
-    return (UbMath::zero(a11 * a22 - a12 * a21) && UbMath::zero(a11 * a23 - a13 * a21) &&
-            UbMath::zero(a12 * a23 - a13 * a22));
+    return (ub_math::zero(a11 * a22 - a12 * a21) && ub_math::zero(a11 * a23 - a13 * a21) &&
+            ub_math::zero(a12 * a23 - a13 * a22));
 }
 /*======================================================================*/
 
@@ -200,23 +200,23 @@ bool GbSystem3D::isParallelIn3D(GbPoint3D &p11, GbPoint3D &p12, GbPoint3D &p21,
 /*======================================================================*/
 /*  Private Methoden (Clipping Lines)                                   */
 /*                                                                      */
-GbLine3D *GbSystem3D::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a, double x2a, double x3a, double x1b,
+GbLine3D *gb_system_3d::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a, double x2a, double x3a, double x1b,
                                        double x2b, double x3b)
 {
     GbPoint3D *p1 = new GbPoint3D(pA);
     GbPoint3D *p2 = new GbPoint3D(pB);
 
-    if (UbMath::greater(x1a, x1b)) {
+    if (ub_math::greater(x1a, x1b)) {
         double x1 = x1a;
         x1a       = x1b;
         x1b       = x1;
     }
-    if (UbMath::greater(x2a, x2b)) {
+    if (ub_math::greater(x2a, x2b)) {
         double x2 = x2a;
         x2a       = x2b;
         x2b       = x2;
     }
-    if (UbMath::greater(x3a, x3b)) {
+    if (ub_math::greater(x3a, x3b)) {
         double x3 = x3a;
         x3a       = x3b;
         x3b       = x3;
@@ -227,8 +227,8 @@ GbLine3D *GbSystem3D::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a,
     /*-------------------------------------------------------------------*/
     /*  Schneiden an vorderer Kante                                      */
     /*                                                                   */
-    if (UbMath::less(p1->x3, x3a)) {
-        if (UbMath::less(p2->x3, x3a)) {
+    if (ub_math::less(p1->x3, x3a)) {
+        if (ub_math::less(p2->x3, x3a)) {
             delete p1;
             delete p2;
             return NULL;
@@ -238,7 +238,7 @@ GbLine3D *GbSystem3D::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a,
         p1->x1 += (p1->x1 - p2->x1) * f;
         p1->x2 += (p1->x2 - p2->x2) * f;
         p1->x3 = x3a;
-    } else if (UbMath::less(p2->x3, x3a)) {
+    } else if (ub_math::less(p2->x3, x3a)) {
         f = (x3a - p2->x3) / (p2->x3 - p1->x3);
         p2->x1 += (p2->x1 - p1->x1) * f;
         p2->x2 += (p2->x2 - p1->x2) * f;
@@ -247,8 +247,8 @@ GbLine3D *GbSystem3D::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a,
     /*-------------------------------------------------------------------*/
     /*  Schneiden an unterer Kante                                       */
     /*                                                                   */
-    if (UbMath::less(p1->x2, x2a)) {
-        if (UbMath::less(p2->x2, x2a)) {
+    if (ub_math::less(p1->x2, x2a)) {
+        if (ub_math::less(p2->x2, x2a)) {
             delete p1;
             delete p2;
             return NULL;
@@ -258,7 +258,7 @@ GbLine3D *GbSystem3D::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a,
         p1->x1 += (p1->x1 - p2->x1) * f;
         p1->x3 += (p1->x3 - p2->x3) * f;
         p1->x2 = x2a;
-    } else if (UbMath::less(p2->x2, x2a)) {
+    } else if (ub_math::less(p2->x2, x2a)) {
         f = (x2a - p2->x2) / (p2->x2 - p1->x2);
         p2->x1 += (p2->x1 - p1->x1) * f;
         p2->x3 += (p2->x3 - p1->x3) * f;
@@ -267,8 +267,8 @@ GbLine3D *GbSystem3D::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a,
     /*-------------------------------------------------------------------*/
     /*  Schneiden an rechter Kante                                       */
     /*                                                                   */
-    if (UbMath::greater(p1->x1, x1b)) {
-        if (UbMath::greater(p2->x1, x1b)) {
+    if (ub_math::greater(p1->x1, x1b)) {
+        if (ub_math::greater(p2->x1, x1b)) {
             delete p1;
             delete p2;
             return NULL;
@@ -278,7 +278,7 @@ GbLine3D *GbSystem3D::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a,
         p1->x2 += (p1->x2 - p2->x2) * f;
         p1->x3 += (p1->x3 - p2->x3) * f;
         p1->x1 = x1b;
-    } else if (UbMath::greater(p2->x1, x1b)) {
+    } else if (ub_math::greater(p2->x1, x1b)) {
         f = (x1b - p2->x1) / (p2->x1 - p1->x1);
         p2->x2 += (p2->x2 - p1->x2) * f;
         p2->x3 += (p2->x3 - p1->x3) * f;
@@ -287,8 +287,8 @@ GbLine3D *GbSystem3D::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a,
     /*-------------------------------------------------------------------*/
     /*  Schneiden an hinterer Kante                                      */
     /*                                                                   */
-    if (UbMath::greater(p1->x3, x3b)) {
-        if (UbMath::greater(p2->x3, x3b)) {
+    if (ub_math::greater(p1->x3, x3b)) {
+        if (ub_math::greater(p2->x3, x3b)) {
             delete p1;
             delete p2;
             return NULL;
@@ -298,7 +298,7 @@ GbLine3D *GbSystem3D::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a,
         p1->x1 += (p1->x1 - p2->x1) * f;
         p1->x2 += (p1->x2 - p2->x2) * f;
         p1->x3 = x3b;
-    } else if (UbMath::greater(p2->x3, x3b)) {
+    } else if (ub_math::greater(p2->x3, x3b)) {
         f = (x3b - p2->x3) / (p2->x3 - p1->x3);
         p2->x1 += (p2->x1 - p1->x1) * f;
         p2->x2 += (p2->x2 - p1->x2) * f;
@@ -307,8 +307,8 @@ GbLine3D *GbSystem3D::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a,
     /*-------------------------------------------------------------------*/
     /*  Schneiden an oberer Kante                                        */
     /*                                                                   */
-    if (UbMath::greater(p1->x2, x2b)) {
-        if (UbMath::greater(p2->x2, x2b)) {
+    if (ub_math::greater(p1->x2, x2b)) {
+        if (ub_math::greater(p2->x2, x2b)) {
             delete p1;
             delete p2;
             return NULL;
@@ -318,7 +318,7 @@ GbLine3D *GbSystem3D::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a,
         p1->x1 += (p1->x1 - p2->x1) * f;
         p1->x3 += (p1->x3 - p2->x3) * f;
         p1->x2 = x2b;
-    } else if (UbMath::greater(p2->x2, x2b)) {
+    } else if (ub_math::greater(p2->x2, x2b)) {
         f = (x2b - p2->x2) / (p2->x2 - p1->x2);
         p2->x1 += (p2->x1 - p1->x1) * f;
         p2->x3 += (p2->x3 - p1->x3) * f;
@@ -327,8 +327,8 @@ GbLine3D *GbSystem3D::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a,
     /*-------------------------------------------------------------------*/
     /*  Schneiden an linker Kante                                        */
     /*                                                                   */
-    if (UbMath::less(p1->x1, x1a)) {
-        if (UbMath::less(p2->x1, x1a)) {
+    if (ub_math::less(p1->x1, x1a)) {
+        if (ub_math::less(p2->x1, x1a)) {
             delete p1;
             delete p2;
             return NULL;
@@ -338,7 +338,7 @@ GbLine3D *GbSystem3D::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a,
         p1->x2 += (p1->x2 - p2->x2) * f;
         p1->x3 += (p1->x3 - p2->x3) * f;
         p1->x1 = x1a;
-    } else if (UbMath::less(p2->x1, x1a)) {
+    } else if (ub_math::less(p2->x1, x1a)) {
         f = (x1a - p2->x1) / (p2->x1 - p1->x1);
         p2->x2 += (p2->x2 - p1->x2) * f;
         p2->x3 += (p2->x3 - p1->x3) * f;
@@ -685,7 +685,7 @@ GbLine3D *GbSystem3D::createClipLine3D(GbPoint3D &pA, GbPoint3D &pB, double x1a,
 //
 //      return(polygon);
 //   }
-GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, double x12, double x13, double x21,
+GbPolygon3D *gb_system_3d::clipPolygon3D(vector<GbPoint3D> points, double x11, double x12, double x13, double x21,
                                        double x22, double x23)
 {
     GbPoint3D last;
@@ -697,17 +697,17 @@ GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, dou
 
     if (n == 0)
         return NULL;
-    if (UbMath::greater(x11, x21)) {
+    if (ub_math::greater(x11, x21)) {
         double ax = x11;
         x11       = x21;
         x21       = ax;
     }
-    if (UbMath::greater(x12, x22)) {
+    if (ub_math::greater(x12, x22)) {
         double ay = x12;
         x12       = x22;
         x22       = ay;
     }
-    if (UbMath::greater(x13, x23)) {
+    if (ub_math::greater(x13, x23)) {
         double az = x13;
         x13       = x23;
         x23       = az;
@@ -716,17 +716,17 @@ GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, dou
     /*-------------------------------------------------------------------*/
     /*  Schneiden an vorderer Kante                                      */
     /*                                                                   */
-    if (UbMath::less(ps.getX3Minimum(), x13)) {
+    if (ub_math::less(ps.getX3Minimum(), x13)) {
         ps.clear();
         last = (points)[0];
-        if (UbMath::less((points)[0].x3, x13))
+        if (ub_math::less((points)[0].x3, x13))
             flag = false;
         else {
             ps.add((points)[0]);
             flag = true;
         }
         for (i = 1; i < n; i++) {
-            if (UbMath::less((points)[i].x3, x13)) {
+            if (ub_math::less((points)[i].x3, x13)) {
                 if (flag) {
                     f = (x13 - (points)[i].x3) / ((points)[i].x3 - last.x3);
                     ps.add(GbPoint3D((points)[i].x1 + ((points)[i].x1 - last.x1) * f,
@@ -744,7 +744,7 @@ GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, dou
             }
             last = (points)[i];
         }
-        if (!((UbMath::less((points)[0].x3, x13)) ^ flag)) {
+        if (!((ub_math::less((points)[0].x3, x13)) ^ flag)) {
             f = (x13 - (points)[0].x3) / ((points)[0].x3 - last.x3);
             ps.add(GbPoint3D((points)[0].x1 + ((points)[0].x1 - last.x1) * f,
                              (points)[0].x2 + ((points)[0].x2 - last.x2) * f, x13));
@@ -760,17 +760,17 @@ GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, dou
     /*-------------------------------------------------------------------*/
     /*  Schneiden an unterer Kante                                       */
     /*                                                                   */
-    if (UbMath::less(ps.getX2Minimum(), x12)) {
+    if (ub_math::less(ps.getX2Minimum(), x12)) {
         ps.clear();
         last = (points)[0];
-        if (UbMath::less((points)[0].x2, x12))
+        if (ub_math::less((points)[0].x2, x12))
             flag = false;
         else {
             ps.add((points)[0]);
             flag = true;
         }
         for (i = 1; i < n; i++) {
-            if (UbMath::less((points)[i].x2, x12)) {
+            if (ub_math::less((points)[i].x2, x12)) {
                 if (flag) {
                     f = (x12 - (points)[i].x2) / ((points)[i].x2 - last.x2);
                     ps.add(GbPoint3D((points)[i].x1 + ((points)[i].x1 - last.x1) * f, x12,
@@ -788,7 +788,7 @@ GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, dou
             }
             last = (points)[i];
         }
-        if (!((UbMath::less((points)[0].x2, x12)) ^ flag)) {
+        if (!((ub_math::less((points)[0].x2, x12)) ^ flag)) {
             f = (x12 - (points)[0].x2) / ((points)[0].x2 - last.x2);
             ps.add(GbPoint3D((points)[0].x1 + ((points)[0].x1 - last.x1) * f, x12,
                              (points)[0].x3 + ((points)[0].x3 - last.x3) * f));
@@ -804,17 +804,17 @@ GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, dou
     /*  Schneiden an rechter Kante                                       */
     /*                                                                   */
 
-    if (UbMath::greater(ps.getX1Maximum(), x21)) {
+    if (ub_math::greater(ps.getX1Maximum(), x21)) {
         ps.clear();
         last = (points)[0];
-        if (UbMath::greater((points)[0].x1, x21))
+        if (ub_math::greater((points)[0].x1, x21))
             flag = false;
         else {
             ps.add((points)[0]);
             flag = true;
         }
         for (i = 1; i < n; i++) {
-            if (UbMath::greater((points)[i].x1, x21)) {
+            if (ub_math::greater((points)[i].x1, x21)) {
                 if (flag) {
                     f = (x21 - (points)[i].x1) / ((points)[i].x1 - last.x1);
                     ps.add(GbPoint3D(x21, (points)[i].x2 + ((points)[i].x2 - last.x2) * f,
@@ -832,7 +832,7 @@ GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, dou
             }
             last = (points)[i];
         }
-        if (!((UbMath::greater((points)[0].x1, x21)) ^ flag)) {
+        if (!((ub_math::greater((points)[0].x1, x21)) ^ flag)) {
             f = (x21 - (points)[0].x1) / ((points)[0].x1 - last.x1);
             ps.add(GbPoint3D(x21, (points)[0].x2 + ((points)[0].x2 - last.x2) * f,
                              (points)[0].x3 + ((points)[0].x3 - last.x3) * f));
@@ -847,17 +847,17 @@ GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, dou
     /*-------------------------------------------------------------------*/
     /*  Schneiden an hinterer Kante                                      */
     /*                                                                   */
-    if (UbMath::greater(ps.getX3Maximum(), x23)) {
+    if (ub_math::greater(ps.getX3Maximum(), x23)) {
         ps.clear();
         last = (points)[0];
-        if (UbMath::greater((points)[0].x3, x23))
+        if (ub_math::greater((points)[0].x3, x23))
             flag = false;
         else {
             ps.add((points)[0]);
             flag = true;
         }
         for (i = 1; i < n; i++) {
-            if (UbMath::greater((points)[i].x3, x23)) {
+            if (ub_math::greater((points)[i].x3, x23)) {
                 if (flag) {
                     f = (x23 - (points)[i].x3) / ((points)[i].x3 - last.x3);
                     ps.add(GbPoint3D((points)[i].x1 + ((points)[i].x1 - last.x1) * f,
@@ -875,7 +875,7 @@ GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, dou
             }
             last = (points)[i];
         }
-        if (!((UbMath::greater((points)[0].x3, x23)) ^ flag)) {
+        if (!((ub_math::greater((points)[0].x3, x23)) ^ flag)) {
             f = (x23 - (points)[0].x3) / ((points)[0].x3 - last.x3);
             ps.add(GbPoint3D((points)[0].x1 + ((points)[0].x1 - last.x1) * f,
                              (points)[0].x2 + ((points)[0].x2 - last.x2) * f, x23));
@@ -891,17 +891,17 @@ GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, dou
     /*  Schneiden an oberer Kante                                        */
     /*                                                                   */
 
-    if (UbMath::greater(ps.getX2Maximum(), x22)) {
+    if (ub_math::greater(ps.getX2Maximum(), x22)) {
         ps.clear();
         last = (points)[0];
-        if (UbMath::greater((points)[0].x2, x22))
+        if (ub_math::greater((points)[0].x2, x22))
             flag = false;
         else {
             ps.add((points)[0]);
             flag = true;
         }
         for (i = 1; i < n; i++) {
-            if (UbMath::greater((points)[i].x2, x22)) {
+            if (ub_math::greater((points)[i].x2, x22)) {
                 if (flag) {
                     f = (x22 - (points)[i].x2) / ((points)[i].x2 - last.x2);
                     ps.add(GbPoint3D((points)[i].x1 + ((points)[i].x1 - last.x1) * f, x22,
@@ -919,7 +919,7 @@ GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, dou
             }
             last = (points)[i];
         }
-        if (!((UbMath::greater((points)[0].x2, x22)) ^ flag)) {
+        if (!((ub_math::greater((points)[0].x2, x22)) ^ flag)) {
             f = (x22 - (points)[0].x2) / ((points)[0].x2 - last.x2);
             ps.add(GbPoint3D((points)[0].x1 + ((points)[0].x1 - last.x1) * f, x22,
                              (points)[0].x3 + ((points)[0].x3 - last.x3) * f));
@@ -934,17 +934,17 @@ GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, dou
     /*-------------------------------------------------------------------*/
     /*  Schneiden an linker Kante                                        */
     /*                                                                   */
-    if (UbMath::less(ps.getX1Minimum(), x11)) {
+    if (ub_math::less(ps.getX1Minimum(), x11)) {
         ps.clear();
         last = (points)[0];
-        if (UbMath::less((points)[0].x1, x11))
+        if (ub_math::less((points)[0].x1, x11))
             flag = false;
         else {
             ps.add((points)[0]);
             flag = true;
         }
         for (i = 1; i < n; i++) {
-            if (UbMath::less((points)[i].x1, x11)) {
+            if (ub_math::less((points)[i].x1, x11)) {
                 if (flag) {
                     f = (x11 - (points)[i].x1) / ((points)[i].x1 - last.x1);
                     ps.add(GbPoint3D(x11, (points)[i].x2 + ((points)[i].x2 - last.x2) * f,
@@ -962,7 +962,7 @@ GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, dou
             }
             last = (points)[i];
         }
-        if (!((UbMath::less((points)[0].x1, x11)) ^ flag)) {
+        if (!((ub_math::less((points)[0].x1, x11)) ^ flag)) {
             f = (x11 - (points)[0].x1) / ((points)[0].x1 - last.x1);
             ps.add(GbPoint3D(x11, (points)[0].x2 + ((points)[0].x2 - last.x2) * f,
                              (points)[0].x3 + ((points)[0].x3 - last.x3) * f));
@@ -978,7 +978,7 @@ GbPolygon3D *GbSystem3D::clipPolygon3D(vector<GbPoint3D> points, double x11, dou
     return new GbPolygon3D(points);
 }
 /*=========================================================================*/
-GbCuboid3D *GbSystem3D::clipRectangle3D(GbPoint3D &p1, GbPoint3D &p2, double x11, double x12, double x13, double x21,
+GbCuboid3D *gb_system_3d::clipRectangle3D(GbPoint3D &p1, GbPoint3D &p2, double x11, double x12, double x13, double x21,
                                         double x22, double x23)
 {
     double r11 = p1.x1;
@@ -988,45 +988,45 @@ GbCuboid3D *GbSystem3D::clipRectangle3D(GbPoint3D &p1, GbPoint3D &p2, double x11
     double r22 = p2.x2;
     double r23 = p2.x3;
 
-    if (UbMath::greater(x11, x21)) {
+    if (ub_math::greater(x11, x21)) {
         double ax = x11;
         x11       = x21;
         x21       = ax;
     }
-    if (UbMath::greater(x12, x22)) {
+    if (ub_math::greater(x12, x22)) {
         double ay = x12;
         x12       = x22;
         x22       = ay;
     }
-    if (UbMath::greater(x13, x23)) {
+    if (ub_math::greater(x13, x23)) {
         double az = x13;
         x13       = x23;
         x23       = az;
     }
-    if (UbMath::greater(r11, r21)) {
+    if (ub_math::greater(r11, r21)) {
         double bx = r11;
         r11       = r21;
         r21       = bx;
     }
-    if (UbMath::greater(r12, r22)) {
+    if (ub_math::greater(r12, r22)) {
         double by = r12;
         r12       = r22;
         r22       = by;
     }
-    if (UbMath::greater(r13, r23)) {
+    if (ub_math::greater(r13, r23)) {
         double bz = r13;
         r13       = r23;
         r23       = bz;
     }
 
-    double m11 = UbMath::greater(x11, r11) ? x11 : r11;
-    double m12 = UbMath::greater(x12, r12) ? x12 : r12;
-    double m13 = UbMath::greater(x13, r13) ? x13 : r13;
-    double m21 = UbMath::greater(x21, r21) ? r21 : x21;
-    double m22 = UbMath::greater(x22, r22) ? r22 : x22;
-    double m23 = UbMath::greater(x23, r23) ? r23 : x23;
+    double m11 = ub_math::greater(x11, r11) ? x11 : r11;
+    double m12 = ub_math::greater(x12, r12) ? x12 : r12;
+    double m13 = ub_math::greater(x13, r13) ? x13 : r13;
+    double m21 = ub_math::greater(x21, r21) ? r21 : x21;
+    double m22 = ub_math::greater(x22, r22) ? r22 : x22;
+    double m23 = ub_math::greater(x23, r23) ? r23 : x23;
 
-    if (UbMath::lessEqual(m11, m21) && UbMath::lessEqual(m12, m22) && UbMath::lessEqual(m13, m23))
+    if (ub_math::lessEqual(m11, m21) && ub_math::lessEqual(m12, m22) && ub_math::lessEqual(m13, m23))
         return (new GbCuboid3D(new GbPoint3D(m11, m12, m13), new GbPoint3D(m21, m22, m23)));
     else
         return (NULL);
@@ -1036,19 +1036,19 @@ GbCuboid3D *GbSystem3D::clipRectangle3D(GbPoint3D &p1, GbPoint3D &p2, double x11
 /*=========================================================================*/
 /*=========================================================================*/
 
-GbSystem3D::PointSet3::PointSet3(int n)
+gb_system_3d::PointSet3::PointSet3(int n)
 {
     this->init();
     this->points.reserve(n); // reserves n elements! but the size of the vector ist still "0"
 }
 /*=======================================================*/
-GbSystem3D::PointSet3::PointSet3(const vector<GbPoint3D> &points)
+gb_system_3d::PointSet3::PointSet3(const vector<GbPoint3D> &points)
 {
     this->init();
     this->add(points);
 }
 /*=======================================================*/
-void GbSystem3D::PointSet3::add(const GbPoint3D &point)
+void gb_system_3d::PointSet3::add(const GbPoint3D &point)
 {
     // is point equal to last point in points then return
     if (!this->points.empty() && point.equals(&this->points.back()))
@@ -1060,7 +1060,7 @@ void GbSystem3D::PointSet3::add(const GbPoint3D &point)
     this->consistent = false;
 }
 /*=======================================================*/
-void GbSystem3D::PointSet3::addUnequal(const GbPoint3D &point)
+void gb_system_3d::PointSet3::addUnequal(const GbPoint3D &point)
 {
     if (this->containsEqual(point) > 0)
         return;
@@ -1069,7 +1069,7 @@ void GbSystem3D::PointSet3::addUnequal(const GbPoint3D &point)
     this->consistent = false;
 }
 /*=======================================================*/
-void GbSystem3D::PointSet3::add(const vector<GbPoint3D> &pointVector)
+void gb_system_3d::PointSet3::add(const vector<GbPoint3D> &pointVector)
 {
     for (int pos = 0; pos < (int)pointVector.size(); pos++)
         this->points.push_back(pointVector[pos]);
@@ -1077,7 +1077,7 @@ void GbSystem3D::PointSet3::add(const vector<GbPoint3D> &pointVector)
     this->consistent = false;
 }
 /*=======================================================*/
-void GbSystem3D::PointSet3::insert(const GbPoint3D &point, int index)
+void gb_system_3d::PointSet3::insert(const GbPoint3D &point, int index)
 {
     if (index < 0 || index >= (int)this->points.size())
         throw UbException(UB_EXARGS, "index out of range");
@@ -1106,63 +1106,63 @@ void GbSystem3D::PointSet3::insert(const GbPoint3D &point, int index)
 //   this.size--;
 //}
 /*=======================================================*/
-void GbSystem3D::PointSet3::clear()
+void gb_system_3d::PointSet3::clear()
 {
     // clears points (size==0 but capacity is the old c1)
     this->points.clear();
     this->consistent = false;
 }
 /*=======================================================*/
-void GbSystem3D::PointSet3::clearAndTrim()
+void gb_system_3d::PointSet3::clearAndTrim()
 {
     // clears points (size==0 AND capacity==0)
     this->points.resize(0);
     this->consistent = false;
 }
 /*=======================================================*/
-double GbSystem3D::PointSet3::getX1Minimum()
+double gb_system_3d::PointSet3::getX1Minimum()
 {
     if (!this->consistent)
         this->calculateValues();
     return this->x1min;
 }
 /*=======================================================*/
-double GbSystem3D::PointSet3::getX1Maximum()
+double gb_system_3d::PointSet3::getX1Maximum()
 {
     if (!this->consistent)
         this->calculateValues();
     return this->x1max;
 }
 /*=======================================================*/
-double GbSystem3D::PointSet3::getX2Minimum()
+double gb_system_3d::PointSet3::getX2Minimum()
 {
     if (!this->consistent)
         this->calculateValues();
     return this->x2min;
 }
 /*=======================================================*/
-double GbSystem3D::PointSet3::getX2Maximum()
+double gb_system_3d::PointSet3::getX2Maximum()
 {
     if (!this->consistent)
         this->calculateValues();
     return this->x2max;
 }
 /*=======================================================*/
-double GbSystem3D::PointSet3::getX3Minimum()
+double gb_system_3d::PointSet3::getX3Minimum()
 {
     if (!this->consistent)
         this->calculateValues();
     return this->x3min;
 }
 /*=======================================================*/
-double GbSystem3D::PointSet3::getX3Maximum()
+double gb_system_3d::PointSet3::getX3Maximum()
 {
     if (!this->consistent)
         this->calculateValues();
     return this->x3max;
 }
 /*=======================================================*/
-int GbSystem3D::PointSet3::contains(GbPoint3D *point)
+int gb_system_3d::PointSet3::contains(GbPoint3D *point)
 {
     // returns number of points which has the same adress (this should be 0 or 1!!!)
     int n = 0;
@@ -1174,7 +1174,7 @@ int GbSystem3D::PointSet3::contains(GbPoint3D *point)
     return n;
 }
 /*=======================================================*/
-int GbSystem3D::PointSet3::containsEqual(const GbPoint3D &point)
+int gb_system_3d::PointSet3::containsEqual(const GbPoint3D &point)
 {
     // returns number of points which have the same coordinates with point (could be 0,1 or even more)
     int n = 0;
@@ -1186,7 +1186,7 @@ int GbSystem3D::PointSet3::containsEqual(const GbPoint3D &point)
     return n;
 }
 /*=======================================================*/
-bool GbSystem3D::PointSet3::containsLine(GbPoint3D *point1, GbPoint3D *point2)
+bool gb_system_3d::PointSet3::containsLine(GbPoint3D *point1, GbPoint3D *point2)
 {
     // returns true if pointset has c2 in "this->points"vector  neighboured points
     // wich have the same adress as point1 or point2
@@ -1205,7 +1205,7 @@ bool GbSystem3D::PointSet3::containsLine(GbPoint3D *point1, GbPoint3D *point2)
     return false;
 }
 /*=======================================================*/
-bool GbSystem3D::PointSet3::containsEqualLine(const GbPoint3D &point1, const GbPoint3D &point2)
+bool gb_system_3d::PointSet3::containsEqualLine(const GbPoint3D &point1, const GbPoint3D &point2)
 {
     // returns true if pointset has c2 in "this->points"vector  neighboured points
     // wich have the same coordinates as point1 or point2
@@ -1224,27 +1224,27 @@ bool GbSystem3D::PointSet3::containsEqualLine(const GbPoint3D &point1, const GbP
     return false;
 }
 /*=======================================================*/
-GbPoint3D *GbSystem3D::PointSet3::getPoint(int index)
+GbPoint3D *gb_system_3d::PointSet3::getPoint(int index)
 {
     if (index < 0 || index >= (int)this->points.size())
         throw UbException(UB_EXARGS, "index out of range");
     return &(this->points)[index];
 }
 /*=======================================================*/
-GbPoint3D *GbSystem3D::PointSet3::getFirstPoint() { return &(this->points.front()); }
+GbPoint3D *gb_system_3d::PointSet3::getFirstPoint() { return &(this->points.front()); }
 /*=======================================================*/
-GbPoint3D *GbSystem3D::PointSet3::getLastPoint() { return &(this->points.back()); }
+GbPoint3D *gb_system_3d::PointSet3::getLastPoint() { return &(this->points.back()); }
 /*=======================================================*/
-int GbSystem3D::PointSet3::size() { return (int)this->points.size(); }
+int gb_system_3d::PointSet3::size() { return (int)this->points.size(); }
 /*=======================================================*/
-vector<GbPoint3D> GbSystem3D::PointSet3::getPoints()
+vector<GbPoint3D> gb_system_3d::PointSet3::getPoints()
 {
     // is this right? it's another effect as at GbPoint3D* getNode(index)!!!
     // or do we want to have the next uncommented getPoints() funktion
     return this->points;
 }
 ///*=======================================================*/
-// vector<GbPoint3D*> GbSystem3D::PointSet3::getPoints()
+// vector<GbPoint3D*> gb_system_3d::PointSet3::getPoints()
 //{
 //   vector<GbPoint3D*> tmp;
 //   for(int pos=0; pos<(int)this->points.size();pos++) tmp.push_back(&this->points[pos]);
@@ -1252,7 +1252,7 @@ vector<GbPoint3D> GbSystem3D::PointSet3::getPoints()
 //   return tmp;
 //}
 /*=======================================================*/
-void GbSystem3D::PointSet3::calculateValues()
+void gb_system_3d::PointSet3::calculateValues()
 {
     if (this->points.empty()) {
         this->x1min = this->x2min = this->x3min = 0.0;
diff --git a/src/basics/geometry3d/GbSystem3D.h b/src/basics/geometry3d/GbSystem3D.h
index eb42f1591f6b7220cea4c66d0d9f8a22ef45be4b..25f3dabfe9b5f097891882ccc440ff7ef6e0ee95 100644
--- a/src/basics/geometry3d/GbSystem3D.h
+++ b/src/basics/geometry3d/GbSystem3D.h
@@ -47,7 +47,7 @@ class GbPolygon3D;
 class GbCuboid3D;
 class GbLine3D;
 
-namespace GbSystem3D
+namespace gb_system_3d
 {
 extern double getDistance(const GbPoint3D &p11, const GbPoint3D &p12);
 extern GbPoint3D *calculateIntersectionPoint3D(GbPoint3D &p11, GbPoint3D &p12, GbPoint3D &p21, GbPoint3D &p22);
@@ -436,7 +436,7 @@ public:
     }
 };
 /*=================================================================*/
-} // namespace GbSystem3D
+} // namespace gb_system_3d
 
 #endif // GBSYSTEM3D_H
 
diff --git a/src/basics/geometry3d/GbTriFaceMesh3D.cpp b/src/basics/geometry3d/GbTriFaceMesh3D.cpp
index f3a7ae2e2193a4ac2c18e3040c329f417d4e72ee..7b1eec536e131039c77d44bef4d0502b86587343 100644
--- a/src/basics/geometry3d/GbTriFaceMesh3D.cpp
+++ b/src/basics/geometry3d/GbTriFaceMesh3D.cpp
@@ -175,7 +175,7 @@ void GbTriFaceMesh3D::deleteRedundantNodes()
             {
                 for (pos = vertexMap.begin(); pos != vertexMap.end(); pos++) {
                     Vertex rhs = pos->first;
-                    // if(UbMath::inClosedInterval(vert.z,0.01999, 0.02001))
+                    // if(ub_math::inClosedInterval(vert.z,0.01999, 0.02001))
                     if (fabs(vert.x - rhs.x) < 1.E-5 && fabs(vert.y - rhs.y) < 1.E-5 && fabs(vert.z - rhs.z) < 1.E-5) {
                         break;
                     }
@@ -207,15 +207,15 @@ void GbTriFaceMesh3D::deleteRedundantNodes()
     //   Vertex& v2 = tris[t].getNode(1,*nodes);
     //   Vertex& v3 = tris[t].getNode(2,*nodes);
 
-    //   if(UbMath::greater(std::fabs(v1.x), 0.0634) && UbMath::inClosedInterval(v1.z, 0.01999, 0.02001))
+    //   if(ub_math::greater(std::fabs(v1.x), 0.0634) && ub_math::inClosedInterval(v1.z, 0.01999, 0.02001))
     //   {
     //      UBLOG2(logINFO,std::cout, "V1:"<<v1.x<<" "<<v1.y<<" "<<v1.z);
     //   }
-    //   if(UbMath::greater(std::fabs(v2.x), 0.0634) && UbMath::inClosedInterval(v2.z, 0.01999, 0.02001))
+    //   if(ub_math::greater(std::fabs(v2.x), 0.0634) && ub_math::inClosedInterval(v2.z, 0.01999, 0.02001))
     //   {
     //      UBLOG2(logINFO,std::cout, "V2:"<<v2.x<<" "<<v2.y<<" "<<v2.z);
     //   }
-    //   if(UbMath::greater(std::fabs(v3.x), 0.0634) && UbMath::inClosedInterval(v3.z, 0.01999, 0.02001))
+    //   if(ub_math::greater(std::fabs(v3.x), 0.0634) && ub_math::inClosedInterval(v3.z, 0.01999, 0.02001))
     //   {
     //      UBLOG2(logINFO,std::cout, "V3:"<<v3.x<<" "<<v3.y<<" "<<v3.z);
     //   }
@@ -471,13 +471,13 @@ void GbTriFaceMesh3D::calculateValues()
         for (size_t i = 1; i < this->nodes->size(); i++) {
             Vertex &v1 = (*nodes)[i];
 
-            x1min = UbMath::min<double>(x1min, v1.x);
-            x2min = UbMath::min<double>(x2min, v1.y);
-            x3min = UbMath::min<double>(x3min, v1.z);
+            x1min = ub_math::min<double>(x1min, v1.x);
+            x2min = ub_math::min<double>(x2min, v1.y);
+            x3min = ub_math::min<double>(x3min, v1.z);
 
-            x1max = UbMath::max<double>(x1max, v1.x);
-            x2max = UbMath::max<double>(x2max, v1.y);
-            x3max = UbMath::max<double>(x3max, v1.z);
+            x1max = ub_math::max<double>(x1max, v1.x);
+            x2max = ub_math::max<double>(x2max, v1.y);
+            x3max = ub_math::max<double>(x3max, v1.z);
         }
         x1center = 0.5 * (x1min + x1max);
         x2center = 0.5 * (x2min + x2max);
@@ -657,12 +657,12 @@ void GbTriFaceMesh3D::addSurfaceTriangleSet(vector<UbTupleFloat3> &pts, vector<U
 //         if(kdtreeSplitAlg == KDTREE_SAHPLIT     )
 //         {
 //            UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - build KdTree with SAHSplit");
-//            this->kdTree = new Kd::Tree<double>( *this, Kd::SAHSplit<double>()            );
+//            this->kdTree = new kd_tree::Tree<double>( *this, kd_tree::SAHSplit<double>()            );
 //         }
 //         else if(kdtreeSplitAlg == KDTREE_SPATIALSPLIT)
 //         {
 //            UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - build KdTree with SpatialMedianSplit");
-//            this->kdTree = new Kd::Tree<double>( *this, Kd::SpatialMedianSplit<double>() );
+//            this->kdTree = new kd_tree::Tree<double>( *this, kd_tree::SpatialMedianSplit<double>() );
 //         }
 //         else throw UbException(UB_EXARGS, "unknown kdtree split option)" );
 //         UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - built kdTree in "<<timer.getCurrentRuntimeInSeconds()<<"seconds");
@@ -672,17 +672,17 @@ void GbTriFaceMesh3D::addSurfaceTriangleSet(vector<UbTupleFloat3> &pts, vector<U
 //      //int iSec;
 //      //for(int i=0; i<100; i++)
 //      //{
-//      //   Kd::Ray<double> ray(  x1, x2, x3  //, 1, 0 ,0 );
+//      //   kd_tree::Ray<double> ray(  x1, x2, x3  //, 1, 0 ,0 );
 //      //                        , ( x1 < x1center ? UbRandom::rand(-1.0,-0.001, 10) : UbRandom::rand(0.001, 1.0, 10) )
 //      //                        , ( x2 < x2center ? UbRandom::rand(-1.0,-0.001, 10) : UbRandom::rand(0.001, 1.0, 10) )
 //      //                        , ( x3 < x3center ? UbRandom::rand(-1.0,-0.001, 10) : UbRandom::rand(0.001, 1.0, 10) )
 //      );
 //      //
-//      //   iSec = kdTree->intersectRay( ray, Kd::CountRayIntersectionHandler<double>() );
+//      //   iSec = kdTree->intersectRay( ray, kd_tree::CountRayIntersectionHandler<double>() );
 //      //
-//      //   if( iSec != Kd::Intersection::INTERSECT_EDGE ) //KEINE Kante getroffen
+//      //   if( iSec != kd_tree::Intersection::INTERSECT_EDGE ) //KEINE Kante getroffen
 //      //   {
-//      //      if(iSec == Kd::Intersection::ON_BOUNDARY )
+//      //      if(iSec == kd_tree::Intersection::ON_BOUNDARY )
 //      //      {
 //      //         return true;
 //      //      }
@@ -693,27 +693,27 @@ void GbTriFaceMesh3D::addSurfaceTriangleSet(vector<UbTupleFloat3> &pts, vector<U
 //      //throw UbException(UB_EXARGS, "ups, nach 100 Strahlen immer noch kein Ergebnis");
 //      int iSec1,iSec2;
 //
-//      Kd::Ray<double> ray1(  x1, x2, x3, 1.0, 0.0 ,0.0 );
-//      iSec1 = kdTree->intersectRay( ray1, Kd::CountRayIntersectionHandler<double>() );
-//      Kd::Ray<double> ray2(  x1, x2, x3, -1.0, 0.0 ,0.0 );
-//      iSec2 = kdTree->intersectRay( ray2, Kd::CountRayIntersectionHandler<double>() );
+//      kd_tree::Ray<double> ray1(  x1, x2, x3, 1.0, 0.0 ,0.0 );
+//      iSec1 = kdTree->intersectRay( ray1, kd_tree::CountRayIntersectionHandler<double>() );
+//      kd_tree::Ray<double> ray2(  x1, x2, x3, -1.0, 0.0 ,0.0 );
+//      iSec2 = kdTree->intersectRay( ray2, kd_tree::CountRayIntersectionHandler<double>() );
 //
-//      if(iSec1 == Kd::Intersection::ON_BOUNDARY || iSec2 == Kd::Intersection::ON_BOUNDARY)
+//      if(iSec1 == kd_tree::Intersection::ON_BOUNDARY || iSec2 == kd_tree::Intersection::ON_BOUNDARY)
 //      {
 //         return true;
 //      }
-//      if( iSec1 == Kd::Intersection::INTERSECT_EDGE && iSec2 == Kd::Intersection::INTERSECT_EDGE)
+//      if( iSec1 == kd_tree::Intersection::INTERSECT_EDGE && iSec2 == kd_tree::Intersection::INTERSECT_EDGE)
 //      {
 //         UBLOG(logINFO, "GbTriFaceMesh3D.isPointInGbObject3D.INTERSECT_EDGE");
-//         double eps = UbMath::getEqualityEpsilon<float>()*1000.0;
+//         double eps = ub_math::getEqualityEpsilon<float>()*1000.0;
 //         if (counter>100) {return(iSec1&1);  UBLOG(logINFO, "NACH 100 Iterationen Eps umsetzen aufgegeben!");}
 //         return this->isPointInGbObject3D(x1+eps, x2+eps, x3+eps,(counter+1));
 //      }
-//      else if( iSec1 == Kd::Intersection::INTERSECT_EDGE)
+//      else if( iSec1 == kd_tree::Intersection::INTERSECT_EDGE)
 //      {
 //         return (iSec2&1);
 //      }
-//      else if( iSec2 == Kd::Intersection::INTERSECT_EDGE)
+//      else if( iSec2 == kd_tree::Intersection::INTERSECT_EDGE)
 //      {
 //         return (iSec1&1);
 //      }
@@ -722,7 +722,7 @@ void GbTriFaceMesh3D::addSurfaceTriangleSet(vector<UbTupleFloat3> &pts, vector<U
 //         if((iSec1&1) != (iSec2&1))
 //         {
 //            UBLOG(logINFO, "GbTriFaceMesh3D.isPointInGbObject3D.iSec1&1 != iSec2&1");
-//            double eps = UbMath::getEqualityEpsilon<float>()*1000.0;
+//            double eps = ub_math::getEqualityEpsilon<float>()*1000.0;
 //            if (counter>100) {return(iSec1&1);  UBLOG(logINFO, "NACH 100 Iterationen Eps umsetzen aufgegeben!");}
 //            return this->isPointInGbObject3D(x1+eps, x2+eps, x3+eps,(counter+1));
 //         }
@@ -744,10 +744,10 @@ bool GbTriFaceMesh3D::isPointInGbObject3D(const double &x1, const double &x2, co
             timer.start();
             if (kdtreeSplitAlg == KDTREE_SAHPLIT) {
                 UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - build KdTree with SAHSplit");
-                this->kdTree = new Kd::Tree<double>(*this, Kd::SAHSplit<double>());
+                this->kdTree = new kd_tree::Tree<double>(*this, kd_tree::SAHSplit<double>());
             } else if (kdtreeSplitAlg == KDTREE_SPATIALSPLIT) {
                 UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - build KdTree with SpatialMedianSplit");
-                this->kdTree = new Kd::Tree<double>(*this, Kd::SpatialMedianSplit<double>());
+                this->kdTree = new kd_tree::Tree<double>(*this, kd_tree::SpatialMedianSplit<double>());
             } else
                 throw UbException(UB_EXARGS, "unknown kdtree split option)");
             UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - built kdTree in " << timer.getCurrentRuntimeInSeconds() << "seconds");
@@ -757,17 +757,17 @@ bool GbTriFaceMesh3D::isPointInGbObject3D(const double &x1, const double &x2, co
         // int iSec;
         // for(int i=0; i<100; i++)
         //{
-        //   Kd::Ray<double> ray(  x1, x2, x3  //, 1, 0 ,0 );
+        //   kd_tree::Ray<double> ray(  x1, x2, x3  //, 1, 0 ,0 );
         //                        , ( x1 < x1center ? UbRandom::rand(-1.0,-0.001, 10) : UbRandom::rand(0.001, 1.0, 10) )
         //                        , ( x2 < x2center ? UbRandom::rand(-1.0,-0.001, 10) : UbRandom::rand(0.001, 1.0, 10) )
         //                        , ( x3 < x3center ? UbRandom::rand(-1.0,-0.001, 10) : UbRandom::rand(0.001, 1.0, 10) )
         //                        );
         //
-        //   iSec = kdTree->intersectRay( ray, Kd::CountRayIntersectionHandler<double>() );
+        //   iSec = kdTree->intersectRay( ray, kd_tree::CountRayIntersectionHandler<double>() );
         //
-        //   if( iSec != Kd::Intersection::INTERSECT_EDGE ) //KEINE Kante getroffen
+        //   if( iSec != kd_tree::Intersection::INTERSECT_EDGE ) //KEINE Kante getroffen
         //   {
-        //      if(iSec == Kd::Intersection::ON_BOUNDARY )
+        //      if(iSec == kd_tree::Intersection::ON_BOUNDARY )
         //      {
         //         return true;
         //      }
@@ -778,27 +778,27 @@ bool GbTriFaceMesh3D::isPointInGbObject3D(const double &x1, const double &x2, co
         // throw UbException(UB_EXARGS, "ups, nach 100 Strahlen immer noch kein Ergebnis");
         int iSec1, iSec2;
         double eps = 0.05;
-        Kd::Ray<double> ray1(x1, x2, x3, 1.0 + eps * ((double)counter), eps * ((double)counter),
+        kd_tree::Ray<double> ray1(x1, x2, x3, 1.0 + eps * ((double)counter), eps * ((double)counter),
                              eps * ((double)counter));
-        iSec1 = kdTree->intersectRay(ray1, Kd::CountRayIntersectionHandler<double>());
-        Kd::Ray<double> ray2(x1, x2, x3, -1.0 - eps * ((double)counter), -eps * ((double)counter),
+        iSec1 = kdTree->intersectRay(ray1, kd_tree::CountRayIntersectionHandler<double>());
+        kd_tree::Ray<double> ray2(x1, x2, x3, -1.0 - eps * ((double)counter), -eps * ((double)counter),
                              -eps * ((double)counter));
 
-        iSec2 = kdTree->intersectRay(ray2, Kd::CountRayIntersectionHandler<double>());
+        iSec2 = kdTree->intersectRay(ray2, kd_tree::CountRayIntersectionHandler<double>());
 
-        if (iSec1 == Kd::Intersection::ON_BOUNDARY || iSec2 == Kd::Intersection::ON_BOUNDARY) {
+        if (iSec1 == kd_tree::Intersection::ON_BOUNDARY || iSec2 == kd_tree::Intersection::ON_BOUNDARY) {
             return true;
         }
-        if (iSec1 == Kd::Intersection::INTERSECT_EDGE && iSec2 == Kd::Intersection::INTERSECT_EDGE) {
+        if (iSec1 == kd_tree::Intersection::INTERSECT_EDGE && iSec2 == kd_tree::Intersection::INTERSECT_EDGE) {
             // UBLOG(logINFO, "GbTriFaceMesh3D.isPointInGbObject3D.INTERSECT_EDGE");
 
             if (counter > 20) {
                 return (iSec1 & 1); /*UBLOG(logINFO, "NACH 100 Iterationen Eps umsetzen aufgegeben!");*/
             }
             return this->isPointInGbObject3D(x1, x2, x3, (counter + 1));
-        } else if (iSec1 == Kd::Intersection::INTERSECT_EDGE) {
+        } else if (iSec1 == kd_tree::Intersection::INTERSECT_EDGE) {
             return (iSec2 & 1);
-        } else if (iSec2 == Kd::Intersection::INTERSECT_EDGE) {
+        } else if (iSec2 == kd_tree::Intersection::INTERSECT_EDGE) {
             return (iSec1 & 1);
         } else {
             if ((iSec1 & 1) != (iSec2 & 1)) {
@@ -827,10 +827,10 @@ bool GbTriFaceMesh3D::isPointInGbObject3D(const double &x1, const double &x2, co
             if (kdtreeSplitAlg == KDTREE_SAHPLIT) {
                 UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - build KdTree with SAHSplit");
                 //cout << "GbTriFaceMesh3D::calculateValues - build KdTree with SAHSplit" << std::endl;
-                this->kdTree = new Kd::Tree<double>(*this, Kd::SAHSplit<double>());
+                this->kdTree = new kd_tree::Tree<double>(*this, kd_tree::SAHSplit<double>());
             } else if (kdtreeSplitAlg == KDTREE_SPATIALSPLIT) {
                 UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - build KdTree with SpatialMedianSplit");
-                this->kdTree = new Kd::Tree<double>(*this, Kd::SpatialMedianSplit<double>());
+                this->kdTree = new kd_tree::Tree<double>(*this, kd_tree::SpatialMedianSplit<double>());
             } else
                 throw UbException(UB_EXARGS, "unknown kdtree split option)");
             UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - built kdTree in " << timer.getCurrentRuntimeInSeconds() << "seconds");
@@ -840,17 +840,17 @@ bool GbTriFaceMesh3D::isPointInGbObject3D(const double &x1, const double &x2, co
         // eigentlicher PIO-Test
         int iSec;
         for (int i = 0; i < MAX_ITER; i++) {
-            Kd::Ray<double> ray(x1, x2, x3 //, 1, 0 ,0 );
+            kd_tree::Ray<double> ray(x1, x2, x3 //, 1, 0 ,0 );
                                 ,
                                 (x1 < x1center ? UbRandom::rand(-1.0, -0.001, 10) : UbRandom::rand(0.001, 1.0, 10)),
                                 (x2 < x2center ? UbRandom::rand(-1.0, -0.001, 10) : UbRandom::rand(0.001, 1.0, 10)),
                                 (x3 < x3center ? UbRandom::rand(-1.0, -0.001, 10) : UbRandom::rand(0.001, 1.0, 10)));
 
-            iSec = kdTree->intersectRay(ray, Kd::CountRayIntersectionHandler<double>());
+            iSec = kdTree->intersectRay(ray, kd_tree::CountRayIntersectionHandler<double>());
 
-            if (iSec != Kd::Intersection::INTERSECT_EDGE) // KEINE Kante getroffen
+            if (iSec != kd_tree::Intersection::INTERSECT_EDGE) // KEINE Kante getroffen
             {
-                if (iSec == Kd::Intersection::ON_BOUNDARY) {
+                if (iSec == kd_tree::Intersection::ON_BOUNDARY) {
                     return true;
                 }
                 return (iSec & 1); // ungerade anzahl an schnitten --> drinnen
@@ -861,27 +861,27 @@ bool GbTriFaceMesh3D::isPointInGbObject3D(const double &x1, const double &x2, co
 
         //   int iSec1,iSec2;
         //
-        //   Kd::Ray<double> ray1(  x1, x2, x3, 1.0, 0.0 ,0.0 );
-        //   iSec1 = kdTree->intersectRay( ray1, Kd::CountRayIntersectionHandler<double>() );
-        //   Kd::Ray<double> ray2(  x1, x2, x3, -1.0, 0.0 ,0.0 );
-        //   iSec2 = kdTree->intersectRay( ray2, Kd::CountRayIntersectionHandler<double>() );
+        //   kd_tree::Ray<double> ray1(  x1, x2, x3, 1.0, 0.0 ,0.0 );
+        //   iSec1 = kdTree->intersectRay( ray1, kd_tree::CountRayIntersectionHandler<double>() );
+        //   kd_tree::Ray<double> ray2(  x1, x2, x3, -1.0, 0.0 ,0.0 );
+        //   iSec2 = kdTree->intersectRay( ray2, kd_tree::CountRayIntersectionHandler<double>() );
 
-        //   if(iSec1 == Kd::Intersection::ON_BOUNDARY || iSec2 == Kd::Intersection::ON_BOUNDARY)
+        //   if(iSec1 == kd_tree::Intersection::ON_BOUNDARY || iSec2 == kd_tree::Intersection::ON_BOUNDARY)
         //   {
         //      return true;
         //   }
-        //   if( iSec1 == Kd::Intersection::INTERSECT_EDGE && iSec2 == Kd::Intersection::INTERSECT_EDGE)
+        //   if( iSec1 == kd_tree::Intersection::INTERSECT_EDGE && iSec2 == kd_tree::Intersection::INTERSECT_EDGE)
         //   {
         //      //UBLOG(logINFO, "GbTriFaceMesh3D.isPointInGbObject3D.INTERSECT_EDGE");
-        //      double eps = UbMath::getEqualityEpsilon<double>();
+        //      double eps = ub_math::getEqualityEpsilon<double>();
         //      if (counter>100) {return(iSec1&1);  UBLOG(logINFO, "NACH 100 Iterationen Eps umsetzen aufgegeben!");}
         //      return this->isPointInGbObject3D(x1+eps, x2+eps, x3+eps,(counter+1));
         //   }
-        //   else if( iSec1 == Kd::Intersection::INTERSECT_EDGE)
+        //   else if( iSec1 == kd_tree::Intersection::INTERSECT_EDGE)
         //   {
         //      return (iSec2&1);
         //   }
-        //   else if( iSec2 == Kd::Intersection::INTERSECT_EDGE)
+        //   else if( iSec2 == kd_tree::Intersection::INTERSECT_EDGE)
         //   {
         //      return (iSec1&1);
         //   }
@@ -890,7 +890,7 @@ bool GbTriFaceMesh3D::isPointInGbObject3D(const double &x1, const double &x2, co
         //      if((iSec1&1) != (iSec2&1))
         //      {
         //         UBLOG(logINFO, "GbTriFaceMesh3D.isPointInGbObject3D.iSec1&1 != iSec2&1");
-        //         double eps = UbMath::getEqualityEpsilon<double>();
+        //         double eps = ub_math::getEqualityEpsilon<double>();
         //         if (counter>100) {return(iSec1&1);  UBLOG(logINFO, "NACH 100 Iterationen Eps umsetzen aufgegeben!");}
         //         return this->isPointInGbObject3D(x1+eps, x2+eps, x3+eps,(counter+1));
         //      }
@@ -911,10 +911,10 @@ bool GbTriFaceMesh3D::isPointInGbObject3D(const double &x1, const double &x2, co
             timer.start();
             if (kdtreeSplitAlg == KDTREE_SAHPLIT) {
                 UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - build KdTree with SAHSplit");
-                this->kdTree = new Kd::Tree<double>(*this, Kd::SAHSplit<double>());
+                this->kdTree = new kd_tree::Tree<double>(*this, kd_tree::SAHSplit<double>());
             } else if (kdtreeSplitAlg == KDTREE_SPATIALSPLIT) {
                 UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - build KdTree with SpatialMedianSplit");
-                this->kdTree = new Kd::Tree<double>(*this, Kd::SpatialMedianSplit<double>());
+                this->kdTree = new kd_tree::Tree<double>(*this, kd_tree::SpatialMedianSplit<double>());
             } else
                 throw UbException(UB_EXARGS, "unknown kdtree split option)");
             UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - built kdTree in " << timer.getCurrentRuntimeInSeconds() << "seconds");
@@ -923,16 +923,16 @@ bool GbTriFaceMesh3D::isPointInGbObject3D(const double &x1, const double &x2, co
         // eigentlicher PIO-Test
         int iSec;
         for (int i = 0; i < MAX_ITER; i++) {
-            Kd::Ray<double> ray(
+            kd_tree::Ray<double> ray(
                 x1, x2, x3, float((x1 < x1center ? UbRandom::rand(-1.0, -0.001, 10) : UbRandom::rand(0.001, 1.0, 10))),
                 float((x2 < x2center ? UbRandom::rand(-1.0, -0.001, 10) : UbRandom::rand(0.001, 1.0, 10))),
                 float((x3 < x3center ? UbRandom::rand(-1.0, -0.001, 10) : UbRandom::rand(0.001, 1.0, 10))));
 
-            iSec = kdTree->intersectRay(ray, Kd::CountRayIntersectionHandler<double>());
+            iSec = kdTree->intersectRay(ray, kd_tree::CountRayIntersectionHandler<double>());
 
-            if (iSec != Kd::Intersection::INTERSECT_EDGE) // KEINE Kante getroffen
+            if (iSec != kd_tree::Intersection::INTERSECT_EDGE) // KEINE Kante getroffen
             {
-                if (iSec == Kd::Intersection::ON_BOUNDARY) {
+                if (iSec == kd_tree::Intersection::ON_BOUNDARY) {
                     pointIsOnBoundary = true;
                     return true;
                 }
@@ -957,19 +957,19 @@ bool GbTriFaceMesh3D::intersectLine(const double &p1_x1, const double &p1_x2, co
         timer.start();
         if (kdtreeSplitAlg == KDTREE_SAHPLIT) {
             UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - build KdTree with SAHSplit");
-            this->kdTree = new Kd::Tree<double>(*this, Kd::SAHSplit<double>());
+            this->kdTree = new kd_tree::Tree<double>(*this, kd_tree::SAHSplit<double>());
         } else if (kdtreeSplitAlg == KDTREE_SPATIALSPLIT) {
             UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - build KdTree with SpatialMedianSplit");
-            this->kdTree = new Kd::Tree<double>(*this, Kd::SpatialMedianSplit<double>());
+            this->kdTree = new kd_tree::Tree<double>(*this, kd_tree::SpatialMedianSplit<double>());
         } else
             throw UbException(UB_EXARGS, "unknown kdtree split option)");
         UBLOG(logDEBUG3, "GbTriFaceMesh3D::calculateValues - built kdTree in " << timer.getCurrentRuntimeInSeconds() << "seconds");
     }
 
     int iSec = kdTree->intersectLine(UbTupleDouble3(p1_x1, p1_x2, p1_x3), UbTupleDouble3(p2_x1, p2_x2, p2_x3),
-                                     Kd::CountLineIntersectionHandler<double>());
+                                     kd_tree::CountLineIntersectionHandler<double>());
 
-    return (iSec != Kd::Intersection::NO_INTERSECTION);
+    return (iSec != kd_tree::Intersection::NO_INTERSECTION);
 }
 /*======================================================================*/
 GbLine3D *GbTriFaceMesh3D::createClippedLine3D(GbPoint3D & /*point1*/, GbPoint3D & /*point2*/)
diff --git a/src/basics/geometry3d/GbTriFaceMesh3D.h b/src/basics/geometry3d/GbTriFaceMesh3D.h
index 2e69eeb0fbc7d27c805afd8284958cb304d027ed..3c1968511659eee312f3aa63abb41922a8f2ad77 100644
--- a/src/basics/geometry3d/GbTriFaceMesh3D.h
+++ b/src/basics/geometry3d/GbTriFaceMesh3D.h
@@ -49,7 +49,7 @@
 
 #include "basics/constants/NumericConstants.h"
 
-namespace Kd
+namespace kd_tree
 {
 template <typename T>
 class Tree;
@@ -57,7 +57,7 @@ template <typename T>
 class SplitAlgorithm;
 template <typename T>
 class RayIntersectionHandler;
-} // namespace Kd
+} // namespace kd_tree
 
 class WbWriter;
 
@@ -192,13 +192,13 @@ public:
         float &getV3y(std::vector<Vertex> &nodes) { return nodes[v3].y; }
         float &getV3z(std::vector<Vertex> &nodes) { return nodes[v3].z; }
 
-        float getMinX(std::vector<Vertex> &nodes) { return (float)UbMath::min(nodes[v1].x, nodes[v2].x, nodes[v3].x); }
-        float getMinY(std::vector<Vertex> &nodes) { return (float)UbMath::min(nodes[v1].y, nodes[v2].y, nodes[v3].y); }
-        float getMinZ(std::vector<Vertex> &nodes) { return (float)UbMath::min(nodes[v1].z, nodes[v2].z, nodes[v3].z); }
+        float getMinX(std::vector<Vertex> &nodes) { return (float)ub_math::min(nodes[v1].x, nodes[v2].x, nodes[v3].x); }
+        float getMinY(std::vector<Vertex> &nodes) { return (float)ub_math::min(nodes[v1].y, nodes[v2].y, nodes[v3].y); }
+        float getMinZ(std::vector<Vertex> &nodes) { return (float)ub_math::min(nodes[v1].z, nodes[v2].z, nodes[v3].z); }
 
-        float getMaxX(std::vector<Vertex> &nodes) { return (float)UbMath::max(nodes[v1].x, nodes[v2].x, nodes[v3].x); }
-        float getMaxY(std::vector<Vertex> &nodes) { return (float)UbMath::max(nodes[v1].y, nodes[v2].y, nodes[v3].y); }
-        float getMaxZ(std::vector<Vertex> &nodes) { return (float)UbMath::max(nodes[v1].z, nodes[v2].z, nodes[v3].z); }
+        float getMaxX(std::vector<Vertex> &nodes) { return (float)ub_math::max(nodes[v1].x, nodes[v2].x, nodes[v3].x); }
+        float getMaxY(std::vector<Vertex> &nodes) { return (float)ub_math::max(nodes[v1].y, nodes[v2].y, nodes[v3].y); }
+        float getMaxZ(std::vector<Vertex> &nodes) { return (float)ub_math::max(nodes[v1].z, nodes[v2].z, nodes[v3].z); }
 
         float getX1Centroid(std::vector<Vertex> &nodes)
         {
@@ -388,7 +388,7 @@ public:
 
     void setKdTreeSplitAlgorithm(KDTREE_SPLITAGORITHM mode);
     KDTREE_SPLITAGORITHM getKdTreeSplitAlgorithm() { return this->kdtreeSplitAlg; }
-    Kd::Tree<double> *getKdTree() { return this->kdTree; }
+    kd_tree::Tree<double> *getKdTree() { return this->kdTree; }
 
     virtual UbTuple<std::string, std::string> writeMesh(std::string filename, WbWriter *writer,
                                                         bool writeNormals                          = false,
@@ -431,7 +431,7 @@ protected:
     bool buildVertTriRelationMap{ false };
     std::multimap<Vertex *, TriFace *> relationVertTris;
 
-    Kd::Tree<double> *kdTree = nullptr;
+    kd_tree::Tree<double> *kdTree = nullptr;
 };
 
 #endif // GBTRIFACEMESH3D_H
diff --git a/src/basics/geometry3d/GbTriangle3D.cpp b/src/basics/geometry3d/GbTriangle3D.cpp
index 33fcbec54c53e7d661bdc97b111b9fdef085b5a1..0b7651f3b05833166f608485d810025eebc9349d 100644
--- a/src/basics/geometry3d/GbTriangle3D.cpp
+++ b/src/basics/geometry3d/GbTriangle3D.cpp
@@ -413,7 +413,7 @@ GbPoint3D *GbTriangle3D::calculateIntersectionPoints3D(GbPoint3D *linePoint1, Gb
     double d     = -Normal.Dot(GbPoint3D1);
     double denom = Normal.Dot(direction);
 
-    if (UbMath::zero(denom))
+    if (ub_math::zero(denom))
         return NULL; // line does not intersect the plane of the triangle !
     else {
         double mu = -1. * (d + Point1.Dot(Normal)) / denom; // mu = -(d+ Normal.Point1)/denom
@@ -440,11 +440,11 @@ GbPoint3D *GbTriangle3D::calculateIntersectionPoints3D(GbPoint3D *linePoint1, Gb
             GbVector3D Q1Q2 = Q1 + Q2;
             GbVector3D Q    = Q1Q2 + Q3;
 
-            if (UbMath::less(Q.Dot(Q1), 0.0))
+            if (ub_math::less(Q.Dot(Q1), 0.0))
                 test = false;
-            if (UbMath::less(Q.Dot(Q2), 0.0))
+            if (ub_math::less(Q.Dot(Q2), 0.0))
                 test = false;
-            if (UbMath::less(Q.Dot(Q3), 0.0))
+            if (ub_math::less(Q.Dot(Q3), 0.0))
                 test = false;
 
             if (test == true)
@@ -480,7 +480,7 @@ double GbTriangle3D::calculateDistanceToPoint3D(const double &x1, const double &
 
     // Determine normal to triangle
     GbVector3D Normal = (P1 - P2).Cross(P1 - P3);
-    double alpha      = UbMath::ACos((P1 - P0).Dot(Normal) / ((P1 - P0).Length() * Normal.Length()));
+    double alpha      = ub_math::ACos((P1 - P0).Dot(Normal) / ((P1 - P0).Length() * Normal.Length()));
 
     double P0P0dash = (P0 - P1).Length() * cos(alpha);
     Normal.Normalize();
@@ -579,7 +579,7 @@ double GbTriangle3D::calculateNormalizedDistanceToPoint3D(const double &x1, cons
                                   ((-1.0 * zb + zc) * ya + (-1.0 * yc + yb) * za - 1.0 * zc * yb + zb * yc) * x2 +
                                   ((-1.0 * zc + zb) * xa + (-1.0 * xb + xc) * za + xb * zc - 1.0 * xc * zb) * y2 +
                                   ((yc - 1.0 * yb) * xa + (xb - 1.0 * xc) * ya + xc * yb - 1.0 * xb * yc) * z2));
-    if (UbMath::greater(nenner, 0.0))
+    if (ub_math::greater(nenner, 0.0))
         tt = zaehler / nenner;
     else
         tt = -999.;
@@ -602,7 +602,7 @@ double GbTriangle3D::calculateNormalizedDistanceToPoint3D(const double &x1, cons
                                   ((zb - 1.0 * zc) * ya + (-1.0 * yb + yc) * za + zc * yb - 1.0 * zb * yc) * x2 +
                                   ((zc - 1.0 * zb) * xa + (xb - 1.0 * xc) * za - 1.0 * xb * zc + xc * zb) * y2 +
                                   ((yb - 1.0 * yc) * xa + (xc - 1.0 * xb) * ya + xb * yc - 1.0 * xc * yb) * z2));
-    if (UbMath::greater(nenner, 0.0))
+    if (ub_math::greater(nenner, 0.0))
         xi = zaehler / nenner;
     else
         xi = -999.;
@@ -618,15 +618,15 @@ double GbTriangle3D::calculateNormalizedDistanceToPoint3D(const double &x1, cons
                                   ((zb - 1.0 * zc) * ya + (-1.0 * yb + yc) * za + zc * yb - 1.0 * zb * yc) * x2 +
                                   ((zc - 1.0 * zb) * xa + (xb - 1.0 * xc) * za - 1.0 * xb * zc + xc * zb) * y2 +
                                   ((yb - 1.0 * yc) * xa + (xc - 1.0 * xb) * ya + xb * yc - 1.0 * xc * yb) * z2));
-    if (UbMath::greater(nenner, 0.0))
+    if (ub_math::greater(nenner, 0.0))
         eta = static_cast<double>((zaehler / nenner) * wurzel3 * -1.);
     else
         eta = -999.;
 
-    if (tt >= -1.0 - UbMath::Epsilon<double>::val() && tt <= 1.0) {
-        if (xi >= -1.0 + eta / wurzel3 - UbMath::Epsilon<double>::val() &&
-            xi <= 1.0 - eta / wurzel3 + UbMath::Epsilon<double>::val()) {
-            if (eta >= 0 - UbMath::Epsilon<double>::val() && eta <= wurzel3 + UbMath::Epsilon<double>::val()) {
+    if (tt >= -1.0 - ub_math::Epsilon<double>::val() && tt <= 1.0) {
+        if (xi >= -1.0 + eta / wurzel3 - ub_math::Epsilon<double>::val() &&
+            xi <= 1.0 - eta / wurzel3 + ub_math::Epsilon<double>::val()) {
+            if (eta >= 0 - ub_math::Epsilon<double>::val() && eta <= wurzel3 + ub_math::Epsilon<double>::val()) {
                 /*xp = x1*(0.5-tt/2)+x2*(0.5+tt/2);
                 yp = y1*(0.5-tt/2)+y2*(0.5+tt/2);
                 zp = z1*(0.5-tt/2)+z2*(0.5+tt/2);*/
@@ -680,7 +680,7 @@ bool GbTriangle3D::enclosesPoint2D(double x1, double x2)
     if (x1 < this->getX1Maximum() && x1 > getX1Minimum() && x2 < this->getX2Maximum() && x2 > getX2Minimum()) {
         GbPoint3D *dummy = NULL;
         // ueberpruefen, ob der Punkt innerhalb des Dreiecks liegt
-        dummy = GbSystem3D::calculateIntersectionPoint3D(p1, p2, dp1, dp2);
+        dummy = gb_system_3d::calculateIntersectionPoint3D(p1, p2, dp1, dp2);
         if (dummy != NULL) {
             if (dummy->getX1Coordinate() == p1.getX1Coordinate() && dummy->getX2Coordinate() == p1.getX2Coordinate()) {
                 delete dummy;
@@ -694,7 +694,7 @@ bool GbTriangle3D::enclosesPoint2D(double x1, double x2)
         if (dummy)
             delete dummy;
 
-        dummy = GbSystem3D::calculateIntersectionPoint3D(p1, p2, dp2, dp3);
+        dummy = gb_system_3d::calculateIntersectionPoint3D(p1, p2, dp2, dp3);
         if (dummy != NULL) {
             if (dummy->getX1Coordinate() == p1.getX1Coordinate() && dummy->getX2Coordinate() == p1.getX2Coordinate()) {
                 if (dummy)
@@ -709,7 +709,7 @@ bool GbTriangle3D::enclosesPoint2D(double x1, double x2)
         if (dummy)
             delete dummy;
 
-        dummy = GbSystem3D::calculateIntersectionPoint3D(p1, p2, dp3, dp1);
+        dummy = gb_system_3d::calculateIntersectionPoint3D(p1, p2, dp3, dp1);
         if (dummy != NULL) {
             if (dummy->getX1Coordinate() == p1.getX1Coordinate() && dummy->getX2Coordinate() == p1.getX2Coordinate()) {
                 if (dummy)
@@ -739,7 +739,7 @@ bool GbTriangle3D::enclosesPoint2D(double x1, double x2)
 //*/
 GbPolygon3D *GbTriangle3D::createClippedPolygon3D(GbCuboid3D *cube)
 {
-    return (GbSystem3D::clipPolygon3D(this->getPoints(), cube->getPoint1()->getX1Coordinate(),
+    return (gb_system_3d::clipPolygon3D(this->getPoints(), cube->getPoint1()->getX1Coordinate(),
                                       cube->getPoint1()->getX2Coordinate(), cube->getPoint1()->getX3Coordinate(),
                                       cube->getPoint2()->getX1Coordinate(), cube->getPoint2()->getX2Coordinate(),
                                       cube->getPoint2()->getX3Coordinate()));
@@ -765,7 +765,7 @@ GbPolygon3D *GbTriangle3D::createClippedPolygon3D(GbCuboid3D *cube)
 GbPolygon3D *GbTriangle3D::createClippedPolygon3D(const double &p1x1, const double &p1x2, const double &p1x3,
                                                   const double &p2x1, const double &p2x2, const double &p2x3)
 {
-    return (GbSystem3D::clipPolygon3D(this->getPoints(), p1x1, p1x2, p1x3, p2x1, p2x2, p2x3));
+    return (gb_system_3d::clipPolygon3D(this->getPoints(), p1x1, p1x2, p1x3, p2x1, p2x2, p2x3));
 }
 
 /*
diff --git a/src/basics/geometry3d/GbTriangularMesh3D.cpp b/src/basics/geometry3d/GbTriangularMesh3D.cpp
index 2e20ee5214fab8182810bc52ccd74bd7c058e2a6..5b75a3c1694a0cedafbcb864378aa5b049d26c11 100644
--- a/src/basics/geometry3d/GbTriangularMesh3D.cpp
+++ b/src/basics/geometry3d/GbTriangularMesh3D.cpp
@@ -91,7 +91,7 @@ GbTriangularMesh3D::GbTriangularMesh3D(string name, vector<GbTriangle3D *> *tris
     GbPoint3D *p2               = NULL;
     GbPoint3D *p3               = NULL;
     for (int u = 0; u < (int)tris->size(); u++) {
-        if (UbMath::zero((*tris)[u]->getArea())) {
+        if (ub_math::zero((*tris)[u]->getArea())) {
             (*tris)[u]->finalize();
             delete (*tris)[u];
             (*tris)[u] = NULL;
@@ -1194,7 +1194,7 @@ void GbTriangularMesh3D::RandomRay(GbVector3D &ray, int radius)
     /* the sphere is sliced at z, and a random point at angle t
     generated on the circle of intersection. */
     z = 2.0 * (double)rand() / MAX_INT - 1.0;
-    t = 2.0 * UbMath::PI * (double)rand() / MAX_INT;
+    t = 2.0 * ub_math::PI * (double)rand() / MAX_INT;
     w = sqrt(1 - z * z);
     x = w * cos(t);
     y = w * sin(t);
@@ -1231,8 +1231,8 @@ char GbTriangularMesh3D::SegPlaneInt(GbTriangle3D *T, GbVector3D &q, GbVector3D
 
     if (denom == 0.0) { /* Segment is parallel to plane. */
         if (num == 0.0) /* q is on plane. */
-                        // if (UbMath::zero(denom)) {  /* Segment is parallel to plane. */
-            //   if ( UbMath::zero(num))   /* q is on plane. */
+                        // if (ub_math::zero(denom)) {  /* Segment is parallel to plane. */
+            //   if ( ub_math::zero(num))   /* q is on plane. */
             return 'p';
         else
             return '0';
@@ -1254,9 +1254,9 @@ char GbTriangularMesh3D::SegPlaneInt(GbTriangle3D *T, GbVector3D &q, GbVector3D
 
     // if ( (0.0 < t) && (t < 1.0) )
     //   return '1';
-    // else if ( UbMath::zero(num))   /* t == 0 */
+    // else if ( ub_math::zero(num))   /* t == 0 */
     //   return 'q';
-    // else if ( UbMath::equal(num , denom) ) /* t == 1 */
+    // else if ( ub_math::equal(num , denom) ) /* t == 1 */
     //   return 'r';
     // else return '0';
 }
@@ -1440,8 +1440,8 @@ char GbTriangularMesh3D::SegTriCross(GbTriangle3D *T, GbVector3D &q, GbVector3D
 
     /* Same sign: segment intersects interior of triangle. */
     if (((vol0 > 0.) && (vol1 > 0.) && (vol2 > 0.)) || ((vol0 < 0.) && (vol1 < 0.) && (vol2 < 0.)))
-    // if ( ( UbMath::greater(vol0, 0. ) && UbMath::greater(vol1 , 0. ) && UbMath::greater(vol2 , 0. ) ) ||
-    //     ( UbMath::less(vol0, 0. ) && UbMath::less(vol1, 0. ) && UbMath::less(vol2, 0. ) ) )
+    // if ( ( ub_math::greater(vol0, 0. ) && ub_math::greater(vol1 , 0. ) && ub_math::greater(vol2 , 0. ) ) ||
+    //     ( ub_math::less(vol0, 0. ) && ub_math::less(vol1, 0. ) && ub_math::less(vol2, 0. ) ) )
     {
         return 'f';
     }
diff --git a/src/basics/geometry3d/GbVector3D.cpp b/src/basics/geometry3d/GbVector3D.cpp
index 1cd8ac131487b90ce2b86a6748ccec5c0b78d540..d0612a3e9669099fb571eda07eae4453328c6176 100644
--- a/src/basics/geometry3d/GbVector3D.cpp
+++ b/src/basics/geometry3d/GbVector3D.cpp
@@ -189,9 +189,9 @@ GbVector3D GbVector3D::operator/(const double &fScalar) const
         kQuot.m_afTuple[1] = fInvScalar * m_afTuple[1];
         kQuot.m_afTuple[2] = fInvScalar * m_afTuple[2];
     } else {
-        kQuot.m_afTuple[0] = Ub::inf;
-        kQuot.m_afTuple[1] = Ub::inf;
-        kQuot.m_afTuple[2] = Ub::inf;
+        kQuot.m_afTuple[0] = ub_math::inf;
+        kQuot.m_afTuple[1] = ub_math::inf;
+        kQuot.m_afTuple[2] = ub_math::inf;
     }
 
     return kQuot;
@@ -236,9 +236,9 @@ GbVector3D &GbVector3D::operator/=(const double &fScalar)
         m_afTuple[1] *= fInvScalar;
         m_afTuple[2] *= fInvScalar;
     } else {
-        m_afTuple[0] = Ub::inf;
-        m_afTuple[1] = Ub::inf;
-        m_afTuple[2] = Ub::inf;
+        m_afTuple[0] = ub_math::inf;
+        m_afTuple[1] = ub_math::inf;
+        m_afTuple[2] = ub_math::inf;
     }
 
     return *this;
@@ -273,7 +273,7 @@ double GbVector3D::Normalize()
 {
     double fLength = Length();
 
-    if (fLength > UbMath::Epsilon<double>::val()) {
+    if (fLength > ub_math::Epsilon<double>::val()) {
         double fInvLength = ((double)1.0) / fLength;
         m_afTuple[0] *= fInvLength;
         m_afTuple[1] *= fInvLength;
@@ -338,7 +338,7 @@ void GbVector3D::GetBarycentrics(const GbVector3D &rkV0, const GbVector3D &rkV1,
     GbVector3D kE1cE2 = akDiff[1].Cross(akDiff[2]);
     GbVector3D kE2cE0 = akDiff[2].Cross(akDiff[0]);
     GbVector3D kE0cE1 = akDiff[0].Cross(akDiff[1]);
-    if (std::fabs(fDet) > UbMath::Epsilon<double>::val()) {
+    if (std::fabs(fDet) > ub_math::Epsilon<double>::val()) {
         double fInvDet = ((double)1.0) / fDet;
         afBary[0]      = akDiff[3].Dot(kE1cE2) * fInvDet;
         afBary[1]      = akDiff[3].Dot(kE2cE0) * fInvDet;
@@ -369,7 +369,7 @@ void GbVector3D::GetBarycentrics(const GbVector3D &rkV0, const GbVector3D &rkV1,
             fMaxSqrArea = fSqrArea;
         }
 
-        if (fMaxSqrArea > UbMath::Epsilon<double>::val()) {
+        if (fMaxSqrArea > ub_math::Epsilon<double>::val()) {
             double fInvSqrArea = ((double)1.0) / fMaxSqrArea;
             GbVector3D kTmp;
             if (iMaxIndex == 0) {
@@ -435,7 +435,7 @@ void GbVector3D::GetBarycentrics(const GbVector3D &rkV0, const GbVector3D &rkV1,
                 fMaxSqrLength = fSqrLength;
             }
 
-            if (fMaxSqrLength > UbMath::Epsilon<double>::val()) {
+            if (fMaxSqrLength > ub_math::Epsilon<double>::val()) {
                 double fInvSqrLength = ((double)1.0) / fMaxSqrLength;
                 if (iMaxIndex == 0) {
                     // P-V3 = t*(V0-V3)
@@ -526,13 +526,13 @@ void GbVector3D::GenerateOrthonormalBasis(GbVector3D &rkU, GbVector3D &rkV, GbVe
 
     if (std::fabs(rkW.m_afTuple[0]) >= std::fabs(rkW.m_afTuple[1])) {
         // W.x or W.z is the largest magnitude component, swap them
-        fInvLength       = UbMath::invSqrt(rkW.m_afTuple[0] * rkW.m_afTuple[0] + rkW.m_afTuple[2] * rkW.m_afTuple[2]);
+        fInvLength       = ub_math::invSqrt(rkW.m_afTuple[0] * rkW.m_afTuple[0] + rkW.m_afTuple[2] * rkW.m_afTuple[2]);
         rkU.m_afTuple[0] = -rkW.m_afTuple[2] * fInvLength;
         rkU.m_afTuple[1] = (double)0.0;
         rkU.m_afTuple[2] = +rkW.m_afTuple[0] * fInvLength;
     } else {
         // W.y or W.z is the largest magnitude component, swap them
-        fInvLength       = UbMath::invSqrt(rkW.m_afTuple[1] * rkW.m_afTuple[1] + rkW.m_afTuple[2] * rkW.m_afTuple[2]);
+        fInvLength       = ub_math::invSqrt(rkW.m_afTuple[1] * rkW.m_afTuple[1] + rkW.m_afTuple[2] * rkW.m_afTuple[2]);
         rkU.m_afTuple[0] = (double)0.0;
         rkU.m_afTuple[1] = +rkW.m_afTuple[2] * fInvLength;
         rkU.m_afTuple[2] = -rkW.m_afTuple[1] * fInvLength;
diff --git a/src/basics/geometry3d/GbVoxelMatrix3D.cpp b/src/basics/geometry3d/GbVoxelMatrix3D.cpp
index f124c0370cbe218ece4d3b7eff9e08c99f46ad89..072f58a54e460270128829bc01a9b1c189957a3b 100644
--- a/src/basics/geometry3d/GbVoxelMatrix3D.cpp
+++ b/src/basics/geometry3d/GbVoxelMatrix3D.cpp
@@ -170,38 +170,38 @@ long GbVoxelMatrix3D::getNumberOfFluid() { return numberOfFluid; }
 double GbVoxelMatrix3D::getIntersectionRaytraceFactor(const double &x1, const double &x2, const double &x3,
                                                       const double &rx1, const double &rx2, const double &rx3)
 {
-    if (!((UbMath::equal(rx1, 0.0) || UbMath::equal(fabs(rx1), 1.0) ||
-           UbMath::equal(fabs(rx1), vf::basics::constant::c1oSqrt2) || UbMath::equal(fabs(rx1), vf::basics::constant::c1oSqrt3)) &&
-          (UbMath::equal(rx2, 0.0) || UbMath::equal(fabs(rx2), 1.0) ||
-           UbMath::equal(fabs(rx2), vf::basics::constant::c1oSqrt2) || UbMath::equal(fabs(rx2), vf::basics::constant::c1oSqrt3)) &&
-          (UbMath::equal(rx3, 0.0) || UbMath::equal(fabs(rx3), 1.0) ||
-           UbMath::equal(fabs(rx3), vf::basics::constant::c1oSqrt2) || UbMath::equal(fabs(rx3), vf::basics::constant::c1oSqrt3)))) {
+    if (!((ub_math::equal(rx1, 0.0) || ub_math::equal(fabs(rx1), 1.0) ||
+           ub_math::equal(fabs(rx1), vf::basics::constant::c1oSqrt2) || ub_math::equal(fabs(rx1), vf::basics::constant::c1oSqrt3)) &&
+          (ub_math::equal(rx2, 0.0) || ub_math::equal(fabs(rx2), 1.0) ||
+           ub_math::equal(fabs(rx2), vf::basics::constant::c1oSqrt2) || ub_math::equal(fabs(rx2), vf::basics::constant::c1oSqrt3)) &&
+          (ub_math::equal(rx3, 0.0) || ub_math::equal(fabs(rx3), 1.0) ||
+           ub_math::equal(fabs(rx3), vf::basics::constant::c1oSqrt2) || ub_math::equal(fabs(rx3), vf::basics::constant::c1oSqrt3)))) {
         throw UbException(UB_EXARGS, "nur fuer diskrete Boltzmannrichungen implementiert!!!");
     }
 
     // nachbarindex ermitteln
     int ndx1 = 0, ndx2 = 0, ndx3 = 0;
-    if (UbMath::greater(rx1, 0.0))
+    if (ub_math::greater(rx1, 0.0))
         ndx1 = 1;
-    else if (UbMath::less(rx1, 0.0))
+    else if (ub_math::less(rx1, 0.0))
         ndx1 = -1;
-    if (UbMath::greater(rx2, 0.0))
+    if (ub_math::greater(rx2, 0.0))
         ndx2 = 1;
-    else if (UbMath::less(rx2, 0.0))
+    else if (ub_math::less(rx2, 0.0))
         ndx2 = -1;
-    if (UbMath::greater(rx3, 0.0))
+    if (ub_math::greater(rx3, 0.0))
         ndx3 = 1;
-    else if (UbMath::less(rx3, 0.0))
+    else if (ub_math::less(rx3, 0.0))
         ndx3 = -1;
 
-    int nix1 = UbMath::integerRounding((x1 - minX1) / deltaX1) + ndx1;
-    int nix2 = UbMath::integerRounding((x2 - minX2) / deltaX2) + ndx2;
-    int nix3 = UbMath::integerRounding((x3 - minX3) / deltaX3) + ndx3;
+    int nix1 = ub_math::integerRounding((x1 - minX1) / deltaX1) + ndx1;
+    int nix2 = ub_math::integerRounding((x2 - minX2) / deltaX2) + ndx2;
+    int nix3 = ub_math::integerRounding((x3 - minX3) / deltaX3) + ndx3;
 
     // test ob nachbar solid
     if (nix1 >= 0 && nix2 >= 0 && nix3 >= 0 && nix1 < (int)voxelMatrix.getNX1() && nix2 < (int)voxelMatrix.getNX2() &&
         nix3 < (int)voxelMatrix.getNX3()) {
-        if (UbMath::equal(voxelMatrix(nix1, nix2, nix3), SOLID)) {
+        if (ub_math::equal(voxelMatrix(nix1, nix2, nix3), SOLID)) {
             // return halber abstand der beiden knoten
             return 0.5 * sqrt((ndx1 * deltaX1) * (ndx1 * deltaX1) + (ndx2 * deltaX2) * (ndx2 * deltaX2) +
                               (ndx3 * deltaX3) * (ndx3 * deltaX3));
@@ -213,13 +213,13 @@ double GbVoxelMatrix3D::getIntersectionRaytraceFactor(const double &x1, const do
 /*=======================================================*/
 bool GbVoxelMatrix3D::isPointInGbObject3D(const double &x1p, const double &x2p, const double &x3p)
 {
-    int ix1 = UbMath::integerRounding((x1p - minX1) / deltaX1);
-    int ix2 = UbMath::integerRounding((x2p - minX2) / deltaX2);
-    int ix3 = UbMath::integerRounding((x3p - minX3) / deltaX3);
+    int ix1 = ub_math::integerRounding((x1p - minX1) / deltaX1);
+    int ix2 = ub_math::integerRounding((x2p - minX2) / deltaX2);
+    int ix3 = ub_math::integerRounding((x3p - minX3) / deltaX3);
 
     if (ix1 >= 0 && ix2 >= 0 && ix3 >= 0 && ix1 < (int)voxelMatrix.getNX1() && ix2 < (int)voxelMatrix.getNX2() &&
         ix3 < (int)voxelMatrix.getNX3()) {
-        if (UbMath::equal(voxelMatrix(ix1, ix2, ix3), SOLID))
+        if (ub_math::equal(voxelMatrix(ix1, ix2, ix3), SOLID))
             return true;
     }
     return false;
@@ -264,7 +264,7 @@ bool GbVoxelMatrix3D::isCellInsideGbObject3D(const double & /*x1p1*/, const doub
     // for (int ix3 = startix3; ix3<=endix3; ix3++)
     //   for (int ix2 = startix2; ix2<=endix2; ix2++)
     //      for (int ix1 = startix1; ix1<=endix1; ix1++)
-    //         if (UbMath::equal(voxelMatrix(ix1, ix2, ix3), FLUID))
+    //         if (ub_math::equal(voxelMatrix(ix1, ix2, ix3), FLUID))
     //            return false;
     // return true;
 }
@@ -303,13 +303,13 @@ bool GbVoxelMatrix3D::isCellInsideOrCuttingGbObject3D(const double &x1a, const d
     //                |<----------------- T --------------->|
     // ist |T| <= dxA + dxB -> overlap!
 
-    if (UbMath::lessEqual(std::fabs(this->getX1Centroid() - 0.5 * (x1b + x1a) /*Tx1*/),
+    if (ub_math::lessEqual(std::fabs(this->getX1Centroid() - 0.5 * (x1b + x1a) /*Tx1*/),
                           0.5 * (this->getLengthX1() + std::fabs(x1b - x1a) /*dx1A+dx1B*/))
 
-        && UbMath::lessEqual(std::fabs(this->getX2Centroid() - 0.5 * (x2b + x2a) /*Tx2*/),
+        && ub_math::lessEqual(std::fabs(this->getX2Centroid() - 0.5 * (x2b + x2a) /*Tx2*/),
                              0.5 * (this->getLengthX2() + std::fabs(x2b - x2a) /*dx2A+dx2B*/))
 
-        && UbMath::lessEqual(std::fabs(this->getX3Centroid() - 0.5 * (x3b + x3a) /*Tx3*/),
+        && ub_math::lessEqual(std::fabs(this->getX3Centroid() - 0.5 * (x3b + x3a) /*Tx3*/),
                              0.5 * (this->getLengthX3() + std::fabs(x3b - x3a) /*dx3A+dx3B*/))) {
         return true;
     }
@@ -363,8 +363,8 @@ void GbVoxelMatrix3D::readMatrixFromVtiASCIIFile(std::string filename)
         for (int x2 = 0; x2 < nodesX2; x2++)
             for (int x1 = 0; x1 < nodesX1; x1++) {
                 val = in.readInteger();
-                // if( !UbMath::equal(val, 0.0f) )
-                // if( UbMath::greater(val, threshold) )
+                // if( !ub_math::equal(val, 0.0f) )
+                // if( ub_math::greater(val, threshold) )
                 if ((double)val >= lowerThreshold && (double)val <= upperThreshold) {
                     (voxelMatrix)(x1, x2, x3) = GbVoxelMatrix3D::SOLID;
                 }
@@ -595,9 +595,9 @@ void GbVoxelMatrix3D::rotateAroundY(double theta)
                     double nrcX1 = cos(theta) * rcX1 + sin(theta) * rcX3;
                     double nrcX3 = -sin(theta) * rcX1 + cos(theta) * rcX3;
 
-                    int newX1 = UbMath::integerRounding((nrcX1 - minX1) / deltaX1);
+                    int newX1 = ub_math::integerRounding((nrcX1 - minX1) / deltaX1);
                     int newX2 = x2;
-                    int newX3 = UbMath::integerRounding((nrcX3 - minX3) / deltaX3);
+                    int newX3 = ub_math::integerRounding((nrcX3 - minX3) / deltaX3);
 
                     if (newX1 > 0 && newX3 > 0 && newX1 < nx1 && newX3 < nx3) {
                         voxelMatrix_temp(newX1, newX2, newX3) = voxelMatrix(x1, x2, x3);
@@ -649,9 +649,9 @@ void GbVoxelMatrix3D::writeToLegacyVTKASCII(const std::string &fileName)
     file = fopen(fn.c_str(), "w");
 
     if (file == NULL) {
-        std::string pathf = UbSystem::getPathFromString(fn);
+        std::string pathf = ub_system::getPathFromString(fn);
         if (fn.size() > 0) {
-            UbSystem::makeDirectory(pathf);
+            ub_system::makeDirectory(pathf);
             file = fopen(fn.c_str(), "w");
         }
         if (file == NULL)
@@ -699,9 +699,9 @@ void GbVoxelMatrix3D::writeToLegacyVTKBinary(const std::string &fileName)
     file = fopen(fn.c_str(), "w");
 
     if (file == NULL) {
-        std::string pathf = UbSystem::getPathFromString(fn);
+        std::string pathf = ub_system::getPathFromString(fn);
         if (fn.size() > 0) {
-            UbSystem::makeDirectory(pathf);
+            ub_system::makeDirectory(pathf);
             file = fopen(fn.c_str(), "w");
         }
         if (file == NULL)
@@ -730,12 +730,12 @@ void GbVoxelMatrix3D::writeToLegacyVTKBinary(const std::string &fileName)
 
     GbVoxelMatrix3D::Matrix3D voxelMatrix_temp(nx1, nx2, nx3);
 
-    if (UbSystem::isLittleEndian()) {
+    if (ub_system::isLittleEndian()) {
         for (int x3 = 0; x3 < nx3; x3++) {
             for (int x2 = 0; x2 < nx2; x2++) {
                 for (int x1 = 0; x1 < nx1; x1++) {
                     float tmp = this->voxelMatrix(x1, x2, x3);
-                    UbSystem::swapByteOrder((unsigned char *)(&(tmp)), sizeof(float));
+                    ub_system::swapByteOrder((unsigned char *)(&(tmp)), sizeof(float));
                     voxelMatrix_temp(x1, x2, x3) = tmp;
                 }
             }
@@ -763,9 +763,9 @@ void GbVoxelMatrix3D::writeToVTKImageDataASCII(const std::string &fileName)
     file = fopen(fn.c_str(), "w");
 
     if (file == NULL) {
-        std::string pathf = UbSystem::getPathFromString(fn);
+        std::string pathf = ub_system::getPathFromString(fn);
         if (fn.size() > 0) {
-            UbSystem::makeDirectory(pathf);
+            ub_system::makeDirectory(pathf);
             file = fopen(fn.c_str(), "w");
         }
         if (file == NULL)
@@ -814,9 +814,9 @@ void GbVoxelMatrix3D::writeToVTKImageDataAppended(const std::string &fileName)
     file = fopen(fn.c_str(), "w");
 
     if (file == NULL) {
-        std::string pathf = UbSystem::getPathFromString(fn);
+        std::string pathf = ub_system::getPathFromString(fn);
         if (fn.size() > 0) {
-            UbSystem::makeDirectory(pathf);
+            ub_system::makeDirectory(pathf);
             file = fopen(fn.c_str(), "w");
         }
         if (file == NULL)
diff --git a/src/basics/geometry3d/GbVoxelMatrix3D.h b/src/basics/geometry3d/GbVoxelMatrix3D.h
index 454c06054fca8c353070cd78812a890bbdec777f..195cd41096d2b491965ebdc12e9c3c9ff3885b6c 100644
--- a/src/basics/geometry3d/GbVoxelMatrix3D.h
+++ b/src/basics/geometry3d/GbVoxelMatrix3D.h
@@ -254,8 +254,8 @@ void GbVoxelMatrix3D::readMatrixFromRawFile(std::string filename, GbVoxelMatrix3
     unsigned long long nofn = (unsigned long long)nodesX1 * (unsigned long long)nodesX2 * (unsigned long long)nodesX3 *
                               (unsigned long long)sizeof(T);
     if (nofn != (unsigned long long)length) {
-        throw UbException(UB_EXARGS, "number of nodes(" + UbSystem::toString(nofn) + ") doesn't match file size(" +
-                                         UbSystem::toString((long)length) + ")");
+        throw UbException(UB_EXARGS, "number of nodes(" + ub_system::toString(nofn) + ") doesn't match file size(" +
+                                         ub_system::toString((long)length) + ")");
     }
 
     // UBLOG(logINFO,"  - create GbVoxelMatrix3D");
@@ -271,7 +271,7 @@ void GbVoxelMatrix3D::readMatrixFromRawFile(std::string filename, GbVoxelMatrix3
                 // in.read((char*)&val,sizeof(float));
                 in.read((char *)&val, sizeof(T));
                 if (endian == BigEndian)
-                    UbSystem::swapByteOrder((unsigned char *)(&(val)), sizeof(T));
+                    ub_system::swapByteOrder((unsigned char *)(&(val)), sizeof(T));
                 // if( UbMath::equal((double)val, threshold) )
                 // if( UbMath::greater((double)val, threshold) )
                 if ((double)val >= lowerThreshold && (double)val <= upperThreshold) {
@@ -307,8 +307,8 @@ void GbVoxelMatrix3D::readBufferedMatrixFromRawFile(std::string filename, GbVoxe
 
     unsigned long int nofn = (long)nodesX1 * (long)nodesX2 * (long)nodesX3 * (long)sizeof(T);
     if (nofn != length) {
-        // throw UbException(UB_EXARGS, "number of nodes("+UbSystem::toString(nofn)+") doesn't match file
-        // size("+UbSystem::toString(length)+")");
+        // throw UbException(UB_EXARGS, "number of nodes("+ub_system::toString(nofn)+") doesn't match file
+        // size("+ub_system::toString(length)+")");
     }
 
     UBLOG(logINFO, "  - create GbVoxelMatrix3D");
@@ -330,7 +330,7 @@ void GbVoxelMatrix3D::readBufferedMatrixFromRawFile(std::string filename, GbVoxe
                 val = readMatrix(x1, x2, x3);
 
                 if (endian == BigEndian) {
-                    UbSystem::swapByteOrder((unsigned char *)(&(val)), sizeof(T));
+                    ub_system::swapByteOrder((unsigned char *)(&(val)), sizeof(T));
                 }
 
                 if ((double)val >= lowerThreshold && (double)val <= upperThreshold) {
diff --git a/src/basics/geometry3d/KdTree/KdNode.h b/src/basics/geometry3d/KdTree/KdNode.h
index 9f7a7d9dfa53b7e9906d4d580b3a34eea296b8e4..c5832e8364ae02e8fac215b93866ddc300935c44 100644
--- a/src/basics/geometry3d/KdTree/KdNode.h
+++ b/src/basics/geometry3d/KdTree/KdNode.h
@@ -52,7 +52,7 @@
 #include <string>
 #include <vector>
 
-namespace Kd
+namespace kd_tree
 {
 template <typename T>
 class Node
@@ -173,10 +173,10 @@ public:
         const T &n2Y = val<2>(n2);
         const T &n2Z = val<3>(n2);
 
-        if (UbMath::greater(UbMath::max(((n1X <= n2X ? x[0] : x[1]) - n1X) / (n2X - n1X),
+        if (ub_math::greater(ub_math::max(((n1X <= n2X ? x[0] : x[1]) - n1X) / (n2X - n1X),
                                         ((n1Y <= n2Y ? y[0] : y[1]) - n1Y) / (n2Y - n1Y),
                                         ((n1Z <= n2Z ? z[0] : z[1]) - n1Z) / (n2Z - n1Z)),
-                            UbMath::min(((n1X > n2X ? x[0] : x[1]) - n1X) / (n2X - n1X),
+                            ub_math::min(((n1X > n2X ? x[0] : x[1]) - n1X) / (n2X - n1X),
                                         ((n1Y > n2Y ? y[0] : y[1]) - n1Y) / (n2Y - n1Y),
                                         ((n1Z > n2Z ? z[0] : z[1]) - n1Z) / (n2Z - n1Z)))) {
             return Intersection::NO_INTERSECTION;
@@ -204,7 +204,7 @@ public:
         T tzmin = (z[ray.signZ] - ray.originZ) * ray.inv_directionZ;
         T tzmax = (z[1 - ray.signZ] - ray.originZ) * ray.inv_directionZ;
 
-        // if( (UbMath::greater( tmin, tzmax) ) || ( UbMath::greater( tzmin, tmax) ) )
+        // if( (ub_math::greater( tmin, tzmax) ) || ( ub_math::greater( tzmin, tmax) ) )
         if ((tmin > tzmax) || (tzmin > tmax)) {
             return false;
         }
@@ -213,7 +213,7 @@ public:
             tmax = tzmax;
 
         // return ( (tmin =< t1) && (tmax >= t0) );
-        if (UbMath::greaterEqual(tmax, T(0.0))) {
+        if (ub_math::greaterEqual(tmax, T(0.0))) {
             return Intersection::INTERSECTION;
         } else {
             return Intersection::NO_INTERSECTION;
@@ -226,7 +226,7 @@ public:
         return iHandler.intersectLine(n1, n2, *this, child1, child2);
     }
     /* ======================================================================================= */
-    int intersectRay(const Ray<T> &ray, const RayIntersectionHandler<T> &iHandler, std::set<UbKeys::Key3<int>> &mailbox)
+    int intersectRay(const Ray<T> &ray, const RayIntersectionHandler<T> &iHandler, std::set<ub_keys::Key3<int>> &mailbox)
     {
         return iHandler.intersectRay(ray, *this, child1, child2, mailbox);
     }
@@ -312,7 +312,7 @@ private:
     MbSmartPtr<std::vector<GbTriFaceMesh3D::TriFace>> triFaces;
     std::vector<GbTriFaceMesh3D::Vertex> *ptrNodes; // lediglich f�r Zugriff auf die Knoten!!!
 };
-} // namespace Kd
+} // namespace kd_tree
 #endif // KDNODE_H
 
 //! \}
diff --git a/src/basics/geometry3d/KdTree/KdRay.h b/src/basics/geometry3d/KdTree/KdRay.h
index c982b5d79751bbdb4be21dabb36df73d1db62ec7..0bfa32f189c97ef9d46e17729dc62db636b03109 100644
--- a/src/basics/geometry3d/KdTree/KdRay.h
+++ b/src/basics/geometry3d/KdTree/KdRay.h
@@ -37,7 +37,7 @@
 #include <basics/utilities/UbException.h>
 #include <basics/utilities/UbMath.h>
 
-namespace Kd
+namespace kd_tree
 {
 /*
  * Ray class, for use with the optimized ray-box intersection test
@@ -101,7 +101,7 @@ public:
     int signY;
     int signZ;
 };
-} // namespace Kd
+} // namespace kd_tree
 
 #endif // KDRAY_H
 
diff --git a/src/basics/geometry3d/KdTree/KdSplitCandidate.h b/src/basics/geometry3d/KdTree/KdSplitCandidate.h
index 0411e501d62251f71757330c6339a18513c11f77..acf079d9bba08981366d2048dc4f07194a56b3c4 100644
--- a/src/basics/geometry3d/KdTree/KdSplitCandidate.h
+++ b/src/basics/geometry3d/KdTree/KdSplitCandidate.h
@@ -36,7 +36,7 @@
 
 #include <basics/utilities/UbMath.h>
 
-namespace Kd
+namespace kd_tree
 {
 template <typename T>
 class SplitCandidate
@@ -71,7 +71,7 @@ public:
     bool np_right{ false };
     bool isValid{ false };
 };
-} // namespace Kd
+} // namespace kd_tree
 
 #endif // KDSPLITCANDIDATE_H
 
diff --git a/src/basics/geometry3d/KdTree/KdSplitCandidateManager.h b/src/basics/geometry3d/KdTree/KdSplitCandidateManager.h
index 176a74960ad4f705e07fa220d74ada5a0c8c2f5b..19a714c005fa3dfb4cc6faf66d8f0b66fa071c91 100644
--- a/src/basics/geometry3d/KdTree/KdSplitCandidateManager.h
+++ b/src/basics/geometry3d/KdTree/KdSplitCandidateManager.h
@@ -40,7 +40,7 @@
 #include <map>
 #include <vector>
 
-namespace Kd
+namespace kd_tree
 {
 template <typename T>
 class SplitCandidateManager
@@ -96,7 +96,7 @@ private:
     std::map<T, SplitCandidate<T>> splitCandidates;
     std::vector<SplitCandidate<T>> splitCandidatesVec;
 };
-} // namespace Kd
+} // namespace kd_tree
 
 #endif // KDSPLITCANDIDATEMANAGER_H
 
diff --git a/src/basics/geometry3d/KdTree/KdTree.h b/src/basics/geometry3d/KdTree/KdTree.h
index 4305093f233b142f2816ce96656dc31b0baffec2..e64d99ca0491fc632ebbc316b5a3faa982407296 100644
--- a/src/basics/geometry3d/KdTree/KdTree.h
+++ b/src/basics/geometry3d/KdTree/KdTree.h
@@ -46,7 +46,7 @@
 #include <cmath>
 #include <string>
 
-namespace Kd
+namespace kd_tree
 {
 template <typename T>
 class Tree
@@ -73,7 +73,7 @@ public:
     // the IntersectionHandler specifies how to handle the intersection
     int intersectRay(const Ray<T> &ray, const RayIntersectionHandler<T> &iHandler)
     {
-        std::set<UbKeys::Key3<int>> mailbox;
+        std::set<ub_keys::Key3<int>> mailbox;
         return rootNode->intersectRay(ray, iHandler, mailbox);
     }
     /* ======================================================================================= */
@@ -131,7 +131,7 @@ public:
 private:
     Node<T> *rootNode;
 };
-} // namespace Kd
+} // namespace kd_tree
 
 #endif // KDTREE_H
 
diff --git a/src/basics/geometry3d/KdTree/KdUtilities.cpp b/src/basics/geometry3d/KdTree/KdUtilities.cpp
index 03b39f6e08391f139931514c97abade8059e7c2b..3f591c633bf4b24ac02697d321bd5012e360efa5 100644
--- a/src/basics/geometry3d/KdTree/KdUtilities.cpp
+++ b/src/basics/geometry3d/KdTree/KdUtilities.cpp
@@ -33,7 +33,7 @@
 //=======================================================================================
 #include <geometry3d/KdTree/KdUtilities.h>
 
-namespace Kd
+namespace kd_tree
 {
 const int Axis::X = 0;
 const int Axis::Y = 1;
@@ -43,6 +43,6 @@ const int Intersection::ON_BOUNDARY     = -2;
 const int Intersection::INTERSECT_EDGE  = -1;
 const int Intersection::INTERSECTION    = 1;
 const int Intersection::NO_INTERSECTION = 0;
-} // namespace Kd
+} // namespace kd_tree
 
 //! \}
diff --git a/src/basics/geometry3d/KdTree/KdUtilities.h b/src/basics/geometry3d/KdTree/KdUtilities.h
index c197e06bd000ff02d57ee2e2250de566acb552b4..975e71224d6af4652369aaa0ff2849e9b2535416 100644
--- a/src/basics/geometry3d/KdTree/KdUtilities.h
+++ b/src/basics/geometry3d/KdTree/KdUtilities.h
@@ -43,7 +43,7 @@
 #include <algorithm>
 #include <vector>
 
-namespace Kd
+namespace kd_tree
 {
 struct Axis {
     static const int X; // = 0;
@@ -95,7 +95,7 @@ inline bool isPointOnTriangle(const T &px, const T &py, const T &pz, const T &pr
                               GbTriFaceMesh3D::Vertex &p2, GbTriFaceMesh3D::Vertex &p3,
                               GbTriFaceMesh3D::TriFace &triFace)
 {
-    if (Kd::isPointOnPlane(px, py, pz, precision, p1, triFace)) {
+    if (kd_tree::isPointOnPlane(px, py, pz, precision, p1, triFace)) {
         T a_x = p1.x - px;
         T a_y = p1.y - py;
         T a_z = p1.z - pz;
@@ -123,17 +123,17 @@ inline bool isPointOnTriangle(const T &px, const T &py, const T &pz, const T &pr
         T Q_y = Q1_y + Q2_y + Q3_y;
         T Q_z = Q1_z + Q2_z + Q3_z;
 
-        if (UbMath::zero(Q_x * Q1_x + Q_y * Q1_y + Q_z * Q1_z))
+        if (ub_math::zero(Q_x * Q1_x + Q_y * Q1_y + Q_z * Q1_z))
             return true;
-        else if (UbMath::zero(Q_x * Q2_x + Q_y * Q2_y + Q_z * Q2_z))
+        else if (ub_math::zero(Q_x * Q2_x + Q_y * Q2_y + Q_z * Q2_z))
             return true;
-        else if (UbMath::zero(Q_x * Q3_x + Q_y * Q3_y + Q_z * Q3_z))
+        else if (ub_math::zero(Q_x * Q3_x + Q_y * Q3_y + Q_z * Q3_z))
             return true;
-        else if (UbMath::less(Q_x * Q1_x + Q_y * Q1_y + Q_z * Q1_z, T(0.0)))
+        else if (ub_math::less(Q_x * Q1_x + Q_y * Q1_y + Q_z * Q1_z, T(0.0)))
             return false;
-        else if (UbMath::less(Q_x * Q2_x + Q_y * Q2_y + Q_z * Q2_z, T(0.0)))
+        else if (ub_math::less(Q_x * Q2_x + Q_y * Q2_y + Q_z * Q2_z, T(0.0)))
             return false;
-        else if (UbMath::less(Q_x * Q3_x + Q_y * Q3_y + Q_z * Q3_z, T(0.0)))
+        else if (ub_math::less(Q_x * Q3_x + Q_y * Q3_y + Q_z * Q3_z, T(0.0)))
             return false;
 
         return true;
@@ -156,22 +156,22 @@ inline bool intersectLine(const UbTuple<T, T, T> &n1, const UbTuple<T, T, T> &n2
     const T &n2Y = val<2>(n2);
     const T &n2Z = val<3>(n2);
 
-    // if(   Kd::isPointOnPlane(n1X, n1Y, n1Z, T(1.0E-6), p0, triFace)
-    //   && Kd::isPointOnPlane(n2X, n2Y, n2Z, T(1.0E-6), p0, triFace))
+    // if(   kd_tree::isPointOnPlane(n1X, n1Y, n1Z, T(1.0E-6), p0, triFace)
+    //   && kd_tree::isPointOnPlane(n2X, n2Y, n2Z, T(1.0E-6), p0, triFace))
     //{
     //   return true;
     //}
 
     T denom = (n2X - n1X) * triFace.nx + (n2Y - n1Y) * triFace.ny + (n2Z - n1Z) * triFace.nz;
 
-    if (UbMath::zero(denom)) // line does not intersect the plane of the triangle !
+    if (ub_math::zero(denom)) // line does not intersect the plane of the triangle !
     {
         return false;
     } else {
         T d  = -triFace.nx * p0.x - triFace.ny * p0.y - triFace.nz * p0.z;
         T mu = T(-1.0 * (d + n1X * triFace.nx + n1Y * triFace.ny + n1Z * triFace.nz) / denom);
 
-        if (!UbMath::inClosedInterval(mu, T(0.0),
+        if (!ub_math::inClosedInterval(mu, T(0.0),
                                       T(1.0))) // Point of intersection of line and plane does not lie on the triangle
         {
             return false;
@@ -182,7 +182,7 @@ inline bool intersectLine(const UbTuple<T, T, T> &n1, const UbTuple<T, T, T> &n2
             GbTriFaceMesh3D::Vertex &p1 = triFace.getNode(1, nodes);
             GbTriFaceMesh3D::Vertex &p2 = triFace.getNode(2, nodes);
 
-            return Kd::isPointOnTriangle(n1X + ((n2X - n1X) * mu) // intersectionPointX
+            return kd_tree::isPointOnTriangle(n1X + ((n2X - n1X) * mu) // intersectionPointX
                                          ,
                                          n1Y + ((n2Y - n1Y) * mu) // intersectionPointY
                                          ,
@@ -192,7 +192,7 @@ inline bool intersectLine(const UbTuple<T, T, T> &n1, const UbTuple<T, T, T> &n2
         }
     }
 }
-} // namespace Kd
+} // namespace kd_tree
 
 #endif // KDUTILIES_H
 
diff --git a/src/basics/geometry3d/KdTree/intersectionhandler/KdCountLineIntersectionHandler.h b/src/basics/geometry3d/KdTree/intersectionhandler/KdCountLineIntersectionHandler.h
index f400356608e44e445d9090ed52b6a3773e145c8e..2af126bc62d0afb2de2fe1f784b1c218041366bd 100644
--- a/src/basics/geometry3d/KdTree/intersectionhandler/KdCountLineIntersectionHandler.h
+++ b/src/basics/geometry3d/KdTree/intersectionhandler/KdCountLineIntersectionHandler.h
@@ -45,7 +45,7 @@
 
 #include <set>
 
-namespace Kd
+namespace kd_tree
 {
 template <typename T>
 class CountLineIntersectionHandler : public LineIntersectionHandler<T>
@@ -62,7 +62,7 @@ public:
                 for (std::size_t i = 0; i < triFaces.size(); i++) {
                     GbTriFaceMesh3D::TriFace &triFace = triFaces[i];
 
-                    if (Kd::intersectLine(n1, n2, triFace, nodes))
+                    if (kd_tree::intersectLine(n1, n2, triFace, nodes))
                         return true;
                 }
                 return false;
@@ -81,7 +81,7 @@ public:
     }
     /* ======================================================================================= */
 };
-} // namespace Kd
+} // namespace kd_tree
 
 #endif // KDCOUNTLINEINTERSECTIONHANDLER_H
 
diff --git a/src/basics/geometry3d/KdTree/intersectionhandler/KdCountRayIntersectionHandler.h b/src/basics/geometry3d/KdTree/intersectionhandler/KdCountRayIntersectionHandler.h
index d92cd9b12f5280575be3be1ff8fbae29c73ae82d..eefaa0ecb7215eda391f2a90380be7dc1e5a5574 100644
--- a/src/basics/geometry3d/KdTree/intersectionhandler/KdCountRayIntersectionHandler.h
+++ b/src/basics/geometry3d/KdTree/intersectionhandler/KdCountRayIntersectionHandler.h
@@ -45,14 +45,14 @@
 
 #include <set>
 
-namespace Kd
+namespace kd_tree
 {
 template <typename T>
 class CountRayIntersectionHandler : public RayIntersectionHandler<T>
 {
 public:
     int intersectRay(const Ray<T> &ray, Node<T> &parent, Node<T> *&child1, Node<T> *&child2,
-                     std::set<UbKeys::Key3<int>> &mailbox) const override
+                     std::set<ub_keys::Key3<int>> &mailbox) const override
     {
         if (parent.intersectRayBoundingBox(ray) == Intersection::INTERSECTION) {
             if (parent.isLeaf()) {
@@ -84,7 +84,7 @@ public:
 private:
     int checkIntersectionWithTriFaces(const Ray<T> &ray, std::vector<GbTriFaceMesh3D::TriFace> &triFaces,
                                       std::vector<GbTriFaceMesh3D::Vertex> &nodes,
-                                      std::set<UbKeys::Key3<int>> &mailbox) const
+                                      std::set<ub_keys::Key3<int>> &mailbox) const
     {
         T e1x, e1y, e1z, e2x, e2y, e2z, px, py, pz, a, f, sx, sy, sz, u, qx, qy, qz, v, factor;
 
@@ -93,10 +93,10 @@ private:
         for (std::size_t i = 0; i < triFaces.size(); i++) {
             GbTriFaceMesh3D::TriFace &triFace = triFaces[i];
 
-            if (mailbox.find(UbKeys::Key3<int>(triFace.getIndexVertex1(), triFace.getIndexVertex2(),
+            if (mailbox.find(ub_keys::Key3<int>(triFace.getIndexVertex1(), triFace.getIndexVertex2(),
                                                triFace.getIndexVertex3())) == mailbox.end()) {
                 mailbox.insert(
-                    UbKeys::Key3<int>(triFace.getIndexVertex1(), triFace.getIndexVertex2(),
+                    ub_keys::Key3<int>(triFace.getIndexVertex1(), triFace.getIndexVertex2(),
                                       triFace.getIndexVertex3())); // schon hier rein, ansonsten muss man es unten bei
                                                                    // JEDEm continue und am ende des ifs machen
 
@@ -130,7 +130,7 @@ private:
                 // a = e1 dot p
                 a = e1x * px + e1y * py + e1z * pz;
                 // if( fabs(a)<1.E-10 ) continue;
-                if (fabs(a) < UbMath::Epsilon<T>::val())
+                if (fabs(a) < ub_math::Epsilon<T>::val())
                     continue;
                 f = T(1.0 / a);
 
@@ -143,7 +143,7 @@ private:
                 u = f * (sx * px + sy * py + sz * pz);
 
                 // u ist nur gueltig in [0;1]
-                if ((UbMath::less(u, T(0.0))) || (UbMath::greater(u, T(1.0)))) {
+                if ((ub_math::less(u, T(0.0))) || (ub_math::greater(u, T(1.0)))) {
                     continue;
                 }
 
@@ -156,7 +156,7 @@ private:
                 v = f * (ray.directionX * qx + ray.directionY * qy + ray.directionZ * qz);
 
                 // v ist nur gueltig in [0;1] da aber v bereits gueltig ist -> u+v darf nicht > 1.0 sein ;-)
-                if ((UbMath::less(v, T(0.0))) || (UbMath::greater(u + v, T(1.0)))) {
+                if ((ub_math::less(v, T(0.0))) || (ub_math::greater(u + v, T(1.0)))) {
                     continue;
                 }
 
@@ -165,7 +165,7 @@ private:
                 // Raytracing - end
                 //////////////////////////////////////////////////////////////////////////
 
-                if (UbMath::zero(factor)) {
+                if (ub_math::zero(factor)) {
                     return Intersection::ON_BOUNDARY; // ray.Org liegt direkt auf einem dreieck --> boundary
                 }
                 if (factor < 0.0) {
@@ -174,11 +174,11 @@ private:
 
                 // edge tests
                 // wenn u, v oder w ==0 -> Punkt liegt auf Kante bzw. Eckpunkt
-                if (UbMath::zero(u))
+                if (ub_math::zero(u))
                     return Intersection::INTERSECT_EDGE;
-                if (UbMath::zero(v))
+                if (ub_math::zero(v))
                     return Intersection::INTERSECT_EDGE;
-                if (UbMath::zero(T(1.0) - u - v))
+                if (ub_math::zero(T(1.0) - u - v))
                     return Intersection::INTERSECT_EDGE;
 
                 counter++;
@@ -187,7 +187,7 @@ private:
         return counter;
     }
 };
-} // namespace Kd
+} // namespace kd_tree
 
 #endif // KDCOUNTRAYLINEINTERSECTIONHANDLER_H
 
diff --git a/src/basics/geometry3d/KdTree/intersectionhandler/KdLineIntersectionHandler.h b/src/basics/geometry3d/KdTree/intersectionhandler/KdLineIntersectionHandler.h
index ce7b59201fc627d0d3a7e1aba18683972c743d0c..5e0e9c168f5f50e2101caed43a0b50ea8064fcfc 100644
--- a/src/basics/geometry3d/KdTree/intersectionhandler/KdLineIntersectionHandler.h
+++ b/src/basics/geometry3d/KdTree/intersectionhandler/KdLineIntersectionHandler.h
@@ -42,7 +42,7 @@
 // #ifdef CAB_RCF
 // #  include <3rdParty/rcf/RcfSerializationIncludes.h>
 // #end
-namespace Kd
+namespace kd_tree
 {
 template <typename T>
 class Node;
@@ -55,11 +55,11 @@ public:
                                Node<T> *&child1, Node<T> *&child2) const = 0;
     virtual ~LineIntersectionHandler()                                   = default;
 };
-} // namespace Kd
+} // namespace kd_tree
 
 // #if defined(RCF_USE_SF_SERIALIZATION) && !defined(SWIG)
-//    SF_NO_CTOR(Kd::LineIntersectionHandler<float>);
-//    SF_NO_CTOR(Kd::LineIntersectionHandler<double>);
+//    SF_NO_CTOR(kd_tree::LineIntersectionHandler<float>);
+//    SF_NO_CTOR(kd_tree::LineIntersectionHandler<double>);
 // #endif //RCF_USE_SF_SERIALIZATI
 #endif // KDLINEINTERSECTIONHANDLER_H
 
diff --git a/src/basics/geometry3d/KdTree/intersectionhandler/KdRayIntersectionHandler.h b/src/basics/geometry3d/KdTree/intersectionhandler/KdRayIntersectionHandler.h
index fd1cca3c94128727ceb1f1849374aa5483d41c38..321e1f148084714d7020088e0f36456d887e4e84 100644
--- a/src/basics/geometry3d/KdTree/intersectionhandler/KdRayIntersectionHandler.h
+++ b/src/basics/geometry3d/KdTree/intersectionhandler/KdRayIntersectionHandler.h
@@ -39,17 +39,17 @@
 
 #include <set>
 
-namespace Kd
+namespace kd_tree
 {
 template <typename T>
 class RayIntersectionHandler
 {
 public:
     virtual int intersectRay(const Ray<T> &ray, Node<T> &parent, Node<T> *&child1, Node<T> *&child2,
-                             std::set<UbKeys::Key3<int>> &mailbox) const = 0;
+                             std::set<ub_keys::Key3<int>> &mailbox) const = 0;
     virtual ~RayIntersectionHandler()                                    = default;
 };
-} // namespace Kd
+} // namespace kd_tree
 
 #endif // KDRAYINTERSECTIONHANDLER_H
 
diff --git a/src/basics/geometry3d/KdTree/splitalgorithms/KdSAHSplit.h b/src/basics/geometry3d/KdTree/splitalgorithms/KdSAHSplit.h
index c5671262afb0cee6559107eb741729deb1987676..c26c95400cb2aa4381932fa19f8f0fb875820cd3 100644
--- a/src/basics/geometry3d/KdTree/splitalgorithms/KdSAHSplit.h
+++ b/src/basics/geometry3d/KdTree/splitalgorithms/KdSAHSplit.h
@@ -47,7 +47,7 @@
 #include <cmath>
 #include <vector>
 
-namespace Kd
+namespace kd_tree
 {
 template <typename T>
 class SAHSplit : public SplitAlgorithm<T>
@@ -65,7 +65,7 @@ public:
         }
 
         SplitCandidate<T> bestSplitCandidate;
-        T minCN = Ub::inf;
+        T minCN = ub_math::inf;
 
         for (int splitAxis = 0; splitAxis < 3; splitAxis++) {
             SplitCandidateManager<T> sc;
@@ -111,20 +111,20 @@ public:
 
         for (std::size_t i = 0; i < srcTriFaces.size(); i++) {
             GbTriFaceMesh3D::TriFace &triFace = srcTriFaces[i];
-            Kd::project2Axis(triFace, srcNodes, candidate.axis, projection);
+            kd_tree::project2Axis(triFace, srcNodes, candidate.axis, projection);
 
             T &min = projection[0];
             T &max = projection[2];
             // --------------------------------------------------- //
             // case 1 : object inside plane
-            if (UbMath::equal(min, max)) {
-                if (UbMath::equal(min, candidate.position)) {
+            if (ub_math::equal(min, max)) {
+                if (ub_math::equal(min, candidate.position)) {
                     if (candidate.np_left) {
                         triFacesForChild1.push_back(triFace);
                     } else if (candidate.np_right) {
                         triFacesForChild2.push_back(triFace);
                     }
-                } else if (UbMath::less(min, candidate.position)) {
+                } else if (ub_math::less(min, candidate.position)) {
                     triFacesForChild1.push_back(triFace);
                 } else // if( UbMath::greater(min, candidate.position)
                 {
@@ -133,11 +133,11 @@ public:
             } //
             // --------------------------------------------------- //
             // case 2 : object on left side of plane
-            else if (UbMath::lessEqual(max, candidate.position)) {
+            else if (ub_math::lessEqual(max, candidate.position)) {
                 triFacesForChild1.push_back(triFace);
             } // --------------------------------------------------- //
             // case 3 : object on right side of plane
-            else if (UbMath::greaterEqual(min, candidate.position)) {
+            else if (ub_math::greaterEqual(min, candidate.position)) {
                 triFacesForChild2.push_back(triFace);
             } //
             // --------------------------------------------------- //
@@ -177,7 +177,7 @@ private:
             GbTriFaceMesh3D::TriFace &triFace = srcTriFaces[i];
 
             // project object to axis
-            Kd::project2Axis(triFace, srcNodes, splitAxis, projection);
+            kd_tree::project2Axis(triFace, srcNodes, splitAxis, projection);
             // left point
             T &p1 = projection[0];
             // right point
@@ -186,8 +186,8 @@ private:
             // --------------------------------------------------- //
             // --------------------------------------------------- //
             // case 1 : object is fully inside the current node
-            if (UbMath::greaterEqual(p1, p1_node) && UbMath::lessEqual(p2, p2_node)) {
-                if (UbMath::equal(p1, p2)) {
+            if (ub_math::greaterEqual(p1, p1_node) && ub_math::lessEqual(p2, p2_node)) {
+                if (ub_math::equal(p1, p2)) {
                     // object is inside the plane
                     splitCandidateManager.add(p1, splitAxis, 0, 0, 1);
                 } else {
@@ -198,21 +198,21 @@ private:
             // --------------------------------------------------- //
             // --------------------------------------------------- //
             // case 2 : just the right point (p2) is inside the current node
-            else if (UbMath::less(p1, p1_node) && UbMath::lessEqual(p2, p2_node) && UbMath::greaterEqual(p2, p1_node)) {
+            else if (ub_math::less(p1, p1_node) && ub_math::lessEqual(p2, p2_node) && ub_math::greaterEqual(p2, p1_node)) {
                 splitCandidateManager.add(p2, splitAxis, 0, 1, 0);
                 splitCandidateManager.objects_starting_outside_left++;
             } //
             // --------------------------------------------------- //
             // --------------------------------------------------- //
             // case 3 : just the left point (p1) is inside the current node
-            else if (UbMath::greaterEqual(p1, p1_node) && UbMath::greater(p2, p2_node) &&
-                     UbMath::lessEqual(p1, p2_node)) {
+            else if (ub_math::greaterEqual(p1, p1_node) && ub_math::greater(p2, p2_node) &&
+                     ub_math::lessEqual(p1, p2_node)) {
                 splitCandidateManager.add(p1, splitAxis, 1, 0, 0);
             } //
             // --------------------------------------------------- //
             // --------------------------------------------------- //
             // case 4 : left and right point are outside the current node
-            else if (UbMath::less(p1, p1_node) && UbMath::greater(p2, p2_node)) {
+            else if (ub_math::less(p1, p1_node) && ub_math::greater(p2, p2_node)) {
                 splitCandidateManager.objects_fully_outside_node++;
             } //
               // --------------------------------------------------- //
@@ -283,7 +283,7 @@ template <typename T>
 const T SAHSplit<T>::Ct = 3.0; // traversal cost
 template <typename T>
 const T SAHSplit<T>::Ci = 4.0; // ray-patch-intersection-cost
-} // namespace Kd
+} // namespace kd_tree
 
 #endif // KDSAHSPLIT_H
 
diff --git a/src/basics/geometry3d/KdTree/splitalgorithms/KdSpatiallMedianSplit.h b/src/basics/geometry3d/KdTree/splitalgorithms/KdSpatiallMedianSplit.h
index 552c50b5ef899120fdc21e5c70aab43470d6fa80..ad815d18780d1e7dbc8d0600d5d0ba7ca04835e8 100644
--- a/src/basics/geometry3d/KdTree/splitalgorithms/KdSpatiallMedianSplit.h
+++ b/src/basics/geometry3d/KdTree/splitalgorithms/KdSpatiallMedianSplit.h
@@ -39,7 +39,7 @@
 
 #include <geometry3d/KdTree/splitalgorithms/KdSplitAlgorithm.h>
 
-namespace Kd
+namespace kd_tree
 {
 template <typename T>
 class SpatialMedianSplit : public SplitAlgorithm<T>
@@ -56,9 +56,9 @@ class SpatialMedianSplit : public SplitAlgorithm<T>
         T dy = std::fabs(node.y[1] - node.y[0]);
         T dz = std::fabs(node.z[1] - node.z[0]);
 
-        if (UbMath::equal(dx, UbMath::max(dx, dy, dz)))
+        if (ub_math::equal(dx, ub_math::max(dx, dy, dz)))
             return SplitCandidate<T>(Axis::X, node.x[0] + 0.5 * dx, 0, 0, 0);
-        else if (UbMath::equal(dy, UbMath::max(dy, dz)))
+        else if (ub_math::equal(dy, ub_math::max(dy, dz)))
             return SplitCandidate<T>(Axis::Y, node.y[0] + 0.5 * dy, 0, 0, 0);
 
         return SplitCandidate<T>(Axis::Z, node.z[0] + 0.5 * dz, 0, 0, 0);
@@ -77,28 +77,28 @@ class SpatialMedianSplit : public SplitAlgorithm<T>
 
         for (std::size_t i = 0; i < srcTriFaces.size(); i++) {
             GbTriFaceMesh3D::TriFace &triFace = srcTriFaces[i];
-            Kd::project2Axis(triFace, srcNodes, candidate.axis, projection);
+            kd_tree::project2Axis(triFace, srcNodes, candidate.axis, projection);
 
             T &min = projection[0];
             T &max = projection[2];
 
             // case 1 : object inside plane
-            if (UbMath::equal(min, max)) {
-                if (UbMath::equal(min, candidate.position)) {
+            if (ub_math::equal(min, max)) {
+                if (ub_math::equal(min, candidate.position)) {
                     primitives_child1.push_back(triFace);
                     primitives_child2.push_back(triFace);
-                } else if (UbMath::less(min, candidate.position)) {
+                } else if (ub_math::less(min, candidate.position)) {
                     primitives_child1.push_back(triFace);
-                } else if (UbMath::greater(min, candidate.position)) {
+                } else if (ub_math::greater(min, candidate.position)) {
                     primitives_child2.push_back(triFace);
                 }
             }
             // case 2 : object on left side of plane
-            else if (UbMath::lessEqual(max, candidate.position)) {
+            else if (ub_math::lessEqual(max, candidate.position)) {
                 primitives_child1.push_back(triFace);
             }
             // case 3 : object on right side of plane
-            else if (UbMath::greaterEqual(min, candidate.position)) {
+            else if (ub_math::greaterEqual(min, candidate.position)) {
                 primitives_child2.push_back(triFace);
             }
             // case 4 : object in both nodes
@@ -111,7 +111,7 @@ class SpatialMedianSplit : public SplitAlgorithm<T>
         node.deleteTriFaces();
     }
 };
-} // namespace Kd
+} // namespace kd_tree
 
 #endif // SPATIALLMEDIANSPLIT_H
 
diff --git a/src/basics/geometry3d/KdTree/splitalgorithms/KdSplitAlgorithm.h b/src/basics/geometry3d/KdTree/splitalgorithms/KdSplitAlgorithm.h
index 33d0061249399602c6b9a85f37d2b82610c0121b..9bda93be3f77d85908efed4a2b5161169b59e43b 100644
--- a/src/basics/geometry3d/KdTree/splitalgorithms/KdSplitAlgorithm.h
+++ b/src/basics/geometry3d/KdTree/splitalgorithms/KdSplitAlgorithm.h
@@ -40,7 +40,7 @@
 
 #include <vector>
 
-namespace Kd
+namespace kd_tree
 {
 template <typename T>
 class Node;
@@ -55,7 +55,7 @@ public:
                                     std::vector<GbTriFaceMesh3D::TriFace> &triFacesForChild2, Node<T> &node) const = 0;
     virtual ~SplitAlgorithm() = default;
 };
-} // namespace Kd
+} // namespace kd_tree
 
 #endif // KDSPLITALGORITHM_H
 
diff --git a/src/basics/utilities/UbComparators.h b/src/basics/utilities/UbComparators.h
index 955732c90e4667d495ccc1953e6f2fdcf7ad4ae4..d3dbf75bfeed49f770a0deb3afe8a26d0004ad4e 100644
--- a/src/basics/utilities/UbComparators.h
+++ b/src/basics/utilities/UbComparators.h
@@ -36,7 +36,7 @@
 
 #include <functional>
 
-namespace UbComparators
+namespace ub_comparators
 {
 // type_traits
 template <typename T>
@@ -171,15 +171,15 @@ struct compareMember {
 //   l.sort( compareConstMethods<Klasse, double,  &Klasse::getVal1 >() );
 //}
 
-} // namespace UbComparators
+} // namespace ub_comparators
 
 #endif // UBCOMPARATOR_H
 
 // example
-// #include <basics/utilities/UbComparators.h"
+// #include <basics/utilities/ub_comparators.h"
 // #include <list>
 // using namespace std;
-// using namespace UbComparators;
+// using namespace ub_comparators;
 //
 // struct S {
 //    S(int i) :x(i) {}
@@ -212,21 +212,21 @@ struct compareMember {
 //    list<S> sList;
 //    sList.push_back(a);
 //    sList.push_back(b);
-//    sList.sort(UbComparators::membercomp(&S::x,intComp()));  //calls overload (1)
-//    sList.sort(UbComparators::membercomp<intComp>(&S::x));   //same
-//    sList.sort(UbComparators::membercomp(&S::x));            //calls overload (5)
-//    sList.sort(UbComparators::membercomp<genComp>(&S::x));   //calls overload(3)
-//    sList.sort(UbComparators::membercomp(&S::x, genComp<int>())); //calls overload(1)
+//    sList.sort(ub_comparators::membercomp(&S::x,intComp()));  //calls overload (1)
+//    sList.sort(ub_comparators::membercomp<intComp>(&S::x));   //same
+//    sList.sort(ub_comparators::membercomp(&S::x));            //calls overload (5)
+//    sList.sort(ub_comparators::membercomp<genComp>(&S::x));   //calls overload(3)
+//    sList.sort(ub_comparators::membercomp(&S::x, genComp<int>())); //calls overload(1)
 //    //same for nonconst function
-//    sList.sort(UbComparators::membercomp(&S::f, dblComp())); //overload(2)
-//    sList.sort(UbComparators::membercomp<dblComp>(&S::f));   //same
-//    sList.sort(UbComparators::membercomp(&S::f));            //overload(6)
-//    sList.sort(UbComparators::membercomp<genComp>(&S::f));   //overload(4)
+//    sList.sort(ub_comparators::membercomp(&S::f, dblComp())); //overload(2)
+//    sList.sort(ub_comparators::membercomp<dblComp>(&S::f));   //same
+//    sList.sort(ub_comparators::membercomp(&S::f));            //overload(6)
+//    sList.sort(ub_comparators::membercomp<genComp>(&S::f));   //overload(4)
 //    //same for const function
-//    sList.sort(UbComparators::membercomp(&S::g, dblComp())); //overload(2)
-//    sList.sort(UbComparators::membercomp<dblComp>(&S::g));   //same
-//    sList.sort(UbComparators::membercomp(&S::g));            //overload(6)
-//    sList.sort(UbComparators::membercomp<genComp>(&S::g));   //overload(4)
+//    sList.sort(ub_comparators::membercomp(&S::g, dblComp())); //overload(2)
+//    sList.sort(ub_comparators::membercomp<dblComp>(&S::g));   //same
+//    sList.sort(ub_comparators::membercomp(&S::g));            //overload(6)
+//    sList.sort(ub_comparators::membercomp<genComp>(&S::g));   //overload(4)
 // }
 
 //! \}
diff --git a/src/basics/utilities/UbFileOutputASCII.cpp b/src/basics/utilities/UbFileOutputASCII.cpp
index d946e85d9ca5813a57e70b4cda8a67d64d4de937..6ed5731ef9e9cf501aac93895771ac66cbfd571e 100644
--- a/src/basics/utilities/UbFileOutputASCII.cpp
+++ b/src/basics/utilities/UbFileOutputASCII.cpp
@@ -49,9 +49,9 @@ UbFileOutputASCII::UbFileOutputASCII(const string &filename, const bool &createP
 
     if (!outfile && createPath) {
         outfile.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(filename);
+        string path = ub_system::getPathFromString(filename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             outfile.open(filename.c_str(), ios::out);
         }
     }
@@ -69,9 +69,9 @@ UbFileOutputASCII::UbFileOutputASCII(const std::string &filename, CREATEOPTION o
 
     if (!this->open(filename, opt) && createPath) {
         outfile.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(filename);
+        string path = ub_system::getPathFromString(filename);
         if (path.size() > 0)
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
 
         this->open(filename, opt);
     }
@@ -110,10 +110,10 @@ void UbFileOutputASCII::writeBool(const bool &value, const int &width)
 void UbFileOutputASCII::writeDouble(const double &value, const int &width)
 {
     outfile.width(width);
-    // Problem: Ub::inf wird gerundet
+    // Problem: ub_math::inf wird gerundet
     //         -> beim Einlesen ist der Wert evtl zu gross und es kommt murks raus
     //         -> max Laenge darstellen und gut ist
-    if (UbMath::equal(value, (double)Ub::inf)) {
+    if (ub_math::equal(value, (double)ub_math::inf)) {
         ios_base::fmtflags flags = outfile.flags();
         outfile << setprecision(std::numeric_limits<double>::digits10 + 2);
         outfile << value << " ";
@@ -126,10 +126,10 @@ void UbFileOutputASCII::writeDouble(const double &value, const int &width)
 void UbFileOutputASCII::writeFloat(const float &value, const int &width)
 {
     outfile.width(width);
-    // Problem: Ub::inf wird gerundet
+    // Problem: ub_math::inf wird gerundet
     //         -> beim Einlesen ist der Wert evtl zu gross und es kommt murks raus
     //         -> max Laenge darstellen und gut ist
-    if (UbMath::equal(value, (float)Ub::inf)) {
+    if (ub_math::equal(value, (float)ub_math::inf)) {
         ios_base::fmtflags flags = outfile.flags();
         outfile << setprecision(std::numeric_limits<float>::digits10 + 2);
         outfile << value << " ";
diff --git a/src/basics/utilities/UbFileOutputBinary.cpp b/src/basics/utilities/UbFileOutputBinary.cpp
index eff0d42f7fb39056e524de62da5197b96f9a854b..baf15f6afa4e3ee5f8c61441ca176e7aadcfaf7b 100644
--- a/src/basics/utilities/UbFileOutputBinary.cpp
+++ b/src/basics/utilities/UbFileOutputBinary.cpp
@@ -46,10 +46,10 @@ UbFileOutputBinary::UbFileOutputBinary(const string &filename, const bool &creat
     outfile.open(filename.c_str(), ios::out | ios::binary);
 
     if (!outfile && createPath) {
-        string path = UbSystem::getPathFromString(filename);
+        string path = ub_system::getPathFromString(filename);
         if (path.size() > 0) {
             outfile.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             outfile.open(filename.c_str(), ios::out | ios::binary);
         }
     }
@@ -66,10 +66,10 @@ UbFileOutputBinary::UbFileOutputBinary(const string &filename, UbFileOutput::CRE
     this->open(filename, opt);
 
     if (!this->open(filename, opt) && createPath) {
-        string path = UbSystem::getPathFromString(filename);
+        string path = ub_system::getPathFromString(filename);
         if (path.size() > 0) {
             outfile.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
 
             this->open(filename, opt);
         }
diff --git a/src/basics/utilities/UbInfinity.h b/src/basics/utilities/UbInfinity.h
index 2a8033bc1d74eba28971b0f5bbb3b8db21797162..a6ad803c11ef1d2433557e34b96fdfda3b15ef77 100644
--- a/src/basics/utilities/UbInfinity.h
+++ b/src/basics/utilities/UbInfinity.h
@@ -199,11 +199,11 @@ inline bool operator!=(const T &lhs, const UbInfinity &rhs)
 //////////////////////////////////////////////////////////////////////////
 //  GLOBAL INFINITY VALUE
 //////////////////////////////////////////////////////////////////////////
-namespace Ub
+namespace ub_math
 {
-// e.g. double x = UbSystem::inf;  float x = -Ub::inf;
+// e.g. double x = ub_system::inf;  float x = -ub_math::inf;
 const UbInfinity inf;
-} // namespace Ub
+} // namespace ub_math
 
 #endif // UB_INFINITY_H
 
diff --git a/src/basics/utilities/UbKeys.h b/src/basics/utilities/UbKeys.h
index 5aa8c914c348617edc0affee794cfe9bc9f49716..cc119cc27d05c4be94211cd14ea69f3d979afc3f 100644
--- a/src/basics/utilities/UbKeys.h
+++ b/src/basics/utilities/UbKeys.h
@@ -47,7 +47,7 @@
 //!
 //////////////////////////////////////////////////////////////////////////
 
-namespace UbKeys
+namespace ub_keys
 {
 // nested class
 template <typename T1, typename T2 = T1>
@@ -306,7 +306,7 @@ private:
     T3 t3;
     T4 t4;
 };
-} // namespace UbKeys
+} // namespace ub_keys
 
 #endif // UBKEYS_H
 
diff --git a/src/basics/utilities/UbMath.cpp b/src/basics/utilities/UbMath.cpp
index 17184f90cb214af4579ea6bd3cf0cfa879ad38cd..f11fb5a5e9dc4bca18ede2cf32b73bd72fd999f8 100644
--- a/src/basics/utilities/UbMath.cpp
+++ b/src/basics/utilities/UbMath.cpp
@@ -35,6 +35,6 @@
 #include <basics/utilities/UbMath.h>
 #include <cstring> //for memcmp
 
-const double UbMath::PI = 4.0 * std::atan(1.0); // 3.1415926535897932384626433832795
+const double ub_math::PI = 4.0 * std::atan(1.0); // 3.1415926535897932384626433832795
 
 //! \}
diff --git a/src/basics/utilities/UbMath.h b/src/basics/utilities/UbMath.h
index a107b778dbb0a88ce684f51f8325458266ef78fb..4401ca12c504986a622545cadbd3eadb8a4882e6 100644
--- a/src/basics/utilities/UbMath.h
+++ b/src/basics/utilities/UbMath.h
@@ -41,7 +41,7 @@
 #include <iostream>
 #include <limits>
 
-namespace UbMath
+namespace ub_math
 {
 extern const double PI;
 
@@ -83,7 +83,7 @@ inline T log(const T &z, const T &base)
     return ::log(z) / ::log(base);
 }
 /*=======================================================*/
-// double x = UbMath::getNegativeInfinity<double>();
+// double x = ub_math::getNegativeInfinity<double>();
 template <typename T>
 inline T getNegativeInfinity()
 {
@@ -92,7 +92,7 @@ inline T getNegativeInfinity()
     return -std::numeric_limits<T>::infinity();
 }
 /*=======================================================*/
-// double x = UbMath::getPositiveInfinity<double>();
+// double x = ub_math::getPositiveInfinity<double>();
 template <typename T>
 inline T getPositiveInfinity()
 {
@@ -101,7 +101,7 @@ inline T getPositiveInfinity()
     return std::numeric_limits<T>::infinity();
 }
 /*=======================================================*/
-// double x; bool b = UbMath::isInfinity(x);
+// double x; bool b = ub_math::isInfinity(x);
 template <typename T>
 inline bool isInfinity(const T &value)
 {
@@ -112,7 +112,7 @@ inline bool isInfinity(const T &value)
     return false;
 }
 /*=======================================================*/
-// double x = UbMath::getNaN<double>(x);
+// double x = ub_math::getNaN<double>(x);
 template <typename T>
 inline T getNaN()
 {
@@ -120,7 +120,7 @@ inline T getNaN()
     return std::numeric_limits<T>::quiet_NaN();
 }
 /*=======================================================*/
-// double x; bool b = UbMath::isNaN(x);
+// double x; bool b = ub_math::isNaN(x);
 // x!=x liefert bei #QNAN "true"!
 template <typename T>
 inline bool isNaN(const T &x)
@@ -139,7 +139,7 @@ template <typename T>
 inline bool zero(const T &value)
 {
     return std::fabs(value) < Epsilon<T>::val();
-    // return value >= -UbMath::EPSILON && value <= UbMath::EPSILON;
+    // return value >= -ub_math::EPSILON && value <= ub_math::EPSILON;
 }
 /*=======================================================*/
 // spezialisierung fuer ints
@@ -152,13 +152,13 @@ inline bool zero(const int &value)
 template <typename T1, typename T2>
 inline bool zero(const T1 &value1, const T2 &value2)
 {
-    return !(!UbMath::zero(value1) || !UbMath::zero(value2));
+    return !(!ub_math::zero(value1) || !ub_math::zero(value2));
 }
 /*=======================================================*/
 template <typename T1, typename T2, typename T3>
 inline bool zero(const T1 &value1, const T2 &value2, const T3 &value3)
 {
-    return !(!UbMath::zero(value1) || !UbMath::zero(value2, value3));
+    return !(!ub_math::zero(value1) || !ub_math::zero(value2, value3));
 }
 /*=======================================================*/
 template <typename T>
@@ -195,7 +195,7 @@ inline bool equal(const T1 &value, const T2 &reference)
 template <typename T1, typename T2, typename T3>
 inline bool equal(const T1 &val1, const T2 &val2, const T3 &val3)
 {
-    return (UbMath::equal(val1, val2) && UbMath::equal(val1, val3));
+    return (ub_math::equal(val1, val2) && ub_math::equal(val1, val3));
 }
 /*=======================================================*/
 template <typename T1, typename T2>
@@ -235,19 +235,19 @@ inline T round(const T &value, const int &decimalPlaces)
 template <typename T>
 inline int integerRounding(const T &value)
 {
-    return static_cast<int>(UbMath::zero(value) ? 0 : ((value < 0.0) ? (value - 0.5) : (value + 0.5)));
+    return static_cast<int>(ub_math::zero(value) ? 0 : ((value < 0.0) ? (value - 0.5) : (value + 0.5)));
 }
 /*=======================================================*/
 template <typename T>
 inline T getRad(const T &degrees)
 {
-    return degrees * static_cast<T>(UbMath::PI / 180.0);
+    return degrees * static_cast<T>(ub_math::PI / 180.0);
 }
 /*=======================================================*/
 template <typename T>
 inline T getDegrees(const T &rad)
 {
-    return rad * static_cast<T>(UbMath::PI / 180.0);
+    return rad * static_cast<T>(ub_math::PI / 180.0);
 }
 /*=======================================================*/
 // aus wildmagic
@@ -266,7 +266,7 @@ inline T ACos(const T &fValue)
 template <typename T>
 inline T ASin(const T &fValue)
 {
-    double HALF_PI = 0.5 * UbMath::PI;
+    double HALF_PI = 0.5 * ub_math::PI;
     if (-1.0 < fValue) {
         if (fValue < 1.0)
             return static_cast<T>(asin(fValue));
@@ -363,7 +363,7 @@ inline int calcGgt(int val1, int val2)
 // -------------------------------------------------------------------------------------------------
 // Funktion berechnet den groessten gemeinsamen Teiler von drei Zahlen (MK)
 // -------------------------------------------------------------------------------------------------
-inline int calcGgt(int val1, const int &val2, int val3) { return UbMath::calcGgt(UbMath::calcGgt(val1, val2), val3); }
+inline int calcGgt(int val1, const int &val2, int val3) { return ub_math::calcGgt(ub_math::calcGgt(val1, val2), val3); }
 /*=======================================================*/
 // returns the max of c2 values
 // to avoid errors at mixed argument-types use: double myMax = max<double>(2,2.3);
@@ -409,7 +409,7 @@ inline const T &min(const T &a1, const T &a2, const T &a3, const T &a4)
     //       return tmp;
 }
 
-} // namespace UbMath
+} // namespace ub_math
 
 #endif
 
diff --git a/src/basics/utilities/UbScheduler.h b/src/basics/utilities/UbScheduler.h
index cb0356354d2409e450794b18291acb4d9f7528aa..ba3fc02112ad0d2484a043f679c919fa0e049262 100644
--- a/src/basics/utilities/UbScheduler.h
+++ b/src/basics/utilities/UbScheduler.h
@@ -62,8 +62,8 @@ public:
         friend class UbScheduler;
 
     public:
-        UbSchedule() : step(Ub::inf), begin(Ub::inf), end(Ub::inf) {}
-        UbSchedule(const double &step, const double &begin = 0.0, const double &end = Ub::inf)
+        UbSchedule() : step(ub_math::inf), begin(ub_math::inf), end(ub_math::inf) {}
+        UbSchedule(const double &step, const double &begin = 0.0, const double &end = ub_math::inf)
             : step(step), begin(begin), end(end)
         {
         }
@@ -93,7 +93,7 @@ public:
 public:
     UbScheduler() { this->initVals(); }
     /*==========================================================*/
-    UbScheduler(const double &step, const double &begin = 0, const double &end = Ub::inf)
+    UbScheduler(const double &step, const double &begin = 0, const double &end = ub_math::inf)
     {
         this->initVals();
         this->addSchedule(step, begin, end);
@@ -114,19 +114,19 @@ public:
     /*==========================================================*/
     bool addSchedule(const double &step, const double &begin, double end)
     {
-        if (UbMath::zero(step) || begin > end) {
+        if (ub_math::zero(step) || begin > end) {
             std::cerr << "UbScheduler::addSchedule - invalid Schedule:\n\t" << UbSchedule(step, begin, end)
                       << std::endl;
             return false;
         }
 
-        if (UbMath::less(end, (double)Ub::inf)) {
+        if (ub_math::less(end, (double)ub_math::inf)) {
             // es kann vorkommen, dass man mit dem intervall nicht genau auf den letzten wert kommt
             //(z.B. step=2; start=0; end=9; -> ende wird angepasst)
-            // also wenn end-begin>Ub::inf ist, dann geht es halt nicht.. ein cast in long double half hier nichts
+            // also wenn end-begin>ub_math::inf ist, dann geht es halt nicht.. ein cast in long double half hier nichts
             double multiplier = 0.0;
             double fractpart  = modf((end - begin) / step, &multiplier);
-            if (!UbMath::zero(fractpart)) {
+            if (!ub_math::zero(fractpart)) {
                 // tmp-speicherung (fuer cerr)
                 fractpart = end;
                 // neues ende
@@ -169,9 +169,9 @@ public:
     bool isDue(const double &t)
     {
         lastUsedT = t;
-        if (UbMath::greaterEqual(t, nextDueTime)) {
+        if (ub_math::greaterEqual(t, nextDueTime)) {
             // groesser maxT is nicht
-            if (UbMath::greater(t, maxT))
+            if (ub_math::greater(t, maxT))
                 return false;
 
             // temp var
@@ -180,7 +180,7 @@ public:
             // um Suche nach nextDueTime bei "Zukunfts-t" zu optimieren, setzt man die "start"-suchzeit auf "t-1":
             nextDueTime = t - 1; // t-1 deshlab, damit falls z.B. while Schleife nicht durchlaufen wird
                                  // die folgende if Abfrage nicht faelschlicher Weise true ist!
-            while (UbMath::greaterEqual(t, nextDueTime) && !UbMath::equal(nextDueTime, maxT)) {
+            while (ub_math::greaterEqual(t, nextDueTime) && !ub_math::equal(nextDueTime, maxT)) {
                 double tmpNextDueTime = maxT, potentialDueTime = -1.0;
                 for (std::size_t i = 0; i < schedules.size(); i++) {
                     if (calcNextDueTimeForSchedule(schedules[i], nextDueTime, potentialDueTime) &&
@@ -196,12 +196,12 @@ public:
             // wenn t = der aktuuellen oder gar schon der naechstmoeglichen ist (hierbei wurde
             // zuvor actDueTime und nextDueTime ggf. angepasst)
             // Bsp.: nextDuTime war 5, aber fuer t=400 gilt andere schedule -> Bsp actDue=350 und nextDue 405
-            if (UbMath::equal(t, actDueTime) || UbMath::equal(t, nextDueTime)) {
+            if (ub_math::equal(t, actDueTime) || ub_math::equal(t, nextDueTime)) {
                 lastDueTime = t;
                 return true;
             }
-        } else if (UbMath::lessEqual(t, lastDueTime)) {
-            if (UbMath::equal(t, lastDueTime))
+        } else if (ub_math::lessEqual(t, lastDueTime)) {
+            if (ub_math::equal(t, lastDueTime))
                 return true; // braucht man, wenn man fuer dasselbe t isDue(t) aufruft
             else {
                 // Fall: Zeit liegt faktisch in der Vergangenheit -> neu initialsisieren
@@ -214,7 +214,7 @@ public:
                 }
                 nextDueTime = tmpNextDueTime;
 
-                return UbMath::equal(t, nextDueTime);
+                return ub_math::equal(t, nextDueTime);
             }
         }
 
@@ -224,48 +224,48 @@ public:
     inline double getMinBegin() const
     {
         if (schedules.empty())
-            return Ub::inf;
-        return std::min_element(schedules.begin(), schedules.end(), UbComparators::membercomp(&UbSchedule::getBegin))
+            return ub_math::inf;
+        return std::min_element(schedules.begin(), schedules.end(), ub_comparators::membercomp(&UbSchedule::getBegin))
             ->getBegin();
     }
     /*==========================================================*/
     inline double getMaxBegin() const
     {
         if (schedules.empty())
-            return Ub::inf;
-        return std::max_element(schedules.begin(), schedules.end(), UbComparators::membercomp(&UbSchedule::getBegin))
+            return ub_math::inf;
+        return std::max_element(schedules.begin(), schedules.end(), ub_comparators::membercomp(&UbSchedule::getBegin))
             ->getBegin();
     }
     /*==========================================================*/
     inline double getMinEnd() const
     {
         if (schedules.empty())
-            return Ub::inf;
-        return std::min_element(schedules.begin(), schedules.end(), UbComparators::membercomp(&UbSchedule::getEnd))
+            return ub_math::inf;
+        return std::min_element(schedules.begin(), schedules.end(), ub_comparators::membercomp(&UbSchedule::getEnd))
             ->getEnd();
     }
     /*==========================================================*/
     inline double getMaxEnd() const
     {
         if (schedules.empty())
-            return Ub::inf;
-        return std::max_element(schedules.begin(), schedules.end(), UbComparators::membercomp(&UbSchedule::getEnd))
+            return ub_math::inf;
+        return std::max_element(schedules.begin(), schedules.end(), ub_comparators::membercomp(&UbSchedule::getEnd))
             ->getEnd();
     }
     /*==========================================================*/
     inline double getMinStep() const
     {
         if (schedules.empty())
-            return Ub::inf;
-        return std::min_element(schedules.begin(), schedules.end(), UbComparators::membercomp(&UbSchedule::getStep))
+            return ub_math::inf;
+        return std::min_element(schedules.begin(), schedules.end(), ub_comparators::membercomp(&UbSchedule::getStep))
             ->getStep();
     }
     /*==========================================================*/
     inline double getMaxStep() const
     {
         if (schedules.empty())
-            return Ub::inf;
-        return std::max_element(schedules.begin(), schedules.end(), UbComparators::membercomp(&UbSchedule::getStep))
+            return ub_math::inf;
+        return std::max_element(schedules.begin(), schedules.end(), ub_comparators::membercomp(&UbSchedule::getStep))
             ->getStep();
     }
     /*==========================================================*/
@@ -291,23 +291,23 @@ protected:
     /*==========================================================*/
     void initVals()
     {
-        lastUsedT   = -Ub::inf;
-        lastDueTime = -Ub::inf;
-        nextDueTime = Ub::inf;
-        maxT        = -Ub::inf;
+        lastUsedT   = -ub_math::inf;
+        lastDueTime = -ub_math::inf;
+        nextDueTime = ub_math::inf;
+        maxT        = -ub_math::inf;
     }
     /*==========================================================*/
     // calculates next due time for a schedule
     // with  nextDueTime > searchStart
     bool calcNextDueTimeForSchedule(const UbSchedule &schedule, const double &searchStart, double &nextDueTime)
     {
-        if (UbMath::greater(searchStart, schedule.end))
+        if (ub_math::greater(searchStart, schedule.end))
             return false;
-        else if (UbMath::less(searchStart, schedule.begin))
+        else if (ub_math::less(searchStart, schedule.begin))
             nextDueTime = schedule.begin;
         else {
             nextDueTime = schedule.begin + ((int)((searchStart - schedule.begin) / schedule.step) + 1) * schedule.step;
-            if (UbMath::less(nextDueTime, searchStart) || UbMath::greater(nextDueTime, schedule.end)) {
+            if (ub_math::less(nextDueTime, searchStart) || ub_math::greater(nextDueTime, schedule.end)) {
                 return false;
             }
         }
diff --git a/src/basics/utilities/UbSystem.h b/src/basics/utilities/UbSystem.h
index 9100d440f344e779ef61a34c9f6489ccec9c3d50..581b58f929b1aaa8b311b895f583cfcc5bddbb5f 100644
--- a/src/basics/utilities/UbSystem.h
+++ b/src/basics/utilities/UbSystem.h
@@ -66,7 +66,7 @@
 #include <sys/types.h>
 #include <unistd.h>
 #else
-#error "UbSystem::UnknownMachine"
+#error "ub_system::UnknownMachine"
 #endif
 
 #if defined(__unix__) && defined(__CYGWIN__)
@@ -109,9 +109,9 @@
 // int const * const C4  -> C4 is constant pointer to a constant integer
 
 //////////////////////////////////////////////////////////////////////////
-// UbSystem
+// ub_system
 //////////////////////////////////////////////////////////////////////////
-namespace UbSystem
+namespace ub_system
 {
 template <bool>
 struct ub_static_assert; // deklaration (ub_xxx da static_assert in C++0x ein keyword werden wird)
@@ -131,7 +131,7 @@ inline void sleepMs(const unsigned int &msec)
 #elif defined(UBSYSTEM_CYGWIN)
     ::Sleep((msec == 0) ? 1 : msec);
 #else
-#error "UbSystem::sleepMSec - UnknownMachine"
+#error "ub_system::sleepMSec - UnknownMachine"
 #endif
 }
 /*==========================================================*/
@@ -142,7 +142,7 @@ inline void sleepS(const unsigned int &sec)
 #elif defined(UBSYSTEM_LINUX) || defined(UBSYSTEM_APPLE) || defined(UBSYSTEM_AIX) && !defined(UBSYSTEM_CYGWIN)
     ::sleep(sec);
 #else
-#error "UbSystem::sleepS - UnknownMachine"
+#error "ub_system::sleepS - UnknownMachine"
 #endif
 }
 /*==========================================================*/
@@ -250,7 +250,7 @@ inline bool isDirectory(const std::string &dir, const unsigned & /*attemptions*/
     if (dir.empty())
         UB_THROW(UbException(UB_EXARGS, "dir is empty"));
 
-    std::string path = UbSystem::replaceInString(dir, "\\", "/");
+    std::string path = ub_system::replaceInString(dir, "\\", "/");
 
 #if defined UBSYSTEM_WINDOWS
 #ifndef _UNICODE
@@ -279,11 +279,11 @@ static boost::mutex mtx_makeDirectory;
 #endif
 inline bool makeDirectory(const std::string &dir)
 {
-    UBLOG(logDEBUG5, "UbSystem::makeDirectory - start, dir=" << dir);
+    UBLOG(logDEBUG5, "ub_system::makeDirectory - start, dir=" << dir);
 
     if (dir.empty())
         UB_THROW(UbException(UB_EXARGS, "dir is empty"));
-    std::string path = UbSystem::replaceInString(dir, "\\", "/");
+    std::string path = ub_system::replaceInString(dir, "\\", "/");
 
     bool dirCreated = true;
 
@@ -304,21 +304,21 @@ inline bool makeDirectory(const std::string &dir)
             _waccess(tmpdir.c_str(), 0) == -1 && _wmkdir(tmpdir.c_str()) == -1
 #endif
         ) {
-            UBLOG(logDEBUG5, "UbSystem::makeDirectory - dir=\"" << tmpdir << "\" - doesn't exist or makedir failed");
+            UBLOG(logDEBUG5, "ub_system::makeDirectory - dir=\"" << tmpdir << "\" - doesn't exist or makedir failed");
             dirCreated = false;
             break;
         }
 #elif defined(UBSYSTEM_LINUX) || defined(UBSYSTEM_APPLE) || defined(UBSYSTEM_AIX)
         int status = mkdir(tmpdir.c_str(), S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH);
         if (status == 0) {
-            UBLOG(logDEBUG5,"UbSystem::makeDirectory - dir=\"" << tmpdir << " - directory created successfully.");
+            UBLOG(logDEBUG5,"ub_system::makeDirectory - dir=\"" << tmpdir << " - directory created successfully.");
             dirCreated = true;
         } else {
-            UBLOG(logDEBUG5,"UbSystem::makeDirectory - dir=\"" << tmpdir << " - mkdir() failed" << " ERROR: " << strerror(errno));
+            UBLOG(logDEBUG5,"ub_system::makeDirectory - dir=\"" << tmpdir << " - mkdir() failed" << " ERROR: " << strerror(errno));
             dirCreated = false;
         }
 #else
-#error "UbSystem::makeDirectory - UnknownMachine"
+#error "ub_system::makeDirectory - UnknownMachine"
 #endif
     }
     return dirCreated;
@@ -344,7 +344,7 @@ inline int removeDirectory(const std::string &dir)
 // returns: ""
 inline std::string getPathFromString(const std::string &fileStringWithPath)
 {
-    std::string tmp  = UbSystem::replaceInString(fileStringWithPath, "\\", "/");
+    std::string tmp  = ub_system::replaceInString(fileStringWithPath, "\\", "/");
     std::size_t last = tmp.rfind("/");
     if (last != std::string::npos)
         tmp.resize(last);
@@ -361,7 +361,7 @@ inline std::string getPathFromString(const std::string &fileStringWithPath)
 // returns: ""
 inline std::string getFilenameFromString(const std::string &fileStringWithPath, bool withExtension = true)
 {
-    std::string tmp = UbSystem::replaceInString(fileStringWithPath, "\\", "/");
+    std::string tmp = ub_system::replaceInString(fileStringWithPath, "\\", "/");
 
     // remove path
     std::size_t last = tmp.rfind("/");
@@ -385,7 +385,7 @@ inline int getProcessID()
 #elif defined(UBSYSTEM_LINUX) || defined(UBSYSTEM_APPLE) || defined(UBSYSTEM_AIX)
     return getpid();
 #else
-#error "int UbSystem::getProcessID() - UnknownMachine"
+#error "int ub_system::getProcessID() - UnknownMachine"
 #endif
 }
 /*==========================================================*/
@@ -402,7 +402,7 @@ inline unsigned long getCurrentThreadID()
 #elif defined(UBSYSTEM_AIX)
     return (unsigned long)getpid(); // WORKAROUND for IBM (for get thread id is another function necessary)
 #else
-#error "unsigned long UbSystem::getCurrentThreadID() - UnknownMachine"
+#error "unsigned long ub_system::getCurrentThreadID() - UnknownMachine"
 #endif
 }
 /*==========================================================*/
@@ -522,16 +522,16 @@ struct select2nd {
     const result_type &operator()(const argument_type &p) const { return p.second; }
 };
 
-} // namespace UbSystem
+} // namespace ub_system
 
-#define UB_STATIC_ASSERT(expr) static_cast<void>(sizeof(UbSystem::ub_static_assert<expr>));
+#define UB_STATIC_ASSERT(expr) static_cast<void>(sizeof(ub_system::ub_static_assert<expr>));
 // zum ueberpruefen von STATISCHEN ausdruecken waehrend der compile-zeit
 //--> Ausdruecke muessen schon ZUR compilerzeit auswertbar sein !!!
 // Anwendung z.B. zur Ueberpruefung von Funktionalitaeten, wie z.B. bei UbMath::getNegativeInfinity<double>();
 //
 // Grund fuer macro ist einfach, dass es besser anzuwenden ist in der praxis!
 // ansonsten wuerde es so aussehen:
-//     UbSystem::ub_static_assert< aaa == 1 > test();
+//     ub_system::ub_static_assert< aaa == 1 > test();
 //    da ist  UB_STATIC_ASSERT(aaa == 1); schoener
 //
 // um das zu vermeiden machtman hier diesen static_cast<void>(sizeof(...) )
@@ -541,7 +541,7 @@ struct select2nd {
 //  UB_STATIC_ASSERT( Test::m_const_bool == true );
 //  --> okay, assert bestanden
 //  UB_STATIC_ASSERT( Test::m_const_bool == false); //:
-//  --> assert nicht bestanden z.B. error C2027: use of undefined type 'UbSystem::ub_static_assert<__formal> with
+//  --> assert nicht bestanden z.B. error C2027: use of undefined type 'ub_system::ub_static_assert<__formal> with
 //  __formal = false --> funzt nicht. fehler im code UB_STATIC_ASSERT( Test::m_bool == true );
 //  --> nicht erlaubt, da m_bool nicht statisch und nicht const ist.
 //}
diff --git a/src/basics/utilities/Vector3D.cpp b/src/basics/utilities/Vector3D.cpp
index 2d0c725c84bed54d0681bd18a042c06bc245f7a2..aa6dc4aacd03a20338cd6cb2475953a0481235e9 100644
--- a/src/basics/utilities/Vector3D.cpp
+++ b/src/basics/utilities/Vector3D.cpp
@@ -163,9 +163,9 @@ Vector3D Vector3D::operator/(const double &fScalar) const
         kQuot.m_afTuple[1] = fInvScalar * m_afTuple[1];
         kQuot.m_afTuple[2] = fInvScalar * m_afTuple[2];
     } else {
-        kQuot.m_afTuple[0] = Ub::inf;
-        kQuot.m_afTuple[1] = Ub::inf;
-        kQuot.m_afTuple[2] = Ub::inf;
+        kQuot.m_afTuple[0] = ub_math::inf;
+        kQuot.m_afTuple[1] = ub_math::inf;
+        kQuot.m_afTuple[2] = ub_math::inf;
     }
 
     return kQuot;
@@ -199,15 +199,15 @@ Vector3D &Vector3D::operator*=(const double &fScalar)
 /*=======================================================*/
 Vector3D &Vector3D::operator/=(const double &fScalar)
 {
-    if (!UbMath::zero(fScalar)) {
+    if (!ub_math::zero(fScalar)) {
         double fInvScalar = 1.0 / fScalar;
         m_afTuple[0] *= fInvScalar;
         m_afTuple[1] *= fInvScalar;
         m_afTuple[2] *= fInvScalar;
     } else {
-        m_afTuple[0] = Ub::inf;
-        m_afTuple[1] = Ub::inf;
-        m_afTuple[2] = Ub::inf;
+        m_afTuple[0] = ub_math::inf;
+        m_afTuple[1] = ub_math::inf;
+        m_afTuple[2] = ub_math::inf;
     }
 
     return *this;
@@ -241,7 +241,7 @@ double Vector3D::Normalize()
 {
     double fLength = Length();
 
-    if (!UbMath::zero(fLength)) {
+    if (!ub_math::zero(fLength)) {
         double fInvLength = 1.0 / fLength;
         m_afTuple[0] *= fInvLength;
         m_afTuple[1] *= fInvLength;
@@ -292,7 +292,7 @@ void Vector3D::GetBarycentrics(const Vector3D &rkV0, const Vector3D &rkV1, const
         }
 
     // scale down only large data
-    if (UbMath::greater(fMax, 1.0)) {
+    if (ub_math::greater(fMax, 1.0)) {
         double fInvMax = ((double)1.0) / fMax;
         for (int i = 0; i < 4; i++)
             akDiff[i] *= fInvMax;
@@ -303,7 +303,7 @@ void Vector3D::GetBarycentrics(const Vector3D &rkV0, const Vector3D &rkV1, const
     Vector3D kE2cE0 = akDiff[2].Cross(akDiff[0]);
     Vector3D kE0cE1 = akDiff[0].Cross(akDiff[1]);
 
-    if (!UbMath::zero(fDet)) {
+    if (!ub_math::zero(fDet)) {
         double fInvDet = 1.0 / fDet;
         afBary[0]      = akDiff[3].Dot(kE1cE2) * fInvDet;
         afBary[1]      = akDiff[3].Dot(kE2cE0) * fInvDet;
@@ -334,7 +334,7 @@ void Vector3D::GetBarycentrics(const Vector3D &rkV0, const Vector3D &rkV1, const
             fMaxSqrArea = fSqrArea;
         }
 
-        if (UbMath::greater(fMaxSqrArea, 0.0)) {
+        if (ub_math::greater(fMaxSqrArea, 0.0)) {
             double fInvSqrArea = 1.0 / fMaxSqrArea;
             Vector3D kTmp;
             if (iMaxIndex == 0) {
@@ -406,7 +406,7 @@ void Vector3D::GetBarycentrics(const Vector3D &rkV0, const Vector3D &rkV1, const
                 fMaxSqrLength = fSqrLength;
             }
 
-            if (UbMath::greater(fMaxSqrLength, 0.0)) {
+            if (ub_math::greater(fMaxSqrLength, 0.0)) {
                 double fInvSqrLength = 1.0 / fMaxSqrLength;
                 if (iMaxIndex == 0) {
                     // P-V3 = t*(V0-V3)
@@ -495,15 +495,15 @@ void Vector3D::GenerateOrthonormalBasis(Vector3D &rkU, Vector3D &rkV, Vector3D &
 
     double fInvLength;
 
-    if (UbMath::greaterEqual(std::fabs(rkW.m_afTuple[0]), std::fabs(rkW.m_afTuple[1]))) {
+    if (ub_math::greaterEqual(std::fabs(rkW.m_afTuple[0]), std::fabs(rkW.m_afTuple[1]))) {
         // W.x or W.z is the largest magnitude component, swap them
-        fInvLength       = UbMath::invSqrt(rkW.m_afTuple[0] * rkW.m_afTuple[0] + rkW.m_afTuple[2] * rkW.m_afTuple[2]);
+        fInvLength       = ub_math::invSqrt(rkW.m_afTuple[0] * rkW.m_afTuple[0] + rkW.m_afTuple[2] * rkW.m_afTuple[2]);
         rkU.m_afTuple[0] = -rkW.m_afTuple[2] * fInvLength;
         rkU.m_afTuple[1] = (double)0.0;
         rkU.m_afTuple[2] = +rkW.m_afTuple[0] * fInvLength;
     } else {
         // W.y or W.z is the largest magnitude component, swap them
-        fInvLength       = UbMath::invSqrt(rkW.m_afTuple[1] * rkW.m_afTuple[1] + rkW.m_afTuple[2] * rkW.m_afTuple[2]);
+        fInvLength       = ub_math::invSqrt(rkW.m_afTuple[1] * rkW.m_afTuple[1] + rkW.m_afTuple[2] * rkW.m_afTuple[2]);
         rkU.m_afTuple[0] = (double)0.0;
         rkU.m_afTuple[1] = +rkW.m_afTuple[2] * fInvLength;
         rkU.m_afTuple[2] = -rkW.m_afTuple[1] * fInvLength;
diff --git a/src/basics/writer/WbWriterAvsASCII.cpp b/src/basics/writer/WbWriterAvsASCII.cpp
index 90e87be5abc948b929eca16b3d4b33ec53bbcf38..a480eee16b8c60aa7ced780eaaa5cbf4745c3bdf 100644
--- a/src/basics/writer/WbWriterAvsASCII.cpp
+++ b/src/basics/writer/WbWriterAvsASCII.cpp
@@ -47,9 +47,9 @@ std::string WbWriterAvsASCII::writeQuads(const std::string &filename, std::vecto
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -132,9 +132,9 @@ std::string WbWriterAvsASCII::writeOcts(const std::string &filename, std::vector
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -227,9 +227,9 @@ std::string WbWriterAvsASCII::writeQuadsWithNodeData(const string &filename, vec
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -359,9 +359,9 @@ std::string WbWriterAvsASCII::writeQuadsWithCellData(const string &filename, vec
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -496,9 +496,9 @@ std::string WbWriterAvsASCII::writeQuadsWithNodeAndCellData(const string &filena
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -675,9 +675,9 @@ std::string WbWriterAvsASCII::writeLines(const string &filename, vector<UbTupleF
     ofstream out(avsfilename.c_str(), ios::out);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out);
         }
         if (!out)
@@ -711,9 +711,9 @@ std::string WbWriterAvsASCII::writeTriangles(const string &filename, vector<UbTu
     ofstream out(avsfilename.c_str(), ios::out);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out);
         }
         if (!out)
@@ -750,9 +750,9 @@ std::string WbWriterAvsASCII::writeTrianglesWithNodeData(const std::string &file
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -882,9 +882,9 @@ std::string WbWriterAvsASCII::writeOctsWithCellData(const string &filename, vect
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -1023,9 +1023,9 @@ std::string WbWriterAvsASCII::writeOctsWithNodeData(const string &filename, vect
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
diff --git a/src/basics/writer/WbWriterAvsBinary.cpp b/src/basics/writer/WbWriterAvsBinary.cpp
index 53c75fd9c0938f7510ffeb03a53e8efb35dbe063..f77952f3919c70e92119a238138f9a70f3560e6d 100644
--- a/src/basics/writer/WbWriterAvsBinary.cpp
+++ b/src/basics/writer/WbWriterAvsBinary.cpp
@@ -49,9 +49,9 @@ std::string WbWriterAvsBinary::writeLines(const std::string &filename, std::vect
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -132,9 +132,9 @@ std::string WbWriterAvsBinary::writeTriangles(const std::string &filename, std::
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -217,9 +217,9 @@ std::string WbWriterAvsBinary::writeQuads(const std::string &filename, std::vect
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -302,9 +302,9 @@ std::string WbWriterAvsBinary::writeOcts(const std::string &filename, std::vecto
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -399,9 +399,9 @@ std::string WbWriterAvsBinary::writeTrianglesWithNodeData(const std::string &fil
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -530,9 +530,9 @@ std::string WbWriterAvsBinary::writeQuadsWithNodeData(const string &filename, ve
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -663,9 +663,9 @@ std::string WbWriterAvsBinary::writeQuadsWithCellData(const string &filename, ve
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -799,9 +799,9 @@ std::string WbWriterAvsBinary::writeQuadsWithNodeAndCellData(const string &filen
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -978,9 +978,9 @@ std::string WbWriterAvsBinary::writeOctsWithCellData(const string &filename, vec
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -1119,9 +1119,9 @@ std::string WbWriterAvsBinary::writeOctsWithNodeData(const string &filename, vec
     ofstream out(avsfilename.c_str(), ios::out | ios::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!outfile) weiterhin true!!!
-        string path = UbSystem::getPathFromString(avsfilename);
+        string path = ub_system::getPathFromString(avsfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(avsfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
diff --git a/src/basics/writer/WbWriterSunflow.cpp b/src/basics/writer/WbWriterSunflow.cpp
index 79e1d85b4359c8c8c42782a9447210092b5f1123..e6c21ad9181e08532411b2b145b0759b810b9195 100644
--- a/src/basics/writer/WbWriterSunflow.cpp
+++ b/src/basics/writer/WbWriterSunflow.cpp
@@ -47,9 +47,9 @@ std::string WbWriterSunflow::writeTriangles(const string &filename, vector<UbTup
     std::ofstream out(sunflowFilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(sunflowFilename);
+        string path = ub_system::getPathFromString(sunflowFilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(sunflowFilename.c_str());
         }
         if (!out)
diff --git a/src/basics/writer/WbWriterTecPlotASCII.cpp b/src/basics/writer/WbWriterTecPlotASCII.cpp
index df32ead4951b7718cc6b26c44d56932359538f5c..ab5852c0a03634026b0d03fdc3d9cecee8549742 100644
--- a/src/basics/writer/WbWriterTecPlotASCII.cpp
+++ b/src/basics/writer/WbWriterTecPlotASCII.cpp
@@ -47,9 +47,9 @@ string WbWriterTecPlotASCII::writeOctsWithNodeData(const string &filename, vecto
     ofstream out(tecplotfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(tecplotfilename);
+        string path = ub_system::getPathFromString(tecplotfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(tecplotfilename.c_str());
         }
         if (!out)
@@ -59,7 +59,7 @@ string WbWriterTecPlotASCII::writeOctsWithNodeData(const string &filename, vecto
     int nofNodes = (int)nodes.size();
     int nofCells = (int)cells.size();
 
-    out << "TITLE = VirtualFluids OctGrid from " << UbSystem::getTimeStamp() << endl;
+    out << "TITLE = VirtualFluids OctGrid from " << ub_system::getTimeStamp() << endl;
 
     out << "VARIABLES = \"X\", \"Y\", \"Z\"";
     for (size_t d = 0; d < datanames.size(); d++)
diff --git a/src/basics/writer/WbWriterVtkASCII.cpp b/src/basics/writer/WbWriterVtkASCII.cpp
index cf5e681cff0eefdc82f285ea944b37c56a71084c..3769327505ecd2f66819b70196a0d0118811e5f8 100644
--- a/src/basics/writer/WbWriterVtkASCII.cpp
+++ b/src/basics/writer/WbWriterVtkASCII.cpp
@@ -46,9 +46,9 @@ std::string WbWriterVtkASCII::writeQuads(const string &filename, vector<UbTupleF
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -105,9 +105,9 @@ std::string WbWriterVtkASCII::writeQuadsWithNodeData(const string &filename, vec
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -173,9 +173,9 @@ std::string WbWriterVtkASCII::writeQuadsWithCellData(const string &filename, vec
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -243,9 +243,9 @@ std::string WbWriterVtkASCII::writeQuadsWithNodeAndCellData(const string &filena
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -320,9 +320,9 @@ std::string WbWriterVtkASCII::writeLines(const string &filename, vector<UbTupleF
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -380,9 +380,9 @@ std::string WbWriterVtkASCII::writeTriangles(const string &filename, vector<UbTu
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -442,9 +442,9 @@ std::string WbWriterVtkASCII::writeTrianglesWithNodeData(const string &filename,
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -509,9 +509,9 @@ std::string WbWriterVtkASCII::writeOctsWithCellData(const string &filename, vect
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -581,9 +581,9 @@ std::string WbWriterVtkASCII::writeOctsWithNodeData(const string &filename, vect
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -650,9 +650,9 @@ std::string WbWriterVtkASCII::writeOcts(const string &filename, vector<UbTupleFl
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
diff --git a/src/basics/writer/WbWriterVtkBinary.cpp b/src/basics/writer/WbWriterVtkBinary.cpp
index cd3c3e5bf55f892e265aabb4c31ce40ad9f9b9cf..181c73273be8deb922596f6a7fab85796b81faa8 100644
--- a/src/basics/writer/WbWriterVtkBinary.cpp
+++ b/src/basics/writer/WbWriterVtkBinary.cpp
@@ -68,9 +68,9 @@ std::string WbWriterVtkBinary::writeQuads(const string &filename, vector<UbTuple
     ofstream out(vtkfilename.c_str(), ofstream::out | ofstream::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -79,7 +79,7 @@ std::string WbWriterVtkBinary::writeQuads(const string &filename, vector<UbTuple
 
     // HEADER-SECTION
     // WRITE BIGENDIAN VtkBinary FILE
-    bool swapByte = UbSystem::isLittleEndian();
+    bool swapByte = ub_system::isLittleEndian();
     int nofNodes  = (int)nodes.size();
     int nofCells  = (int)cells.size();
 
@@ -101,9 +101,9 @@ std::string WbWriterVtkBinary::writeQuads(const string &filename, vector<UbTuple
         float x3 = (float)val<3>(nodes[n]);
 
         if (swapByte) {
-            UbSystem::swapByteOrder((unsigned char *)&x1, sizeof(float));
-            UbSystem::swapByteOrder((unsigned char *)&x2, sizeof(float));
-            UbSystem::swapByteOrder((unsigned char *)&x3, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x1, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x2, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x3, sizeof(float));
         }
 
         out.write((char *)&x1, sizeof(float));
@@ -117,17 +117,17 @@ std::string WbWriterVtkBinary::writeQuads(const string &filename, vector<UbTuple
 
     int nodesPerCellDummy = 4; // nofNodesPerCell
     if (swapByte)
-        UbSystem::swapByteOrder((unsigned char *)&nodesPerCellDummy, sizeof(int));
+        ub_system::swapByteOrder((unsigned char *)&nodesPerCellDummy, sizeof(int));
     for (int c = 0; c < (int)cells.size(); c++) {
         int SW = val<1>(cells[c]);
         int SE = val<2>(cells[c]);
         int NE = val<3>(cells[c]);
         int NW = val<4>(cells[c]);
         if (swapByte) {
-            UbSystem::swapByteOrder((unsigned char *)&SW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&SE, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&NW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&NE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&SW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&SE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&NW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&NE, sizeof(int));
         }
 
         out.write((char *)&nodesPerCellDummy, sizeof(int));
@@ -141,7 +141,7 @@ std::string WbWriterVtkBinary::writeQuads(const string &filename, vector<UbTuple
     out << "CELL_TYPES " << (int)cells.size() << "\n";
     int celltype = 8;
     if (swapByte)
-        UbSystem::swapByteOrder((unsigned char *)&celltype, sizeof(int));
+        ub_system::swapByteOrder((unsigned char *)&celltype, sizeof(int));
     for (int c = 0; c < nofCells; c++)
         out.write((char *)&celltype, sizeof(int));
 
@@ -162,9 +162,9 @@ std::string WbWriterVtkBinary::writeQuadsWithNodeData(const string &filename, ve
     ofstream out(vtkfilename.c_str(), ofstream::out | ofstream::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -172,7 +172,7 @@ std::string WbWriterVtkBinary::writeQuadsWithNodeData(const string &filename, ve
     }
 
     // WRITE BIGENDIAN VtkBinary FILE
-    bool swapByte = UbSystem::isLittleEndian();
+    bool swapByte = ub_system::isLittleEndian();
     int nofNodes  = (int)nodes.size();
     int nofCells  = (int)cells.size();
 
@@ -194,9 +194,9 @@ std::string WbWriterVtkBinary::writeQuadsWithNodeData(const string &filename, ve
         float x3 = (float)val<3>(nodes[n]);
 
         if (swapByte) {
-            UbSystem::swapByteOrder((unsigned char *)&x1, sizeof(float));
-            UbSystem::swapByteOrder((unsigned char *)&x2, sizeof(float));
-            UbSystem::swapByteOrder((unsigned char *)&x3, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x1, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x2, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x3, sizeof(float));
         }
 
         out.write((char *)&x1, sizeof(float));
@@ -210,17 +210,17 @@ std::string WbWriterVtkBinary::writeQuadsWithNodeData(const string &filename, ve
 
     int nodesPerCellDummy = 4; // nofNodesPerCell
     if (swapByte)
-        UbSystem::swapByteOrder((unsigned char *)&nodesPerCellDummy, sizeof(int));
+        ub_system::swapByteOrder((unsigned char *)&nodesPerCellDummy, sizeof(int));
     for (int c = 0; c < (int)cells.size(); c++) {
         int SW = val<1>(cells[c]);
         int SE = val<2>(cells[c]);
         int NE = val<3>(cells[c]);
         int NW = val<4>(cells[c]);
         if (swapByte) {
-            UbSystem::swapByteOrder((unsigned char *)&SW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&SE, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&NW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&NE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&SW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&SE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&NW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&NE, sizeof(int));
         }
 
         out.write((char *)&nodesPerCellDummy, sizeof(int));
@@ -234,7 +234,7 @@ std::string WbWriterVtkBinary::writeQuadsWithNodeData(const string &filename, ve
     out << "CELL_TYPES " << (int)cells.size() << "\n";
     int celltype = 8;
     if (swapByte)
-        UbSystem::swapByteOrder((unsigned char *)&celltype, sizeof(int));
+        ub_system::swapByteOrder((unsigned char *)&celltype, sizeof(int));
     for (int c = 0; c < nofCells; c++)
         out.write((char *)&celltype, sizeof(int));
 
@@ -250,7 +250,7 @@ std::string WbWriterVtkBinary::writeQuadsWithNodeData(const string &filename, ve
         for (int d = 0; d < (int)nodedata[s].size(); d++) {
             float dummy = (float)nodedata[s][d];
             if (swapByte)
-                UbSystem::swapByteOrder((unsigned char *)&dummy, sizeof(float));
+                ub_system::swapByteOrder((unsigned char *)&dummy, sizeof(float));
             out.write((const char *)&dummy, sizeof(float));
         }
         out << endl;
@@ -272,9 +272,9 @@ std::string WbWriterVtkBinary::writeQuadsWithCellData(const string &filename, ve
     ofstream out(vtkfilename.c_str(), ofstream::out | ofstream::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -282,7 +282,7 @@ std::string WbWriterVtkBinary::writeQuadsWithCellData(const string &filename, ve
     }
 
     // WRITE BIGENDIAN VtkBinary FILE
-    bool swapByte = UbSystem::isLittleEndian();
+    bool swapByte = ub_system::isLittleEndian();
     int nofNodes  = (int)nodes.size();
     int nofCells  = (int)cells.size();
 
@@ -304,9 +304,9 @@ std::string WbWriterVtkBinary::writeQuadsWithCellData(const string &filename, ve
         float x3 = (float)val<3>(nodes[n]);
 
         if (swapByte) {
-            UbSystem::swapByteOrder((unsigned char *)&x1, sizeof(float));
-            UbSystem::swapByteOrder((unsigned char *)&x2, sizeof(float));
-            UbSystem::swapByteOrder((unsigned char *)&x3, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x1, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x2, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x3, sizeof(float));
         }
 
         out.write((char *)&x1, sizeof(float));
@@ -320,17 +320,17 @@ std::string WbWriterVtkBinary::writeQuadsWithCellData(const string &filename, ve
 
     int nodesPerCellDummy = 4; // nofNodesPerCell
     if (swapByte)
-        UbSystem::swapByteOrder((unsigned char *)&nodesPerCellDummy, sizeof(int));
+        ub_system::swapByteOrder((unsigned char *)&nodesPerCellDummy, sizeof(int));
     for (int c = 0; c < (int)cells.size(); c++) {
         int SW = val<1>(cells[c]);
         int SE = val<2>(cells[c]);
         int NE = val<3>(cells[c]);
         int NW = val<4>(cells[c]);
         if (swapByte) {
-            UbSystem::swapByteOrder((unsigned char *)&SW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&SE, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&NW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&NE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&SW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&SE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&NW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&NE, sizeof(int));
         }
 
         out.write((char *)&nodesPerCellDummy, sizeof(int));
@@ -344,7 +344,7 @@ std::string WbWriterVtkBinary::writeQuadsWithCellData(const string &filename, ve
     out << "CELL_TYPES " << (int)cells.size() << "\n";
     int celltype = 8;
     if (swapByte)
-        UbSystem::swapByteOrder((unsigned char *)&celltype, sizeof(int));
+        ub_system::swapByteOrder((unsigned char *)&celltype, sizeof(int));
     for (int c = 0; c < nofCells; c++)
         out.write((char *)&celltype, sizeof(int));
 
@@ -360,7 +360,7 @@ std::string WbWriterVtkBinary::writeQuadsWithCellData(const string &filename, ve
         for (int d = 0; d < (int)celldata[s].size(); d++) {
             float dummy = (float)celldata[s][d];
             if (swapByte)
-                UbSystem::swapByteOrder((unsigned char *)&dummy, sizeof(float));
+                ub_system::swapByteOrder((unsigned char *)&dummy, sizeof(float));
             out.write((const char *)&dummy, sizeof(float));
         }
         out << endl;
@@ -383,9 +383,9 @@ std::string WbWriterVtkBinary::writeQuadsWithNodeAndCellData(const string &filen
     ofstream out(vtkfilename.c_str(), ofstream::out | ofstream::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -394,7 +394,7 @@ std::string WbWriterVtkBinary::writeQuadsWithNodeAndCellData(const string &filen
 
     // HEADER-SECTION
     // WRITE BIGENDIAN VtkBinary FILE
-    bool swapByte = UbSystem::isLittleEndian();
+    bool swapByte = ub_system::isLittleEndian();
     int nofNodes  = (int)nodes.size();
     int nofCells  = (int)cells.size();
 
@@ -416,9 +416,9 @@ std::string WbWriterVtkBinary::writeQuadsWithNodeAndCellData(const string &filen
         float x3 = (float)val<3>(nodes[n]);
 
         if (swapByte) {
-            UbSystem::swapByteOrder((unsigned char *)&x1, sizeof(float));
-            UbSystem::swapByteOrder((unsigned char *)&x2, sizeof(float));
-            UbSystem::swapByteOrder((unsigned char *)&x3, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x1, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x2, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x3, sizeof(float));
         }
 
         out.write((char *)&x1, sizeof(float));
@@ -432,17 +432,17 @@ std::string WbWriterVtkBinary::writeQuadsWithNodeAndCellData(const string &filen
 
     int nodesPerCellDummy = 4; // nofNodesPerCell
     if (swapByte)
-        UbSystem::swapByteOrder((unsigned char *)&nodesPerCellDummy, sizeof(int));
+        ub_system::swapByteOrder((unsigned char *)&nodesPerCellDummy, sizeof(int));
     for (int c = 0; c < (int)cells.size(); c++) {
         int SW = val<1>(cells[c]);
         int SE = val<2>(cells[c]);
         int NE = val<3>(cells[c]);
         int NW = val<4>(cells[c]);
         if (swapByte) {
-            UbSystem::swapByteOrder((unsigned char *)&SW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&SE, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&NW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&NE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&SW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&SE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&NW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&NE, sizeof(int));
         }
 
         out.write((char *)&nodesPerCellDummy, sizeof(int));
@@ -456,7 +456,7 @@ std::string WbWriterVtkBinary::writeQuadsWithNodeAndCellData(const string &filen
     out << "CELL_TYPES " << (int)cells.size() << "\n";
     int celltype = 8;
     if (swapByte)
-        UbSystem::swapByteOrder((unsigned char *)&celltype, sizeof(int));
+        ub_system::swapByteOrder((unsigned char *)&celltype, sizeof(int));
     for (int c = 0; c < nofCells; c++)
         out.write((char *)&celltype, sizeof(int));
 
@@ -472,7 +472,7 @@ std::string WbWriterVtkBinary::writeQuadsWithNodeAndCellData(const string &filen
         for (int d = 0; d < (int)nodedata[s].size(); d++) {
             float dummy = (float)nodedata[s][d];
             if (swapByte)
-                UbSystem::swapByteOrder((unsigned char *)&dummy, sizeof(float));
+                ub_system::swapByteOrder((unsigned char *)&dummy, sizeof(float));
             out.write((const char *)&dummy, sizeof(float));
         }
         out << endl;
@@ -488,7 +488,7 @@ std::string WbWriterVtkBinary::writeQuadsWithNodeAndCellData(const string &filen
         for (int d = 0; d < (int)celldata[s].size(); d++) {
             float dummy = (float)celldata[s][d];
             if (swapByte)
-                UbSystem::swapByteOrder((unsigned char *)&dummy, sizeof(float));
+                ub_system::swapByteOrder((unsigned char *)&dummy, sizeof(float));
             out.write((const char *)&dummy, sizeof(float));
         }
         out << endl;
@@ -510,9 +510,9 @@ std::string WbWriterVtkBinary::writeOctsWithCellData(const string &filename, vec
     ofstream out(vtkfilename.c_str(), ofstream::out | ofstream::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -521,7 +521,7 @@ std::string WbWriterVtkBinary::writeOctsWithCellData(const string &filename, vec
 
     // HEADER-SECTION
     // WRITE BIGENDIAN VtkBinary FILE
-    bool swapByte = UbSystem::isLittleEndian();
+    bool swapByte = ub_system::isLittleEndian();
     int nofNodes  = (int)nodes.size();
     int nofCells  = (int)cells.size();
 
@@ -543,9 +543,9 @@ std::string WbWriterVtkBinary::writeOctsWithCellData(const string &filename, vec
         float x3 = (float)val<3>(nodes[n]);
 
         if (swapByte) {
-            UbSystem::swapByteOrder((unsigned char *)&x1, sizeof(float));
-            UbSystem::swapByteOrder((unsigned char *)&x2, sizeof(float));
-            UbSystem::swapByteOrder((unsigned char *)&x3, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x1, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x2, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x3, sizeof(float));
         }
 
         out.write((char *)&x1, sizeof(float));
@@ -559,7 +559,7 @@ std::string WbWriterVtkBinary::writeOctsWithCellData(const string &filename, vec
 
     int nodesPerCellDummy = 8; // nofNodesPerCell
     if (swapByte)
-        UbSystem::swapByteOrder((unsigned char *)&nodesPerCellDummy, sizeof(int));
+        ub_system::swapByteOrder((unsigned char *)&nodesPerCellDummy, sizeof(int));
     for (int c = 0; c < (int)cells.size(); c++) {
         int BSW = val<1>(cells[c]);
         int TSW = val<5>(cells[c]);
@@ -570,14 +570,14 @@ std::string WbWriterVtkBinary::writeOctsWithCellData(const string &filename, vec
         int BNE = val<4>(cells[c]);
         int TNE = val<8>(cells[c]);
         if (swapByte) {
-            UbSystem::swapByteOrder((unsigned char *)&BSW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&BSE, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&BNW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&BNE, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&TSW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&TSE, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&TNW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&TNE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&BSW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&BSE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&BNW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&BNE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&TSW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&TSE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&TNW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&TNE, sizeof(int));
         }
 
         out.write((char *)&nodesPerCellDummy, sizeof(int));
@@ -595,7 +595,7 @@ std::string WbWriterVtkBinary::writeOctsWithCellData(const string &filename, vec
     out << "CELL_TYPES " << (int)cells.size() << "\n";
     int celltype = 11;
     if (swapByte)
-        UbSystem::swapByteOrder((unsigned char *)&celltype, sizeof(int));
+        ub_system::swapByteOrder((unsigned char *)&celltype, sizeof(int));
     for (int c = 0; c < nofCells; c++)
         out.write((char *)&celltype, sizeof(int));
 
@@ -611,7 +611,7 @@ std::string WbWriterVtkBinary::writeOctsWithCellData(const string &filename, vec
         for (int d = 0; d < (int)celldata[s].size(); d++) {
             float dummy = (float)celldata[s][d];
             if (swapByte)
-                UbSystem::swapByteOrder((unsigned char *)&dummy, sizeof(float));
+                ub_system::swapByteOrder((unsigned char *)&dummy, sizeof(float));
             out.write((const char *)&dummy, sizeof(float));
         }
         out << endl;
@@ -633,9 +633,9 @@ std::string WbWriterVtkBinary::writeOctsWithNodeData(const string &filename, vec
     ofstream out(vtkfilename.c_str(), ofstream::out | ofstream::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -643,7 +643,7 @@ std::string WbWriterVtkBinary::writeOctsWithNodeData(const string &filename, vec
     }
 
     // WRITE BIGENDIAN VtkBinary FILE
-    bool swapByte = UbSystem::isLittleEndian();
+    bool swapByte = ub_system::isLittleEndian();
     int nofNodes  = (int)nodes.size();
     int nofCells  = (int)cells.size();
 
@@ -665,9 +665,9 @@ std::string WbWriterVtkBinary::writeOctsWithNodeData(const string &filename, vec
         float x3 = val<3>(nodes[n]);
 
         if (swapByte) {
-            UbSystem::swapByteOrder((unsigned char *)&x1, sizeof(float));
-            UbSystem::swapByteOrder((unsigned char *)&x2, sizeof(float));
-            UbSystem::swapByteOrder((unsigned char *)&x3, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x1, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x2, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x3, sizeof(float));
         }
 
         out.write((char *)&x1, sizeof(float));
@@ -681,7 +681,7 @@ std::string WbWriterVtkBinary::writeOctsWithNodeData(const string &filename, vec
 
     int nodesPerCellDummy = 8; // nofNodesPerCell
     if (swapByte)
-        UbSystem::swapByteOrder((unsigned char *)&nodesPerCellDummy, sizeof(int));
+        ub_system::swapByteOrder((unsigned char *)&nodesPerCellDummy, sizeof(int));
     for (int c = 0; c < (int)cells.size(); c++) {
         int BSW = val<1>(cells[c]);
         int TSW = val<5>(cells[c]);
@@ -692,14 +692,14 @@ std::string WbWriterVtkBinary::writeOctsWithNodeData(const string &filename, vec
         int BNE = val<4>(cells[c]);
         int TNE = val<8>(cells[c]);
         if (swapByte) {
-            UbSystem::swapByteOrder((unsigned char *)&BSW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&BSE, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&BNW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&BNE, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&TSW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&TSE, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&TNW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&TNE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&BSW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&BSE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&BNW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&BNE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&TSW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&TSE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&TNW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&TNE, sizeof(int));
         }
 
         out.write((char *)&nodesPerCellDummy, sizeof(int));
@@ -717,7 +717,7 @@ std::string WbWriterVtkBinary::writeOctsWithNodeData(const string &filename, vec
     out << "CELL_TYPES " << (int)cells.size() << "\n";
     int celltype = 11;
     if (swapByte)
-        UbSystem::swapByteOrder((unsigned char *)&celltype, sizeof(int));
+        ub_system::swapByteOrder((unsigned char *)&celltype, sizeof(int));
     for (int c = 0; c < nofCells; c++)
         out.write((char *)&celltype, sizeof(int));
 
@@ -733,7 +733,7 @@ std::string WbWriterVtkBinary::writeOctsWithNodeData(const string &filename, vec
         for (int d = 0; d < (int)nodedata[s].size(); d++) {
             float dummy = (float)nodedata[s][d];
             if (swapByte)
-                UbSystem::swapByteOrder((unsigned char *)&dummy, sizeof(float));
+                ub_system::swapByteOrder((unsigned char *)&dummy, sizeof(float));
             out.write((const char *)&dummy, sizeof(float));
         }
         out << endl;
@@ -754,9 +754,9 @@ std::string WbWriterVtkBinary::writeOcts(const string &filename, vector<UbTupleF
     ofstream out(vtkfilename.c_str(), ofstream::out | ofstream::binary);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
@@ -765,7 +765,7 @@ std::string WbWriterVtkBinary::writeOcts(const string &filename, vector<UbTupleF
 
     // HEADER-SECTION
     // WRITE BIGENDIAN VtkBinary FILE
-    bool swapByte = UbSystem::isLittleEndian();
+    bool swapByte = ub_system::isLittleEndian();
     int nofNodes  = (int)nodes.size();
     int nofCells  = (int)cells.size();
 
@@ -787,9 +787,9 @@ std::string WbWriterVtkBinary::writeOcts(const string &filename, vector<UbTupleF
         float x3 = val<3>(nodes[n]);
 
         if (swapByte) {
-            UbSystem::swapByteOrder((unsigned char *)&x1, sizeof(float));
-            UbSystem::swapByteOrder((unsigned char *)&x2, sizeof(float));
-            UbSystem::swapByteOrder((unsigned char *)&x3, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x1, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x2, sizeof(float));
+            ub_system::swapByteOrder((unsigned char *)&x3, sizeof(float));
         }
 
         out.write((char *)&x1, sizeof(float));
@@ -803,7 +803,7 @@ std::string WbWriterVtkBinary::writeOcts(const string &filename, vector<UbTupleF
 
     int nodesPerCellDummy = 8; // nofNodesPerCell
     if (swapByte)
-        UbSystem::swapByteOrder((unsigned char *)&nodesPerCellDummy, sizeof(int));
+        ub_system::swapByteOrder((unsigned char *)&nodesPerCellDummy, sizeof(int));
     for (int c = 0; c < (int)cells.size(); c++) {
         int BSW = val<1>(cells[c]);
         int TSW = val<5>(cells[c]);
@@ -814,14 +814,14 @@ std::string WbWriterVtkBinary::writeOcts(const string &filename, vector<UbTupleF
         int BNE = val<4>(cells[c]);
         int TNE = val<8>(cells[c]);
         if (swapByte) {
-            UbSystem::swapByteOrder((unsigned char *)&BSW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&BSE, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&BNW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&BNE, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&TSW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&TSE, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&TNW, sizeof(int));
-            UbSystem::swapByteOrder((unsigned char *)&TNE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&BSW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&BSE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&BNW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&BNE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&TSW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&TSE, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&TNW, sizeof(int));
+            ub_system::swapByteOrder((unsigned char *)&TNE, sizeof(int));
         }
 
         out.write((char *)&nodesPerCellDummy, sizeof(int));
@@ -839,7 +839,7 @@ std::string WbWriterVtkBinary::writeOcts(const string &filename, vector<UbTupleF
     out << "CELL_TYPES " << (int)cells.size() << "\n";
     int celltype = 11;
     if (swapByte)
-        UbSystem::swapByteOrder((unsigned char *)&celltype, sizeof(int));
+        ub_system::swapByteOrder((unsigned char *)&celltype, sizeof(int));
     for (int c = 0; c < nofCells; c++)
         out.write((char *)&celltype, sizeof(int));
 
diff --git a/src/basics/writer/WbWriterVtkXmlASCII.cpp b/src/basics/writer/WbWriterVtkXmlASCII.cpp
index 5efe834193a97e54bb0158e927de533776fac76d..9a0f7182bdc6da3059afa05061650dabe94a56ca 100644
--- a/src/basics/writer/WbWriterVtkXmlASCII.cpp
+++ b/src/basics/writer/WbWriterVtkXmlASCII.cpp
@@ -48,9 +48,9 @@ std::string WbWriterVtkXmlASCII::writeCollection(const std::string &filename, co
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -58,7 +58,7 @@ std::string WbWriterVtkXmlASCII::writeCollection(const std::string &filename, co
     }
 
     std::string endian;
-    if (UbSystem::isLittleEndian())
+    if (ub_system::isLittleEndian())
         endian = "LittleEndian";
     else
         endian = "BigEndian";
@@ -118,9 +118,9 @@ std::string WbWriterVtkXmlASCII::writeParallelFile(const string &filename, vecto
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -164,9 +164,9 @@ std::string WbWriterVtkXmlASCII::writeQuads(const string &filename, vector<UbTup
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -236,9 +236,9 @@ std::string WbWriterVtkXmlASCII::writeQuadsWithNodeData(const string &filename,
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -320,9 +320,9 @@ std::string WbWriterVtkXmlASCII::writeQuadsWithCellData(const string &filename,
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -409,9 +409,9 @@ string WbWriterVtkXmlASCII::writeQuadsWithNodeAndCellData(const string &filename
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -505,9 +505,9 @@ std::string WbWriterVtkXmlASCII::writeLines(const string &filename, vector<UbTup
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -576,8 +576,8 @@ std::string WbWriterVtkXmlASCII::writeLines(const string &filename, vector<UbTup
 //   if(!out)
 //   {
 //      out.clear(); //flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-//      string path = UbSystem::getPathFromString(vtkfilename);
-//      if(path.size()>0){UbSystem::makeDirectory(path);out.open(vtkfilename.c_str());}
+//      string path = ub_system::getPathFromString(vtkfilename);
+//      if(path.size()>0){ub_system::makeDirectory(path);out.open(vtkfilename.c_str());}
 //      if(!out) throw UbException(UB_EXARGS,"couldn't open file "+vtkfilename);
 //   }
 //
@@ -653,9 +653,9 @@ std::string WbWriterVtkXmlASCII::writeTriangles(const string &filename, vector<U
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -726,9 +726,9 @@ std::string WbWriterVtkXmlASCII::writeTrianglesWithNodeData(const std::string &f
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -810,9 +810,9 @@ std::string WbWriterVtkXmlASCII::writeOctsWithCellData(const string &filename, v
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -897,9 +897,9 @@ std::string WbWriterVtkXmlASCII::writeOctsWithNodeData(const string &filename, v
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -985,9 +985,9 @@ std::string WbWriterVtkXmlASCII::writeOcts(const string &filename, vector<UbTupl
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -1055,9 +1055,9 @@ std::string WbWriterVtkXmlASCII::writeNodes(const std::string &filename, std::ve
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -1124,9 +1124,9 @@ std::string WbWriterVtkXmlASCII::writeNodesWithNodeData(const std::string &filen
     std::ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -1212,9 +1212,9 @@ std::string WbWriterVtkXmlASCII::writeNodesWithNodeDataDouble(const std::string
     out.precision(std::numeric_limits<double>::digits10 + 1);
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
diff --git a/src/basics/writer/WbWriterVtkXmlBinary.cpp b/src/basics/writer/WbWriterVtkXmlBinary.cpp
index 90b7c1941bb12f9b940d96dd695e065901e1919a..b2636977033b615d88fb67df746a4f9b2ffebc6e 100644
--- a/src/basics/writer/WbWriterVtkXmlBinary.cpp
+++ b/src/basics/writer/WbWriterVtkXmlBinary.cpp
@@ -45,9 +45,9 @@ ofstream createFileStream(const std::string &vtkFilename)
     ofstream outputFileStream(vtkFilename.c_str(), ios::out | ios::binary);
     if (!outputFileStream) {
         outputFileStream.clear();
-        const std::string path = UbSystem::getPathFromString(vtkFilename);
+        const std::string path = ub_system::getPathFromString(vtkFilename);
         if (!path.empty()) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             outputFileStream.open(vtkFilename.c_str(), ios::out | ios::binary);
         }
         if (!outputFileStream) throw UbException(UB_EXARGS, "couldn't open file " + vtkFilename);
@@ -57,7 +57,7 @@ ofstream createFileStream(const std::string &vtkFilename)
 
 void addCollectionHeader(std::ofstream &outputFileStream)
 {
-    std::string endian = UbSystem::isLittleEndian() ? "LittleEndian" : "BigEndian";
+    std::string endian = ub_system::isLittleEndian() ? "LittleEndian" : "BigEndian";
     outputFileStream << "<VTKFile type=\"Collection\" version=\"0.1\" byte_order=\"" << endian << "\" >" << endl;
     outputFileStream << "   <Collection>" << endl;
 }
@@ -406,8 +406,8 @@ string WbWriterVtkXmlBinary::writeLinesWithLineData(const string &filename, vect
 //   if(!out)
 //   {
 //      out.clear(); //flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-//      string path = UbSystem::getPathFromString(vtkfilename);
-//      if(path.size()>0){ UbSystem::makeDirectory(path); out.open(vtkfilename.c_str(),ios::out | ios::binary);}
+//      string path = ub_system::getPathFromString(vtkfilename);
+//      if(path.size()>0){ ub_system::makeDirectory(path); out.open(vtkfilename.c_str(),ios::out | ios::binary);}
 //      if(!out) throw UbException(UB_EXARGS,"couldn't open file "+vtkfilename);
 //   }
 //
diff --git a/src/basics/writer/WbWriterVtkXmlImageBinary.cpp b/src/basics/writer/WbWriterVtkXmlImageBinary.cpp
index b1f6685b52225d71f8f231e6815f8a55b514a88a..40e01b56b6301919bbc63fe6357875c5e4c1a3b9 100644
--- a/src/basics/writer/WbWriterVtkXmlImageBinary.cpp
+++ b/src/basics/writer/WbWriterVtkXmlImageBinary.cpp
@@ -47,9 +47,9 @@ string WbWriterVtkXmlImageBinary::writeCollection(const string &filename, const
     ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -57,7 +57,7 @@ string WbWriterVtkXmlImageBinary::writeCollection(const string &filename, const
     }
 
     string endian;
-    if (UbSystem::isLittleEndian())
+    if (ub_system::isLittleEndian())
         endian = "LittleEndian";
     else
         endian = "BigEndian";
@@ -118,9 +118,9 @@ string WbWriterVtkXmlImageBinary::writeParallelFile(const string &filename, cons
     ofstream out(vtkfilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str());
         }
         if (!out)
@@ -266,9 +266,9 @@ void WbWriterVtkXmlImageBinary::writeData(const string &vtkfilename, vector<stri
 
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(vtkfilename);
+        string path = ub_system::getPathFromString(vtkfilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(vtkfilename.c_str(), ios::out | ios::binary);
         }
         if (!out)
diff --git a/src/basics/writer/WbWriterX3D.cpp b/src/basics/writer/WbWriterX3D.cpp
index ff05e756fa0e8beffaf6fa34f3190df4ace83652..30323c836307d974aee94f357c7af44dc5f7806c 100644
--- a/src/basics/writer/WbWriterX3D.cpp
+++ b/src/basics/writer/WbWriterX3D.cpp
@@ -46,9 +46,9 @@ std::string WbWriterX3D::writeTriangles(const string &filename, vector<UbTupleFl
     std::ofstream out(X3DFilename.c_str());
     if (!out) {
         out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-        string path = UbSystem::getPathFromString(X3DFilename);
+        string path = ub_system::getPathFromString(X3DFilename);
         if (path.size() > 0) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             out.open(X3DFilename.c_str());
         }
         if (!out)
diff --git a/src/cpu/core/BoundaryConditions/BCFunction.h b/src/cpu/core/BoundaryConditions/BCFunction.h
index 33cb2620acd87590d41b11116c32dc41b8411591..18e3239ffa8d39df61a0ac48a11125d93699ef78 100644
--- a/src/cpu/core/BoundaryConditions/BCFunction.h
+++ b/src/cpu/core/BoundaryConditions/BCFunction.h
@@ -48,7 +48,7 @@ public:
     static const real INFCONST;
 
 public:
-    BCFunction() : starttime(-Ub::inf), endtime(-Ub::inf) {}
+    BCFunction() : starttime(-ub_math::inf), endtime(-ub_math::inf) {}
     BCFunction(const mu::Parser &function, const real &starttime, const real &endtime)
         : function(function), starttime(starttime), endtime(endtime)
     {
diff --git a/src/cpu/core/BoundaryConditions/BCStrategy.cpp b/src/cpu/core/BoundaryConditions/BCStrategy.cpp
index eddf721ad223b9f27a2a5c2c5b602f6f845f4e00..aab9fd69c6833f3da52b29274695c27efc374a4c 100644
--- a/src/cpu/core/BoundaryConditions/BCStrategy.cpp
+++ b/src/cpu/core/BoundaryConditions/BCStrategy.cpp
@@ -60,14 +60,14 @@ void BCStrategy::setCompressible(bool c)
     compressible = c;
 
     if (this->compressible) {
-        calcFeqsForDirFct  = &D3Q27System::getCompFeqForDirection;
-        calcMacrosFct      = &D3Q27System::calcCompMacroscopicValues;
-        calcFeqFct         = &D3Q27System::calcCompFeq;
+        calcFeqsForDirFct  = &d3q27_system::getCompFeqForDirection;
+        calcMacrosFct      = &d3q27_system::calcCompMacroscopicValues;
+        calcFeqFct         = &d3q27_system::calcCompFeq;
         compressibleFactor = c1o1;
     } else {
-        calcFeqsForDirFct  = &D3Q27System::getIncompFeqForDirection;
-        calcMacrosFct      = &D3Q27System::calcIncompMacroscopicValues;
-        calcFeqFct         = &D3Q27System::calcIncompFeq;
+        calcFeqsForDirFct  = &d3q27_system::getIncompFeqForDirection;
+        calcMacrosFct      = &d3q27_system::calcIncompMacroscopicValues;
+        calcFeqFct         = &d3q27_system::calcIncompFeq;
         compressibleFactor = c0o1;
     }
 }
diff --git a/src/cpu/core/BoundaryConditions/BoundaryConditions.h b/src/cpu/core/BoundaryConditions/BoundaryConditions.h
index 8454302bc275305e725fcdd14cb632aee9ed5aac..d48d2957e51805ca037265523c792d0ee252782e 100644
--- a/src/cpu/core/BoundaryConditions/BoundaryConditions.h
+++ b/src/cpu/core/BoundaryConditions/BoundaryConditions.h
@@ -52,9 +52,9 @@ public:
     BoundaryConditions()
     {
         UB_STATIC_ASSERT(sizeof(long long) >= 8);
-        UB_STATIC_ASSERT((sizeof(long long) * 8) >= (D3Q27System::FENDDIR + 1) * BoundaryConditions::optionDigits);
+        UB_STATIC_ASSERT((sizeof(long long) * 8) >= (d3q27_system::FENDDIR + 1) * BoundaryConditions::optionDigits);
 
-        for (int fdir = D3Q27System::FSTARTDIR; fdir <= D3Q27System::FENDDIR; fdir++)
+        for (int fdir = d3q27_system::FSTARTDIR; fdir <= d3q27_system::FENDDIR; fdir++)
             q[fdir] = -999.;
     }
     virtual ~BoundaryConditions() = default;
@@ -71,7 +71,7 @@ public:
 
     virtual bool hasBoundaryConditionFlag(const int &direction)
     {
-        assert(direction >= D3Q27System::FSTARTDIR && direction <= D3Q27System::FENDDIR);
+        assert(direction >= d3q27_system::FSTARTDIR && direction <= d3q27_system::FENDDIR);
 
         return (hasNoSlipBoundaryFlag(direction) || hasSlipBoundaryFlag(direction) ||
                 hasDensityBoundaryFlag(direction) || hasVelocityBoundaryFlag(direction) ||
@@ -82,7 +82,7 @@ protected:
     void setFlagBits(long long &flag, const int &direction, const short &secOpt)
     {
         if ((secOpt + 1) > maxOptionVal)
-            throw UbException(UB_EXARGS, "error: option > " + UbSystem::toString(maxOptionVal - 1));
+            throw UbException(UB_EXARGS, "error: option > " + ub_system::toString(maxOptionVal - 1));
 
         // all digits at the respective positions to "0"
         flag &= ~(maxOptionVal << (direction * optionDigits));
@@ -320,7 +320,7 @@ public:
     static const long long maxOptionVal; // = ( 1<<optionDigits ) - 1; //2^3-1 -> 7
 
 protected:
-    float q[D3Q27System::FENDDIR + 1];
+    float q[d3q27_system::FENDDIR + 1];
 
     long long noslipBoundaryFlags{ 0 };
     long long slipBoundaryFlags{ 0 };
diff --git a/src/cpu/core/BoundaryConditions/NoSlipBC.h b/src/cpu/core/BoundaryConditions/NoSlipBC.h
index 7b3da6352808a26c9172fcc5d118e51fe0678207..30bd87a021ece918e0f0fac65debe827ab135cf3 100644
--- a/src/cpu/core/BoundaryConditions/NoSlipBC.h
+++ b/src/cpu/core/BoundaryConditions/NoSlipBC.h
@@ -51,7 +51,7 @@ public:
                              const real & /*worldX1*/, const real & /*worldX2*/, const real & /*worldX3*/,
                              const real &q, const int &fdirection, const real & /*time*/ = 0) override
     {
-        bc->setNoSlipBoundaryFlag(D3Q27System::INVDIR[fdirection], secondaryBcOption);
+        bc->setNoSlipBoundaryFlag(d3q27_system::INVDIR[fdirection], secondaryBcOption);
         bc->setQ((real)q, fdirection);
     }
     void adaptBC(const D3Q27Interactor & /*interactor*/, SPtr<BoundaryConditions> bc, const real & /*worldX1*/,
diff --git a/src/cpu/core/BoundaryConditions/NoSlipInterpolated.cpp b/src/cpu/core/BoundaryConditions/NoSlipInterpolated.cpp
index 7687e89c96c468c8fed81d876bd04361c7874ba8..f37a805367cd1af77b35549d5e605a56bdb9f01a 100644
--- a/src/cpu/core/BoundaryConditions/NoSlipInterpolated.cpp
+++ b/src/cpu/core/BoundaryConditions/NoSlipInterpolated.cpp
@@ -55,7 +55,7 @@ void NoSlipInterpolated::addDistributions(SPtr<DistributionArray3D> distribution
 void NoSlipInterpolated::applyBC()
 {
     using namespace vf::basics::constant;
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     real f[ENDF + 1];
     real feq[ENDF + 1];
     distributions->getPostCollisionDistribution(f, x1, x2, x3);
diff --git a/src/cpu/core/BoundaryConditions/OutflowNonReflecting.cpp b/src/cpu/core/BoundaryConditions/OutflowNonReflecting.cpp
index 8f8f4fb3dbdafbc69614944af840c181e3706888..cd3dd1b6087be30e80981bcf03e6745f451412d4 100644
--- a/src/cpu/core/BoundaryConditions/OutflowNonReflecting.cpp
+++ b/src/cpu/core/BoundaryConditions/OutflowNonReflecting.cpp
@@ -59,7 +59,7 @@ void OutflowNonReflecting::applyBC()
 {
     using namespace vf::lbm::dir;
 
-    using namespace D3Q27System;
+    using namespace d3q27_system;
  //   using namespace UbMath;
     using namespace vf::basics::constant;
 
diff --git a/src/cpu/core/BoundaryConditions/OutflowNonReflectingWithPressure.cpp b/src/cpu/core/BoundaryConditions/OutflowNonReflectingWithPressure.cpp
index 5aa51ed3098cf1b7c18a6c23ab9ce76dd2d5e472..0292d559fe9142ead53c15ca60c582d8d44c34b3 100644
--- a/src/cpu/core/BoundaryConditions/OutflowNonReflectingWithPressure.cpp
+++ b/src/cpu/core/BoundaryConditions/OutflowNonReflectingWithPressure.cpp
@@ -66,7 +66,7 @@ void OutflowNonReflectingWithPressure::applyBC()
 {
     using namespace vf::lbm::dir;
 
-    using namespace D3Q27System;
+    using namespace d3q27_system;
  //   using namespace UbMath;
     using namespace vf::basics::constant;
 
diff --git a/src/cpu/core/BoundaryConditions/PressureBC.cpp b/src/cpu/core/BoundaryConditions/PressureBC.cpp
index ff1fe189a015ec73706fc3447b311199f4b6268a..b11d095e41d8f28c2ced4afbb5c88ff5b0780afa 100644
--- a/src/cpu/core/BoundaryConditions/PressureBC.cpp
+++ b/src/cpu/core/BoundaryConditions/PressureBC.cpp
@@ -75,8 +75,8 @@ void PressureBC::init()
     try // initilialization and validation of functions
     {
         for (size_t pos = 0; pos < densBCs.size(); ++pos) {
-            if (!(UbMath::equal(BCFunction::INFCONST, densBCs[pos].getEndTime()) &&
-                  UbMath::greaterEqual(this->timeStep, densBCs[pos].getStartTime()))) {
+            if (!(ub_math::equal(BCFunction::INFCONST, densBCs[pos].getEndTime()) &&
+                  ub_math::greaterEqual(this->timeStep, densBCs[pos].getStartTime()))) {
                 this->setTimeDependent();
             }
 
@@ -102,19 +102,19 @@ void PressureBC::init(const D3Q27Interactor *const & /*interactor*/, const real
 {
     this->timeStep           = time;
     this->tmpDensityFunction = NULL;
-    real maxEndtime        = -Ub::inf;
+    real maxEndtime        = -ub_math::inf;
 
     // aktuelle Densityfunction bestimmen
     for (size_t pos = 0; pos < densBCs.size(); ++pos) {
-        if (UbMath::equal(densBCs[pos].getEndTime(), BCFunction::INFTIMEDEPENDENT))
-            maxEndtime = Ub::inf;
-        maxEndtime = UbMath::max(maxEndtime, densBCs[pos].getStartTime(),
+        if (ub_math::equal(densBCs[pos].getEndTime(), BCFunction::INFTIMEDEPENDENT))
+            maxEndtime = ub_math::inf;
+        maxEndtime = ub_math::max(maxEndtime, densBCs[pos].getStartTime(),
                                  densBCs[pos].getEndTime()); // startTime abfragen, da  INFCONST=-10
 
-        if (UbMath::greaterEqual(this->timeStep, densBCs[pos].getStartTime())) {
-            if (UbMath::lessEqual(this->timeStep, densBCs[pos].getEndTime()) ||
-                UbMath::equal(densBCs[pos].getEndTime(), (real)BCFunction::INFCONST) ||
-                UbMath::equal(densBCs[pos].getEndTime(), (real)BCFunction::INFTIMEDEPENDENT)) {
+        if (ub_math::greaterEqual(this->timeStep, densBCs[pos].getStartTime())) {
+            if (ub_math::lessEqual(this->timeStep, densBCs[pos].getEndTime()) ||
+                ub_math::equal(densBCs[pos].getEndTime(), (real)BCFunction::INFCONST) ||
+                ub_math::equal(densBCs[pos].getEndTime(), (real)BCFunction::INFTIMEDEPENDENT)) {
                 tmpDensityFunction = &densBCs[pos].getFunction();
                 break;
             }
@@ -123,7 +123,7 @@ void PressureBC::init(const D3Q27Interactor *const & /*interactor*/, const real
 
     // wenn funktionen zweitlich konstant sind und bis t=unendlich gelten
     // kann man zeitabhaengigkeit deaktivieren
-    if (UbMath::greaterEqual(time, maxEndtime))
+    if (ub_math::greaterEqual(time, maxEndtime))
         this->unsetTimeDependent();
 
     UBLOG(logDEBUG4, "D3Q27DensityBC::init(time="
@@ -142,7 +142,7 @@ void PressureBC::adaptBCForDirection(const D3Q27Interactor & /*interactor*/, SPt
                                            const real & /*worldX3*/, const real &q, const int &fdirection,
                                            const real & /*time*/)
 {
-    bc->setDensityBoundaryFlag(D3Q27System::INVDIR[fdirection], secondaryBcOption);
+    bc->setDensityBoundaryFlag(d3q27_system::INVDIR[fdirection], secondaryBcOption);
     bc->setQ((real)q, fdirection);
 }
 /*==========================================================*/
diff --git a/src/cpu/core/BoundaryConditions/PressureNonEquilibrium.cpp b/src/cpu/core/BoundaryConditions/PressureNonEquilibrium.cpp
index 86140398126fcc598421c02799df1beded889946..aff601233b28c783bc573e71e77ad734d2cdaaa6 100644
--- a/src/cpu/core/BoundaryConditions/PressureNonEquilibrium.cpp
+++ b/src/cpu/core/BoundaryConditions/PressureNonEquilibrium.cpp
@@ -58,7 +58,7 @@ void PressureNonEquilibrium::applyBC()
 {
     using namespace vf::lbm::dir;
 
-    real f[D3Q27System::ENDF + 1];
+    real f[d3q27_system::ENDF + 1];
     distributions->getPostCollisionDistribution(f, x1, x2, x3);
     int nx1 = x1;
     int nx2 = x2;
@@ -87,7 +87,7 @@ void PressureNonEquilibrium::applyBC()
     // vx2=(fabs(vx2)>vlimit) ? vx2/fabs(vx2)*vlimit : vx2;
     // vx3=(fabs(vx3)>vlimit) ? vx3/fabs(vx3)*vlimit : vx3;
     real rhoBC = bcPtr->getBoundaryDensity();
-    for (int fdir = D3Q27System::STARTF; fdir <= D3Q27System::ENDF; fdir++) {
+    for (int fdir = d3q27_system::STARTF; fdir <= d3q27_system::ENDF; fdir++) {
         if (bcPtr->hasDensityBoundaryFlag(fdir)) {
             // Martins NEQ ADDON
             ////original: 15.2.2013:
diff --git a/src/cpu/core/BoundaryConditions/SlipBC.h b/src/cpu/core/BoundaryConditions/SlipBC.h
index 1369ecc765bb577635048cae61ebd88b6097605e..1f6a3f5f2e967f674ea4c6c4605d36b825eebaf2 100644
--- a/src/cpu/core/BoundaryConditions/SlipBC.h
+++ b/src/cpu/core/BoundaryConditions/SlipBC.h
@@ -51,7 +51,7 @@ public:
                              const real & /*worldX1*/, const real & /*worldX2*/, const real & /*worldX3*/,
                              const real &q, const int &fdirection, const real & /*time*/ = 0) override
     {
-        bc->setSlipBoundaryFlag(D3Q27System::INVDIR[fdirection], secondaryBcOption);
+        bc->setSlipBoundaryFlag(d3q27_system::INVDIR[fdirection], secondaryBcOption);
         bc->setQ((real)q, fdirection);
     }
     void adaptBC(const D3Q27Interactor &interactor, SPtr<BoundaryConditions> bc, const real &worldX1,
diff --git a/src/cpu/core/BoundaryConditions/SlipBounceBack.cpp b/src/cpu/core/BoundaryConditions/SlipBounceBack.cpp
index 351d5f5020cb292eddcddfd129979e9bcb67daac..561447704712fa254273acf65c22908f74b01d1c 100644
--- a/src/cpu/core/BoundaryConditions/SlipBounceBack.cpp
+++ b/src/cpu/core/BoundaryConditions/SlipBounceBack.cpp
@@ -60,8 +60,8 @@ void SlipBounceBack::applyBC()
 {
     using namespace vf::lbm::dir;
 
-   real f[D3Q27System::ENDF+1];
-   real feq[D3Q27System::ENDF+1];
+   real f[d3q27_system::ENDF+1];
+   real feq[d3q27_system::ENDF+1];
    distributions->getPostCollisionDistribution(f, x1, x2, x3);
    real vx1, vx2, vx3, drho, rho;
    calcMacrosFct(f, drho, vx1, vx2, vx3);
@@ -76,12 +76,12 @@ void SlipBounceBack::applyBC()
    vx2 = vx2 - amp * val<2>(normale); //normale zeigt von struktur weg!
    vx3 = vx3 - amp * val<3>(normale); //normale zeigt von struktur weg!
 
-   for (int fdir = D3Q27System::FSTARTDIR; fdir<=D3Q27System::FENDDIR; fdir++)
+   for (int fdir = d3q27_system::FSTARTDIR; fdir<=d3q27_system::FENDDIR; fdir++)
    {
       if (bcPtr->hasSlipBoundaryFlag(fdir))
       {
          //quadratic bounce back
-         const int invDir = D3Q27System::INVDIR[fdir];
+         const int invDir = d3q27_system::INVDIR[fdir];
          real velocity = vf::basics::constant::c0o1;
          switch (invDir)
          {
@@ -114,7 +114,7 @@ void SlipBounceBack::applyBC()
          default: throw UbException(UB_EXARGS, "unknown error");
          }
          real fReturn = f[invDir] - velocity * rho;
-         distributions->setPostCollisionDistributionForDirection(fReturn, x1+D3Q27System::DX1[invDir], x2+D3Q27System::DX2[invDir], x3+D3Q27System::DX3[invDir], fdir);
+         distributions->setPostCollisionDistributionForDirection(fReturn, x1+d3q27_system::DX1[invDir], x2+d3q27_system::DX2[invDir], x3+d3q27_system::DX3[invDir], fdir);
       }
    }
 }
diff --git a/src/cpu/core/BoundaryConditions/SlipInterpolated.cpp b/src/cpu/core/BoundaryConditions/SlipInterpolated.cpp
index 0d88bfb91993c596052b29392828ea23cbf6cbca..723bb7f4ffc48901eb5c1de452d94e871a047bed 100644
--- a/src/cpu/core/BoundaryConditions/SlipInterpolated.cpp
+++ b/src/cpu/core/BoundaryConditions/SlipInterpolated.cpp
@@ -55,8 +55,8 @@ void SlipInterpolated::applyBC()
 {
     using namespace vf::lbm::dir;
 
-    real f[D3Q27System::ENDF + 1];
-    real feq[D3Q27System::ENDF + 1];
+    real f[d3q27_system::ENDF + 1];
+    real feq[d3q27_system::ENDF + 1];
     distributions->getPostCollisionDistribution(f, x1, x2, x3);
     real rho, vx1, vx2, vx3, drho;
     calcMacrosFct(f, drho, vx1, vx2, vx3);
@@ -71,12 +71,12 @@ void SlipInterpolated::applyBC()
 
     rho = vf::basics::constant::c1o1 + drho * compressibleFactor;
 
-   for (int fdir = D3Q27System::FSTARTDIR; fdir<=D3Q27System::FENDDIR; fdir++)
+   for (int fdir = d3q27_system::FSTARTDIR; fdir<=d3q27_system::FENDDIR; fdir++)
    {
       if (bcPtr->hasSlipBoundaryFlag(fdir))
       {
          //quadratic bounce back
-         const int invDir = D3Q27System::INVDIR[fdir];
+         const int invDir = d3q27_system::INVDIR[fdir];
          real q = bcPtr->getQ(invDir);// m+m q=0 stabiler
          //vx3=0;
          real velocity = vf::basics::constant::c0o1;
@@ -111,7 +111,7 @@ void SlipInterpolated::applyBC()
          default: throw UbException(UB_EXARGS, "unknown error");
          }
          real fReturn = ((vf::basics::constant::c1o1-q)/(vf::basics::constant::c1o1+q))*((f[invDir]-feq[invDir])/(vf::basics::constant::c1o1-collFactor)+feq[invDir])+((q*(f[invDir]+f[fdir])-velocity*rho)/(vf::basics::constant::c1o1+q));
-         distributions->setPostCollisionDistributionForDirection(fReturn, x1+D3Q27System::DX1[invDir], x2+D3Q27System::DX2[invDir], x3+D3Q27System::DX3[invDir], fdir);
+         distributions->setPostCollisionDistributionForDirection(fReturn, x1+d3q27_system::DX1[invDir], x2+d3q27_system::DX2[invDir], x3+d3q27_system::DX3[invDir], fdir);
       }
    }
 }
diff --git a/src/cpu/core/BoundaryConditions/ThinWallNoSlip.cpp b/src/cpu/core/BoundaryConditions/ThinWallNoSlip.cpp
index 25ced575e8fec598932115f7900c556483b03c8f..c15c9f314ebfe8dcf728fa73176a703b5b72d9e4 100644
--- a/src/cpu/core/BoundaryConditions/ThinWallNoSlip.cpp
+++ b/src/cpu/core/BoundaryConditions/ThinWallNoSlip.cpp
@@ -52,8 +52,8 @@ SPtr<BCStrategy> ThinWallNoSlip::clone()
 //////////////////////////////////////////////////////////////////////////
 void ThinWallNoSlip::applyBC()
 {
-    real f[D3Q27System::ENDF + 1];
-    real feq[D3Q27System::ENDF + 1];
+    real f[d3q27_system::ENDF + 1];
+    real feq[d3q27_system::ENDF + 1];
     distributions->getPostCollisionDistribution(f, x1, x2, x3);
     real rho, vx1, vx2, vx3;
     calcMacrosFct(f, rho, vx1, vx2, vx3);
@@ -61,9 +61,9 @@ void ThinWallNoSlip::applyBC()
 
     real fReturn;
 
-    for (int fdir = D3Q27System::FSTARTDIR; fdir <= D3Q27System::FENDDIR; fdir++) {
+    for (int fdir = d3q27_system::FSTARTDIR; fdir <= d3q27_system::FENDDIR; fdir++) {
         if (bcPtr->hasNoSlipBoundaryFlag(fdir)) {
-            const int invDir = D3Q27System::INVDIR[fdir];
+            const int invDir = d3q27_system::INVDIR[fdir];
             if (pass == 1) {
                 real q = bcPtr->getQ(invDir);
                 fReturn   = ((vf::basics::constant::c1o1 - q) / (vf::basics::constant::c1o1 + q)) * vf::basics::constant::c1o2 *
@@ -77,8 +77,8 @@ void ThinWallNoSlip::applyBC()
                 // fReturn = distributionsTemp->getPostCollisionDistributionForDirection(x1 + D3Q27System::DX1[invDir], x2 +
                 // D3Q27System::DX2[invDir], x3 + D3Q27System::DX3[invDir], fdir);
                 fReturn = fTemp[fdir];
-                distributions->setPostCollisionDistributionForDirection(fReturn, x1 + D3Q27System::DX1[invDir],
-                                                           x2 + D3Q27System::DX2[invDir], x3 + D3Q27System::DX3[invDir],
+                distributions->setPostCollisionDistributionForDirection(fReturn, x1 + d3q27_system::DX1[invDir],
+                                                           x2 + d3q27_system::DX2[invDir], x3 + d3q27_system::DX3[invDir],
                                                            fdir);
             }
         }
diff --git a/src/cpu/core/BoundaryConditions/ThinWallNoSlip.h b/src/cpu/core/BoundaryConditions/ThinWallNoSlip.h
index d37ab43b677df148738be701028d27b8a2c00107..24ddae24b592996ddec54857580e94ffd245be80 100644
--- a/src/cpu/core/BoundaryConditions/ThinWallNoSlip.h
+++ b/src/cpu/core/BoundaryConditions/ThinWallNoSlip.h
@@ -55,7 +55,7 @@ protected:
 
 private:
     int pass;
-    real fTemp[D3Q27System::ENDF + 1];
+    real fTemp[d3q27_system::ENDF + 1];
 };
 #endif // ThinWallNoSlipBCStrategy_h__
 
diff --git a/src/cpu/core/BoundaryConditions/VelocityBC.cpp b/src/cpu/core/BoundaryConditions/VelocityBC.cpp
index 3d303879858b40071202f68d790273a0fa8606fe..d41f78968f9624b10d98213f34990d60d09dac35 100644
--- a/src/cpu/core/BoundaryConditions/VelocityBC.cpp
+++ b/src/cpu/core/BoundaryConditions/VelocityBC.cpp
@@ -100,11 +100,11 @@ VelocityBC::VelocityBC(const BCFunction &velBC, bool x1Dir, bool x2Dir, bool x3D
 /*==========================================================*/
 VelocityBC::VelocityBC(const BCFunction &velVx1BC, const BCFunction &velVx2BC, const BCFunction &velVx3BC)
 {
-    if (velVx1BC.getEndTime() != -Ub::inf)
+    if (velVx1BC.getEndTime() != -ub_math::inf)
         this->vx1BCs.push_back(velVx1BC);
-    if (velVx2BC.getEndTime() != -Ub::inf)
+    if (velVx2BC.getEndTime() != -ub_math::inf)
         this->vx2BCs.push_back(velVx2BC);
-    if (velVx3BC.getEndTime() != -Ub::inf)
+    if (velVx3BC.getEndTime() != -ub_math::inf)
         this->vx3BCs.push_back(velVx3BC);
     this->init();
 }
@@ -185,8 +185,8 @@ void VelocityBC::init()
 void VelocityBC::init(std::vector<BCFunction> &vxBCs)
 {
     for (size_t pos = 0; pos < vxBCs.size(); ++pos) {
-        if (!(UbMath::equal(BCFunction::INFCONST, vxBCs[pos].getEndTime()) &&
-              UbMath::greaterEqual(this->timeStep, vxBCs[pos].getStartTime()))) {
+        if (!(ub_math::equal(BCFunction::INFCONST, vxBCs[pos].getEndTime()) &&
+              ub_math::greaterEqual(this->timeStep, vxBCs[pos].getStartTime()))) {
             this->setTimeDependent();
         }
 
@@ -205,70 +205,70 @@ void VelocityBC::init(const D3Q27Interactor *const &interactor, const real &time
     this->tmpVx1Function = this->tmpVx2Function = this->tmpVx3Function = NULL;
 
     // aktuelle velocityfunction bestimmen
-    real maxEndtime = -Ub::inf;
+    real maxEndtime = -ub_math::inf;
 
     for (size_t pos = 0; pos < vx1BCs.size(); ++pos) {
-        if (UbMath::equal(vx1BCs[pos].getEndTime(), BCFunction::INFTIMEDEPENDENT))
-            maxEndtime = Ub::inf;
-        maxEndtime = UbMath::max(maxEndtime, vx1BCs[pos].getStartTime(),
+        if (ub_math::equal(vx1BCs[pos].getEndTime(), BCFunction::INFTIMEDEPENDENT))
+            maxEndtime = ub_math::inf;
+        maxEndtime = ub_math::max(maxEndtime, vx1BCs[pos].getStartTime(),
                                  vx1BCs[pos].getEndTime()); // startTime abfragen, da  INFCONST=-10
 
-        if (UbMath::greaterEqual(this->timeStep, vx1BCs[pos].getStartTime())) {
-            if (UbMath::lessEqual(this->timeStep, vx1BCs[pos].getEndTime()) ||
-                UbMath::equal(vx1BCs[pos].getEndTime(), (real)BCFunction::INFCONST) ||
-                UbMath::equal(vx1BCs[pos].getEndTime(), (real)BCFunction::INFTIMEDEPENDENT)) {
+        if (ub_math::greaterEqual(this->timeStep, vx1BCs[pos].getStartTime())) {
+            if (ub_math::lessEqual(this->timeStep, vx1BCs[pos].getEndTime()) ||
+                ub_math::equal(vx1BCs[pos].getEndTime(), (real)BCFunction::INFCONST) ||
+                ub_math::equal(vx1BCs[pos].getEndTime(), (real)BCFunction::INFTIMEDEPENDENT)) {
                 tmpVx1Function = &vx1BCs[pos].getFunction();
                 break;
             }
         }
     }
     for (size_t pos = 0; pos < vx2BCs.size(); ++pos) {
-        if (UbMath::equal(vx2BCs[pos].getEndTime(), BCFunction::INFTIMEDEPENDENT))
-            maxEndtime = Ub::inf;
-        maxEndtime = UbMath::max(maxEndtime, vx2BCs[pos].getStartTime(),
+        if (ub_math::equal(vx2BCs[pos].getEndTime(), BCFunction::INFTIMEDEPENDENT))
+            maxEndtime = ub_math::inf;
+        maxEndtime = ub_math::max(maxEndtime, vx2BCs[pos].getStartTime(),
                                  vx2BCs[pos].getEndTime()); // startTime abfragen, da  INFCONST=-10
 
-        if (UbMath::greaterEqual(this->timeStep, vx2BCs[pos].getStartTime())) {
-            if (UbMath::lessEqual(this->timeStep, vx2BCs[pos].getEndTime()) ||
-                UbMath::equal(vx2BCs[pos].getEndTime(), (real)BCFunction::INFCONST) ||
-                UbMath::equal(vx2BCs[pos].getEndTime(), (real)BCFunction::INFTIMEDEPENDENT)) {
+        if (ub_math::greaterEqual(this->timeStep, vx2BCs[pos].getStartTime())) {
+            if (ub_math::lessEqual(this->timeStep, vx2BCs[pos].getEndTime()) ||
+                ub_math::equal(vx2BCs[pos].getEndTime(), (real)BCFunction::INFCONST) ||
+                ub_math::equal(vx2BCs[pos].getEndTime(), (real)BCFunction::INFTIMEDEPENDENT)) {
                 tmpVx2Function = &vx2BCs[pos].getFunction();
                 break;
             }
         }
     }
     for (size_t pos = 0; pos < vx3BCs.size(); ++pos) {
-        if (UbMath::equal(vx3BCs[pos].getEndTime(), BCFunction::INFTIMEDEPENDENT))
-            maxEndtime = Ub::inf;
-        maxEndtime = UbMath::max(maxEndtime, vx3BCs[pos].getStartTime(),
+        if (ub_math::equal(vx3BCs[pos].getEndTime(), BCFunction::INFTIMEDEPENDENT))
+            maxEndtime = ub_math::inf;
+        maxEndtime = ub_math::max(maxEndtime, vx3BCs[pos].getStartTime(),
                                  vx3BCs[pos].getEndTime()); // startTime abfragen, da  INFCONST=-10
 
-        if (UbMath::greaterEqual(this->timeStep, vx3BCs[pos].getStartTime())) {
-            if (UbMath::lessEqual(this->timeStep, vx3BCs[pos].getEndTime()) ||
-                UbMath::equal(vx3BCs[pos].getEndTime(), (real)BCFunction::INFCONST) ||
-                UbMath::equal(vx3BCs[pos].getEndTime(), (real)BCFunction::INFTIMEDEPENDENT)) {
+        if (ub_math::greaterEqual(this->timeStep, vx3BCs[pos].getStartTime())) {
+            if (ub_math::lessEqual(this->timeStep, vx3BCs[pos].getEndTime()) ||
+                ub_math::equal(vx3BCs[pos].getEndTime(), (real)BCFunction::INFCONST) ||
+                ub_math::equal(vx3BCs[pos].getEndTime(), (real)BCFunction::INFTIMEDEPENDENT)) {
                 tmpVx3Function = &vx3BCs[pos].getFunction();
                 break;
             }
         }
     }
 
-    if (UbMath::greaterEqual(time, maxEndtime)) {
+    if (ub_math::greaterEqual(time, maxEndtime)) {
         if (!this->isTimePeriodic())
             this->unsetTimeDependent();
         else // bei peridoic die interavalle neu setzen:
         {
-            if (UbMath::equal(maxEndtime, BCFunction::INFCONST))
+            if (ub_math::equal(maxEndtime, BCFunction::INFCONST))
                 for (size_t pos = 0; pos < vx1BCs.size(); ++pos) {
                     vx1BCs[pos].setStartTime(vx1BCs[pos].getStartTime() + timeStep);
                     vx1BCs[pos].setEndTime(vx1BCs[pos].getEndTime() + timeStep);
                 }
-            if (UbMath::equal(maxEndtime, BCFunction::INFCONST))
+            if (ub_math::equal(maxEndtime, BCFunction::INFCONST))
                 for (size_t pos = 0; pos < vx2BCs.size(); ++pos) {
                     vx2BCs[pos].setStartTime(vx2BCs[pos].getStartTime() + timeStep);
                     vx2BCs[pos].setEndTime(vx2BCs[pos].getEndTime() + timeStep);
                 }
-            if (UbMath::equal(maxEndtime, BCFunction::INFCONST))
+            if (ub_math::equal(maxEndtime, BCFunction::INFCONST))
                 for (size_t pos = 0; pos < vx3BCs.size(); ++pos) {
                     vx3BCs[pos].setStartTime(vx3BCs[pos].getStartTime() + timeStep);
                     vx3BCs[pos].setEndTime(vx3BCs[pos].getEndTime() + timeStep);
@@ -295,7 +295,7 @@ void VelocityBC::adaptBCForDirection(const D3Q27Interactor & /*interactor*/, SPt
                                             const real & /*worldX3*/, const real &q, const int &fdirection,
                                             const real & /*time*/)
 {
-    bc->setVelocityBoundaryFlag(D3Q27System::INVDIR[fdirection], secondaryBcOption);
+    bc->setVelocityBoundaryFlag(d3q27_system::INVDIR[fdirection], secondaryBcOption);
     bc->setQ((real)q, fdirection);
 }
 /*==========================================================*/
diff --git a/src/cpu/core/BoundaryConditions/VelocityBounceBack.cpp b/src/cpu/core/BoundaryConditions/VelocityBounceBack.cpp
index 8ad7705324046014c9c98496c9d4154e02dc3335..068353cebe94e3d61f6a86381bb1d7c33fefea11 100644
--- a/src/cpu/core/BoundaryConditions/VelocityBounceBack.cpp
+++ b/src/cpu/core/BoundaryConditions/VelocityBounceBack.cpp
@@ -58,21 +58,21 @@ void VelocityBounceBack::addDistributions(SPtr<DistributionArray3D> distribution
 //////////////////////////////////////////////////////////////////////////
 void VelocityBounceBack::applyBC()
 {
-   real f[D3Q27System::ENDF+1];
-   real feq[D3Q27System::ENDF+1];
+   real f[d3q27_system::ENDF+1];
+   real feq[d3q27_system::ENDF+1];
    distributions->getPostCollisionDistribution(f, x1, x2, x3);
    real vx1, vx2, vx3, drho;
    calcMacrosFct(f, drho, vx1, vx2, vx3);
    calcFeqFct(feq, drho, vx1, vx2, vx3);
 
-   for (int fdir = D3Q27System::FSTARTDIR; fdir<=D3Q27System::FENDDIR; fdir++)
+   for (int fdir = d3q27_system::FSTARTDIR; fdir<=d3q27_system::FENDDIR; fdir++)
    {
       if (bcPtr->hasVelocityBoundaryFlag(fdir))
       {
-         const int invDir = D3Q27System::INVDIR[fdir];
+         const int invDir = d3q27_system::INVDIR[fdir];
          real velocity = bcPtr->getBoundaryVelocity(invDir);
          real fReturn = f[invDir] - velocity;
-         distributions->setPostCollisionDistributionForDirection(fReturn, x1+D3Q27System::DX1[invDir], x2+D3Q27System::DX2[invDir], x3+D3Q27System::DX3[invDir], fdir);
+         distributions->setPostCollisionDistributionForDirection(fReturn, x1+d3q27_system::DX1[invDir], x2+d3q27_system::DX2[invDir], x3+d3q27_system::DX3[invDir], fdir);
       }
    }
 
diff --git a/src/cpu/core/BoundaryConditions/VelocityInterpolated.cpp b/src/cpu/core/BoundaryConditions/VelocityInterpolated.cpp
index 7aa38c889517bcdc2e78ff4960d33cf9b174e11e..885a2c38ec95baaecc287b67b075e5843872ad3d 100644
--- a/src/cpu/core/BoundaryConditions/VelocityInterpolated.cpp
+++ b/src/cpu/core/BoundaryConditions/VelocityInterpolated.cpp
@@ -55,8 +55,8 @@ void VelocityInterpolated::addDistributions(SPtr<DistributionArray3D> distributi
 //////////////////////////////////////////////////////////////////////////
 void VelocityInterpolated::applyBC()
 {
-    real f[D3Q27System::ENDF + 1];
-    real feq[D3Q27System::ENDF + 1];
+    real f[d3q27_system::ENDF + 1];
+    real feq[d3q27_system::ENDF + 1];
     distributions->getPostCollisionDistribution(f, x1, x2, x3);
     real rho, vx1, vx2, vx3, drho;
     calcMacrosFct(f, drho, vx1, vx2, vx3);
@@ -67,15 +67,15 @@ void VelocityInterpolated::applyBC()
 
     rho = vf::basics::constant::c1o1 + drho * compressibleFactor;
 
-    for (int fdir = D3Q27System::FSTARTDIR; fdir <= D3Q27System::FENDDIR; fdir++) {
+    for (int fdir = d3q27_system::FSTARTDIR; fdir <= d3q27_system::FENDDIR; fdir++) {
         if (bcPtr->hasVelocityBoundaryFlag(fdir)) {
-            const int invDir = D3Q27System::INVDIR[fdir];
+            const int invDir = d3q27_system::INVDIR[fdir];
             real q        = bcPtr->getQ(invDir);
             real velocity = bcPtr->getBoundaryVelocity(invDir);
             real fReturn = ((vf::basics::constant::c1o1 - q) / (vf::basics::constant::c1o1 + q)) * ((f[invDir] - feq[invDir]) / (vf::basics::constant::c1o1 - collFactor) + feq[invDir]) +
                               ((q * (f[invDir] + f[fdir]) - velocity * rho) / (vf::basics::constant::c1o1 + q));
-            distributions->setPostCollisionDistributionForDirection(fReturn, x1 + D3Q27System::DX1[invDir],
-                                                       x2 + D3Q27System::DX2[invDir], x3 + D3Q27System::DX3[invDir],
+            distributions->setPostCollisionDistributionForDirection(fReturn, x1 + d3q27_system::DX1[invDir],
+                                                       x2 + d3q27_system::DX2[invDir], x3 + d3q27_system::DX3[invDir],
                                                        fdir);
         }
     }
diff --git a/src/cpu/core/BoundaryConditions/VelocityNonReflecting.cpp b/src/cpu/core/BoundaryConditions/VelocityNonReflecting.cpp
index bec6d57bb4cfb78559cec741f73db47c891754c0..314f6e8be3167153b42faa2122c9beb3573377d8 100644
--- a/src/cpu/core/BoundaryConditions/VelocityNonReflecting.cpp
+++ b/src/cpu/core/BoundaryConditions/VelocityNonReflecting.cpp
@@ -64,7 +64,7 @@ void VelocityNonReflecting::addDistributions(SPtr<DistributionArray3D> distribut
 void VelocityNonReflecting::applyBC()
 {
     using namespace vf::lbm::dir;
-    using namespace D3Q27System;
+    using namespace d3q27_system;
  //   using namespace UbMath;
     using namespace vf::basics::constant;
 
diff --git a/src/cpu/core/BoundaryConditions/VelocityWithPressureInterpolated.cpp b/src/cpu/core/BoundaryConditions/VelocityWithPressureInterpolated.cpp
index 32a49523b34e06f841f63c1f0eab250d5a39d875..ca4d2a129f51a8db939a6d3a33dd17736bcc58d8 100644
--- a/src/cpu/core/BoundaryConditions/VelocityWithPressureInterpolated.cpp
+++ b/src/cpu/core/BoundaryConditions/VelocityWithPressureInterpolated.cpp
@@ -58,7 +58,7 @@ void VelocityWithPressureInterpolated::applyBC()
     using namespace vf::basics::constant;
 
    //velocity bc for non reflecting pressure bc
-   real f[D3Q27System::ENDF+1];
+   real f[d3q27_system::ENDF+1];
    //real feq[D3Q27System::ENDF+1];
    distributions->getPostCollisionDistribution(f, x1, x2, x3);
    real rho, vx1, vx2, vx3, drho;
@@ -67,11 +67,11 @@ void VelocityWithPressureInterpolated::applyBC()
    
    rho = c1o1+drho*compressibleFactor;
 
-   for (int fdir = D3Q27System::FSTARTDIR; fdir <= D3Q27System::FENDDIR; fdir++)
+   for (int fdir = d3q27_system::FSTARTDIR; fdir <= d3q27_system::FENDDIR; fdir++)
    {
-        int nX1 = x1 + D3Q27System::DX1[fdir];
-        int nX2 = x2 + D3Q27System::DX2[fdir];
-        int nX3 = x3 + D3Q27System::DX3[fdir];
+        int nX1 = x1 + d3q27_system::DX1[fdir];
+        int nX2 = x2 + d3q27_system::DX2[fdir];
+        int nX3 = x3 + d3q27_system::DX3[fdir];
 
         int minX1 = 0;
         int minX2 = 0;
@@ -83,7 +83,7 @@ void VelocityWithPressureInterpolated::applyBC()
 
         if (minX1 <= nX1 && maxX1 > nX1 && minX2 <= nX2 && maxX2 > nX2 && minX3 <= nX3 && maxX3 > nX3) {
             if (bcArray->isSolid(nX1, nX2, nX3)) {
-                const int invDir = D3Q27System::INVDIR[fdir];
+                const int invDir = d3q27_system::INVDIR[fdir];
                 //real q =1.0;// bcPtr->getQ(invDir);// m+m q=0 stabiler
                 real velocity = bcPtr->getBoundaryVelocity(fdir);
                 
@@ -94,7 +94,7 @@ void VelocityWithPressureInterpolated::applyBC()
                 // if q=1
                 // real fReturn = ((q*(f[fdir] + f[invDir]) - velocity*rho) / (1.0 +
                 // q))-drho*D3Q27System::WEIGTH[invDir];
-                real fReturn = (f[fdir] + f[invDir] - velocity * rho) / vf::basics::constant::c2o1 - drho * D3Q27System::WEIGTH[invDir];
+                real fReturn = (f[fdir] + f[invDir] - velocity * rho) / vf::basics::constant::c2o1 - drho * d3q27_system::WEIGTH[invDir];
 
                 distributions->setPostCollisionDistributionForDirection(fReturn, nX1, nX2, nX3, invDir);
             }
diff --git a/src/cpu/core/Connectors/CoarseToFineVectorConnector.h b/src/cpu/core/Connectors/CoarseToFineVectorConnector.h
index 0dc3e1cd7b1bced08e15e36feda5d261fdd9471d..340b09433532c0723facce209f4d16aad6d5a446 100644
--- a/src/cpu/core/Connectors/CoarseToFineVectorConnector.h
+++ b/src/cpu/core/Connectors/CoarseToFineVectorConnector.h
@@ -301,7 +301,7 @@ void CoarseToFineVectorConnector<VectorTransmitter>::receiveVectors()
 template <typename VectorTransmitter>
 void CoarseToFineVectorConnector<VectorTransmitter>::init()
 {
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::lbm::dir;
 
     bMaxX1 = (int)block.lock()->getKernel()->getDataSet()->getFdistributions()->getNX1();
@@ -390,7 +390,7 @@ void CoarseToFineVectorConnector<VectorTransmitter>::init()
 template <typename VectorTransmitter>
 void CoarseToFineVectorConnector<VectorTransmitter>::fillSendVectors()
 {
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::lbm::dir;
 
     SPtr<DistributionArray3D> fFrom = block.lock()->getKernel()->getDataSet()->getFdistributions();
@@ -806,11 +806,11 @@ void CoarseToFineVectorConnector<VectorTransmitter>::getLocalMinMax(const int &g
     if (dataDistribution)
         dCoef = 1;
 
-    if (Utilities::isOdd(gMax)) {
+    if (utilities::isOdd(gMax)) {
         halfEven = gMax / 2;
         halfOdd  = gMax / 2;
     }
-    if (Utilities::isEven(gMax)) {
+    if (utilities::isEven(gMax)) {
         halfEven = gMax / 2;
         halfOdd  = gMax / 2 - 1 + dCoef;
     }
@@ -855,8 +855,8 @@ void CoarseToFineVectorConnector<VectorTransmitter>::fillSendVectorExt(SPtr<Dist
                 } else {
                     if (!iprocessor->findNeighborICell(bcArray, fFrom, icellC, bMaxX1, bMaxX2, bMaxX3, ix1, ix2, ix3,
                                                        xoff, yoff, zoff)) {
-                        std::string err = "For " + block.lock()->toString() + " x1=" + UbSystem::toString(ix1) +
-                                          ", x2=" + UbSystem::toString(ix2) + ", x3=" + UbSystem::toString(ix3) +
+                        std::string err = "For " + block.lock()->toString() + " x1=" + ub_system::toString(ix1) +
+                                          ", x2=" + ub_system::toString(ix2) + ", x3=" + ub_system::toString(ix3) +
                                           " interpolation is not implemented for other direction" +
                                           " by using in: " + (std::string) typeid(*this).name() +
                                           " or maybe you have a solid on the block boundary";
@@ -888,7 +888,7 @@ void CoarseToFineVectorConnector<VectorTransmitter>::writeICellFtoData(vector_ty
 template <typename VectorTransmitter>
 void CoarseToFineVectorConnector<VectorTransmitter>::writeNodeToVector(vector_type &data, int &index, real *inode)
 {
-    for (int i = D3Q27System::STARTF; i < D3Q27System::ENDF + 1; i++) {
+    for (int i = d3q27_system::STARTF; i < d3q27_system::ENDF + 1; i++) {
         data[index++] = inode[i];
     }
 }
@@ -896,7 +896,7 @@ void CoarseToFineVectorConnector<VectorTransmitter>::writeNodeToVector(vector_ty
 template <typename VectorTransmitter>
 void CoarseToFineVectorConnector<VectorTransmitter>::distributeReceiveVectors()
 {
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::lbm::dir;
 
     SPtr<DistributionArray3D> fTo = block.lock()->getKernel()->getDataSet()->getFdistributions();
@@ -1626,7 +1626,7 @@ void CoarseToFineVectorConnector<VectorTransmitter>::distributeReceiveVector(SPt
 template <typename VectorTransmitter>
 void CoarseToFineVectorConnector<VectorTransmitter>::readICellCfromData(vector_type &data, int &index, real *icellC)
 {
-    for (int i = D3Q27System::STARTF; i < D3Q27System::ENDF + 1; i++) {
+    for (int i = d3q27_system::STARTF; i < d3q27_system::ENDF + 1; i++) {
         icellC[i] = data[index++];
     }
 }
@@ -1635,7 +1635,7 @@ template <typename VectorTransmitter>
 void CoarseToFineVectorConnector<VectorTransmitter>::getLocalMinMax(int &minX1, int &minX2, int &minX3, int &maxX1,
                                                                     int &maxX2, int &maxX3)
 {
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::lbm::dir;
 
     int TminX1 = minX1;
@@ -1777,7 +1777,7 @@ void CoarseToFineVectorConnector<VectorTransmitter>::getLocalMinMax(int &minX1,
                                                                     int &maxX2, int &maxX3,
                                                                     CFconnectorType /*connType*/)
 {
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::lbm::dir;
 
     int TminX1 = minX1;
@@ -1935,7 +1935,7 @@ void CoarseToFineVectorConnector<VectorTransmitter>::findCFnodes()
 
     int lMinX1, lMinX2, lMinX3, lMaxX1, lMaxX2, lMaxX3;
 
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::lbm::dir;
 
     if (block.lock()->hasInterpolationFlagCF(dM00)) {
@@ -2002,8 +2002,8 @@ void CoarseToFineVectorConnector<VectorTransmitter>::findCFnodes(SPtr<Distributi
                 } else {
                     if (!iprocessor->findNeighborICell(bcArray, fFrom, icellC, bMaxX1, bMaxX2, bMaxX3, ix1, ix2, ix3,
                                                        xoff, yoff, zoff)) {
-                        std::string err = "For " + block.lock()->toString() + " x1=" + UbSystem::toString(ix1) +
-                                          ", x2=" + UbSystem::toString(ix2) + ", x3=" + UbSystem::toString(ix3) +
+                        std::string err = "For " + block.lock()->toString() + " x1=" + ub_system::toString(ix1) +
+                                          ", x2=" + ub_system::toString(ix2) + ", x3=" + ub_system::toString(ix3) +
                                           " interpolation is not implemented for other direction" +
                                           " by using in: " + (std::string) typeid(*this).name() +
                                           " or maybe you have a solid on the block boundary";
diff --git a/src/cpu/core/Connectors/FineToCoarseVectorConnector.h b/src/cpu/core/Connectors/FineToCoarseVectorConnector.h
index c8302c4d9471f865157b4796218ad96cf04b843a..af303e56b8f0483f30bdf5ca666e2d084616c814 100644
--- a/src/cpu/core/Connectors/FineToCoarseVectorConnector.h
+++ b/src/cpu/core/Connectors/FineToCoarseVectorConnector.h
@@ -227,7 +227,7 @@ void FineToCoarseVectorConnector<VectorTransmitter>::receiveVectors()
 template <typename VectorTransmitter>
 void FineToCoarseVectorConnector<VectorTransmitter>::init()
 {
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::lbm::dir;
 
     bMaxX1 = (int)block.lock()->getKernel()->getDataSet()->getFdistributions()->getNX1();
@@ -290,7 +290,7 @@ void FineToCoarseVectorConnector<VectorTransmitter>::init()
 template <typename VectorTransmitter>
 void FineToCoarseVectorConnector<VectorTransmitter>::fillSendVectors()
 {
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::lbm::dir;
 
     SPtr<DistributionArray3D> fFrom = block.lock()->getKernel()->getDataSet()->getFdistributions();
@@ -817,8 +817,8 @@ void FineToCoarseVectorConnector<VectorTransmitter>::fillSendVector(SPtr<Distrib
                 } else {
                     if (!iprocessor->findNeighborICell(bcArray, fFrom, icellF, bMaxX1, bMaxX2, bMaxX3, ix1, ix2, ix3,
                                                        xoff, yoff, zoff)) {
-                        std::string err = "For " + block.lock()->toString() + " x1=" + UbSystem::toString(ix1) +
-                                          ", x2=" + UbSystem::toString(ix2) + ", x3=" + UbSystem::toString(ix3) +
+                        std::string err = "For " + block.lock()->toString() + " x1=" + ub_system::toString(ix1) +
+                                          ", x2=" + ub_system::toString(ix2) + ", x3=" + ub_system::toString(ix3) +
                                           " interpolation is not implemented for other direction" +
                                           " by using in: " + (std::string) typeid(*this).name() +
                                           " or maybe you have a solid on the block boundary";
@@ -837,7 +837,7 @@ void FineToCoarseVectorConnector<VectorTransmitter>::fillSendVector(SPtr<Distrib
 template <typename VectorTransmitter>
 void FineToCoarseVectorConnector<VectorTransmitter>::writeICellCtoData(vector_type &data, int &index, real *icellC)
 {
-    for (int i = D3Q27System::STARTF; i < D3Q27System::ENDF + 1; i++) {
+    for (int i = d3q27_system::STARTF; i < d3q27_system::ENDF + 1; i++) {
         data[index++] = icellC[i];
     }
 }
@@ -845,7 +845,7 @@ void FineToCoarseVectorConnector<VectorTransmitter>::writeICellCtoData(vector_ty
 template <typename VectorTransmitter>
 void FineToCoarseVectorConnector<VectorTransmitter>::getLocalMinMaxCF(int gMax, int &lMin, int &lMax)
 {
-    if (Utilities::isOdd(gMax)) {
+    if (utilities::isOdd(gMax)) {
         if (connType == OddEvenSE || connType == OddOddNE) {
             lMin = 1;
             lMax = gMax;
@@ -856,7 +856,7 @@ void FineToCoarseVectorConnector<VectorTransmitter>::getLocalMinMaxCF(int gMax,
 template <typename VectorTransmitter>
 void FineToCoarseVectorConnector<VectorTransmitter>::distributeReceiveVectors()
 {
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::lbm::dir;
 
     SPtr<DistributionArray3D> fTo = block.lock()->getKernel()->getDataSet()->getFdistributions();
@@ -1156,7 +1156,7 @@ void FineToCoarseVectorConnector<VectorTransmitter>::readICellFfromData(vector_t
 template <typename VectorTransmitter>
 void FineToCoarseVectorConnector<VectorTransmitter>::readNodeFromVector(vector_type &data, int &index, real *inode)
 {
-    for (int i = D3Q27System::STARTF; i < D3Q27System::ENDF + 1; i++) {
+    for (int i = d3q27_system::STARTF; i < d3q27_system::ENDF + 1; i++) {
         inode[i] = data[index++];
     }
 }
@@ -1165,7 +1165,7 @@ template <typename VectorTransmitter>
 void FineToCoarseVectorConnector<VectorTransmitter>::getLocalMinMax(int &minX1, int &minX2, int &minX3, int &maxX1,
                                                                     int &maxX2, int &maxX3)
 {
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::lbm::dir;
     
     int TminX1 = minX1;
@@ -1308,7 +1308,7 @@ void FineToCoarseVectorConnector<VectorTransmitter>::getLocalMinMax(int &minX1,
                                                                     int &maxX2, int &maxX3,
                                                                     CFconnectorType /*connType*/)
 {
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::lbm::dir;
 
     int TminX1 = minX1;
@@ -1447,10 +1447,10 @@ void FineToCoarseVectorConnector<VectorTransmitter>::getLocalMinMax(int &minX1,
 template <typename VectorTransmitter>
 void FineToCoarseVectorConnector<VectorTransmitter>::getLocalOffsets(const int &gMax, int &oMin)
 {
-    if (Utilities::isEven(gMax)) {
+    if (utilities::isEven(gMax)) {
         oMin = 0;
     }
-    if (Utilities::isOdd(gMax)) {
+    if (utilities::isOdd(gMax)) {
         oMin = -1;
     }
 }
@@ -1459,7 +1459,7 @@ template <typename VectorTransmitter>
 void FineToCoarseVectorConnector<VectorTransmitter>::getLocalMins(int &minX1, int &minX2, int &minX3, const int &oMinX1,
                                                                   const int &oMinX2, const int &oMinX3)
 {
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::lbm::dir;
 
     switch (sendDir) {
diff --git a/src/cpu/core/Interactors/D3Q27Interactor.cpp b/src/cpu/core/Interactors/D3Q27Interactor.cpp
index b2ebae06fbd51cb76790a4979a6ce62549c2083c..24294174b4ee3db347f3e923c8578b2b98d3fc1a 100644
--- a/src/cpu/core/Interactors/D3Q27Interactor.cpp
+++ b/src/cpu/core/Interactors/D3Q27Interactor.cpp
@@ -329,11 +329,11 @@ bool D3Q27Interactor::setDifferencesToGbObject3D(const SPtr<Block3D> block)
 
     if (geoObject3D->hasRaytracing() || (this->isInverseSolid() && geoObject3D->raytracingSupportsPointsInside())) {
         // if deltaX1==deltaX2==deltaX3 (must for LB!!)
-        if (!UbMath::zero(deltaX1 - deltaX2 + deltaX1 - deltaX3 + deltaX2 - deltaX3))
+        if (!ub_math::zero(deltaX1 - deltaX2 + deltaX1 - deltaX3 + deltaX2 - deltaX3))
             throw UbException(
                 UB_EXARGS, "fuer den bei LB nicht vorkommenden Fall deltaX1!=deltaX2!=deltaX3  nicht implementiert ");
 
-        vector<real> distNeigh(D3Q27System::FENDDIR + 1, vf::basics::constant::cSqrt2 * deltaX1);
+        vector<real> distNeigh(d3q27_system::FENDDIR + 1, vf::basics::constant::cSqrt2 * deltaX1);
         distNeigh[dP00] = distNeigh[dM00] = distNeigh[d0P0] = deltaX1;
         distNeigh[d0M0] = distNeigh[d00P] = distNeigh[d00M] = deltaX1;
         distNeigh[dPP0] = distNeigh[dMP0] = distNeigh[dMM0] =
@@ -394,16 +394,16 @@ bool D3Q27Interactor::setDifferencesToGbObject3D(const SPtr<Block3D> block)
 
                         gotQs = false;
 
-                        for (int fdir = D3Q27System::FSTARTDIR; fdir <= D3Q27System::FENDDIR; fdir++) {
+                        for (int fdir = d3q27_system::FSTARTDIR; fdir <= d3q27_system::FENDDIR; fdir++) {
                             q = geoObject3D->getIntersectionRaytraceFactor(internX1, internX2, internX3, rayX1[fdir],
                                                                            rayX2[fdir], rayX3[fdir]);
                             q /= distNeigh[fdir];
 
                             // assert(UbMath::lessEqual(q, c1o1));
 
-                            if (UbMath::inClosedInterval(q, c1o1, c1o1))
+                            if (ub_math::inClosedInterval(q, c1o1, c1o1))
                                 q = c1o1;
-                            if (UbMath::greater(q, c0o1) && UbMath::lessEqual(q, c1o1)) {
+                            if (ub_math::greater(q, c0o1) && ub_math::lessEqual(q, c1o1)) {
                                 //#pragma omp critical (BC_CHANGE)
                                 {
                                     bc = bcArray->getBC(ix1, ix2, ix3);
@@ -493,10 +493,10 @@ bool D3Q27Interactor::setDifferencesToGbObject3D(const SPtr<Block3D> block)
                         gotQs = false;
 
                         GbPoint3D pointA(internX1, internX2, internX3);
-                        for (int fdir = D3Q27System::FSTARTDIR; fdir <= D3Q27System::FENDDIR; fdir++) {
-                            real x1B = internX1 + D3Q27System::DX1[fdir] * deltaX1;
-                            real x2B = internX2 + D3Q27System::DX2[fdir] * deltaX2;
-                            real x3B = internX3 + D3Q27System::DX3[fdir] * deltaX3;
+                        for (int fdir = d3q27_system::FSTARTDIR; fdir <= d3q27_system::FENDDIR; fdir++) {
+                            real x1B = internX1 + d3q27_system::DX1[fdir] * deltaX1;
+                            real x2B = internX2 + d3q27_system::DX2[fdir] * deltaX2;
+                            real x3B = internX3 + d3q27_system::DX3[fdir] * deltaX3;
 
                             GbPoint3D pointB(x1B, x2B, x3B);
                             GbLine3D *clippedLine = this->geoObject3D->createClippedLine3D(pointA, pointB);
@@ -506,7 +506,7 @@ bool D3Q27Interactor::setDifferencesToGbObject3D(const SPtr<Block3D> block)
                                 if (!this->isInverseSolid()) // A is outside
                                 {
                                     real distanceAB = pointA.getDistance(&pointB); // pointA to B
-                                    real distanceAP = UbMath::min(pointA.getDistance(clippedLine->getPoint1()),
+                                    real distanceAP = ub_math::min(pointA.getDistance(clippedLine->getPoint1()),
                                                                     pointA.getDistance(clippedLine->getPoint2()));
                                     q                 = distanceAP / distanceAB;
                                 } else {
@@ -528,9 +528,9 @@ bool D3Q27Interactor::setDifferencesToGbObject3D(const SPtr<Block3D> block)
                                     }
                                 }
 
-                                if (UbMath::inClosedInterval(q, c1o1, c1o1))
+                                if (ub_math::inClosedInterval(q, c1o1, c1o1))
                                     q = c1o1;
-                                if (UbMath::lessEqual(q, c1o1) && UbMath::greater(q, c0o1)) {
+                                if (ub_math::lessEqual(q, c1o1) && ub_math::greater(q, c0o1)) {
                                     {
                                         bc = bcArray->getBC(ix1, ix2, ix3);
                                         if (!bc) {
@@ -618,8 +618,8 @@ void D3Q27Interactor::addQsLineSet(std::vector<UbTupleFloat3> &nodes, std::vecto
                 nodes.push_back(makeUbTuple((float)x1a, (float)x2a, (float)x3a));
                 node1Index = nodes.size() - 1;
 
-                for (int dir = D3Q27System::FSTARTDIR; dir <= D3Q27System::FENDDIR; dir++) {
-                    if (bc->hasBoundaryConditionFlag(D3Q27System::INVDIR[dir])) {
+                for (int dir = d3q27_system::FSTARTDIR; dir <= d3q27_system::FENDDIR; dir++) {
+                    if (bc->hasBoundaryConditionFlag(d3q27_system::INVDIR[dir])) {
                         real x1b, x2b, x3b, q = bc->getQ(dir);
                         switch (dir) {
                             case dP00:
@@ -841,8 +841,8 @@ vector<pair<GbPoint3D, GbPoint3D>> D3Q27Interactor::getQsLineSet()
                     pointpair.first.setX1(x1a);
                     pointpair.first.setX2(x2a);
                     pointpair.first.setX3(x3a);
-                    for (int dir = D3Q27System::FSTARTDIR; dir <= D3Q27System::FENDDIR; dir++) {
-                        if (bc->hasBoundaryConditionFlag(D3Q27System::INVDIR[dir])) {
+                    for (int dir = d3q27_system::FSTARTDIR; dir <= d3q27_system::FENDDIR; dir++) {
+                        if (bc->hasBoundaryConditionFlag(d3q27_system::INVDIR[dir])) {
                             real x1b, x2b, x3b, q = bc->getQ(dir);
                             switch (dir) {
                                 case dP00:
diff --git a/src/cpu/core/Interactors/D3Q27Interactor.h b/src/cpu/core/Interactors/D3Q27Interactor.h
index 4c429c758c88e1b3580567fee43f91b5a4752714..11009c57a76d275dedd7d662006a52da28415a57 100644
--- a/src/cpu/core/Interactors/D3Q27Interactor.h
+++ b/src/cpu/core/Interactors/D3Q27Interactor.h
@@ -113,9 +113,9 @@ protected:
     BcNodeIndicesMap bcNodeIndicesMap;
 
     void initRayVectors();
-    real rayX1[D3Q27System::FENDDIR + 1];
-    real rayX2[D3Q27System::FENDDIR + 1];
-    real rayX3[D3Q27System::FENDDIR + 1];
+    real rayX1[d3q27_system::FENDDIR + 1];
+    real rayX2[d3q27_system::FENDDIR + 1];
+    real rayX3[d3q27_system::FENDDIR + 1];
 };
 
 #endif
diff --git a/src/cpu/core/Interactors/D3Q27TriFaceMeshInteractor.cpp b/src/cpu/core/Interactors/D3Q27TriFaceMeshInteractor.cpp
index 5a70d4c0f7fbdc2953dd5c4881c179bc0a78a1eb..ca052e4ece5e1e648b5b79afc4c08fda7d7b22b3 100644
--- a/src/cpu/core/Interactors/D3Q27TriFaceMeshInteractor.cpp
+++ b/src/cpu/core/Interactors/D3Q27TriFaceMeshInteractor.cpp
@@ -217,19 +217,19 @@ void D3Q27TriFaceMeshInteractor::setQs(const real &timeStep)
         deltaMaxX3(finestInitLevel + 1);
 
     // In the Boltzman context, dx1==dx2==dx3 must be!!
-    assert(UbMath::equal(cblockDeltaX1 / (double)blocknx1, cblockDeltaX2 / (double)blocknx2));
-    assert(UbMath::equal(cblockDeltaX1 / (double)blocknx1, cblockDeltaX3 / (double)blocknx3));
+    assert(ub_math::equal(cblockDeltaX1 / (double)blocknx1, cblockDeltaX2 / (double)blocknx2));
+    assert(ub_math::equal(cblockDeltaX1 / (double)blocknx1, cblockDeltaX3 / (double)blocknx3));
 
     for (int level = coarsestInitLevel; level <= finestInitLevel; level++) {
         real nodeDeltaX1 = cblockDeltaX1 / (double)(blocknx1 * (1 << (level - coarsestInitLevel)));
         real nodeDeltaX2 = cblockDeltaX2 / (double)(blocknx2 * (1 << (level - coarsestInitLevel)));
         real nodeDeltaX3 = cblockDeltaX3 / (double)(blocknx3 * (1 << (level - coarsestInitLevel)));
 
-        std::vector<real> distNeigh(D3Q27System::FENDDIR + 1, 0.0);
-        D3Q27System::calcDistanceToNeighbors(distNeigh, nodeDeltaX1, nodeDeltaX2, nodeDeltaX3);
+        std::vector<real> distNeigh(d3q27_system::FENDDIR + 1, 0.0);
+        d3q27_system::calcDistanceToNeighbors(distNeigh, nodeDeltaX1, nodeDeltaX2, nodeDeltaX3);
 
-        nodeDeltaToNeigh[level].resize(D3Q27System::ENDDIR + 1, 0.0);
-        for (int fdir = D3Q27System::FSTARTDIR; fdir <= D3Q27System::FENDDIR; fdir++) {
+        nodeDeltaToNeigh[level].resize(d3q27_system::ENDDIR + 1, 0.0);
+        for (int fdir = d3q27_system::FSTARTDIR; fdir <= d3q27_system::FENDDIR; fdir++) {
             nodeDeltaToNeigh[level][fdir] = distNeigh[fdir];
         }
 
@@ -253,7 +253,7 @@ void D3Q27TriFaceMeshInteractor::setQs(const real &timeStep)
     std::vector<GbTriFaceMesh3D::Vertex> &nodes      = *mesh->getNodes();
     std::map<SPtr<Block3D>, std::set<UbTupleInt3>> tmpSolidNodesFromOtherInteractors;
 
-    int onePercent = UbMath::integerRounding(triangles.size() * c1o100);
+    int onePercent = ub_math::integerRounding(triangles.size() * c1o100);
     if (onePercent == 0)
         onePercent = 1;
     vf::basics::Timer setQTimer;
@@ -281,7 +281,7 @@ void D3Q27TriFaceMeshInteractor::setQs(const real &timeStep)
         GbHalfSpace3D halfSpace(v1.x, v1.y, v1.z, triangle.nx, triangle.ny, triangle.nz);
 
         //////////////////////////////////////////////////////////////////////////
-        // for GbMeshTools3D::triBoxOverlap
+        // for gb_mesh_tools_3d::triBoxOverlap
         //////////////////////////////////////////////////////////////////////////
         triPoints[0][0] = v1.x;
         triPoints[0][1] = v1.y;
@@ -355,7 +355,7 @@ void D3Q27TriFaceMeshInteractor::setQs(const real &timeStep)
                 halfBoxSize[2] = (float)(c1o2 * (blockMaxX[2] - blockMinX[2]));
 
                 // if triangle "enlarged cube" does not intersect/touch -> no BC possible -> continue
-                if (!GbMeshTools3D::triBoxOverlap(boxCenter, halfBoxSize, triPoints)) {
+                if (!gb_mesh_tools_3d::triBoxOverlap(boxCenter, halfBoxSize, triPoints)) {
                     continue;
                 }
 
@@ -413,13 +413,13 @@ void D3Q27TriFaceMeshInteractor::setQs(const real &timeStep)
                             distance = halfSpace.getDistance(internX1, internX2, internX3);
                             // Point in half plane? (no, if distance<0)
                             if (useHalfSpace &&
-                                UbMath::less(distance, 0.0)) //== !halfSpace.ptInside(internX1,internX2,internX3) )
+                                ub_math::less(distance, 0.0)) //== !halfSpace.ptInside(internX1,internX2,internX3) )
                             {
                                 continue;
                             }
 
                             // CheapOBB test: if distance > qInfluenceDelta -> no q
-                            if (UbMath::greater(fabs(distance), qEinflussDelta)) {
+                            if (ub_math::greater(fabs(distance), qEinflussDelta)) {
                                 continue;
                             }
 
@@ -445,7 +445,7 @@ void D3Q27TriFaceMeshInteractor::setQs(const real &timeStep)
                             sx2 = internX2 - v1.y;
                             sx3 = internX3 - v1.z;
 
-                            for (int fdir = D3Q27System::FSTARTDIR; fdir <= D3Q27System::FENDDIR; fdir++) {
+                            for (int fdir = d3q27_system::FSTARTDIR; fdir <= d3q27_system::FENDDIR; fdir++) {
                                 // p = d x e2
                                 px1 = this->rayX2[fdir] * e2x3 - this->rayX3[fdir] * e2x2;
                                 px2 = this->rayX3[fdir] * e2x1 - this->rayX1[fdir] * e2x3;
@@ -502,11 +502,11 @@ void D3Q27TriFaceMeshInteractor::setQs(const real &timeStep)
                                          (z1 - internX3) * (z1 - internX3));
                                 q_ehsan /= nodeDeltaToNeigh[level][fdir];
                                 q = q_ehsan;
-                                if (UbMath::greater(q, c1o1) || UbMath::lessEqual(q, 0.0))
+                                if (ub_math::greater(q, c1o1) || ub_math::lessEqual(q, 0.0))
                                     continue;
 
                                 //Check found q for validity
-                                if (UbMath::zero(q)) {
+                                if (ub_math::zero(q)) {
                                     // new (05/18/2010)
                                     // It can happen that with thin-walled geos there are points on a triangle
                                     // lie, get qs that go through the geo. these points will come later
@@ -517,9 +517,9 @@ void D3Q27TriFaceMeshInteractor::setQs(const real &timeStep)
                                     continue;
                                 }
 
-                                if (UbMath::inClosedInterval(q, c1o1, c1o1))
+                                if (ub_math::inClosedInterval(q, c1o1, c1o1))
                                     q = c1o1;
-                                if (UbMath::greater(q, 0.0) && UbMath::lessEqual(q, c1o1)) {
+                                if (ub_math::greater(q, 0.0) && ub_math::lessEqual(q, c1o1)) {
                                     gotQs = blockGotBCs = true;
 
                                     bc = bcMatrix->getBC(ix1, ix2, ix3);
@@ -529,8 +529,8 @@ void D3Q27TriFaceMeshInteractor::setQs(const real &timeStep)
                                         bc = SPtr<BoundaryConditions>(new BoundaryConditions);
                                         ;
                                         bcMatrix->setBC(ix1, ix2, ix3, bc);
-                                    } else if (UbMath::less(bc->getQ(fdir), q) &&
-                                               UbMath::equal(-999.0, q)) // schon ein kuerzeres q voehanden?
+                                    } else if (ub_math::less(bc->getQ(fdir), q) &&
+                                               ub_math::equal(-999.0, q)) // schon ein kuerzeres q voehanden?
                                     {
                                         // new:: May 18, 2010
                                         // to avoid incorrect qs that might go through the "wall".
@@ -551,14 +551,14 @@ void D3Q27TriFaceMeshInteractor::setQs(const real &timeStep)
                                     // for accelerated rereading
                                     if (this->reinitWithStoredQsFlag) {
                                         bcNodeIndicesAndQsMap[block][UbTupleInt3(ix1, ix2, ix3)].resize(
-                                            D3Q27System::FENDDIR + 1 + 3, -1.0f);
+                                            d3q27_system::FENDDIR + 1 + 3, -1.0f);
                                         bcNodeIndicesAndQsMap[block][UbTupleInt3(ix1, ix2, ix3)][fdir] = float(q);
                                         bcNodeIndicesAndQsMap[block][UbTupleInt3(ix1, ix2, ix3)]
-                                                             [D3Q27System::FENDDIR + 1 + 0] = float(internX1);
+                                                             [d3q27_system::FENDDIR + 1 + 0] = float(internX1);
                                         bcNodeIndicesAndQsMap[block][UbTupleInt3(ix1, ix2, ix3)]
-                                                             [D3Q27System::FENDDIR + 1 + 1] = float(internX2);
+                                                             [d3q27_system::FENDDIR + 1 + 1] = float(internX2);
                                         bcNodeIndicesAndQsMap[block][UbTupleInt3(ix1, ix2, ix3)]
-                                                             [D3Q27System::FENDDIR + 1 + 2] = float(internX3);
+                                                             [d3q27_system::FENDDIR + 1 + 2] = float(internX3);
                                     }
                                 }
                             }
@@ -609,9 +609,9 @@ void D3Q27TriFaceMeshInteractor::refineBlockGridToLevel(int level, real startDis
     // or whether you're faster if you don't do a half-space test at all...
     if (!grid.lock())
         throw UbException(UB_EXARGS, "Grid isn't exist!");
-    if (UbMath::greater(startDistance, 0.0))
+    if (ub_math::greater(startDistance, 0.0))
         throw UbException(UB_EXARGS, "startDistance>0.0 not supported by this interactor");
-    if (UbMath::less(stopDistance, 0.0))
+    if (ub_math::less(stopDistance, 0.0))
         throw UbException(UB_EXARGS, "stopDistance<0.0  not supported by this interactor");
 
     SPtr<Grid3D> bgrid    = this->grid.lock();
@@ -645,7 +645,7 @@ void D3Q27TriFaceMeshInteractor::refineBlockGridToLevel(int level, real startDis
         GbTriFaceMesh3D::Vertex &v3 = nodes[triangle.v3];
 
         // dreick muss normal besitzen!
-        assert(!UbMath::zero(triangle.nx) || !UbMath::zero(triangle.ny) || !UbMath::zero(triangle.nz));
+        assert(!ub_math::zero(triangle.nx) || !ub_math::zero(triangle.ny) || !ub_math::zero(triangle.nz));
         // Normale muss normiert sein!
         assert((fabs(std::sqrt(triangle.nx * triangle.nx + triangle.ny * triangle.ny + triangle.nz * triangle.nz)) -
                 1.0f) < 1.0E-6);
@@ -737,7 +737,7 @@ void D3Q27TriFaceMeshInteractor::refineBlockGridToLevel(int level, real startDis
                     if (skalarprod < 1.E-8)
                         blockdelta = -c21o20 * startDistance; // startDistance<0!!
                     else if (fabs(skalarprod) < 1.E-8)
-                        blockdelta = c21o20 * UbMath::max(-startDistance, stopDistance);
+                        blockdelta = c21o20 * ub_math::max(-startDistance, stopDistance);
 
                     // adjust block
                     blockMinX[0] = (float)(val<1>(coords) - blockdelta);
@@ -771,7 +771,7 @@ void D3Q27TriFaceMeshInteractor::refineBlockGridToLevel(int level, real startDis
                     triPoints[2][2] = v3_.z;
 
                     // if block triangle cuts, then it needs to be refined
-                    if (GbMeshTools3D::triBoxOverlap(boxCenter, halfBoxSize, triPoints)) {
+                    if (gb_mesh_tools_3d::triBoxOverlap(boxCenter, halfBoxSize, triPoints)) {
                         bgrid->expandBlock(block->getX1(), block->getX2(), block->getX3(), block->getLevel());
                     }
                 }
@@ -906,9 +906,9 @@ void D3Q27TriFaceMeshInteractor::reinitWithStoredQs(const real & /*timeStep*/)
                 bcMatrix->setBC(val<1>(pos), val<2>(pos), val<3>(pos), bc);
             }
 
-            double x1w = qs[D3Q27System::FENDDIR + 1 + 0];
-            double x2w = qs[D3Q27System::FENDDIR + 1 + 1];
-            double x3w = qs[D3Q27System::FENDDIR + 1 + 2];
+            double x1w = qs[d3q27_system::FENDDIR + 1 + 0];
+            double x2w = qs[d3q27_system::FENDDIR + 1 + 1];
+            double x3w = qs[d3q27_system::FENDDIR + 1 + 2];
 
             // TODO: HACK DOES NOT BELONG HERE!!! - begin
             // it is a static object and the propeller is there
@@ -920,8 +920,8 @@ void D3Q27TriFaceMeshInteractor::reinitWithStoredQs(const real & /*timeStep*/)
             // TODO: HACK DOES NOT BELONG HERE!!! - end
 
             bool gotQs = false;
-            for (int fdir = D3Q27System::FSTARTDIR; fdir <= D3Q27System::FENDDIR; fdir++) {
-                if (UbMath::greater(qs[fdir], -1.0) && UbMath::less(qs[fdir], bc->getQ(fdir))) {
+            for (int fdir = d3q27_system::FSTARTDIR; fdir <= d3q27_system::FENDDIR; fdir++) {
+                if (ub_math::greater(qs[fdir], -1.0) && ub_math::less(qs[fdir], bc->getQ(fdir))) {
                     gotQs = true;
                     for (size_t index = 0; index < this->BCs.size(); index++)
                         this->BCs[index]->adaptBCForDirection(*this, bc, x1w, x2w, x3w, qs[fdir], fdir);
diff --git a/src/cpu/core/Interactors/Interactor3D.h b/src/cpu/core/Interactors/Interactor3D.h
index 5be9a921f7f3bc3fa7eda117b1ce9e852f64038e..8bfe18379e2e19fa8baede145f4d4b9eeb88bee9 100644
--- a/src/cpu/core/Interactors/Interactor3D.h
+++ b/src/cpu/core/Interactors/Interactor3D.h
@@ -67,13 +67,13 @@ public:
 
     virtual UbTupleDouble3 getForces();
 
-    void setSolid() { UbSystem::setBit(this->type, SOLID); }
-    void setMoveable() { UbSystem::setBit(this->type, MOVEABLE); }
+    void setSolid() { ub_system::setBit(this->type, SOLID); }
+    void setMoveable() { ub_system::setBit(this->type, MOVEABLE); }
 
-    bool isSolid() { return UbSystem::bitCheck(this->type, SOLID); }
-    bool isInverseSolid() { return UbSystem::bitCheck(this->type, INVERSESOLID); }
-    bool isTimeDependent() { return UbSystem::bitCheck(this->type, TIMEDEPENDENT); }
-    bool isMoveable() { return UbSystem::bitCheck(this->type, MOVEABLE); }
+    bool isSolid() { return ub_system::bitCheck(this->type, SOLID); }
+    bool isInverseSolid() { return ub_system::bitCheck(this->type, INVERSESOLID); }
+    bool isTimeDependent() { return ub_system::bitCheck(this->type, TIMEDEPENDENT); }
+    bool isMoveable() { return ub_system::bitCheck(this->type, MOVEABLE); }
 
     SPtr<Grid3D> getGrid3D() const { return grid.lock(); }
     void setGrid3D(SPtr<Grid3D> grid) { this->grid = grid; }
@@ -92,8 +92,8 @@ public:
     bool isActive();
 
 protected:
-    void setTimeDependent() { UbSystem::setBit(this->type, TIMEDEPENDENT); }
-    void unsetTimeDependent() { UbSystem::unsetBit(this->type, TIMEDEPENDENT); }
+    void setTimeDependent() { ub_system::setBit(this->type, TIMEDEPENDENT); }
+    void unsetTimeDependent() { ub_system::unsetBit(this->type, TIMEDEPENDENT); }
 
     //! detect that points are inside object
     //! \param min/max coordinates of bounding box
diff --git a/src/cpu/core/LBM/B92IncompressibleNavierStokes.cpp b/src/cpu/core/LBM/B92IncompressibleNavierStokes.cpp
index 12c189696ca74ec901e0d18708d0fa86157aa6f9..16eb5acaf0666094c1c35e319efe96a2bb10ea31 100644
--- a/src/cpu/core/LBM/B92IncompressibleNavierStokes.cpp
+++ b/src/cpu/core/LBM/B92IncompressibleNavierStokes.cpp
@@ -73,7 +73,7 @@ SPtr<LBMKernel> B92IncompressibleNavierStokes::clone()
 //////////////////////////////////////////////////////////////////////////
 void B92IncompressibleNavierStokes::calculate(int step)
 {
-    using namespace D3Q27System;
+    using namespace d3q27_system;
  //   using namespace UbMath;
    using namespace vf::basics::constant;
    using namespace vf::lbm::dir;
@@ -103,8 +103,8 @@ void B92IncompressibleNavierStokes::calculate(int step)
         std::dynamic_pointer_cast<EsoSplit>(dataSet->getFdistributions())->getZeroDistributions();
 
     SPtr<BCArray3D> bcArray = this->getBCSet()->getBCArray();
-    real f[D3Q27System::ENDF + 1];
-    real feq[D3Q27System::ENDF + 1];
+    real f[d3q27_system::ENDF + 1];
+    real feq[d3q27_system::ENDF + 1];
     real drho, vx1, vx2, vx3;
     const int bcArrayMaxX1 = (int)bcArray->getNX1();
     const int bcArrayMaxX2 = (int)bcArray->getNX2();
@@ -293,10 +293,10 @@ void B92IncompressibleNavierStokes::calculate(int step)
                 if (dif > 10.0E-15 || dif < -10.0E-15)
 #endif
                 {
-                    UB_THROW(UbException(UB_EXARGS, "rho="+UbSystem::toString(drho)+", rho_post="+UbSystem::toString(rho_post)
-                        +" dif="+UbSystem::toString(dif)
-                        +" rho is not correct for node "+UbSystem::toString(x1)+","+UbSystem::toString(x2)+","+UbSystem::toString(x3)
-                        +" in " + block.lock()->toString()+" step = "+UbSystem::toString(step)));
+                    UB_THROW(UbException(UB_EXARGS, "rho="+ub_system::toString(drho)+", rho_post="+ub_system::toString(rho_post)
+                        +" dif="+ub_system::toString(dif)
+                        +" rho is not correct for node "+ub_system::toString(x1)+","+ub_system::toString(x2)+","+ub_system::toString(x3)
+                        +" in " + block.lock()->toString()+" step = "+ub_system::toString(step)));
                 }
 #endif
                 //////////////////////////////////////////////////////////////////////////
diff --git a/src/cpu/core/LBM/D3Q27System.cpp b/src/cpu/core/LBM/D3Q27System.cpp
index 9a6839bd891603b336fac567d43e284c41fc4376..233a9e459afe4c12a155072f360a498c6c990e2e 100644
--- a/src/cpu/core/LBM/D3Q27System.cpp
+++ b/src/cpu/core/LBM/D3Q27System.cpp
@@ -35,7 +35,7 @@
 
 #include "lbm/MacroscopicQuantities.h"
 
-namespace D3Q27System
+namespace d3q27_system
 {
 //using namespace UbMath;
     using namespace vf::basics::constant;
diff --git a/src/cpu/core/LBM/D3Q27System.h b/src/cpu/core/LBM/D3Q27System.h
index 23de30503f514f5327ae14ceb476b1ee05d2545a..0f79f5750b83ba20b725b9c22abcfc5a90249b0f 100644
--- a/src/cpu/core/LBM/D3Q27System.h
+++ b/src/cpu/core/LBM/D3Q27System.h
@@ -49,7 +49,7 @@
 //using namespace vf::lbm::dir;
 
 //! \brief namespace for global system-functions
-namespace D3Q27System
+namespace d3q27_system
 {
 //////////////////////////////////////////////////////////////////////////
 // DIRECTION STUFF
@@ -367,20 +367,20 @@ static void calcCompVelocityX3(const real *const &f /*[27]*/, real &vx3)
 static void calcIncompMacroscopicValues(const real *const &f /*[27]*/, real &rho, real &vx1, real &vx2,
                                         real &vx3)
 {
-    D3Q27System::calcDensity(f, rho);
-    D3Q27System::calcIncompVelocityX1(f, vx1);
-    D3Q27System::calcIncompVelocityX2(f, vx2);
-    D3Q27System::calcIncompVelocityX3(f, vx3);
+    d3q27_system::calcDensity(f, rho);
+    d3q27_system::calcIncompVelocityX1(f, vx1);
+    d3q27_system::calcIncompVelocityX2(f, vx2);
+    d3q27_system::calcIncompVelocityX3(f, vx3);
 }
 
 /*=====================================================================*/
 static void calcCompMacroscopicValues(const real *const &f /*[27]*/, real &drho, real &vx1, real &vx2,
                                       real &vx3)
 {
-    D3Q27System::calcDensity(f, drho);
-    D3Q27System::calcIncompVelocityX1(f, vx1);
-    D3Q27System::calcIncompVelocityX2(f, vx2);
-    D3Q27System::calcIncompVelocityX3(f, vx3);
+    d3q27_system::calcDensity(f, drho);
+    d3q27_system::calcIncompVelocityX1(f, vx1);
+    d3q27_system::calcIncompVelocityX2(f, vx2);
+    d3q27_system::calcIncompVelocityX3(f, vx3);
     //real rho = drho + vf::basics::constant::one;
     real rho = drho + vf::basics::constant::c1o1;
     vx1 /= rho;
diff --git a/src/cpu/core/LBM/Interpolation/IncompressibleOffsetInterpolator.cpp b/src/cpu/core/LBM/Interpolation/IncompressibleOffsetInterpolator.cpp
index 72f768fd2e3579de50773a2ef29f1d3b57925aef..93b3a48f2546951f1d8e394923a0478a1159b32b 100644
--- a/src/cpu/core/LBM/Interpolation/IncompressibleOffsetInterpolator.cpp
+++ b/src/cpu/core/LBM/Interpolation/IncompressibleOffsetInterpolator.cpp
@@ -95,7 +95,7 @@ void IncompressibleOffsetInterpolator::interpolateFineToCoarse(D3Q27ICell& icell
 void IncompressibleOffsetInterpolator::calcMoments(const real* const f, real omega, real& press, real& vx1, real& vx2, real& vx3, 
                                                     real& kxy, real& kyz, real& kxz, real& kxxMyy, real& kxxMzz)
 {
-   using namespace D3Q27System;
+   using namespace d3q27_system;
    using namespace vf::lbm::dir;
    using namespace vf::basics::constant;
 
@@ -103,7 +103,7 @@ void IncompressibleOffsetInterpolator::calcMoments(const real* const f, real ome
    //UBLOG(logINFO,"BW  = " << BW);;
 
    real rho = c0o1;
-   D3Q27System::calcIncompMacroscopicValues(f,rho,vx1,vx2,vx3);
+   d3q27_system::calcIncompMacroscopicValues(f,rho,vx1,vx2,vx3);
    
    //////////////////////////////////////////////////////////////////////////
    //DRAFT
@@ -568,7 +568,7 @@ void IncompressibleOffsetInterpolator::calcInterpolatedCoefficiets(const D3Q27IC
 //////////////////////////////////////////////////////////////////////////
 void IncompressibleOffsetInterpolator::calcInterpolatedNode(real* f, real  /*omega*/, real  /*x*/, real  /*y*/, real  /*z*/, real press, real xs, real ys, real zs)
 {
-   using namespace D3Q27System;
+   using namespace d3q27_system;
    using namespace vf::lbm::dir;
    using namespace vf::basics::constant;
 
@@ -583,7 +583,7 @@ void IncompressibleOffsetInterpolator::calcInterpolatedNode(real* f, real  /*ome
    //////////////////////////////////////////////////////////////////////////
 
    real feq[ENDF+1];
-   D3Q27System::calcIncompFeq(feq,rho,vx1,vx2,vx3);
+   d3q27_system::calcIncompFeq(feq,rho,vx1,vx2,vx3);
 
    f[dP00]    = f_E    + xs*x_E    + ys*y_E    + zs*z_E    + xs*ys*xy_E    + xs*zs*xz_E    + ys*zs*yz_E    + feq[dP00];
    f[dM00]    = f_E    + xs*x_E    + ys*y_E    + zs*z_E    + xs*ys*xy_E    + xs*zs*xz_E    + ys*zs*yz_E    + feq[dM00];
@@ -737,7 +737,7 @@ real IncompressibleOffsetInterpolator::calcPressBNE()
 //Position C 0.0, 0.0, 0.0
 void IncompressibleOffsetInterpolator::calcInterpolatedNodeFC(real* f, real omega)
 {
-   using namespace D3Q27System;
+   using namespace d3q27_system;
    using namespace vf::lbm::dir;
    using namespace vf::basics::constant;
 
@@ -761,7 +761,7 @@ void IncompressibleOffsetInterpolator::calcInterpolatedNodeFC(real* f, real omeg
    //////////////////////////////////////////////////////////////////////////
 
    real feq[ENDF+1];
-   D3Q27System::calcIncompFeq(feq,rho,vx1,vx2,vx3);
+   d3q27_system::calcIncompFeq(feq,rho,vx1,vx2,vx3);
 
    real eps_new = c2o1;
    real o  = omega;
diff --git a/src/cpu/core/LBM/K15CompressibleNavierStokes.cpp b/src/cpu/core/LBM/K15CompressibleNavierStokes.cpp
index f1fb6526adeb81f720afc2f04708a45c380cac18..d46f7893750bfadca5a1a2b5a894f4399fedce62 100644
--- a/src/cpu/core/LBM/K15CompressibleNavierStokes.cpp
+++ b/src/cpu/core/LBM/K15CompressibleNavierStokes.cpp
@@ -100,7 +100,7 @@ SPtr<LBMKernel> K15CompressibleNavierStokes::clone()
 //////////////////////////////////////////////////////////////////////////
 void K15CompressibleNavierStokes::calculate(int step)
 {
-   using namespace D3Q27System;
+   using namespace d3q27_system;
    using namespace std;
    using namespace vf::lbm::dir;
 
@@ -897,10 +897,10 @@ void K15CompressibleNavierStokes::calculate(int step)
                 if (dif > 10.0E-15 || dif < -10.0E-15)
 #endif
                 {
-                    UB_THROW(UbException(UB_EXARGS, "rho="+UbSystem::toString(drho)+", rho_post="+UbSystem::toString(drho_post)
-                    +" dif="+UbSystem::toString(dif)
-                    +" rho is not correct for node "+UbSystem::toString(x1)+","+UbSystem::toString(x2)+","+UbSystem::toString(x3)
-                    +" in " + block.lock()->toString()+" step = "+UbSystem::toString(step)));
+                    UB_THROW(UbException(UB_EXARGS, "rho="+ub_system::toString(drho)+", rho_post="+ub_system::toString(drho_post)
+                    +" dif="+ub_system::toString(dif)
+                    +" rho is not correct for node "+ub_system::toString(x1)+","+ub_system::toString(x2)+","+ub_system::toString(x3)
+                    +" in " + block.lock()->toString()+" step = "+ub_system::toString(step)));
                 }
 #endif
                 //////////////////////////////////////////////////////////////////////////
diff --git a/src/cpu/core/LBM/K15CompressibleNavierStokes.h b/src/cpu/core/LBM/K15CompressibleNavierStokes.h
index 49115472e683c35d5a58eb7cf2ebbf3bbb77dfe3..2373150b2d2f40483e6b4413b0a8175d41c6c3a6 100644
--- a/src/cpu/core/LBM/K15CompressibleNavierStokes.h
+++ b/src/cpu/core/LBM/K15CompressibleNavierStokes.h
@@ -60,7 +60,7 @@ public:
    void setRelaxationParameter(Parameter p);
 protected:
    virtual void initDataSet();
-   real f[D3Q27System::ENDF+1];
+   real f[d3q27_system::ENDF+1];
 
    vf::basics::Timer timer;
 
diff --git a/src/cpu/core/LBM/K16IncompressibleNavierStokes.cpp b/src/cpu/core/LBM/K16IncompressibleNavierStokes.cpp
index 4d67d96242f05e8398b8bc1d3dafacdf94364e26..a97b74456585f9b7aea771243fb4d4163dc05fbb 100644
--- a/src/cpu/core/LBM/K16IncompressibleNavierStokes.cpp
+++ b/src/cpu/core/LBM/K16IncompressibleNavierStokes.cpp
@@ -90,7 +90,7 @@ SPtr<LBMKernel> K16IncompressibleNavierStokes::clone()
 //////////////////////////////////////////////////////////////////////////
 void K16IncompressibleNavierStokes::calculate(int step)
 {
-   using namespace D3Q27System;
+   using namespace d3q27_system;
    using namespace std;
    using namespace vf::lbm::dir;
 
@@ -879,10 +879,10 @@ void K16IncompressibleNavierStokes::calculate(int step)
             if (dif > 10.0E-15 || dif < -10.0E-15)
 #endif
             {
-                UB_THROW(UbException(UB_EXARGS, "rho="+UbSystem::toString(rho)+", rho_post="+UbSystem::toString(rho_post)
-                    +" dif="+UbSystem::toString(dif)
-                    +" rho is not correct for node "+UbSystem::toString(x1)+","+UbSystem::toString(x2)+","+UbSystem::toString(x3)
-                    +" in " + block.lock()->toString()+" step = "+UbSystem::toString(step)));
+                UB_THROW(UbException(UB_EXARGS, "rho="+ub_system::toString(rho)+", rho_post="+ub_system::toString(rho_post)
+                    +" dif="+ub_system::toString(dif)
+                    +" rho is not correct for node "+ub_system::toString(x1)+","+ub_system::toString(x2)+","+ub_system::toString(x3)
+                    +" in " + block.lock()->toString()+" step = "+ub_system::toString(step)));
             }
 #endif
             //////////////////////////////////////////////////////////////////////////
diff --git a/src/cpu/core/LBM/K16IncompressibleNavierStokes.h b/src/cpu/core/LBM/K16IncompressibleNavierStokes.h
index 5ac3c3bd1334033a82c78a6e52dbe49923c02fd1..97f71738941bf21840deff0c0335c9f1eeb72e13 100644
--- a/src/cpu/core/LBM/K16IncompressibleNavierStokes.h
+++ b/src/cpu/core/LBM/K16IncompressibleNavierStokes.h
@@ -60,7 +60,7 @@ public:
    void setRelaxationParameter(Parameter p);
 protected:
    virtual void initDataSet();
-   real f[D3Q27System::ENDF+1];
+   real f[d3q27_system::ENDF+1];
 
    vf::basics::Timer timer;
 
diff --git a/src/cpu/core/LBM/LBMKernel.cpp b/src/cpu/core/LBM/LBMKernel.cpp
index 9dbf07ec82cd6f6c2e249a43af4686368bc349c1..72f037dcf84c191a4796855bb431ddeae7cf2452 100644
--- a/src/cpu/core/LBM/LBMKernel.cpp
+++ b/src/cpu/core/LBM/LBMKernel.cpp
@@ -60,18 +60,18 @@ real LBMKernel::getCollisionFactor() const { return collFactor; }
 //////////////////////////////////////////////////////////////////////////
 void LBMKernel::setForcingX1(real forcingX1)
 {
-    this->muForcingX1.SetExpr(UbSystem::toString(forcingX1, realLim::digits10));
+    this->muForcingX1.SetExpr(ub_system::toString(forcingX1, realLim::digits10));
     this->checkFunction(muForcingX1);
 }
 //////////////////////////////////////////////////////////////////////////
 void LBMKernel::setForcingX2(real forcingX2)
 {
-    this->muForcingX2.SetExpr(UbSystem::toString(forcingX2, realLim::digits10));
+    this->muForcingX2.SetExpr(ub_system::toString(forcingX2, realLim::digits10));
     this->checkFunction(muForcingX2);
 }
 void LBMKernel::setForcingX3(real forcingX3)
 {
-    this->muForcingX3.SetExpr(UbSystem::toString(forcingX3, realLim::digits10));
+    this->muForcingX3.SetExpr(ub_system::toString(forcingX3, realLim::digits10));
     this->checkFunction(muForcingX3);
 }
 //////////////////////////////////////////////////////////////////////////
diff --git a/src/cpu/core/LBM/LBMSystem.cpp b/src/cpu/core/LBM/LBMSystem.cpp
index c7d86df31e3539f6b970a8ae07110f0aee472c49..4ae3b0c4eaadfd0370003a6bcbfffc09cacb8d27 100644
--- a/src/cpu/core/LBM/LBMSystem.cpp
+++ b/src/cpu/core/LBM/LBMSystem.cpp
@@ -34,7 +34,7 @@
 
 #include "LBMSystem.h"
 
-namespace LBMSystem
+namespace lbm_system
 {
 real SMAG_CONST = REAL_CAST(0.18);
 }
diff --git a/src/cpu/core/LBM/LBMSystem.h b/src/cpu/core/LBM/LBMSystem.h
index 6aa5ce55edb59df0034f76b3a4c83fa196cfa9f6..9bc942335daec27bf670fda0b5617c275814d84e 100644
--- a/src/cpu/core/LBM/LBMSystem.h
+++ b/src/cpu/core/LBM/LBMSystem.h
@@ -42,7 +42,7 @@
 
 //! \brief namespace for global system-functions
 
-namespace LBMSystem
+namespace lbm_system
 {
 
 //#define SINGLEPRECISION
diff --git a/src/cpu/core/Simulation/Block3D.cpp b/src/cpu/core/Simulation/Block3D.cpp
index 66f0a50aeb089e6701f6c03e8ee54fc5a58b2815..e389cf09be17883d91094e077add6fe6370c0663 100644
--- a/src/cpu/core/Simulation/Block3D.cpp
+++ b/src/cpu/core/Simulation/Block3D.cpp
@@ -292,18 +292,18 @@ int Block3D::getNumberOfRemoteConnectorsForSurfaces()
 }
 void Block3D::setCollectionOfInterpolationFlagCF(int flags) { interpolationFlagCF = flags; }
 //////////////////////////////////////////////////////////////////////////
-void Block3D::setInterpolationFlagCF(int dir) { UbSystem::setBit(interpolationFlagCF, 1 << dir); }
+void Block3D::setInterpolationFlagCF(int dir) { ub_system::setBit(interpolationFlagCF, 1 << dir); }
 //////////////////////////////////////////////////////////////////////////
 int Block3D::getCollectionOfInterpolationFlagCF() { return interpolationFlagCF; }
 //////////////////////////////////////////////////////////////////////////
-bool Block3D::hasInterpolationFlagCF(int dir) { return UbSystem::bitCheck(interpolationFlagCF, 1 << dir); }
+bool Block3D::hasInterpolationFlagCF(int dir) { return ub_system::bitCheck(interpolationFlagCF, 1 << dir); }
 void Block3D::setCollectionOfInterpolationFlagFC(int flags) { interpolationFlagFC = flags; }
 //////////////////////////////////////////////////////////////////////////
-void Block3D::setInterpolationFlagFC(int dir) { UbSystem::setBit(interpolationFlagFC, 1 << dir); }
+void Block3D::setInterpolationFlagFC(int dir) { ub_system::setBit(interpolationFlagFC, 1 << dir); }
 //////////////////////////////////////////////////////////////////////////
 int Block3D::getCollectionOfInterpolationFlagFC() { return interpolationFlagFC; }
 //////////////////////////////////////////////////////////////////////////
-bool Block3D::hasInterpolationFlagFC(int dir) { return UbSystem::bitCheck(interpolationFlagFC, 1 << dir); }
+bool Block3D::hasInterpolationFlagFC(int dir) { return ub_system::bitCheck(interpolationFlagFC, 1 << dir); }
 //////////////////////////////////////////////////////////////////////////
 bool Block3D::hasInterpolationFlag() { return (interpolationFlagCF != 0 || interpolationFlagFC != 0); }
 //////////////////////////////////////////////////////////////////////////
@@ -339,13 +339,13 @@ std::string Block3D::toString()
     for (std::size_t i = 0; i < connectors.size(); i++)
         if (connectors[i]) {
             if (connectors[i]->isLocalConnector())
-                ss << "l." << D3Q27System::getDirectionString(connectors[i]->getSendDir()) << ", ";
+                ss << "l." << d3q27_system::getDirectionString(connectors[i]->getSendDir()) << ", ";
             if (connectors[i]->isRemoteConnector())
-                ss << "r." << D3Q27System::getDirectionString(connectors[i]->getSendDir()) << ", ";
+                ss << "r." << d3q27_system::getDirectionString(connectors[i]->getSendDir()) << ", ";
             if (connectors[i]->isInterpolationConnectorCF())
-                ss << "cf." << D3Q27System::getDirectionString(connectors[i]->getSendDir()) << ", ";
+                ss << "cf." << d3q27_system::getDirectionString(connectors[i]->getSendDir()) << ", ";
             if (connectors[i]->isInterpolationConnectorFC())
-                ss << "fc." << D3Q27System::getDirectionString(connectors[i]->getSendDir()) << ", ";
+                ss << "fc." << d3q27_system::getDirectionString(connectors[i]->getSendDir()) << ", ";
         }
     return ss.str();
 }
diff --git a/src/cpu/core/Simulation/Grid3D.cpp b/src/cpu/core/Simulation/Grid3D.cpp
index 229861171c88ab16b5dd895dce9f80ab27d95ab8..8eb61cfc5a897c9c624890be53ebefc86bbce639 100644
--- a/src/cpu/core/Simulation/Grid3D.cpp
+++ b/src/cpu/core/Simulation/Grid3D.cpp
@@ -50,12 +50,12 @@
 
 using namespace std;
 
-Grid3D::Grid3D() { levelSet.resize(D3Q27System::MAXLEVEL + 1); }
+Grid3D::Grid3D() { levelSet.resize(d3q27_system::MAXLEVEL + 1); }
 //////////////////////////////////////////////////////////////////////////
 Grid3D::Grid3D(std::shared_ptr<vf::parallel::Communicator> comm)
 
 {
-    levelSet.resize(D3Q27System::MAXLEVEL + 1);
+    levelSet.resize(d3q27_system::MAXLEVEL + 1);
     bundle = comm->getBundleID();
     rank = comm->getProcessID();
 }
@@ -67,7 +67,7 @@ Grid3D::Grid3D(std::shared_ptr<vf::parallel::Communicator> comm, int blockNx1, i
 {
     using namespace vf::basics::constant;
 
-    levelSet.resize(D3Q27System::MAXLEVEL + 1);
+    levelSet.resize(d3q27_system::MAXLEVEL + 1);
     bundle = comm->getBundleID();
     rank  = comm->getProcessID();
     trafo = std::make_shared<CoordinateTransformation3D>(c0o1, c0o1, c0o1, (real)blockNx1, (real)blockNx2,
@@ -92,7 +92,7 @@ void Grid3D::accept(Block3DVisitor &blockVisitor)
     int startLevel = blockVisitor.getStartLevel();
     int stopLevel  = blockVisitor.getStopLevel();
 
-    if (startLevel < 0 || stopLevel < 0 || startLevel > D3Q27System::MAXLEVEL || stopLevel > D3Q27System::MAXLEVEL)
+    if (startLevel < 0 || stopLevel < 0 || startLevel > d3q27_system::MAXLEVEL || stopLevel > d3q27_system::MAXLEVEL)
         throw UbException(UB_EXARGS, "not valid level!");
 
     bool dir = startLevel < stopLevel;
@@ -162,8 +162,8 @@ bool Grid3D::deleteBlock(int ix1, int ix2, int ix3, int level)
 void Grid3D::deleteBlocks()
 {
     std::vector<std::vector<SPtr<Block3D>>> blocksVector(25);
-    int minInitLevel = D3Q27System::MINLEVEL;
-    int maxInitLevel = D3Q27System::MAXLEVEL;
+    int minInitLevel = d3q27_system::MINLEVEL;
+    int maxInitLevel = d3q27_system::MAXLEVEL;
     for (int level = minInitLevel; level < maxInitLevel; level++) {
         getBlocks(level, blocksVector[level]);
         for (SPtr<Block3D> block : blocksVector[level]) //    blocks of the current level
@@ -269,7 +269,7 @@ void Grid3D::getSubBlocks(int ix1, int ix2, int ix3, int level, int levelDepth,
         return;
     if (level > 0 && !this->getSuperBlock(ix1, ix2, ix3, level))
         return;
-    if (level >= D3Q27System::MAXLEVEL)
+    if (level >= d3q27_system::MAXLEVEL)
         throw UbException(UB_EXARGS, "Level bigger then MAXLEVEL");
 
     int x1[] = { ix1 << 1, (ix1 << 1) + 1 };
@@ -294,8 +294,8 @@ bool Grid3D::expandBlock(int ix1, int ix2, int ix3, int level)
 
     SPtr<Block3D> block = this->getBlock(ix1, ix2, ix3, level);
     if (!block)
-        throw UbException(UB_EXARGS, "block(x1=" + UbSystem::toString(ix1) + ", x2=" + UbSystem::toString(ix2) +
-                                         ", x3=" + UbSystem::toString(ix3) + ", l=" + UbSystem::toString(level) +
+        throw UbException(UB_EXARGS, "block(x1=" + ub_system::toString(ix1) + ", x2=" + ub_system::toString(ix2) +
+                                         ", x3=" + ub_system::toString(ix3) + ", l=" + ub_system::toString(level) +
                                          ") is not exist");
 
     // da bei periodic der eigentliche block andere indizes hat:
@@ -304,7 +304,7 @@ bool Grid3D::expandBlock(int ix1, int ix2, int ix3, int level)
     ix3 = block->getX3();
 
     int l = level + 1;
-    if (l > D3Q27System::MAXLEVEL)
+    if (l > d3q27_system::MAXLEVEL)
         throw UbException(UB_EXARGS, "level > Grid3D::MAXLEVEL");
 
     int west   = ix1 << 1;
@@ -340,7 +340,7 @@ bool Grid3D::expandBlock(int ix1, int ix2, int ix3, int level)
 //////////////////////////////////////////////////////////////////////////
 SPtr<Block3D> Grid3D::collapseBlock(int fix1, int fix2, int fix3, int flevel, int levelDepth)
 {
-    using UbSystem::toString;
+    using ub_system::toString;
 
     SPtr<Block3D> fblock = this->getBlock(fix1, fix2, fix3, flevel);
     if (flevel < 1)
@@ -587,13 +587,13 @@ UbTupleDouble3 Grid3D::getBlockWorldCoordinates(int blockX1Index, int blockX2Ind
 void Grid3D::checkLevel(int level)
 {
     if (level < 0) {
-        throw UbException(UB_EXARGS, "l(" + UbSystem::toString(level) + (string) ")<0");
+        throw UbException(UB_EXARGS, "l(" + ub_system::toString(level) + (string) ")<0");
     }
-    if (level > D3Q27System::MAXLEVEL) {
-        throw UbException(UB_EXARGS, "l(" + UbSystem::toString(level) + (string) ")>MAXLEVEL");
+    if (level > d3q27_system::MAXLEVEL) {
+        throw UbException(UB_EXARGS, "l(" + ub_system::toString(level) + (string) ")>MAXLEVEL");
     }
     if (this->levelSet[level].size() == 0) {
-        throw UbException(UB_EXARGS, "levelMap for level(" + UbSystem::toString(level) + (string) ")==NULL");
+        throw UbException(UB_EXARGS, "levelMap for level(" + ub_system::toString(level) + (string) ")==NULL");
     }
 }
 //////////////////////////////////////////////////////////////////////////
@@ -601,7 +601,7 @@ bool Grid3D::hasLevel(int level) const
 {
     if (level < 0)
         return false;
-    if (level > D3Q27System::MAXLEVEL)
+    if (level > d3q27_system::MAXLEVEL)
         return false;
     if (this->levelSet[level].size() == 0)
         return false;
@@ -621,7 +621,7 @@ UbTupleInt3 Grid3D::getBlockNX() const { return makeUbTuple(blockNx1, blockNx2,
 
 SPtr<Block3D> Grid3D::getNeighborBlock(int dir, int ix1, int ix2, int ix3, int level) const
 {
-    return this->getBlock(ix1 + D3Q27System::DX1[dir], ix2 + D3Q27System::DX2[dir], ix3 + D3Q27System::DX3[dir],
+    return this->getBlock(ix1 + d3q27_system::DX1[dir], ix2 + d3q27_system::DX2[dir], ix3 + d3q27_system::DX3[dir],
                           level);
 }
 //////////////////////////////////////////////////////////////////////////
@@ -637,7 +637,7 @@ SPtr<Block3D> Grid3D::getNeighborBlock(int dir, SPtr<Block3D> block) const
 void Grid3D::getAllNeighbors(int ix1, int ix2, int ix3, int level, int levelDepth, std::vector<SPtr<Block3D>> &blocks)
 {
    // for (int dir = D3Q27System::STARTDIR; dir <= D3Q27System::ENDDIR; dir++)FSTARTDIR
-   for (int dir = D3Q27System::FSTARTDIR; dir <= D3Q27System::FENDDIR; dir++)
+   for (int dir = d3q27_system::FSTARTDIR; dir <= d3q27_system::FENDDIR; dir++)
    {
         this->getNeighborBlocksForDirection(dir, ix1, ix2, ix3, level, levelDepth, blocks);
     }
@@ -1186,7 +1186,7 @@ void Grid3D::getNeighborBlocksForDirection(int dir, int ix1, int ix2, int ix3, i
             this->getNeighborsBottomSouthWest(ix1, ix2, ix3, level, levelDepth, blocks);
             break;
         default:
-            throw UbException(UB_EXARGS, "direction " + UbSystem::toString(dir) + " is not exist");
+            throw UbException(UB_EXARGS, "direction " + ub_system::toString(dir) + " is not exist");
     }
 }
 //////////////////////////////////////////////////////////////////////////
@@ -1354,7 +1354,7 @@ void Grid3D::getNeighborBlocksForDirectionWithREST(int dir, int ix1, int ix2, in
             this->getNeighborsZero(ix1, ix2, ix3, level, levelDepth, blocks);
             break;
         default:
-            throw UbException(UB_EXARGS, "direction " + UbSystem::toString(dir) + " is not exist");
+            throw UbException(UB_EXARGS, "direction " + ub_system::toString(dir) + " is not exist");
     }
 }
 //////////////////////////////////////////////////////////////////////////
@@ -1989,7 +1989,7 @@ void Grid3D::getBlocks(int level, int rank, bool active, std::vector<SPtr<Block3
 //////////////////////////////////////////////////////////////////////////
 int Grid3D::getFinestInitializedLevel()
 {
-    for (int i = D3Q27System::MAXLEVEL; i >= 0; i--)
+    for (int i = d3q27_system::MAXLEVEL; i >= 0; i--)
         if (this->levelSet[i].size() > 0)
             return (i);
     return (-1);
@@ -1997,7 +1997,7 @@ int Grid3D::getFinestInitializedLevel()
 //////////////////////////////////////////////////////////////////////////
 int Grid3D::getCoarsestInitializedLevel()
 {
-    for (int i = 0; i <= D3Q27System::MAXLEVEL; i++)
+    for (int i = 0; i <= d3q27_system::MAXLEVEL; i++)
         if (this->levelSet[i].size() > 0)
             return (i);
     return (-1);
@@ -2052,13 +2052,13 @@ void Grid3D::getBlocksByCuboid(real minX1, real minX2, real minX3, real maxX1, r
     // Achtung, wenn minX1 genau auf grenze zwischen zwei bloecken -> der "kleinere" muss genommen werden,
     // da beim Transformieren der "groessere" Index rauskommt
     int iMinX1 = (int)dMinX1;
-    if (UbMath::zero(dMinX1 - iMinX1))
+    if (ub_math::zero(dMinX1 - iMinX1))
         iMinX1 -= 1;
     int iMinX2 = (int)dMinX2;
-    if (UbMath::zero(dMinX2 - iMinX2))
+    if (ub_math::zero(dMinX2 - iMinX2))
         iMinX2 -= 1;
     int iMinX3 = (int)dMinX3;
-    if (UbMath::zero(dMinX3 - iMinX3))
+    if (ub_math::zero(dMinX3 - iMinX3))
         iMinX3 -= 1;
 
     // max (hier kann die Zusatzabfrage vernachlaessigt werden):
@@ -2107,13 +2107,13 @@ void Grid3D::getBlocksByCuboid(int level, real minX1, real minX2, real minX3, re
 
     // Achtung, wenn minX1 genau auf grenze zwischen zwei bloecken -> der "kleinere" muss genommen werden:
     int iMinX1 = (int)dMinX1;
-    if (UbMath::zero(dMinX1 - iMinX1))
+    if (ub_math::zero(dMinX1 - iMinX1))
         iMinX1 -= 1;
     int iMinX2 = (int)dMinX2;
-    if (UbMath::zero(dMinX2 - iMinX2))
+    if (ub_math::zero(dMinX2 - iMinX2))
         iMinX2 -= 1;
     int iMinX3 = (int)dMinX3;
-    if (UbMath::zero(dMinX3 - iMinX3))
+    if (ub_math::zero(dMinX3 - iMinX3))
         iMinX3 -= 1;
 
     // max:
@@ -2155,13 +2155,13 @@ void Grid3D::getAllBlocksByCuboid(real minX1, real minX2, real minX3, real maxX1
     // Achtung, wenn minX1 genau auf grenze zwischen zwei bloecken -> der "kleinere" muss genommen werden,
     // da beim Transformieren der "groessere" Index rauskommt
     int iMinX1 = (int)dMinX1;
-    if (UbMath::zero(dMinX1 - iMinX1))
+    if (ub_math::zero(dMinX1 - iMinX1))
         iMinX1 -= 1;
     int iMinX2 = (int)dMinX2;
-    if (UbMath::zero(dMinX2 - iMinX2))
+    if (ub_math::zero(dMinX2 - iMinX2))
         iMinX2 -= 1;
     int iMinX3 = (int)dMinX3;
-    if (UbMath::zero(dMinX3 - iMinX3))
+    if (ub_math::zero(dMinX3 - iMinX3))
         iMinX3 -= 1;
 
     // max (hier kann die Zusatzabfrage vernachlaessigt werden):
@@ -2352,7 +2352,7 @@ void Grid3D::updateDistributedBlocks(std::shared_ptr<vf::parallel::Communicator>
             levelSet[l].clear();
         }
         this->levelSet.clear();
-        levelSet.resize(D3Q27System::MAXLEVEL + 1);
+        levelSet.resize(d3q27_system::MAXLEVEL + 1);
 
         int rsize = (int)blocks.size();
         for (int i = 0; i < rsize; i += 5) {
diff --git a/src/cpu/core/Simulation/Grid3D.h b/src/cpu/core/Simulation/Grid3D.h
index c33afe30e63492e1b24cc6657b7304e2482977ee..42e95c7a0485e234c9fb19e13524f0afe315800d 100644
--- a/src/cpu/core/Simulation/Grid3D.h
+++ b/src/cpu/core/Simulation/Grid3D.h
@@ -58,7 +58,7 @@ class Interactor3D;
 class Grid3D : public enableSharedFromThis<Grid3D>
 {
 public:
-    using Block3DKey      = UbKeys::Key3<int>;
+    using Block3DKey      = ub_keys::Key3<int>;
     using Block3DMap      = std::map<Block3DKey, SPtr<Block3D>>;
     using BlockIDMap      = std::map<int, SPtr<Block3D>>;
     using LevelSet        = std::vector<Block3DMap>;
diff --git a/src/cpu/core/SimulationObservers/AdjustForcingSimulationObserver.cpp b/src/cpu/core/SimulationObservers/AdjustForcingSimulationObserver.cpp
index 64a6d7515ce5ddf8a2e9b09a6eebf418c3ab24f0..dab7b9b0763bda65e7ee892a93c679440d874599 100644
--- a/src/cpu/core/SimulationObservers/AdjustForcingSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/AdjustForcingSimulationObserver.cpp
@@ -75,9 +75,9 @@ AdjustForcingSimulationObserver::AdjustForcingSimulationObserver(SPtr<Grid3D> gr
         ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
         if (!ostr) {
             ostr.clear();
-            std::string file_path = UbSystem::getPathFromString(fname);
+            std::string file_path = ub_system::getPathFromString(fname);
             if (file_path.size() > 0) {
-                UbSystem::makeDirectory(file_path);
+                ub_system::makeDirectory(file_path);
                 ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
             }
             if (!ostr)
@@ -118,9 +118,9 @@ void AdjustForcingSimulationObserver::collectData(real step)
         ostr2.open(fNameCfg.c_str(), std::ios_base::out);
         if (!ostr2) {
             ostr2.clear();
-            std::string path = UbSystem::getPathFromString(fNameCfg);
+            std::string path = ub_system::getPathFromString(fNameCfg);
             if (path.size() > 0) {
-                UbSystem::makeDirectory(path);
+                ub_system::makeDirectory(path);
                 ostr2.open(fNameCfg.c_str(), std::ios_base::out);
             }
             if (!ostr2)
@@ -174,14 +174,14 @@ void AdjustForcingSimulationObserver::collectData(real step)
         // UBLOG(logINFO, "D3Q27AdjustForcingSimulationObserver step: " << static_cast<int>(step));
         // UBLOG(logINFO, "new forcing is: " << forcing);
         std::string fname = path + "/forcing/forcing.csv";
-        // std::string fname = path + "/forcing/forcing_"+UbSystem::toString(comm->getProcessID())+".csv";
+        // std::string fname = path + "/forcing/forcing_"+ub_system::toString(comm->getProcessID())+".csv";
         std::ofstream ostr;
         ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
         if (!ostr) {
             ostr.clear();
-            std::string path = UbSystem::getPathFromString(fname);
+            std::string path = ub_system::getPathFromString(fname);
             if (path.size() > 0) {
-                UbSystem::makeDirectory(path);
+                ub_system::makeDirectory(path);
                 ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
             }
             if (!ostr)
diff --git a/src/cpu/core/SimulationObservers/AverageValuesSimulationObserver.cpp b/src/cpu/core/SimulationObservers/AverageValuesSimulationObserver.cpp
index 73df406a0d06933ba6dd33c6c7b21a63805ac154..b77eb79e1b41bf5356e325a60a5d6611c8679885 100644
--- a/src/cpu/core/SimulationObservers/AverageValuesSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/AverageValuesSimulationObserver.cpp
@@ -211,10 +211,10 @@ void AverageValuesSimulationObserver::collectData(real step)
     }
 
     string pfilePath, partPath, subfolder, cfilePath;
-    subfolder = "av" + UbSystem::toString(istep);
+    subfolder = "av" + ub_system::toString(istep);
     pfilePath = path + "/av/" + subfolder;
     cfilePath = path + "/av/av_collection";
-    partPath  = pfilePath + "/av" + UbSystem::toString(gridRank) + "_" + UbSystem::toString(istep);
+    partPath  = pfilePath + "/av" + ub_system::toString(gridRank) + "_" + ub_system::toString(istep);
 
     string partName = writer->writeOctsWithNodeData(partPath, nodes, cells, datanames, data);
     size_t found    = partName.find_last_of("/");
@@ -369,7 +369,7 @@ void AverageValuesSimulationObserver::addData(const SPtr<Block3D> block)
 //////////////////////////////////////////////////////////////////////////
 void AverageValuesSimulationObserver::calculateAverageValues(real timeStep)
 {
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::basics::constant;
 
     // Funktionszeiger
@@ -415,7 +415,7 @@ void AverageValuesSimulationObserver::calculateAverageValues(real timeStep)
                                 //////////////////////////////////////////////////////////////////////////
                                 real vx, vy, vz, rho;
                                 calcMacros(f, rho, vx, vy, vz);
-                                real press = D3Q27System::calcPress(f, rho, vx, vy, vz);
+                                real press = d3q27_system::calcPress(f, rho, vx, vy, vz);
 
                                 //////////////////////////////////////////////////////////////////////////
                                 // compute average values
@@ -490,13 +490,13 @@ void AverageValuesSimulationObserver::calculateAverageValues(real timeStep)
 //    if (comm->getProcessID() == comm->getRoot())
 //    {
 //        std::ofstream ostr;
-//        string fname = path + "_PlotData_" + UbSystem::toString(step) + ".txt";
+//        string fname = path + "_PlotData_" + ub_system::toString(step) + ".txt";
 //        ostr.open(fname.c_str(), std::ios_base::out);
 //        if(!ostr)
 //        {
 //            ostr.clear();
-//            string path = UbSystem::getPathFromString(fname);
-//            if(path.size()>0){ UbSystem::makeDirectory(path); ostr.open(fname.c_str(), std::ios_base::out);}
+//            string path = ub_system::getPathFromString(fname);
+//            if(path.size()>0){ ub_system::makeDirectory(path); ostr.open(fname.c_str(), std::ios_base::out);}
 //            if(!ostr) throw UbException(UB_EXARGS,"couldn't open file "+fname);
 //        }
 //        ostr << "Time"<< "\t" <<"Ref.Time"<<"\t"<< "Z_Coor"<< "\t" << "Pore fraction" << "\t";
@@ -565,8 +565,8 @@ void AverageValuesSimulationObserver::calculateAverageValues(real timeStep)
 //                    if(!ostr)
 //                    {
 //                        ostr.clear();
-//                        string path = UbSystem::getPathFromString(fname);
-//                        if(path.size()>0){ UbSystem::makeDirectory(path); ostr.open(fname.c_str(), std::ios_base::out |
+//                        string path = ub_system::getPathFromString(fname);
+//                        if(path.size()>0){ ub_system::makeDirectory(path); ostr.open(fname.c_str(), std::ios_base::out |
 //std::ios_base::app);}                         if(!ostr) throw UbException(UB_EXARGS,"couldn't open file "+fname);
 //                    }
 //                    ostr << istep << "\t" << resetStep << "\t" << hi+0.5*dx << "\t" << nn1/(nn1+ns1)*100.0 << "%\t";
diff --git a/src/cpu/core/SimulationObservers/CalculateForcesSimulationObserver.cpp b/src/cpu/core/SimulationObservers/CalculateForcesSimulationObserver.cpp
index 53d1f732df3b05502cfb7b6e5e6e11f9604d1225..4ab31d93bca389d6c93f0d7aff3baf6841955caf 100644
--- a/src/cpu/core/SimulationObservers/CalculateForcesSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/CalculateForcesSimulationObserver.cpp
@@ -56,9 +56,9 @@ CalculateForcesSimulationObserver::CalculateForcesSimulationObserver(SPtr<Grid3D
         ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
         if (!ostr) {
             ostr.clear();
-            std::string file_path = UbSystem::getPathFromString(fname);
+            std::string file_path = ub_system::getPathFromString(fname);
             if (file_path.size() > 0) {
-                UbSystem::makeDirectory(file_path);
+                ub_system::makeDirectory(file_path);
                 ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
             }
             if (!ostr)
@@ -109,9 +109,9 @@ void CalculateForcesSimulationObserver::collectData(real step)
         ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
         if (!ostr) {
             ostr.clear();
-            std::string path = UbSystem::getPathFromString(fname);
+            std::string path = ub_system::getPathFromString(fname);
             if (path.size() > 0) {
-                UbSystem::makeDirectory(path);
+                ub_system::makeDirectory(path);
                 ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
             }
             if (!ostr)
@@ -186,7 +186,7 @@ void CalculateForcesSimulationObserver::calculateForces()
             }
             // if we have got discretization with more level
             // deltaX is LBM deltaX and equal LBM deltaT
-            real deltaX = LBMSystem::getDeltaT(block->getLevel()); // grid->getDeltaT(block);
+            real deltaX = lbm_system::getDeltaT(block->getLevel()); // grid->getDeltaT(block);
             real deltaXquadrat = deltaX * deltaX;
             forceX1 *= deltaXquadrat;
             forceX2 *= deltaXquadrat;
@@ -235,18 +235,18 @@ UbTupleDouble3 CalculateForcesSimulationObserver::getForces(int x1, int x2, int
 
         dynamicPointerCast<EsoTwist3D>(distributions)->swap();
 
-        for (int fdir = D3Q27System::FSTARTDIR; fdir <= D3Q27System::FENDDIR; fdir++) {
+        for (int fdir = d3q27_system::FSTARTDIR; fdir <= d3q27_system::FENDDIR; fdir++) {
             if (bc->hasNoSlipBoundaryFlag(fdir)) {
-                const int invDir = D3Q27System::INVDIR[fdir];
+                const int invDir = d3q27_system::INVDIR[fdir];
                 f = dynamicPointerCast<EsoTwist3D>(distributions)->getPostCollisionDistributionForDirection(x1, x2, x3, invDir);
                 fnbr =
                     dynamicPointerCast<EsoTwist3D>(distributions)
-                        ->getPostCollisionDistributionForDirection(x1 + D3Q27System::DX1[invDir], x2 + D3Q27System::DX2[invDir],
-                                                         x3 + D3Q27System::DX3[invDir], fdir);
+                        ->getPostCollisionDistributionForDirection(x1 + d3q27_system::DX1[invDir], x2 + d3q27_system::DX2[invDir],
+                                                         x3 + d3q27_system::DX3[invDir], fdir);
 
-                forceX1 += (f + fnbr) * D3Q27System::DX1[invDir];
-                forceX2 += (f + fnbr) * D3Q27System::DX2[invDir];
-                forceX3 += (f + fnbr) * D3Q27System::DX3[invDir];
+                forceX1 += (f + fnbr) * d3q27_system::DX1[invDir];
+                forceX2 += (f + fnbr) * d3q27_system::DX2[invDir];
+                forceX3 += (f + fnbr) * d3q27_system::DX3[invDir];
             }
         }
         dynamicPointerCast<EsoTwist3D>(distributions)->swap();
diff --git a/src/cpu/core/SimulationObservers/DecreaseViscositySimulationObserver.cpp b/src/cpu/core/SimulationObservers/DecreaseViscositySimulationObserver.cpp
index 9aed184de731616e145d4922d526c15986b233ec..6aeaf088f0a2e1c93c7388ffec88058bc342bdc3 100644
--- a/src/cpu/core/SimulationObservers/DecreaseViscositySimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/DecreaseViscositySimulationObserver.cpp
@@ -89,7 +89,7 @@ void DecreaseViscositySimulationObserver::setViscosity(real step)
             for (SPtr<Block3D> block : blockVector) {
                 SPtr<LBMKernel> kernel = block->getKernel();
                 if (kernel) {
-                    real collFactor = LBMSystem::calcCollisionFactor(nue, block->getLevel());
+                    real collFactor = lbm_system::calcCollisionFactor(nue, block->getLevel());
                     kernel->setCollisionFactor(collFactor);
                 }
             }
diff --git a/src/cpu/core/SimulationObservers/ForceCalculator.cpp b/src/cpu/core/SimulationObservers/ForceCalculator.cpp
index 9f2c82db6521d519ca3e5d69fa793e238c18606d..a6d2fcf529581f444ed4d180a830a09fab5e5cbe 100644
--- a/src/cpu/core/SimulationObservers/ForceCalculator.cpp
+++ b/src/cpu/core/SimulationObservers/ForceCalculator.cpp
@@ -59,12 +59,12 @@ Vector3D ForceCalculator::getForces(int x1, int x2, int x3, SPtr<DistributionArr
     real forceX2 = c0o1;
     real forceX3 = c0o1;
     if (bc) {
-        for (int fdir = D3Q27System::FSTARTDIR; fdir <= D3Q27System::FENDDIR; fdir++) {
+        for (int fdir = d3q27_system::FSTARTDIR; fdir <= d3q27_system::FENDDIR; fdir++) {
             if (bc->hasNoSlipBoundaryFlag(fdir) || bc->hasVelocityBoundaryFlag(fdir)) {
-                const int invDir  = D3Q27System::INVDIR[fdir];
+                const int invDir  = d3q27_system::INVDIR[fdir];
                 const real f    = distributions->getPostCollisionDistributionForDirection(x1, x2, x3, invDir);
                 const real fnbr = distributions->getPostCollisionDistributionForDirection(
-                    x1 + D3Q27System::DX1[invDir], x2 + D3Q27System::DX2[invDir], x3 + D3Q27System::DX3[invDir], fdir);
+                    x1 + d3q27_system::DX1[invDir], x2 + d3q27_system::DX2[invDir], x3 + d3q27_system::DX3[invDir], fdir);
 
                 real correction[3] = { c0o1, c0o1, c0o1 };
                 if (bc->hasVelocityBoundaryFlag(fdir)) {
@@ -78,9 +78,9 @@ Vector3D ForceCalculator::getForces(int x1, int x2, int x3, SPtr<DistributionArr
                 // ", " << correction * val<2>(boundaryVelocity) << ", " << correction * val<3>(boundaryVelocity));
 
                 // force consists of the MEM part and the Galilean invariance correction including the boundary velocity
-                forceX1 += (f + fnbr) * D3Q27System::DX1[invDir] - correction[0];
-                forceX2 += (f + fnbr) * D3Q27System::DX2[invDir] - correction[1];
-                forceX3 += (f + fnbr) * D3Q27System::DX3[invDir] - correction[2];
+                forceX1 += (f + fnbr) * d3q27_system::DX1[invDir] - correction[0];
+                forceX2 += (f + fnbr) * d3q27_system::DX2[invDir] - correction[1];
+                forceX3 += (f + fnbr) * d3q27_system::DX3[invDir] - correction[2];
             }
         }
     }
@@ -123,7 +123,7 @@ void ForceCalculator::calculateForces(std::vector<SPtr<D3Q27Interactor>> interac
             }
             // if we have got discretization with more level
             // deltaX is LBM deltaX and equal LBM deltaT
-            real deltaX = LBMSystem::getDeltaT(block->getLevel()); // grid->getDeltaT(block);
+            real deltaX = lbm_system::getDeltaT(block->getLevel()); // grid->getDeltaT(block);
             real deltaXquadrat = deltaX * deltaX;
             forceX1 *= deltaXquadrat;
             forceX2 *= deltaXquadrat;
diff --git a/src/cpu/core/SimulationObservers/InSituCatalystSimulationObserver.cpp b/src/cpu/core/SimulationObservers/InSituCatalystSimulationObserver.cpp
index 2101d1389bd1033ffa930f5261e0ee284066e078..57c5ca49bec979e3707d0ae43cf7dfeca5f98e5b 100644
--- a/src/cpu/core/SimulationObservers/InSituCatalystSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/InSituCatalystSimulationObserver.cpp
@@ -133,7 +133,7 @@ void InSituCatalystSimulationObserver::addData(SPtr<Block3D> block)
     SPtr<LBMKernel> kernel                  = block->getKernel();
     SPtr<BCArray3D> bcArray                 = kernel->getBCSet()->getBCArray();
     SPtr<DistributionArray3D> distributions = kernel->getDataSet()->getFdistributions();
-    real f[D3Q27System::ENDF + 1];
+    real f[d3q27_system::ENDF + 1];
     real vx1, vx2, vx3, rho;
 
     int minX1 = 0;
@@ -156,37 +156,37 @@ void InSituCatalystSimulationObserver::addData(SPtr<Block3D> block)
                 if (!bcArray->isUndefined(ix1, ix2, ix3) && !bcArray->isSolid(ix1, ix2, ix3)) {
                     distributions->getDistribution(f, ix1, ix2, ix3);
                     calcMacros(f, rho, vx1, vx2, vx3);
-                    real press = D3Q27System::calcPress(f, rho, vx1, vx2, vx3);
+                    real press = d3q27_system::calcPress(f, rho, vx1, vx2, vx3);
 
-                    if (UbMath::isNaN(rho) || UbMath::isInfinity(rho))
+                    if (ub_math::isNaN(rho) || ub_math::isInfinity(rho))
                         UB_THROW(UbException(
                             UB_EXARGS, "rho is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // rho=999.0;
-                    if (UbMath::isNaN(press) || UbMath::isInfinity(press))
+                    if (ub_math::isNaN(press) || ub_math::isInfinity(press))
                         UB_THROW(UbException(
                             UB_EXARGS, "press is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // press=999.0;
-                    if (UbMath::isNaN(vx1) || UbMath::isInfinity(vx1))
+                    if (ub_math::isNaN(vx1) || ub_math::isInfinity(vx1))
                         UB_THROW(UbException(
                             UB_EXARGS, "vx1 is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // vx1=999.0;
-                    if (UbMath::isNaN(vx2) || UbMath::isInfinity(vx2))
+                    if (ub_math::isNaN(vx2) || ub_math::isInfinity(vx2))
                         UB_THROW(UbException(
                             UB_EXARGS, "vx2 is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // vx2=999.0;
-                    if (UbMath::isNaN(vx3) || UbMath::isInfinity(vx3))
+                    if (ub_math::isNaN(vx3) || ub_math::isInfinity(vx3))
                         UB_THROW(UbException(
                             UB_EXARGS, "vx3 is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // vx3=999.0;
 
                     rhoArray[index] = rho;
@@ -250,7 +250,7 @@ void InSituCatalystSimulationObserver::addVTKGridData(SPtr<Block3D> block)
     SPtr<LBMKernel> kernel                  = block->getKernel();
     SPtr<BCArray3D> bcArray                 = kernel->getBCSet()->getBCArray();
     SPtr<DistributionArray3D> distributions = kernel->getDataSet()->getFdistributions();
-    real f[D3Q27System::ENDF + 1];
+    real f[d3q27_system::ENDF + 1];
     real vx1, vx2, vx3, rho;
 
     // knotennummerierung faengt immer bei 0 an!
@@ -263,9 +263,9 @@ void InSituCatalystSimulationObserver::addVTKGridData(SPtr<Block3D> block)
     // CalcMacrosFct calcMacros = NULL;
 
     if (block->getKernel()->getCompressible()) {
-        calcMacros = &D3Q27System::calcCompMacroscopicValues;
+        calcMacros = &d3q27_system::calcCompMacroscopicValues;
     } else {
-        calcMacros = &D3Q27System::calcIncompMacroscopicValues;
+        calcMacros = &d3q27_system::calcIncompMacroscopicValues;
     }
 
     int minX1 = 0;
@@ -301,37 +301,37 @@ void InSituCatalystSimulationObserver::addVTKGridData(SPtr<Block3D> block)
 
                     distributions->getDistribution(f, ix1, ix2, ix3);
                     calcMacros(f, rho, vx1, vx2, vx3);
-                    real press = D3Q27System::calcPress(f, rho, vx1, vx2, vx3);
+                    real press = d3q27_system::calcPress(f, rho, vx1, vx2, vx3);
 
-                    if (UbMath::isNaN(rho) || UbMath::isInfinity(rho))
+                    if (ub_math::isNaN(rho) || ub_math::isInfinity(rho))
                         UB_THROW(UbException(
                             UB_EXARGS, "rho is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // rho=999.0;
-                    if (UbMath::isNaN(press) || UbMath::isInfinity(press))
+                    if (ub_math::isNaN(press) || ub_math::isInfinity(press))
                         UB_THROW(UbException(
                             UB_EXARGS, "press is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // press=999.0;
-                    if (UbMath::isNaN(vx1) || UbMath::isInfinity(vx1))
+                    if (ub_math::isNaN(vx1) || ub_math::isInfinity(vx1))
                         UB_THROW(UbException(
                             UB_EXARGS, "vx1 is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // vx1=999.0;
-                    if (UbMath::isNaN(vx2) || UbMath::isInfinity(vx2))
+                    if (ub_math::isNaN(vx2) || ub_math::isInfinity(vx2))
                         UB_THROW(UbException(
                             UB_EXARGS, "vx2 is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // vx2=999.0;
-                    if (UbMath::isNaN(vx3) || UbMath::isInfinity(vx3))
+                    if (ub_math::isNaN(vx3) || ub_math::isInfinity(vx3))
                         UB_THROW(UbException(
                             UB_EXARGS, "vx3 is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // vx3=999.0;
 
                     arrays[0]->InsertNextValue(rho);
diff --git a/src/cpu/core/SimulationObservers/InSituVTKSimulationObserver.cpp b/src/cpu/core/SimulationObservers/InSituVTKSimulationObserver.cpp
index 2fe1a161afa42600955ecd6e55a1794f7897d1db..caacb160d96d0b7d358163aa74d19ca8bc355719 100644
--- a/src/cpu/core/SimulationObservers/InSituVTKSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/InSituVTKSimulationObserver.cpp
@@ -165,7 +165,7 @@ void InSituVTKSimulationObserver::addData(SPtr<Block3D> block)
     SPtr<LBMKernel> kernel                 = block->getKernel();
     SPtr<BCArray3D> bcArray                 = kernel->getBCSet()->getBCArray();
     SPtr<DistributionArray3D> distributions = kernel->getDataSet()->getFdistributions();
-    real f[D3Q27System::ENDF + 1];
+    real f[d3q27_system::ENDF + 1];
     real vx1, vx2, vx3, rho;
 
     // knotennummerierung faengt immer bei 0 an!
@@ -178,9 +178,9 @@ void InSituVTKSimulationObserver::addData(SPtr<Block3D> block)
     CalcMacrosFct calcMacros = NULL;
 
     if (block->getKernel()->getCompressible()) {
-        calcMacros = &D3Q27System::calcCompMacroscopicValues;
+        calcMacros = &d3q27_system::calcCompMacroscopicValues;
     } else {
-        calcMacros = &D3Q27System::calcIncompMacroscopicValues;
+        calcMacros = &d3q27_system::calcIncompMacroscopicValues;
     }
 
     int minX1 = 0;
@@ -226,37 +226,37 @@ void InSituVTKSimulationObserver::addData(SPtr<Block3D> block)
 
                     distributions->getPreCollisionDistribution(f, ix1, ix2, ix3);
                     calcMacros(f, rho, vx1, vx2, vx3);
-                    real press = D3Q27System::calcPress(f, rho, vx1, vx2, vx3);
+                    real press = d3q27_system::calcPress(f, rho, vx1, vx2, vx3);
 
-                    if (UbMath::isNaN(rho) || UbMath::isInfinity(rho))
+                    if (ub_math::isNaN(rho) || ub_math::isInfinity(rho))
                         UB_THROW(UbException(
                             UB_EXARGS, "rho is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // rho=999.0;
-                    if (UbMath::isNaN(press) || UbMath::isInfinity(press))
+                    if (ub_math::isNaN(press) || ub_math::isInfinity(press))
                         UB_THROW(UbException(
                             UB_EXARGS, "press is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // press=999.0;
-                    if (UbMath::isNaN(vx1) || UbMath::isInfinity(vx1))
+                    if (ub_math::isNaN(vx1) || ub_math::isInfinity(vx1))
                         UB_THROW(UbException(
                             UB_EXARGS, "vx1 is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // vx1=999.0;
-                    if (UbMath::isNaN(vx2) || UbMath::isInfinity(vx2))
+                    if (ub_math::isNaN(vx2) || ub_math::isInfinity(vx2))
                         UB_THROW(UbException(
                             UB_EXARGS, "vx2 is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // vx2=999.0;
-                    if (UbMath::isNaN(vx3) || UbMath::isInfinity(vx3))
+                    if (ub_math::isNaN(vx3) || ub_math::isInfinity(vx3))
                         UB_THROW(UbException(
                             UB_EXARGS, "vx3 is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                           block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                           UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                           block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                           ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                     // vx3=999.0;
 
                     arrays[0]->InsertNextValue(rho * conv->getFactorDensityLbToW());
diff --git a/src/cpu/core/SimulationObservers/IntegrateValuesHelper.cpp b/src/cpu/core/SimulationObservers/IntegrateValuesHelper.cpp
index 6895c3d8bb3f93a8a4b34a2b84e7c20c5fcbd052..0d8cc628af6f99ed941729427db4383076b9b734 100644
--- a/src/cpu/core/SimulationObservers/IntegrateValuesHelper.cpp
+++ b/src/cpu/core/SimulationObservers/IntegrateValuesHelper.cpp
@@ -209,7 +209,7 @@ void IntegrateValuesHelper::calculateMQ()
 {
     using namespace vf::basics::constant;
 
-    real f[D3Q27System::ENDF + 1];
+    real f[d3q27_system::ENDF + 1];
     real vx1, vx2, vx3, rho;
     clearData();
 
@@ -225,9 +225,9 @@ void IntegrateValuesHelper::calculateMQ()
         real cellVolume      = dx * dx * dx;
 
         if (kernel->getCompressible()) {
-            calcMacros = &D3Q27System::calcCompMacroscopicValues;
+            calcMacros = &d3q27_system::calcCompMacroscopicValues;
         } else {
-            calcMacros = &D3Q27System::calcIncompMacroscopicValues;
+            calcMacros = &d3q27_system::calcIncompMacroscopicValues;
         }
 
         SPtr<BCArray3D> bcArray                 = kernel->getBCSet()->getBCArray();
diff --git a/src/cpu/core/SimulationObservers/LineTimeSeriesSimulationObserver.cpp b/src/cpu/core/SimulationObservers/LineTimeSeriesSimulationObserver.cpp
index f09e9e0e79050ca523bd69ebc1f3a2d3f4bfcae7..511b85006c822ede734aacbd0b9e7da900ea60a7 100644
--- a/src/cpu/core/SimulationObservers/LineTimeSeriesSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/LineTimeSeriesSimulationObserver.cpp
@@ -143,9 +143,9 @@ void LineTimeSeriesSimulationObserver::collectData()
                 SPtr<LBMKernel> kernel = block->getKernel();
                 calcMacros              = NULL;
                 if (kernel->getCompressible()) {
-                    calcMacros = &D3Q27System::calcCompMacroscopicValues;
+                    calcMacros = &d3q27_system::calcCompMacroscopicValues;
                 } else {
-                    calcMacros = &D3Q27System::calcIncompMacroscopicValues;
+                    calcMacros = &d3q27_system::calcIncompMacroscopicValues;
                 }
                 SPtr<DistributionArray3D> distributions = kernel->getDataSet()->getFdistributions();
 
@@ -190,9 +190,9 @@ void LineTimeSeriesSimulationObserver::collectData()
         ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
         if (!ostr) {
             ostr.clear();
-            std::string path = UbSystem::getPathFromString(fname);
+            std::string path = ub_system::getPathFromString(fname);
             if (path.size() > 0) {
-                UbSystem::makeDirectory(path);
+                ub_system::makeDirectory(path);
                 ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
             }
             if (!ostr)
diff --git a/src/cpu/core/SimulationObservers/MPIIODataStructures.h b/src/cpu/core/SimulationObservers/MPIIODataStructures.h
index 4e45977ca63e08adab5f5bf34c989ecb481717db..084544ab4589c3e4d392b770aaf7141123c6fe5f 100644
--- a/src/cpu/core/SimulationObservers/MPIIODataStructures.h
+++ b/src/cpu/core/SimulationObservers/MPIIODataStructures.h
@@ -37,11 +37,11 @@
 
 #include "lbm/constants/D3Q27.h"
 
-namespace MPIIODataStructures
+namespace mpi_io_data_structures
 {
 //! \struct GridParam
 //! \brief Structure describes parameters of the grid
-//! \details The structure is nessasary to restore the grid correctly
+//! \details The structure is necessary to restore the grid correctly
 struct GridParam {
     double trafoParams[33]; // not float!!!
     double deltaX;          // not float!!!
diff --git a/src/cpu/core/SimulationObservers/MPIIOMigrationBESimulationObserver.cpp b/src/cpu/core/SimulationObservers/MPIIOMigrationBESimulationObserver.cpp
index a2c93e8fbc8216a71da355ff54465d735e90eb8a..a941801e343bb33a7168cefe9e9f51b5296532db 100644
--- a/src/cpu/core/SimulationObservers/MPIIOMigrationBESimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/MPIIOMigrationBESimulationObserver.cpp
@@ -53,7 +53,7 @@
 #include <MemoryUtil.h>
 #include <UbSystem.h>
 
-using namespace MPIIODataStructures;
+using namespace mpi_io_data_structures;
 
 #define MESSAGE_TAG 80
 #define SEND_BLOCK_SIZE 100000
@@ -101,9 +101,9 @@ void MPIIOMigrationBESimulationObserver::clearAllFiles(int step)
 
     MPIIOSimulationObserver::clearAllFiles(step);
 
-    UbSystem::makeDirectory(path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step));
+    ub_system::makeDirectory(path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step));
 
-    std::string filename10 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBC1.bin";
+    std::string filename10 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBC1.bin";
     int rc10 =
         MPI_File_open(MPI_COMM_WORLD, filename10.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc10 != MPI_SUCCESS)
@@ -111,7 +111,7 @@ void MPIIOMigrationBESimulationObserver::clearAllFiles(int step)
     MPI_File_set_size(file_handler, new_size);
     MPI_File_close(&file_handler);
 
-    std::string filename11 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBC2.bin";
+    std::string filename11 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBC2.bin";
     int rc11 =
         MPI_File_open(MPI_COMM_WORLD, filename11.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc11 != MPI_SUCCESS)
@@ -155,7 +155,7 @@ void MPIIOMigrationBESimulationObserver::writeDataSet(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::writeDataSet start collect data rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     bool multiPhase1 = false;
@@ -321,7 +321,7 @@ void MPIIOMigrationBESimulationObserver::writeDataSet(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::writeDataSet start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     
@@ -334,7 +334,7 @@ void MPIIOMigrationBESimulationObserver::writeDataSet(int step)
 
     // write to the file
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetF.bin";
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetF.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -352,7 +352,7 @@ void MPIIOMigrationBESimulationObserver::writeDataSet(int step)
     //-------------------------------- H1 ------------------------------------------------
     if (multiPhase1)
     {
-        filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetH1.bin";
+        filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetH1.bin";
         rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
         if (rc != MPI_SUCCESS)
             throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -367,7 +367,7 @@ void MPIIOMigrationBESimulationObserver::writeDataSet(int step)
     //-------------------------------- H2 --------------------------------------------------
     if (multiPhase2)
     {
-        filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetH2.bin";
+        filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetH2.bin";
         rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
         if (rc != MPI_SUCCESS)
             throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -390,7 +390,7 @@ void MPIIOMigrationBESimulationObserver::writeDataSet(int step)
     }
 
     MPI_File file_handler1;
-    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpArrays.bin";
+    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpArrays.bin";
     rc = MPI_File_open(MPI_COMM_WORLD, filename1.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler1);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename1);
@@ -460,7 +460,7 @@ void MPIIOMigrationBESimulationObserver::write4DArray(int step, Arrays arrayType
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::write4DArray start collect data rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     for (int level = minInitLevel; level <= maxInitLevel; level++) 
@@ -511,7 +511,7 @@ void MPIIOMigrationBESimulationObserver::write4DArray(int step, Arrays arrayType
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::write4DArray start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     // register new MPI-type depending on the block-specific information
@@ -527,7 +527,7 @@ void MPIIOMigrationBESimulationObserver::write4DArray(int step, Arrays arrayType
     MPI_Info info = MPI_INFO_NULL;
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + fname;
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + fname;
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -576,7 +576,7 @@ void MPIIOMigrationBESimulationObserver::write3DArray(int step, Arrays arrayType
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::write3DArray start collect data rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     for (int level = minInitLevel; level <= maxInitLevel; level++) 
@@ -625,7 +625,7 @@ void MPIIOMigrationBESimulationObserver::write3DArray(int step, Arrays arrayType
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::write3DArray start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     // register new MPI-type depending on the block-specific information
@@ -641,7 +641,7 @@ void MPIIOMigrationBESimulationObserver::write3DArray(int step, Arrays arrayType
     MPI_Info info = MPI_INFO_NULL;
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + fname;
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + fname;
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -672,7 +672,7 @@ void MPIIOMigrationBESimulationObserver::writeBoundaryConds(int step)
     if (comm->isRoot())
     {
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::writeBoundaryConds start collect data rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     int blocksCount          = 0; // quantity of blocks, that belong to this process
@@ -767,7 +767,7 @@ void MPIIOMigrationBESimulationObserver::writeBoundaryConds(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::writeBoundaryConds start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     
@@ -785,7 +785,7 @@ void MPIIOMigrationBESimulationObserver::writeBoundaryConds(int step)
     //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBC1.bin";
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBC1.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -800,7 +800,7 @@ void MPIIOMigrationBESimulationObserver::writeBoundaryConds(int step)
     MPI_Type_free(&bcindexmatrixType);
 
     //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-    filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBC2.bin";
+    filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBC2.bin";
     rc       = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1034,7 +1034,7 @@ void MPIIOMigrationBESimulationObserver::readDataSet(int step)
     if (comm->isRoot())
     {
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readDataSet start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     bool multiPhase1 = false;
@@ -1060,7 +1060,7 @@ void MPIIOMigrationBESimulationObserver::readDataSet(int step)
         start = MPI_Wtime();
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetF.bin";
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetF.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1087,7 +1087,7 @@ void MPIIOMigrationBESimulationObserver::readDataSet(int step)
 
     //--------------------------------- H1 ---------------------------------------------------------
     MPI_Offset fsize;
-    filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetH1.bin";
+    filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetH1.bin";
     rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1103,7 +1103,7 @@ void MPIIOMigrationBESimulationObserver::readDataSet(int step)
     MPI_File_close(&file_handler);
 
     //--------------------------------- H2 ---------------------------------------------------------
-    filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetH2.bin";
+    filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetH2.bin";
     rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1125,7 +1125,7 @@ void MPIIOMigrationBESimulationObserver::readDataSet(int step)
         finish = MPI_Wtime();
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readDataSet time: " << finish - start << " s");
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readDataSet start of exchange of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     std::vector<real>* rawDataReceiveF = new std::vector<real>[size];
@@ -1155,7 +1155,7 @@ void MPIIOMigrationBESimulationObserver::readDataSet(int step)
         finish = MPI_Wtime();
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readDataSet time: " << finish - start << " s");
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readDataSet start of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
     
     //-------------------------------------- restore blocks ---------------------------------
@@ -1245,10 +1245,10 @@ void MPIIOMigrationBESimulationObserver::readDataSet(int step)
             this->lbmKernel->setBlock(block);
             this->lbmKernel->setNX(std::array<int, 3>{ {dataSetParamStr1.nx1, dataSetParamStr1.nx2, dataSetParamStr1.nx3}});
             SPtr<LBMKernel> kernel = this->lbmKernel->clone();
-            real collFactor = LBMSystem::calcCollisionFactor(this->nue, block->getLevel());
+            real collFactor = lbm_system::calcCollisionFactor(this->nue, block->getLevel());
             kernel->setCollisionFactor(collFactor);
             kernel->setIndex(block->getX1(), block->getX2(), block->getX3());
-            kernel->setDeltaT(LBMSystem::getDeltaT(block->getLevel()));
+            kernel->setDeltaT(lbm_system::getDeltaT(block->getLevel()));
             SPtr<DataSet3D> dataSetPtr = SPtr<DataSet3D>(new DataSet3D());
             dataSetPtr->setFdistributions(mFdistributions);
             if (multiPhase1)
@@ -1263,14 +1263,14 @@ void MPIIOMigrationBESimulationObserver::readDataSet(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readDataSet end of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     //-------------------------------------------------------------
 
     DSArraysPresence arrPresence;
     MPI_File file_handler1;
-    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpArrays.bin";
+    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpArrays.bin";
     rc = MPI_File_open(MPI_COMM_WORLD, filename1.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler1);
     if (rc != MPI_SUCCESS)
         return; // throw UbException(UB_EXARGS, "couldn't open file " + filename1);
@@ -1325,7 +1325,7 @@ void MPIIOMigrationBESimulationObserver::readArray(int step, Arrays arrType, std
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readArray start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     
@@ -1350,7 +1350,7 @@ void MPIIOMigrationBESimulationObserver::readArray(int step, Arrays arrType, std
     int indexE = indexB + int(myBlocksCount); // the latest "my" block
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + fname;
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + fname;
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1374,7 +1374,7 @@ void MPIIOMigrationBESimulationObserver::readArray(int step, Arrays arrType, std
         finish = MPI_Wtime();
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readArray time: " << finish - start << " s");
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readArray start of exchange of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     std::vector<real> *rawDataReceive = new std::vector<real>[size];
@@ -1389,7 +1389,7 @@ void MPIIOMigrationBESimulationObserver::readArray(int step, Arrays arrType, std
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readArray end of exchange of data, rank = " << rank);
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readArray time: " << finish - start << " s");
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readArray start of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     //----------------------------- restore data ---------------------------------
@@ -1473,7 +1473,7 @@ void MPIIOMigrationBESimulationObserver::readArray(int step, Arrays arrType, std
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readArray end of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 }
 
@@ -1486,7 +1486,7 @@ void MPIIOMigrationBESimulationObserver::readBoundaryConds(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readBoundaryConds start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     
@@ -1510,7 +1510,7 @@ void MPIIOMigrationBESimulationObserver::readBoundaryConds(int step)
     std::vector<int> bcindexmatrixVAll;
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBC1.bin";
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBC1.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1533,7 +1533,7 @@ void MPIIOMigrationBESimulationObserver::readBoundaryConds(int step)
         finish = MPI_Wtime();
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readBoundaryConds time: " << finish - start << " s");
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readBoundaryConds start of exchange of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     std::vector<int> *rawDataReceive = new std::vector<int>[size];
@@ -1614,10 +1614,10 @@ void MPIIOMigrationBESimulationObserver::readBoundaryConds(int step)
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readBoundaryConds end of exchange of data, rank = " << rank);
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readBoundaryConds time: " << finish - start << " s");
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readBoundaryConds start of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
-    filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBC2.bin";
+    filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBC2.bin";
     rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1726,7 +1726,7 @@ void MPIIOMigrationBESimulationObserver::readBoundaryConds(int step)
         finish = MPI_Wtime();
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readBoundaryConds end of restore of data, rank = " << rank);
         UBLOG(logINFO, "MPIIOMigrationBESimulationObserver::readBoundaryConds time: " << finish - start << " s");
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 }
 
diff --git a/src/cpu/core/SimulationObservers/MPIIOMigrationBESimulationObserver.h b/src/cpu/core/SimulationObservers/MPIIOMigrationBESimulationObserver.h
index a19099caa9c3402a3551e18b31216e8256cbab80..4033fa44da68c7c46a31b3665531065ede41a73e 100644
--- a/src/cpu/core/SimulationObservers/MPIIOMigrationBESimulationObserver.h
+++ b/src/cpu/core/SimulationObservers/MPIIOMigrationBESimulationObserver.h
@@ -121,7 +121,7 @@ private:
     MPI_Datatype bcindexmatrixType;
     MPI_Datatype sendBlockDoubleType, sendBlockIntType;
 
-    MPIIODataStructures::boundCondParam boundCondParamStr;
+    mpi_io_data_structures::boundCondParam boundCondParamStr;
     SPtr<LBMKernel> lbmKernel;
     SPtr<BCSet> bcSet;
     SPtr<Grid3DVisitor> metisVisitor;
diff --git a/src/cpu/core/SimulationObservers/MPIIOMigrationSimulationObserver.cpp b/src/cpu/core/SimulationObservers/MPIIOMigrationSimulationObserver.cpp
index 2cdd9453bcd561283b3ebecc4018ef9e7ff4b5ca..19c9bbf9dbea1ad24a3391091df57fafc70723b0 100644
--- a/src/cpu/core/SimulationObservers/MPIIOMigrationSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/MPIIOMigrationSimulationObserver.cpp
@@ -53,7 +53,7 @@
 #include <MemoryUtil.h>
 #include <UbSystem.h>
 
-using namespace MPIIODataStructures;
+using namespace mpi_io_data_structures;
 
 MPIIOMigrationSimulationObserver::MPIIOMigrationSimulationObserver(SPtr<Grid3D> grid, SPtr<UbScheduler> s, SPtr<Grid3DVisitor> mV, const std::string &path, std::shared_ptr<vf::parallel::Communicator> comm)
     : MPIIOSimulationObserver(grid, s, path, comm)
@@ -131,9 +131,9 @@ void MPIIOMigrationSimulationObserver::clearAllFiles(int step)
 
     MPIIOSimulationObserver::clearAllFiles(step);
 
-    UbSystem::makeDirectory(path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step));
+    ub_system::makeDirectory(path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step));
 
-    std::string filename10 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBC.bin";
+    std::string filename10 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBC.bin";
     int rc10 = MPI_File_open(MPI_COMM_WORLD, filename10.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc10 != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename10);
@@ -173,7 +173,7 @@ void MPIIOMigrationSimulationObserver::writeDataSet(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::writeDataSet start collect data rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     bool multiPhase1 = false;
@@ -355,7 +355,7 @@ void MPIIOMigrationSimulationObserver::writeDataSet(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::writeDataSet start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     real start {0.};
@@ -367,7 +367,7 @@ void MPIIOMigrationSimulationObserver::writeDataSet(int step)
 
     // write to the file
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetF.bin";
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetF.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -392,7 +392,7 @@ void MPIIOMigrationSimulationObserver::writeDataSet(int step)
     //-------------------------------- H1 ----------------------------------------------------
     if (multiPhase1)
     {
-        filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetH1.bin";
+        filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetH1.bin";
         rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
         if (rc != MPI_SUCCESS)
             throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -412,7 +412,7 @@ void MPIIOMigrationSimulationObserver::writeDataSet(int step)
     //-------------------------------- H2 ----------------------------------------------------
     if (multiPhase2)
     {
-        filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetH2.bin";
+        filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetH2.bin";
         rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
         if (rc != MPI_SUCCESS)
             throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -441,7 +441,7 @@ void MPIIOMigrationSimulationObserver::writeDataSet(int step)
     delete[] dataSetArray;
 
     MPI_File file_handler1;
-    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpArrays.bin";
+    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpArrays.bin";
     rc = MPI_File_open(MPI_COMM_WORLD, filename1.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler1);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename1);
@@ -502,7 +502,7 @@ void MPIIOMigrationSimulationObserver::write4DArray(int step, Arrays arrayType,
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::write4DArray start collect data rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     bool firstBlock           = true;
@@ -564,7 +564,7 @@ void MPIIOMigrationSimulationObserver::write4DArray(int step, Arrays arrayType,
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::write4DArray start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     
@@ -576,7 +576,7 @@ void MPIIOMigrationSimulationObserver::write4DArray(int step, Arrays arrayType,
     MPI_Info info = MPI_INFO_NULL;
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + fname;
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + fname;
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -632,7 +632,7 @@ void MPIIOMigrationSimulationObserver::write3DArray(int step, Arrays arrayType,
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::write3DArray start collect data to file = " << fname);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     bool firstBlock           = true;
@@ -691,7 +691,7 @@ void MPIIOMigrationSimulationObserver::write3DArray(int step, Arrays arrayType,
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::write3DArray start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     
@@ -703,7 +703,7 @@ void MPIIOMigrationSimulationObserver::write3DArray(int step, Arrays arrayType,
     MPI_Info info = MPI_INFO_NULL;
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + fname;
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + fname;
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -744,7 +744,7 @@ void MPIIOMigrationSimulationObserver::writeBoundaryConds(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::writeBoundaryConds start collect data rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     int blocksCount          = 0; // quantity of blocks, that belong to this process
@@ -840,7 +840,7 @@ void MPIIOMigrationSimulationObserver::writeBoundaryConds(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::writeBoundaryConds start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: "<< Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: "<< utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     
@@ -856,7 +856,7 @@ void MPIIOMigrationSimulationObserver::writeBoundaryConds(int step)
     // MPI_Info_set(info,"striping_unit","4194304");
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBC.bin";
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBC.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -954,7 +954,7 @@ void MPIIOMigrationSimulationObserver::readDataSet(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::readDataSet start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
     
     real start {0.};
@@ -980,7 +980,7 @@ void MPIIOMigrationSimulationObserver::readDataSet(int step)
     DataSetMigration *dataSetArray = new DataSetMigration[blocksCount];
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetF.bin";
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetF.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1021,7 +1021,7 @@ void MPIIOMigrationSimulationObserver::readDataSet(int step)
     //----------------------------------------- H1 ----------------------------------------------------
     ic = 0;
     MPI_Offset fsize;
-    filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetH1.bin";
+    filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetH1.bin";
     rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1047,7 +1047,7 @@ void MPIIOMigrationSimulationObserver::readDataSet(int step)
     MPI_File_close(&file_handler);
     //----------------------------------------- H2 ----------------------------------------------------
     ic = 0;
-    filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetH2.bin";
+    filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetH2.bin";
     rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1080,7 +1080,7 @@ void MPIIOMigrationSimulationObserver::readDataSet(int step)
         finish = MPI_Wtime();
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::readDataSet time: " << finish - start << " s");
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::readDataSet start of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     size_t index = 0;
@@ -1184,7 +1184,7 @@ void MPIIOMigrationSimulationObserver::readDataSet(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::readDataSet end of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     delete[] dataSetArray;
@@ -1193,7 +1193,7 @@ void MPIIOMigrationSimulationObserver::readDataSet(int step)
 
     DSArraysPresence arrPresence;
     MPI_File file_handler1;
-    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpArrays.bin";
+    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpArrays.bin";
     rc = MPI_File_open(MPI_COMM_WORLD, filename1.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler1);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename1);
@@ -1238,7 +1238,7 @@ void MPIIOMigrationSimulationObserver::readArray(int step, Arrays arrType, std::
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::readArray start fname = " << fname);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
     
     real start {0.};
@@ -1247,7 +1247,7 @@ void MPIIOMigrationSimulationObserver::readArray(int step, Arrays arrType, std::
         start = MPI_Wtime();
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + fname;
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + fname;
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1300,7 +1300,7 @@ void MPIIOMigrationSimulationObserver::readArray(int step, Arrays arrType, std::
         finish = MPI_Wtime();
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::readArray readArray: " << finish - start << " s");
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::readArray start of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     //----------------------------- restore data ---------------------------------
@@ -1374,7 +1374,7 @@ void MPIIOMigrationSimulationObserver::readArray(int step, Arrays arrType, std::
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::readArray end of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     delete[] dataSetSmallArray;
@@ -1389,7 +1389,7 @@ void MPIIOMigrationSimulationObserver::readBoundaryConds(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::readBoundaryConds start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     
@@ -1399,7 +1399,7 @@ void MPIIOMigrationSimulationObserver::readBoundaryConds(int step)
         start = MPI_Wtime();
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBC.bin";
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBC.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1431,7 +1431,7 @@ void MPIIOMigrationSimulationObserver::readBoundaryConds(int step)
         finish = MPI_Wtime();
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::readBoundaryConds time: " << finish - start << " s");
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::readBoundaryConds start of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     MPI_File_read_at(file_handler, (MPI_Offset)0, &boundCondParamStr, 1, boundCondParamType, MPI_STATUS_IGNORE);
@@ -1533,7 +1533,7 @@ void MPIIOMigrationSimulationObserver::readBoundaryConds(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIOMigrationSimulationObserver::readBoundaryConds end of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 }
 
diff --git a/src/cpu/core/SimulationObservers/MPIIOMigrationSimulationObserver.h b/src/cpu/core/SimulationObservers/MPIIOMigrationSimulationObserver.h
index 141de54073b42061b37ebd38242148346a7c277f..313866dca00c386bd2a32a4c523a27cfb7bf0032 100644
--- a/src/cpu/core/SimulationObservers/MPIIOMigrationSimulationObserver.h
+++ b/src/cpu/core/SimulationObservers/MPIIOMigrationSimulationObserver.h
@@ -111,7 +111,7 @@ private:
     MPI_Datatype dataSetType, dataSetSmallType, dataSetDoubleType;
     MPI_Datatype boundCondParamType, boundCondTypeAdd, bcindexmatrixType;
 
-    MPIIODataStructures::boundCondParam boundCondParamStr;
+    mpi_io_data_structures::boundCondParam boundCondParamStr;
     SPtr<LBMKernel> lbmKernel;
     SPtr<BCSet> bcSet;
     SPtr<Grid3DVisitor> metisVisitor;
diff --git a/src/cpu/core/SimulationObservers/MPIIORestartSimulationObserver.cpp b/src/cpu/core/SimulationObservers/MPIIORestartSimulationObserver.cpp
index e0e62dee50dc74db0ab2629d1005ebd49344e0d4..e7088afc6912ec9615a33b49774c6ce4239bac04 100644
--- a/src/cpu/core/SimulationObservers/MPIIORestartSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/MPIIORestartSimulationObserver.cpp
@@ -56,7 +56,7 @@
 //! structures BoundaryCondition are being written in blocks containing each of them BLOCK_SIZE structures
 #define BLOCK_SIZE 1024
 
-using namespace MPIIODataStructures;
+using namespace mpi_io_data_structures;
 
 MPIIORestartSimulationObserver::MPIIORestartSimulationObserver(SPtr<Grid3D> grid, SPtr<UbScheduler> s, const std::string &path, std::shared_ptr<vf::parallel::Communicator> comm)
     : MPIIOSimulationObserver(grid, s, path, comm)
@@ -137,11 +137,11 @@ void MPIIORestartSimulationObserver::clearAllFiles(int step)
     MPI_Info info       = MPI_INFO_NULL;
     MPI_Offset new_size = 0;
 
-    UbSystem::makeDirectory(path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step));
+    ub_system::makeDirectory(path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step));
 
     MPIIOSimulationObserver::clearAllFiles(step);
 
-    std::string filename10 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBC.bin";
+    std::string filename10 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBC.bin";
     int rc10 =
         MPI_File_open(MPI_COMM_WORLD, filename10.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc10 != MPI_SUCCESS)
@@ -178,7 +178,7 @@ void MPIIORestartSimulationObserver::writeDataSet(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIORestartSimulationObserver::writeDataSet start collect data rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     bool multiPhase1 = false;
@@ -362,7 +362,7 @@ void MPIIORestartSimulationObserver::writeDataSet(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIORestartSimulationObserver::writeDataSet start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     // write to the file
@@ -396,7 +396,7 @@ void MPIIORestartSimulationObserver::writeDataSet(int step)
     MPI_Info info = MPI_INFO_NULL;
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetF.bin";
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetF.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -420,7 +420,7 @@ void MPIIORestartSimulationObserver::writeDataSet(int step)
     //------------------------------------------------------------------------------------------------------------------
     if (multiPhase1)
     {
-        filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetH1.bin";
+        filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetH1.bin";
         rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
         if (rc != MPI_SUCCESS)
             throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -436,7 +436,7 @@ void MPIIORestartSimulationObserver::writeDataSet(int step)
         //--------------------------------------------------------------------------------------------------------------------
     if (multiPhase2)
     {
-        filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetH2.bin";
+        filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetH2.bin";
         rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
         if (rc != MPI_SUCCESS)
             throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -461,7 +461,7 @@ void MPIIORestartSimulationObserver::writeDataSet(int step)
     }
 
     MPI_File file_handler1;
-    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpArrays.bin";
+    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpArrays.bin";
     rc = MPI_File_open(MPI_COMM_WORLD, filename1.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler1);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename1);
@@ -522,7 +522,7 @@ void MPIIORestartSimulationObserver::write4DArray(int step, Arrays arrayType, st
     if (comm->isRoot())
     {
         UBLOG(logINFO, "MPIIORestartSimulationObserver::writeAverageDensityArray start collect data to file = " << fname);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     bool firstBlock = true;
@@ -587,7 +587,7 @@ void MPIIORestartSimulationObserver::write4DArray(int step, Arrays arrayType, st
     if (comm->isRoot())
     {
         UBLOG(logINFO, "MPIIORestartSimulationObserver::write4DArray start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     // write to the file
@@ -620,7 +620,7 @@ void MPIIORestartSimulationObserver::write4DArray(int step, Arrays arrayType, st
     MPI_Info info = MPI_INFO_NULL;
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + fname;
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + fname;
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -673,7 +673,7 @@ void MPIIORestartSimulationObserver::write3DArray(int step, Arrays arrayType, st
     if (comm->isRoot())
     {
         UBLOG(logINFO, "MPIIORestartSimulationObserver::write3DArray start collect data to file = " << fname);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     bool firstBlock = true;
@@ -735,7 +735,7 @@ void MPIIORestartSimulationObserver::write3DArray(int step, Arrays arrayType, st
     if (comm->isRoot())
     {
         UBLOG(logINFO, "MPIIORestartSimulationObserver::write3DArray start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     // write to the file
@@ -769,7 +769,7 @@ void MPIIORestartSimulationObserver::write3DArray(int step, Arrays arrayType, st
     MPI_Info info = MPI_INFO_NULL;
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + fname;
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + fname;
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -809,7 +809,7 @@ void MPIIORestartSimulationObserver::writeBoundaryConds(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIORestartSimulationObserver::writeBoundaryConds start collect data rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     int blocksCount          = 0; // quantity of blocks in the grid, max 2147483648 blocks!
@@ -942,7 +942,7 @@ void MPIIORestartSimulationObserver::writeBoundaryConds(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIORestartSimulationObserver::writeBoundaryConds start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     
@@ -954,7 +954,7 @@ void MPIIORestartSimulationObserver::writeBoundaryConds(int step)
     MPI_Info info = MPI_INFO_NULL;
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBC.bin";
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBC.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1027,7 +1027,7 @@ void MPIIORestartSimulationObserver::readDataSet(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIORestartSimulationObserver::readDataSet start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     
@@ -1037,7 +1037,7 @@ void MPIIORestartSimulationObserver::readDataSet(int step)
         start = MPI_Wtime();
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetF.bin";
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetF.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1092,7 +1092,7 @@ void MPIIORestartSimulationObserver::readDataSet(int step)
 
  //-------------------------------------- H1 -----------------------------
     MPI_Offset fsize;
-    filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetH1.bin";
+    filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetH1.bin";
     rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1106,7 +1106,7 @@ void MPIIORestartSimulationObserver::readDataSet(int step)
     MPI_File_close(&file_handler);
 
     //-------------------------------------- H2 -----------------------------
-    filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetH2.bin";
+    filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetH2.bin";
     rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1128,7 +1128,7 @@ void MPIIORestartSimulationObserver::readDataSet(int step)
         finish = MPI_Wtime();
         UBLOG(logINFO, "MPIIORestartSimulationObserver::readDataSet time: " << finish - start << " s");
         UBLOG(logINFO, "MPIIORestartSimulationObserver::readDataSet start of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
     
     size_t index = 0;
@@ -1229,7 +1229,7 @@ void MPIIORestartSimulationObserver::readDataSet(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIORestartSimulationObserver::readDataSet end of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     delete[] dataSetArray;
@@ -1238,7 +1238,7 @@ void MPIIORestartSimulationObserver::readDataSet(int step)
 
     DSArraysPresence arrPresence;
     MPI_File file_handler1;
-    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpArrays.bin";
+    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpArrays.bin";
     rc = MPI_File_open(MPI_COMM_WORLD, filename1.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler1);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename1);
@@ -1283,7 +1283,7 @@ void MPIIORestartSimulationObserver::readArray(int step, Arrays arrType, std::st
     if (comm->isRoot())
     {
         UBLOG(logINFO, "MPIIORestartSimulationObserver::readArray start fname = " << fname);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     real start{ 0. };
@@ -1292,7 +1292,7 @@ void MPIIORestartSimulationObserver::readArray(int step, Arrays arrType, std::st
         start = MPI_Wtime();
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + fname;
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + fname;
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1347,7 +1347,7 @@ void MPIIORestartSimulationObserver::readArray(int step, Arrays arrType, std::st
         finish = MPI_Wtime();
         UBLOG(logINFO, "MPIIORestartSimulationObserver::readArray time: " << finish - start << " s");
         UBLOG(logINFO, "MPIIORestartSimulationObserver::readArray start of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     //----------------------------- restore data ---------------------------------
@@ -1422,7 +1422,7 @@ void MPIIORestartSimulationObserver::readArray(int step, Arrays arrType, std::st
     if (comm->isRoot())
     {
         UBLOG(logINFO, "MPIIORestartSimulationObserver::readArray end of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     delete[] dataSetSmallArray;
@@ -1437,7 +1437,7 @@ void MPIIORestartSimulationObserver::readBoundaryConds(int step)
     if (comm->isRoot()) 
     {
         UBLOG(logINFO, "MPIIORestartSimulationObserver::readBoundaryConds start MPI IO rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
     
     real start {0.};
@@ -1446,7 +1446,7 @@ void MPIIORestartSimulationObserver::readBoundaryConds(int step)
         start = MPI_Wtime();
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBC.bin";
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBC.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -1512,7 +1512,7 @@ void MPIIORestartSimulationObserver::readBoundaryConds(int step)
         finish = MPI_Wtime();
         UBLOG(logINFO, "MPIIORestartSimulationObserver::readBoundaryConds time: " << finish - start << " s");
         UBLOG(logINFO, "MPIIORestartSimulationObserver::readBoundaryConds start of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     int index = 0, index1 = 0, index2 = 0;
@@ -1584,7 +1584,7 @@ void MPIIORestartSimulationObserver::readBoundaryConds(int step)
 
     if (comm->isRoot()) {
         UBLOG(logINFO, "MPIIORestartSimulationObserver::readBoundaryConds end of restore of data, rank = " << rank);
-        UBLOG(logINFO, "Physical Memory currently used by current process: " << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+        UBLOG(logINFO, "Physical Memory currently used by current process: " << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 }
 //////////////////////////////////////////////////////////////////////////
diff --git a/src/cpu/core/SimulationObservers/MPIIORestartSimulationObserver.h b/src/cpu/core/SimulationObservers/MPIIORestartSimulationObserver.h
index 3b3e3821d86bf9ddc1afcc6dc071b45e4294e94c..b67924018d2e22dc226120dcf579d516066652f4 100644
--- a/src/cpu/core/SimulationObservers/MPIIORestartSimulationObserver.h
+++ b/src/cpu/core/SimulationObservers/MPIIORestartSimulationObserver.h
@@ -117,7 +117,7 @@ private:
     MPI_Datatype dataSetType, dataSetSmallType, dataSetDoubleType;
     MPI_Datatype boundCondParamType, boundCondType1000, boundCondTypeAdd, bcindexmatrixType;
 
-    MPIIODataStructures::boundCondParam boundCondParamStr;
+    mpi_io_data_structures::boundCondParam boundCondParamStr;
     SPtr<LBMKernel> lbmKernel;
     SPtr<BCSet> bcSet;
 
diff --git a/src/cpu/core/SimulationObservers/MPIIOSimulationObserver.cpp b/src/cpu/core/SimulationObservers/MPIIOSimulationObserver.cpp
index 2ad7b358b291e86c686ee4ea9caec09804f827a0..fdf79f84a2863c15795c13b85c9b49bcb873ac07 100644
--- a/src/cpu/core/SimulationObservers/MPIIOSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/MPIIOSimulationObserver.cpp
@@ -43,13 +43,13 @@
 #include "UbLogger.h"
 #include "UbScheduler.h"
 
-using namespace MPIIODataStructures;
+using namespace mpi_io_data_structures;
 
 MPIIOSimulationObserver::MPIIOSimulationObserver(SPtr<Grid3D> grid, SPtr<UbScheduler> s, const std::string &path,
                                    std::shared_ptr<vf::parallel::Communicator> comm)
     : SimulationObserver(grid, s), path(path), comm(comm)
 {
-    UbSystem::makeDirectory(path + "/mpi_io_cp");
+    ub_system::makeDirectory(path + "/mpi_io_cp");
 
     //-------------------------   define MPI types  ---------------------------------
 
@@ -126,7 +126,7 @@ void MPIIOSimulationObserver::writeBlocks(int step)
     if (comm->isRoot()) {
         UBLOG(logINFO, "MPIIOSimulationObserver::writeBlocksToFile start collect data rank = " << rank);
         UBLOG(logINFO, "Physical Memory currently used by current process: "
-                           << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+                           << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     int blocksCount  = 0; // quantity of all the blocks in the grid, max 2147483648 blocks!
@@ -222,15 +222,15 @@ void MPIIOSimulationObserver::writeBlocks(int step)
     if (comm->isRoot()) {
         UBLOG(logINFO, "MPIIOSimulationObserver::writeBlocksToFile start MPI IO rank = " << rank);
         UBLOG(logINFO, "Physical Memory currently used by current process: "
-                           << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+                           << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     // write to the file
     MPI_File file_handler;
     //   MPI_Info info = MPI_INFO_NULL;
 
-    UbSystem::makeDirectory(path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step));
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBlocks.bin";
+    ub_system::makeDirectory(path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step));
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBlocks.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, MPI_INFO_NULL,
                            &file_handler);
     if (rc != MPI_SUCCESS)
@@ -272,7 +272,7 @@ void MPIIOSimulationObserver::readBlocks(int step)
     if (comm->isRoot()) {
         UBLOG(logINFO, "MPIIOSimulationObserver::readBlocks start MPI IO rank = " << rank);
         UBLOG(logINFO, "Physical Memory currently used by current process: "
-                           << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+                           << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
     
     real start {0.};
@@ -281,7 +281,7 @@ void MPIIOSimulationObserver::readBlocks(int step)
         start = MPI_Wtime();
 
     MPI_File file_handler;
-    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBlocks.bin";
+    std::string filename = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBlocks.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename);
@@ -312,7 +312,7 @@ void MPIIOSimulationObserver::readBlocks(int step)
         UBLOG(logINFO, "MPIIOSimulationObserver::readBlocks time: " << finish - start << " s");
         UBLOG(logINFO, "MPIIOSimulationObserver::readBlocks start of restore of data, rank = " << rank);
         UBLOG(logINFO, "Physical Memory currently used by current process: "
-                           << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+                           << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 
     // clear the grid
@@ -394,7 +394,7 @@ void MPIIOSimulationObserver::readBlocks(int step)
     if (comm->isRoot()) {
         UBLOG(logINFO, "MPIIOSimulationObserver::readBlocks end of restore of data, rank = " << rank);
         UBLOG(logINFO, "Physical Memory currently used by current process: "
-                           << Utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
+                           << utilities::getPhysMemUsedByMe() / 1073741824.0 << " GB");
     }
 }
 
@@ -404,9 +404,9 @@ void MPIIOSimulationObserver::clearAllFiles(int step)
     MPI_Info info       = MPI_INFO_NULL;
     MPI_Offset new_size = 0;
 
-    UbSystem::makeDirectory(path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step));
+    ub_system::makeDirectory(path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step));
 
-    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBlocks.bin";
+    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBlocks.bin";
     int rc1 = MPI_File_open(MPI_COMM_WORLD, filename1.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, MPI_INFO_NULL,
                             &file_handler);
     if (rc1 != MPI_SUCCESS)
@@ -414,35 +414,35 @@ void MPIIOSimulationObserver::clearAllFiles(int step)
     MPI_File_set_size(file_handler, new_size);
     MPI_File_close(&file_handler);
 
-    std::string filename21 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetF.bin";
+    std::string filename21 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetF.bin";
     int rc21 = MPI_File_open(MPI_COMM_WORLD, filename21.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc21 != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename21);
     MPI_File_set_size(file_handler, new_size);
     MPI_File_close(&file_handler);
 
-    std::string filename22 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetH1.bin";
+    std::string filename22 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetH1.bin";
     int rc22 = MPI_File_open(MPI_COMM_WORLD, filename22.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc22 != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename22);
     MPI_File_set_size(file_handler, new_size);
     MPI_File_close(&file_handler);
 
-    std::string filename23 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSetH2.bin";
+    std::string filename23 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSetH2.bin";
     int rc23 = MPI_File_open(MPI_COMM_WORLD, filename23.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc23 != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename23);
     MPI_File_set_size(file_handler, new_size);
     MPI_File_close(&file_handler);
 
-    std::string filename3 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpArrays.bin";
+    std::string filename3 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpArrays.bin";
     int rc3 = MPI_File_open(MPI_COMM_WORLD, filename3.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc3 != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename3);
     MPI_File_set_size(file_handler, new_size);
     MPI_File_close(&file_handler);
 
-    std::string filename4 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpAverageDensityArray.bin";
+    std::string filename4 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpAverageDensityArray.bin";
     // MPI_File_delete(filename4.c_str(), info);
     int rc4 = MPI_File_open(MPI_COMM_WORLD, filename4.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc4 != MPI_SUCCESS)
@@ -450,7 +450,7 @@ void MPIIOSimulationObserver::clearAllFiles(int step)
     MPI_File_set_size(file_handler, new_size);
     MPI_File_close(&file_handler);
 
-    std::string filename5 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpAverageVelocityArray.bin";
+    std::string filename5 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpAverageVelocityArray.bin";
     // MPI_File_delete(filename5.c_str(), info);
     int rc5 = MPI_File_open(MPI_COMM_WORLD, filename5.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc5 != MPI_SUCCESS)
@@ -458,7 +458,7 @@ void MPIIOSimulationObserver::clearAllFiles(int step)
     MPI_File_set_size(file_handler, new_size);
     MPI_File_close(&file_handler);
 
-    std::string filename6 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpAverageFluktuationsArray.bin";
+    std::string filename6 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpAverageFluktuationsArray.bin";
     // MPI_File_delete(filename6.c_str(), info);
     int rc6 = MPI_File_open(MPI_COMM_WORLD, filename6.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc6 != MPI_SUCCESS)
@@ -466,7 +466,7 @@ void MPIIOSimulationObserver::clearAllFiles(int step)
     MPI_File_set_size(file_handler, new_size);
     MPI_File_close(&file_handler);
 
-    std::string filename7 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpAverageTripleArray.bin";
+    std::string filename7 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpAverageTripleArray.bin";
     // MPI_File_delete(filename7.c_str(), info);
     int rc7 = MPI_File_open(MPI_COMM_WORLD, filename7.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc7 != MPI_SUCCESS)
@@ -474,7 +474,7 @@ void MPIIOSimulationObserver::clearAllFiles(int step)
     MPI_File_set_size(file_handler, new_size);
     MPI_File_close(&file_handler);
 
-    std::string filename8 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpShearStressValArray.bin";
+    std::string filename8 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpShearStressValArray.bin";
     // MPI_File_delete(filename8.c_str(), info);
     int rc8 = MPI_File_open(MPI_COMM_WORLD, filename8.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc8 != MPI_SUCCESS)
@@ -482,7 +482,7 @@ void MPIIOSimulationObserver::clearAllFiles(int step)
     MPI_File_set_size(file_handler, new_size);
     MPI_File_close(&file_handler);
 
-    std::string filename9 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpRelaxationFactor.bin";
+    std::string filename9 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpRelaxationFactor.bin";
     // MPI_File_delete(filename9.c_str(), info);
     int rc9 = MPI_File_open(MPI_COMM_WORLD, filename9.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc9 != MPI_SUCCESS)
@@ -490,21 +490,21 @@ void MPIIOSimulationObserver::clearAllFiles(int step)
     MPI_File_set_size(file_handler, new_size);
     MPI_File_close(&file_handler);
 
-    std::string filename10 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpPhaseField1.bin";
+    std::string filename10 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpPhaseField1.bin";
     int rc10 = MPI_File_open(MPI_COMM_WORLD, filename10.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc10 != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename10);
     MPI_File_set_size(file_handler, new_size);
     MPI_File_close(&file_handler);
 
-    std::string filename11 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpPhaseField2.bin";
+    std::string filename11 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpPhaseField2.bin";
     int rc11 = MPI_File_open(MPI_COMM_WORLD, filename11.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc11 != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename11);
     MPI_File_set_size(file_handler, new_size);
     MPI_File_close(&file_handler);
 
-    std::string filename12 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpPressureField.bin";
+    std::string filename12 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpPressureField.bin";
     int rc12 = MPI_File_open(MPI_COMM_WORLD, filename12.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, info, &file_handler);
     if (rc12 != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename12);
diff --git a/src/cpu/core/SimulationObservers/MicrophoneArraySimulationObserver.cpp b/src/cpu/core/SimulationObservers/MicrophoneArraySimulationObserver.cpp
index be6420ab2b673a29f301d8de0eaf1bf01e60556c..40dec7f12ace56fd8119938510ebdd9eedf9f8c5 100644
--- a/src/cpu/core/SimulationObservers/MicrophoneArraySimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/MicrophoneArraySimulationObserver.cpp
@@ -86,9 +86,9 @@ bool MicrophoneArraySimulationObserver::addMicrophone(Vector3D coords)
                 if (!bcarray->isUndefined(val<1>(nodes), val<2>(nodes), val<3>(nodes))) {
 
                     if (kernel->getCompressible()) {
-                        calcMacros = &D3Q27System::calcCompMacroscopicValues;
+                        calcMacros = &d3q27_system::calcCompMacroscopicValues;
                     } else {
-                        calcMacros = &D3Q27System::calcIncompMacroscopicValues;
+                        calcMacros = &d3q27_system::calcIncompMacroscopicValues;
                     }
                     SPtr<Mic> mic(new Mic);
                     mic->id           = micID;
@@ -98,14 +98,14 @@ bool MicrophoneArraySimulationObserver::addMicrophone(Vector3D coords)
 
                     strVector.push_back(SPtr<std::stringstream>(new std::stringstream));
 
-                    std::string fname = path + "/mic/mic_" + UbSystem::toString(micID) + ".csv";
+                    std::string fname = path + "/mic/mic_" + ub_system::toString(micID) + ".csv";
                     std::ofstream ostr;
                     ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
                     if (!ostr) {
                         ostr.clear();
-                        std::string path = UbSystem::getPathFromString(fname);
+                        std::string path = ub_system::getPathFromString(fname);
                         if (path.size() > 0) {
-                            UbSystem::makeDirectory(path);
+                            ub_system::makeDirectory(path);
                             ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
                         }
                         if (!ostr)
@@ -125,7 +125,7 @@ bool MicrophoneArraySimulationObserver::addMicrophone(Vector3D coords)
 void MicrophoneArraySimulationObserver::collectData(real step)
 {
     for (std::size_t i = 0; i < microphones.size(); i++) {
-        real f[D3Q27System::ENDF + 1];
+        real f[d3q27_system::ENDF + 1];
         microphones[i]->distridution->getPreCollisionDistribution(f, val<1>(microphones[i]->nodeIndexes),
                                                       val<2>(microphones[i]->nodeIndexes),
                                                       val<3>(microphones[i]->nodeIndexes));
@@ -138,14 +138,14 @@ void MicrophoneArraySimulationObserver::collectData(real step)
 void MicrophoneArraySimulationObserver::writeFile(real /*step*/)
 {
     for (std::size_t i = 0; i < microphones.size(); i++) {
-        std::string fname = path + "/mic/mic_" + UbSystem::toString(microphones[i]->id) + ".csv";
+        std::string fname = path + "/mic/mic_" + ub_system::toString(microphones[i]->id) + ".csv";
         std::ofstream ostr;
         ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
         if (!ostr) {
             ostr.clear();
-            std::string path = UbSystem::getPathFromString(fname);
+            std::string path = ub_system::getPathFromString(fname);
             if (path.size() > 0) {
-                UbSystem::makeDirectory(path);
+                ub_system::makeDirectory(path);
                 ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
             }
             if (!ostr)
diff --git a/src/cpu/core/SimulationObservers/PressureCoefficientSimulationObserver.cpp b/src/cpu/core/SimulationObservers/PressureCoefficientSimulationObserver.cpp
index 69808f9783d5ca2b30c28a57b63580bd5be52cdc..3b5c08711253c9f98579d17ace0c207660014f8c 100644
--- a/src/cpu/core/SimulationObservers/PressureCoefficientSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/PressureCoefficientSimulationObserver.cpp
@@ -75,7 +75,7 @@ void PressureCoefficientSimulationObserver::collectData(real step)
 //////////////////////////////////////////////////////////////////////////
 void PressureCoefficientSimulationObserver::calculateRho()
 {
-    real f[D3Q27System::ENDF + 1];
+    real f[d3q27_system::ENDF + 1];
     real vx1, vx2, vx3, rho;
     std::vector<real> values;
     std::vector<real> rvalues;
@@ -96,9 +96,9 @@ void PressureCoefficientSimulationObserver::calculateRho()
             real dx                 = grid->getDeltaX(block);
 
             if (kernel->getCompressible()) {
-                calcMacros = &D3Q27System::calcCompMacroscopicValues;
+                calcMacros = &d3q27_system::calcCompMacroscopicValues;
             } else {
-                calcMacros = &D3Q27System::calcIncompMacroscopicValues;
+                calcMacros = &d3q27_system::calcIncompMacroscopicValues;
             }
 
             int ghostLayerWidth = kernel->getGhostLayerWidth();
@@ -161,13 +161,13 @@ void PressureCoefficientSimulationObserver::writeValues(int step)
         data.resize(datanames.size());
 
         std::ofstream ostr;
-        std::string fname = path + UbSystem::toString(step) + ".csv";
+        std::string fname = path + ub_system::toString(step) + ".csv";
         ostr.open(fname.c_str(), std::ios_base::out);
         if (!ostr) {
             ostr.clear();
-            std::string path = UbSystem::getPathFromString(fname);
+            std::string path = ub_system::getPathFromString(fname);
             if (path.size() > 0) {
-                UbSystem::makeDirectory(path);
+                ub_system::makeDirectory(path);
                 ostr.open(fname.c_str(), std::ios_base::out);
             }
             if (!ostr)
@@ -189,16 +189,16 @@ void PressureCoefficientSimulationObserver::writeValues(int step)
 
         ostr.close();
 
-        WbWriterVtkXmlASCII::getInstance()->writeNodesWithNodeData(path + UbSystem::toString(step), nodes, datanames,
+        WbWriterVtkXmlASCII::getInstance()->writeNodesWithNodeData(path + ub_system::toString(step), nodes, datanames,
                                                                    data);
 
-        fname = path + UbSystem::toString(step) + ".bin";
+        fname = path + ub_system::toString(step) + ".bin";
         std::ofstream out(fname.c_str(), std::ios::out | std::ios::binary);
         if (!out) {
             out.clear(); // flags ruecksetzen (ansonsten liefert utern if(!out) weiterhin true!!!
-            std::string path = UbSystem::getPathFromString(fname);
+            std::string path = ub_system::getPathFromString(fname);
             if (path.size() > 0) {
-                UbSystem::makeDirectory(path);
+                ub_system::makeDirectory(path);
                 out.open(fname.c_str(), std::ios::out | std::ios::binary);
             }
             if (!out)
@@ -215,7 +215,7 @@ void PressureCoefficientSimulationObserver::writeValues(int step)
 void PressureCoefficientSimulationObserver::readValues(int step)
 {
     if (comm->isRoot()) {
-        std::string fname = path + UbSystem::toString(step) + ".bin";
+        std::string fname = path + ub_system::toString(step) + ".bin";
         std::ifstream in(fname.c_str(), std::ios::in | std::ios::binary);
         if (!in) {
             throw UbException(UB_EXARGS, "couldn't open file " + fname);
diff --git a/src/cpu/core/SimulationObservers/PressureDifferenceSimulationObserver.cpp b/src/cpu/core/SimulationObservers/PressureDifferenceSimulationObserver.cpp
index 57ac3c543795a943c73eeed1241e7a417acc94f1..8034dc5abe70f93d25823fc85d9182ef5fc42ada 100644
--- a/src/cpu/core/SimulationObservers/PressureDifferenceSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/PressureDifferenceSimulationObserver.cpp
@@ -57,9 +57,9 @@ PressureDifferenceSimulationObserver::PressureDifferenceSimulationObserver(SPtr<
         ostr.open(fname.c_str(), std::ios_base::out);
         if (!ostr) {
             ostr.clear();
-            std::string file_path = UbSystem::getPathFromString(fname);
+            std::string file_path = ub_system::getPathFromString(fname);
             if (file_path.size() > 0) {
-                UbSystem::makeDirectory(file_path);
+                ub_system::makeDirectory(file_path);
                 ostr.open(fname.c_str(), std::ios_base::out);
             }
             if (!ostr)
@@ -132,9 +132,9 @@ void PressureDifferenceSimulationObserver::collectData(real step)
         ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
         if (!ostr) {
             ostr.clear();
-            std::string path = UbSystem::getPathFromString(fname);
+            std::string path = ub_system::getPathFromString(fname);
             if (path.size() > 0) {
-                UbSystem::makeDirectory(path);
+                ub_system::makeDirectory(path);
                 ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
             }
             if (!ostr)
diff --git a/src/cpu/core/SimulationObservers/QCriterionSimulationObserver.cpp b/src/cpu/core/SimulationObservers/QCriterionSimulationObserver.cpp
index 57237e35843ee5b006726f746bb63edbc1368f6a..4ebc50e2ac7036626b3df4ec4962ff0e80a9f273 100644
--- a/src/cpu/core/SimulationObservers/QCriterionSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/QCriterionSimulationObserver.cpp
@@ -86,7 +86,7 @@ void QCriterionSimulationObserver::collectData(real step)
     }
 
     std::string partName = writer->writeOctsWithNodeData(
-        path + UbSystem::toString(gridRank) + "_" + UbSystem::toString(istep), nodes, cells, datanames, data);
+        path + ub_system::toString(gridRank) + "_" + ub_system::toString(istep), nodes, cells, datanames, data);
     size_t found      = partName.find_last_of("//");
     std::string piece = partName.substr(found + 1);
 
@@ -96,7 +96,7 @@ void QCriterionSimulationObserver::collectData(real step)
     std::vector<std::string> pieces = comm->gather(piece); // comm: MPI-Wrapper
     if (comm->getProcessID() == comm->getRoot()) {
         std::string pname = WbWriterVtkXmlASCII::getInstance()->writeParallelFile(
-            path + "_" + UbSystem::toString(istep), pieces, datanames, cellDataNames);
+            path + "_" + ub_system::toString(istep), pieces, datanames, cellDataNames);
 
         std::vector<std::string> filenames;
         filenames.push_back(pname);
@@ -386,13 +386,13 @@ void QCriterionSimulationObserver::computeVelocity(real *f, real *v, bool compre
     // compute x,y,z-velocity components from distribution
     //////////////////////////////////////////////////////////////////////////
     if (compressible) {
-        v[xdir] = D3Q27System::getCompVelocityX1(f);
-        v[ydir] = D3Q27System::getCompVelocityX2(f);
-        v[zdir] = D3Q27System::getCompVelocityX3(f);
+        v[xdir] = d3q27_system::getCompVelocityX1(f);
+        v[ydir] = d3q27_system::getCompVelocityX2(f);
+        v[zdir] = d3q27_system::getCompVelocityX3(f);
     } else {
-        v[xdir] = D3Q27System::getIncompVelocityX1(f);
-        v[ydir] = D3Q27System::getIncompVelocityX2(f);
-        v[zdir] = D3Q27System::getIncompVelocityX3(f);
+        v[xdir] = d3q27_system::getIncompVelocityX1(f);
+        v[ydir] = d3q27_system::getIncompVelocityX2(f);
+        v[zdir] = d3q27_system::getIncompVelocityX3(f);
     }
 }
 
diff --git a/src/cpu/core/SimulationObservers/ShearStressSimulationObserver.cpp b/src/cpu/core/SimulationObservers/ShearStressSimulationObserver.cpp
index 0b2bcd835bc0821aa46dde8e5e0374791572d77c..e0dbf9656f3173ea25089825b45178ae0239b49b 100644
--- a/src/cpu/core/SimulationObservers/ShearStressSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/ShearStressSimulationObserver.cpp
@@ -89,8 +89,8 @@ void ShearStressSimulationObserver::collectData(real step)
     int istep = int(step);
     addData();
 
-    // string partName = writer->writeNodesWithNodeData(path+ UbSystem::toString(gridRank)+ "_" +
-    // UbSystem::toString(istep),nodes,datanames,data); size_t found=partName.find_last_of("//"); string piece =
+    // string partName = writer->writeNodesWithNodeData(path+ ub_system::toString(gridRank)+ "_" +
+    // ub_system::toString(istep),nodes,datanames,data); size_t found=partName.find_last_of("//"); string piece =
     // partName.substr(found+1);
 
     // vector<string> cellDataNames;
@@ -100,7 +100,7 @@ void ShearStressSimulationObserver::collectData(real step)
     // if (comm->getProcessID() == comm->getRoot())
     //{
     //   string pname =
-    //   WbWriterVtkXmlASCII::getInstance()->writeParallelFile(path+"_"+UbSystem::toString(istep),pieces,datanames,cellDataNames);
+    //   WbWriterVtkXmlASCII::getInstance()->writeParallelFile(path+"_"+ub_system::toString(istep),pieces,datanames,cellDataNames);
 
     //   vector<string> filenames;
     //   filenames.push_back(pname);
@@ -116,10 +116,10 @@ void ShearStressSimulationObserver::collectData(real step)
     //}
 
     string pfilePath, partPath, subfolder, cfilePath;
-    subfolder = "shs" + UbSystem::toString(istep);
+    subfolder = "shs" + ub_system::toString(istep);
     pfilePath = path + "/shs/" + subfolder;
     cfilePath = path + "/shs/shs_collection";
-    partPath  = pfilePath + "/shs" + UbSystem::toString(gridRank) + "_" + UbSystem::toString(istep);
+    partPath  = pfilePath + "/shs" + ub_system::toString(gridRank) + "_" + ub_system::toString(istep);
 
     string partName = writer->writeNodesWithNodeData(partPath, nodes, datanames, data);
     size_t found    = partName.find_last_of("/");
@@ -158,7 +158,7 @@ void ShearStressSimulationObserver::clearData()
 void ShearStressSimulationObserver::calculateShearStress(real timeStep)
 {
     using namespace vf::lbm::dir;
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::basics::constant;
 
     real f[27];
@@ -600,36 +600,36 @@ void ShearStressSimulationObserver::findPlane(int ix1, int ix2, int ix3, SPtr<Gr
 
     else {
         {
-            UB_THROW(UbException(UB_EXARGS, "there is no cell  ix1=" + UbSystem::toString(ix1) +
-                                                "ix2=" + UbSystem::toString(ix2) + "ix3=" + UbSystem::toString(ix3) +
-                                                "GlobalID=" + UbSystem::toString(block->getGlobalID()) +
-                                                "dx=" + UbSystem::toString(dx) +
-                                                "T=" + UbSystem::toString(bcPtr->getQ(d00P)) +
-                                                "B=" + UbSystem::toString(bcPtr->getQ(d00M)) +
-                                                "E=" + UbSystem::toString(bcPtr->getQ(dP00)) +
-                                                "W=" + UbSystem::toString(bcPtr->getQ(dM00)) +
-                                                "N=" + UbSystem::toString(bcPtr->getQ(d0P0)) +
-                                                "S=" + UbSystem::toString(bcPtr->getQ(d0M0)) +
-                                                "NE=" + UbSystem::toString(bcPtr->getQ(dPP0)) +
-                                                "SW=" + UbSystem::toString(bcPtr->getQ(dMM0)) +
-                                                "SE=" + UbSystem::toString(bcPtr->getQ(dPM0)) +
-                                                "NW=" + UbSystem::toString(bcPtr->getQ(dMP0)) +
-                                                "TE=" + UbSystem::toString(bcPtr->getQ(dP0P)) +
-                                                "BW=" + UbSystem::toString(bcPtr->getQ(dM0M)) +
-                                                "BE=" + UbSystem::toString(bcPtr->getQ(dP0M)) +
-                                                "TW=" + UbSystem::toString(bcPtr->getQ(dM0P)) +
-                                                "TN=" + UbSystem::toString(bcPtr->getQ(d0PP)) +
-                                                "BS=" + UbSystem::toString(bcPtr->getQ(d0MM)) +
-                                                "BN=" + UbSystem::toString(bcPtr->getQ(d0PM)) +
-                                                "TS=" + UbSystem::toString(bcPtr->getQ(d0MP)) +
-                                                "TNE=" + UbSystem::toString(bcPtr->getQ(dPPP)) +
-                                                "TNW=" + UbSystem::toString(bcPtr->getQ(dMPP)) +
-                                                "TSE=" + UbSystem::toString(bcPtr->getQ(dPMP)) +
-                                                "TSW=" + UbSystem::toString(bcPtr->getQ(dMMP)) +
-                                                "BNE=" + UbSystem::toString(bcPtr->getQ(dPPM)) +
-                                                "BNW=" + UbSystem::toString(bcPtr->getQ(dMPM)) +
-                                                "BSE=" + UbSystem::toString(bcPtr->getQ(dPMM)) +
-                                                "BSW=" + UbSystem::toString(bcPtr->getQ(dMMM) * dx)));
+            UB_THROW(UbException(UB_EXARGS, "there is no cell  ix1=" + ub_system::toString(ix1) +
+                                                "ix2=" + ub_system::toString(ix2) + "ix3=" + ub_system::toString(ix3) +
+                                                "GlobalID=" + ub_system::toString(block->getGlobalID()) +
+                                                "dx=" + ub_system::toString(dx) +
+                                                "T=" + ub_system::toString(bcPtr->getQ(d00P)) +
+                                                "B=" + ub_system::toString(bcPtr->getQ(d00M)) +
+                                                "E=" + ub_system::toString(bcPtr->getQ(dP00)) +
+                                                "W=" + ub_system::toString(bcPtr->getQ(dM00)) +
+                                                "N=" + ub_system::toString(bcPtr->getQ(d0P0)) +
+                                                "S=" + ub_system::toString(bcPtr->getQ(d0M0)) +
+                                                "NE=" + ub_system::toString(bcPtr->getQ(dPP0)) +
+                                                "SW=" + ub_system::toString(bcPtr->getQ(dMM0)) +
+                                                "SE=" + ub_system::toString(bcPtr->getQ(dPM0)) +
+                                                "NW=" + ub_system::toString(bcPtr->getQ(dMP0)) +
+                                                "TE=" + ub_system::toString(bcPtr->getQ(dP0P)) +
+                                                "BW=" + ub_system::toString(bcPtr->getQ(dM0M)) +
+                                                "BE=" + ub_system::toString(bcPtr->getQ(dP0M)) +
+                                                "TW=" + ub_system::toString(bcPtr->getQ(dM0P)) +
+                                                "TN=" + ub_system::toString(bcPtr->getQ(d0PP)) +
+                                                "BS=" + ub_system::toString(bcPtr->getQ(d0MM)) +
+                                                "BN=" + ub_system::toString(bcPtr->getQ(d0PM)) +
+                                                "TS=" + ub_system::toString(bcPtr->getQ(d0MP)) +
+                                                "TNE=" + ub_system::toString(bcPtr->getQ(dPPP)) +
+                                                "TNW=" + ub_system::toString(bcPtr->getQ(dMPP)) +
+                                                "TSE=" + ub_system::toString(bcPtr->getQ(dPMP)) +
+                                                "TSW=" + ub_system::toString(bcPtr->getQ(dMMP)) +
+                                                "BNE=" + ub_system::toString(bcPtr->getQ(dPPM)) +
+                                                "BNW=" + ub_system::toString(bcPtr->getQ(dMPM)) +
+                                                "BSE=" + ub_system::toString(bcPtr->getQ(dPMM)) +
+                                                "BSW=" + ub_system::toString(bcPtr->getQ(dMMM) * dx)));
         }
     }
 
@@ -646,7 +646,7 @@ void ShearStressSimulationObserver::findPlane(int ix1, int ix2, int ix3, SPtr<Gr
                     if (!bcArray->isSolid(i, j, k)) {
                         SPtr<BoundaryConditions> bcPtrIn = bcArray->getBC(i, j, k);
                         if (bcPtrIn) {
-                            for (int fdir = D3Q27System::FSTARTDIR; fdir <= D3Q27System::FENDDIR; fdir++) {
+                            for (int fdir = d3q27_system::FSTARTDIR; fdir <= d3q27_system::FENDDIR; fdir++) {
                                 if (ii <= 2) {
                                     real q = bcPtrIn->getQ(fdir);
                                     if (q != 999.00000) {
@@ -827,35 +827,35 @@ void ShearStressSimulationObserver::findPlane(int ix1, int ix2, int ix3, SPtr<Gr
         {
             {
                 UB_THROW(UbException(
-                    UB_EXARGS, "ii is=" + UbSystem::toString(ii) + "  ix1=" + UbSystem::toString(ix1) +
-                                   " ix2=" + UbSystem::toString(ix2) + " ix3=" + UbSystem::toString(ix3) +
-                                   " Block3D::GlobalID=" + UbSystem::toString(block->getGlobalID()) + " dx=" +
-                                   UbSystem::toString(dx) + " T=" + UbSystem::toString(bcPtr->getQ(d00P)) +
-                                   " B=" + UbSystem::toString(bcPtr->getQ(d00M)) +
-                                   " E=" + UbSystem::toString(bcPtr->getQ(dP00)) +
-                                   " W=" + UbSystem::toString(bcPtr->getQ(dM00)) +
-                                   " N=" + UbSystem::toString(bcPtr->getQ(d0P0)) +
-                                   " S=" + UbSystem::toString(bcPtr->getQ(d0M0)) +
-                                   " NE=" + UbSystem::toString(bcPtr->getQ(dPP0)) +
-                                   " SW=" + UbSystem::toString(bcPtr->getQ(dMM0)) +
-                                   " SE=" + UbSystem::toString(bcPtr->getQ(dPM0)) +
-                                   " NW=" + UbSystem::toString(bcPtr->getQ(dMP0)) +
-                                   " TE=" + UbSystem::toString(bcPtr->getQ(dP0P)) +
-                                   " BW=" + UbSystem::toString(bcPtr->getQ(dM0M)) +
-                                   " BE=" + UbSystem::toString(bcPtr->getQ(dP0M)) +
-                                   " TW=" + UbSystem::toString(bcPtr->getQ(dM0P)) +
-                                   " TN=" + UbSystem::toString(bcPtr->getQ(d0PP)) +
-                                   " BS=" + UbSystem::toString(bcPtr->getQ(d0MM)) +
-                                   " BN=" + UbSystem::toString(bcPtr->getQ(d0PM)) +
-                                   " TS=" + UbSystem::toString(bcPtr->getQ(d0MP)) +
-                                   " TNE=" + UbSystem::toString(bcPtr->getQ(dPPP)) +
-                                   " TNW=" + UbSystem::toString(bcPtr->getQ(dMPP)) +
-                                   " TSE=" + UbSystem::toString(bcPtr->getQ(dPMP)) +
-                                   " TSW=" + UbSystem::toString(bcPtr->getQ(dMMP)) +
-                                   " BNE=" + UbSystem::toString(bcPtr->getQ(dPPM)) +
-                                   " BNW=" + UbSystem::toString(bcPtr->getQ(dMPM)) +
-                                   " BSE=" + UbSystem::toString(bcPtr->getQ(dPMM)) +
-                                   " BSW=" + UbSystem::toString(bcPtr->getQ(dMMM))));
+                    UB_EXARGS, "ii is=" + ub_system::toString(ii) + "  ix1=" + ub_system::toString(ix1) +
+                                   " ix2=" + ub_system::toString(ix2) + " ix3=" + ub_system::toString(ix3) +
+                                   " Block3D::GlobalID=" + ub_system::toString(block->getGlobalID()) + " dx=" +
+                                   ub_system::toString(dx) + " T=" + ub_system::toString(bcPtr->getQ(d00P)) +
+                                   " B=" + ub_system::toString(bcPtr->getQ(d00M)) +
+                                   " E=" + ub_system::toString(bcPtr->getQ(dP00)) +
+                                   " W=" + ub_system::toString(bcPtr->getQ(dM00)) +
+                                   " N=" + ub_system::toString(bcPtr->getQ(d0P0)) +
+                                   " S=" + ub_system::toString(bcPtr->getQ(d0M0)) +
+                                   " NE=" + ub_system::toString(bcPtr->getQ(dPP0)) +
+                                   " SW=" + ub_system::toString(bcPtr->getQ(dMM0)) +
+                                   " SE=" + ub_system::toString(bcPtr->getQ(dPM0)) +
+                                   " NW=" + ub_system::toString(bcPtr->getQ(dMP0)) +
+                                   " TE=" + ub_system::toString(bcPtr->getQ(dP0P)) +
+                                   " BW=" + ub_system::toString(bcPtr->getQ(dM0M)) +
+                                   " BE=" + ub_system::toString(bcPtr->getQ(dP0M)) +
+                                   " TW=" + ub_system::toString(bcPtr->getQ(dM0P)) +
+                                   " TN=" + ub_system::toString(bcPtr->getQ(d0PP)) +
+                                   " BS=" + ub_system::toString(bcPtr->getQ(d0MM)) +
+                                   " BN=" + ub_system::toString(bcPtr->getQ(d0PM)) +
+                                   " TS=" + ub_system::toString(bcPtr->getQ(d0MP)) +
+                                   " TNE=" + ub_system::toString(bcPtr->getQ(dPPP)) +
+                                   " TNW=" + ub_system::toString(bcPtr->getQ(dMPP)) +
+                                   " TSE=" + ub_system::toString(bcPtr->getQ(dPMP)) +
+                                   " TSW=" + ub_system::toString(bcPtr->getQ(dMMP)) +
+                                   " BNE=" + ub_system::toString(bcPtr->getQ(dPPM)) +
+                                   " BNW=" + ub_system::toString(bcPtr->getQ(dMPM)) +
+                                   " BSE=" + ub_system::toString(bcPtr->getQ(dPMM)) +
+                                   " BSW=" + ub_system::toString(bcPtr->getQ(dMMM))));
             }
         }
     }
@@ -956,7 +956,7 @@ void ShearStressSimulationObserver::initDistance()
                     real ix3ph         = pointplane1[2];
                     real normalDis;
                     if (ii != 3) {
-                        UB_THROW(UbException(UB_EXARGS, "not enough points to create plane" + UbSystem::toString(ii)));
+                        UB_THROW(UbException(UB_EXARGS, "not enough points to create plane" + ub_system::toString(ii)));
                     } else {
                         real s = A * ix1ph + B * ix2ph + C * ix3ph +
                                    D; // The sign of s = Ax + By + Cz + D determines which side the point (x,y,z) lies
diff --git a/src/cpu/core/SimulationObservers/TimeAveragedValuesSimulationObserver.cpp b/src/cpu/core/SimulationObservers/TimeAveragedValuesSimulationObserver.cpp
index 198f9fd602946b70354a2dce7087a9574ce6fef2..d4e2747f5f1550c0adb1c5a314a8564f6be99fa3 100644
--- a/src/cpu/core/SimulationObservers/TimeAveragedValuesSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/TimeAveragedValuesSimulationObserver.cpp
@@ -84,7 +84,7 @@ void TimeAveragedValuesSimulationObserver::init()
     numberOfSteps = (maxStep - minStep);
 
     // function pointer
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     calcMacros = NULL;
     if (compressible) {
         calcMacros = &calcCompMacroscopicValues;
@@ -195,9 +195,9 @@ void TimeAveragedValuesSimulationObserver::collectData(real step)
     }
 
     std::string pfilePath, partPath, subfolder, cfilePath;
-    subfolder = "tav" + UbSystem::toString(istep);
+    subfolder = "tav" + ub_system::toString(istep);
     pfilePath = path + "/tav/" + subfolder;
-    partPath  = pfilePath + "/tav" + UbSystem::toString(gridRank) + "_" + UbSystem::toString(istep);
+    partPath  = pfilePath + "/tav" + ub_system::toString(gridRank) + "_" + ub_system::toString(istep);
 
     std::string partName = writer->writeOctsWithNodeData(partPath, nodes, cells, datanames, data);
     size_t found         = partName.find_last_of("/");
@@ -300,7 +300,7 @@ void TimeAveragedValuesSimulationObserver::addData(const SPtr<Block3D> block)
     maxX2 -= 2;
     maxX3 -= 2;
 
-    real f[D3Q27System::ENDF + 1];
+    real f[d3q27_system::ENDF + 1];
     real vx1, vx2, vx3, rho;
 
     // D3Q27BoundaryConditionPtr bcPtr;
@@ -616,14 +616,14 @@ void TimeAveragedValuesSimulationObserver::planarAverage(real step)
 
     if (root) {
         int istep         = int(step);
-        std::string fname = path + "/tav/" + "tav" + UbSystem::toString(istep) + ".csv";
+        std::string fname = path + "/tav/" + "tav" + ub_system::toString(istep) + ".csv";
 
         ostr.open(fname.c_str(), std::ios_base::out);
         if (!ostr) {
             ostr.clear();
-            std::string path = UbSystem::getPathFromString(fname);
+            std::string path = ub_system::getPathFromString(fname);
             if (path.size() > 0) {
-                UbSystem::makeDirectory(path);
+                ub_system::makeDirectory(path);
                 ostr.open(fname.c_str(), std::ios_base::out);
             }
             if (!ostr)
diff --git a/src/cpu/core/SimulationObservers/TimeseriesSimulationObserver.cpp b/src/cpu/core/SimulationObservers/TimeseriesSimulationObserver.cpp
index 5cbc290c3197ed5beb4347a7a90c9f165d74dd24..216c37fa9c413e3df2f1a44f83fb50554564f2c8 100644
--- a/src/cpu/core/SimulationObservers/TimeseriesSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/TimeseriesSimulationObserver.cpp
@@ -48,15 +48,15 @@ TimeseriesSimulationObserver::TimeseriesSimulationObserver(SPtr<Grid3D> grid, SP
 {
     if (comm->getProcessID() == comm->getRoot()) {
         std::ofstream ostr;
-        // fname = path+"/timeseries/timeseries"+UbSystem::toString(grid->getTimeStep())+".csv";
+        // fname = path+"/timeseries/timeseries"+ub_system::toString(grid->getTimeStep())+".csv";
         fname = path + ".csv";
         UBLOG(logINFO, "TimeseriesWriterSimulationObserver::fname:" << fname);
         ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
         if (!ostr) {
             ostr.clear();
-            std::string file_path = UbSystem::getPathFromString(fname);
+            std::string file_path = ub_system::getPathFromString(fname);
             if (file_path.size() > 0) {
-                UbSystem::makeDirectory(file_path);
+                ub_system::makeDirectory(file_path);
                 ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
             }
             if (!ostr)
@@ -96,9 +96,9 @@ void TimeseriesSimulationObserver::collectData(real step)
         ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
         if (!ostr) {
             ostr.clear();
-            std::string path = UbSystem::getPathFromString(fname);
+            std::string path = ub_system::getPathFromString(fname);
             if (path.size() > 0) {
-                UbSystem::makeDirectory(path);
+                ub_system::makeDirectory(path);
                 ostr.open(fname.c_str(), std::ios_base::out | std::ios_base::app);
             }
             if (!ostr)
diff --git a/src/cpu/core/SimulationObservers/TurbulenceIntensitySimulationObserver.cpp b/src/cpu/core/SimulationObservers/TurbulenceIntensitySimulationObserver.cpp
index ad8035d37678a2b1a3dd20249e122e726db2d5f5..1673aa195ecba1a976986c36281c28346e975756 100644
--- a/src/cpu/core/SimulationObservers/TurbulenceIntensitySimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/TurbulenceIntensitySimulationObserver.cpp
@@ -96,7 +96,7 @@ void TurbulenceIntensitySimulationObserver::collectData(real step)
     }
 
     std::string partName = writer->writeOctsWithNodeData(
-        path + UbSystem::toString(gridRank) + "_" + UbSystem::toString(istep), nodes, cells, datanames, data);
+        path + ub_system::toString(gridRank) + "_" + ub_system::toString(istep), nodes, cells, datanames, data);
     size_t found      = partName.find_last_of("//");
     std::string piece = partName.substr(found + 1);
 
@@ -105,7 +105,7 @@ void TurbulenceIntensitySimulationObserver::collectData(real step)
     std::vector<std::string> pieces = comm->gather(piece);
     if (comm->getProcessID() == comm->getRoot()) {
         std::string pname = WbWriterVtkXmlASCII::getInstance()->writeParallelFile(
-            path + "_" + UbSystem::toString(istep), pieces, datanames, cellDataNames);
+            path + "_" + ub_system::toString(istep), pieces, datanames, cellDataNames);
 
         std::vector<std::string> filenames;
         filenames.push_back(pname);
@@ -178,13 +178,13 @@ void TurbulenceIntensitySimulationObserver::addData(const SPtr<Block3D> block)
 
                     real ti = sqrt(temp);
 
-                    if (UbMath::isNaN(ti))
+                    if (ub_math::isNaN(ti))
                         UB_THROW(
                             UbException(UB_EXARGS, "TI is not a number (nan or -1.#IND), sqrt(temp), where temp = " +
-                                                       UbSystem::toString(temp) +
-                                                       ", AvVx = " + UbSystem::toString((*av)(ix1, ix2, ix3, AvVx)) +
-                                                       " AvVy = " + UbSystem::toString((*av)(ix1, ix2, ix3, AvVy)) +
-                                                       " AvVz = " + UbSystem::toString((*av)(ix1, ix2, ix3, AvVz))));
+                                                       ub_system::toString(temp) +
+                                                       ", AvVx = " + ub_system::toString((*av)(ix1, ix2, ix3, AvVx)) +
+                                                       " AvVy = " + ub_system::toString((*av)(ix1, ix2, ix3, AvVy)) +
+                                                       " AvVz = " + ub_system::toString((*av)(ix1, ix2, ix3, AvVz))));
 
                     data[index++].push_back(ti);
                 }
@@ -215,7 +215,7 @@ void TurbulenceIntensitySimulationObserver::addData(const SPtr<Block3D> block)
 void TurbulenceIntensitySimulationObserver::calculateAverageValues(real timeStep)
 {
     using namespace vf::lbm::dir;
-    using namespace D3Q27System;
+    using namespace d3q27_system;
 
     int minInitLevel = this->grid->getCoarsestInitializedLevel();
     int maxInitLevel = this->grid->getFinestInitializedLevel();
diff --git a/src/cpu/core/SimulationObservers/WriteBlocksSimulationObserver.cpp b/src/cpu/core/SimulationObservers/WriteBlocksSimulationObserver.cpp
index eb9db9f784fc2bf374e482eddb716aea089c3250..499d6fd170894a62e9120bc75fa7f2925d8b5e6d 100644
--- a/src/cpu/core/SimulationObservers/WriteBlocksSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/WriteBlocksSimulationObserver.cpp
@@ -171,7 +171,7 @@ void WriteBlocksSimulationObserver::collectData(real step)
         }
 
         filenames.push_back(writer->writeOctsWithCellData(
-            path + "/blocks/blocks_" + UbSystem::toString(grid->getRank()) + "_" + UbSystem::toString(istep), nodes,
+            path + "/blocks/blocks_" + ub_system::toString(grid->getRank()) + "_" + ub_system::toString(istep), nodes,
             cells, celldatanames, celldata));
 
         if (istep == SimulationObserver::scheduler->getMinBegin()) {
diff --git a/src/cpu/core/SimulationObservers/WriteBoundaryConditionsSimulationObserver.cpp b/src/cpu/core/SimulationObservers/WriteBoundaryConditionsSimulationObserver.cpp
index 9d07a2f82266d961c14c061b235a12cf1629b766..5c47e08c4b84783954c182ccc1700eaa3638c802 100644
--- a/src/cpu/core/SimulationObservers/WriteBoundaryConditionsSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/WriteBoundaryConditionsSimulationObserver.cpp
@@ -92,10 +92,10 @@ void WriteBoundaryConditionsSimulationObserver::collectData(real step)
 
     string pfilePath, partPath, subfolder, cfilePath;
 
-    subfolder = "bc" + UbSystem::toString(istep);
+    subfolder = "bc" + ub_system::toString(istep);
     pfilePath = path + "/bc/" + subfolder;
     cfilePath = path + "/bc/bc_collection";
-    partPath  = pfilePath + "/bc" + UbSystem::toString(gridRank) + "_" + UbSystem::toString(istep);
+    partPath  = pfilePath + "/bc" + ub_system::toString(gridRank) + "_" + ub_system::toString(istep);
 
     string partName = writer->writeOctsWithNodeData(partPath, nodes, cells, datanames, data);
     size_t found    = partName.find_last_of("/");
diff --git a/src/cpu/core/SimulationObservers/WriteGbObjectsSimulationObserver.cpp b/src/cpu/core/SimulationObservers/WriteGbObjectsSimulationObserver.cpp
index 855575fd3d74fd8dbfcf8444b1185aa69150b4df..91c3ab5d36c608b98fecd9709448a9a85bb8a1f4 100644
--- a/src/cpu/core/SimulationObservers/WriteGbObjectsSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/WriteGbObjectsSimulationObserver.cpp
@@ -71,10 +71,10 @@ void WriteGbObjectsSimulationObserver::collectData(real step)
 
     std::string pfilePath, partPath, subfolder, cfilePath;
 
-    subfolder = "gob" + UbSystem::toString(istep);
+    subfolder = "gob" + ub_system::toString(istep);
     pfilePath = path + "/gob/" + subfolder;
     cfilePath = path + "/gob/gob_collection";
-    partPath  = pfilePath + "/gob" + UbSystem::toString(comm->getProcessID()) + "_" + UbSystem::toString(istep);
+    partPath  = pfilePath + "/gob" + ub_system::toString(comm->getProcessID()) + "_" + ub_system::toString(istep);
 
     std::string partName = writer->writeTriangles(partPath, nodes, triangles);
 
diff --git a/src/cpu/core/SimulationObservers/WriteMQFromSelectionSimulationObserver.cpp b/src/cpu/core/SimulationObservers/WriteMQFromSelectionSimulationObserver.cpp
index 6ca10fceb46861e2f9ca22713b3e82ac93d92ad6..d9ea5f5b94a4c48ae8a03520ab7725c0f8ba7c66 100644
--- a/src/cpu/core/SimulationObservers/WriteMQFromSelectionSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/WriteMQFromSelectionSimulationObserver.cpp
@@ -102,10 +102,10 @@ void WriteMQFromSelectionSimulationObserver::collectData(real step)
 
     std::string pfilePath, partPath, subfolder, cfilePath;
 
-    subfolder = "mqSelect" + UbSystem::toString(istep);
+    subfolder = "mqSelect" + ub_system::toString(istep);
     pfilePath = path + "/mqSelect/" + subfolder;
     cfilePath = path + "/mqSelect/mq_collection";
-    partPath  = pfilePath + "/mqSelect" + UbSystem::toString(gridRank) + "_" + UbSystem::toString(istep);
+    partPath  = pfilePath + "/mqSelect" + ub_system::toString(gridRank) + "_" + ub_system::toString(istep);
 
     std::string partName = writer->writeNodesWithNodeData(partPath, nodes, datanames, data);
     size_t found         = partName.find_last_of("/");
@@ -157,13 +157,13 @@ void WriteMQFromSelectionSimulationObserver::addDataMQ(SPtr<Block3D> block)
     SPtr<LBMKernel> kernel                 = block->getKernel();
     SPtr<BCArray3D> bcArray                 = kernel->getBCSet()->getBCArray();
     SPtr<DistributionArray3D> distributions = kernel->getDataSet()->getFdistributions();
-    real f[D3Q27System::ENDF + 1];
+    real f[d3q27_system::ENDF + 1];
     real vx1, vx2, vx3, rho;
 
     if (block->getKernel()->getCompressible()) {
-        calcMacros = &D3Q27System::calcCompMacroscopicValues;
+        calcMacros = &d3q27_system::calcCompMacroscopicValues;
     } else {
-        calcMacros = &D3Q27System::calcIncompMacroscopicValues;
+        calcMacros = &d3q27_system::calcIncompMacroscopicValues;
     }
 
     int minX1 = 1;
@@ -197,28 +197,28 @@ void WriteMQFromSelectionSimulationObserver::addDataMQ(SPtr<Block3D> block)
                         distributions->getPreCollisionDistribution(f, ix1, ix2, ix3);
                         calcMacros(f, rho, vx1, vx2, vx3);
 
-                        if (UbMath::isNaN(rho) || UbMath::isInfinity(rho))
+                        if (ub_math::isNaN(rho) || ub_math::isInfinity(rho))
                             UB_THROW(UbException(
                                 UB_EXARGS, "rho is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                               block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                               UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
-                        if (UbMath::isNaN(vx1) || UbMath::isInfinity(vx1))
+                                               block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                               ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
+                        if (ub_math::isNaN(vx1) || ub_math::isInfinity(vx1))
                             UB_THROW(UbException(
                                 UB_EXARGS, "vx1 is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                               block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                               UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                               block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                               ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                         // vx1=999.0;
-                        if (UbMath::isNaN(vx2) || UbMath::isInfinity(vx2))
+                        if (ub_math::isNaN(vx2) || ub_math::isInfinity(vx2))
                             UB_THROW(UbException(
                                 UB_EXARGS, "vx2 is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                               block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                               UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                               block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                               ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
                         // vx2=999.0;
-                        if (UbMath::isNaN(vx3) || UbMath::isInfinity(vx3))
+                        if (ub_math::isNaN(vx3) || ub_math::isInfinity(vx3))
                             UB_THROW(UbException(
                                 UB_EXARGS, "vx3 is not a number (nan or -1.#IND) or infinity number -1.#INF in block=" +
-                                               block->toString() + ", node=" + UbSystem::toString(ix1) + "," +
-                                               UbSystem::toString(ix2) + "," + UbSystem::toString(ix3)));
+                                               block->toString() + ", node=" + ub_system::toString(ix1) + "," +
+                                               ub_system::toString(ix2) + "," + ub_system::toString(ix3)));
 
                         data[index++].push_back(rho);
                         data[index++].push_back(vx1);
diff --git a/src/cpu/core/SimulationObservers/WriteMacroscopicQuantitiesSimulationObserver.cpp b/src/cpu/core/SimulationObservers/WriteMacroscopicQuantitiesSimulationObserver.cpp
index 986f806e051eab70545c705713f8aaea952d3a73..2b6c7d93cb6fda8b1dc9807a703420561b405e4d 100644
--- a/src/cpu/core/SimulationObservers/WriteMacroscopicQuantitiesSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/WriteMacroscopicQuantitiesSimulationObserver.cpp
@@ -99,10 +99,10 @@ void WriteMacroscopicQuantitiesSimulationObserver::collectData(real step)
 
     std::string pfilePath, partPath, subfolder, cfilePath;
 
-    subfolder = "mq" + UbSystem::toString(istep);
+    subfolder = "mq" + ub_system::toString(istep);
     pfilePath = path + "/mq/" + subfolder;
     cfilePath = path + "/mq/mq_collection";
-    partPath = pfilePath + "/mq" + UbSystem::toString(gridRank) + "_" + UbSystem::toString(istep);
+    partPath = pfilePath + "/mq" + ub_system::toString(gridRank) + "_" + ub_system::toString(istep);
 
     std::string partName = writer->writeOctsWithNodeData(partPath, nodes, cells, datanames, data);
     size_t found = partName.find_last_of("/");
@@ -159,16 +159,16 @@ void WriteMacroscopicQuantitiesSimulationObserver::addDataMQ(SPtr<Block3D> block
     SPtr<LBMKernel> kernel                 = block->getKernel();
     SPtr<BCArray3D> bcArray                 = kernel->getBCSet()->getBCArray();
     SPtr<DistributionArray3D> distributions = kernel->getDataSet()->getFdistributions();
-    real f[D3Q27System::ENDF + 1];
+    real f[d3q27_system::ENDF + 1];
     real vx1, vx2, vx3, rho;
 
     // Node numbering always starts at 0!
     int SWB, SEB, NEB, NWB, SWT, SET, NET, NWT;
 
     if (block->getKernel()->getCompressible()) {
-        calcMacros = &D3Q27System::calcCompMacroscopicValues;
+        calcMacros = &d3q27_system::calcCompMacroscopicValues;
     } else {
-        calcMacros = &D3Q27System::calcIncompMacroscopicValues;
+        calcMacros = &d3q27_system::calcIncompMacroscopicValues;
     }
 
     int minX1 = 0;
@@ -200,14 +200,14 @@ void WriteMacroscopicQuantitiesSimulationObserver::addDataMQ(SPtr<Block3D> block
                     distributions->getPreCollisionDistribution(f, ix1, ix2, ix3);
                     calcMacros(f, rho, vx1, vx2, vx3);
 
-                    if (UbMath::isNaN(rho) || UbMath::isInfinity(rho))
-                         UB_THROW( UbException(UB_EXARGS,"rho is not a number (nan or -1.#IND) or infinity number -1.#INF in block="+block->toString()+",node="+UbSystem::toString(ix1)+","+UbSystem::toString(ix2)+","+UbSystem::toString(ix3)));
-                    if (UbMath::isNaN(vx1) || UbMath::isInfinity(vx1))
-                         UB_THROW( UbException(UB_EXARGS,"vx1 is not a number (nan or -1.#IND) or infinity number -1.#INF in block="+block->toString()+", node="+UbSystem::toString(ix1)+","+UbSystem::toString(ix2)+","+UbSystem::toString(ix3)));
-                    if (UbMath::isNaN(vx2) || UbMath::isInfinity(vx2))
-                         UB_THROW( UbException(UB_EXARGS,"vx2 is not a number (nan or -1.#IND) or infinity number -1.#INF in block="+block->toString()+", node="+UbSystem::toString(ix1)+","+UbSystem::toString(ix2)+","+UbSystem::toString(ix3)));
-                    if (UbMath::isNaN(vx3) || UbMath::isInfinity(vx3))
-                         UB_THROW( UbException(UB_EXARGS,"vx3 is not a number (nan or -1.#IND) or infinity number -1.#INF in block="+block->toString()+", node="+UbSystem::toString(ix1)+","+UbSystem::toString(ix2)+","+UbSystem::toString(ix3)));
+                    if (ub_math::isNaN(rho) || ub_math::isInfinity(rho))
+                         UB_THROW( UbException(UB_EXARGS,"rho is not a number (nan or -1.#IND) or infinity number -1.#INF in block="+block->toString()+",node="+ub_system::toString(ix1)+","+ub_system::toString(ix2)+","+ub_system::toString(ix3)));
+                    if (ub_math::isNaN(vx1) || ub_math::isInfinity(vx1))
+                         UB_THROW( UbException(UB_EXARGS,"vx1 is not a number (nan or -1.#IND) or infinity number -1.#INF in block="+block->toString()+", node="+ub_system::toString(ix1)+","+ub_system::toString(ix2)+","+ub_system::toString(ix3)));
+                    if (ub_math::isNaN(vx2) || ub_math::isInfinity(vx2))
+                         UB_THROW( UbException(UB_EXARGS,"vx2 is not a number (nan or -1.#IND) or infinity number -1.#INF in block="+block->toString()+", node="+ub_system::toString(ix1)+","+ub_system::toString(ix2)+","+ub_system::toString(ix3)));
+                    if (ub_math::isNaN(vx3) || ub_math::isInfinity(vx3))
+                         UB_THROW( UbException(UB_EXARGS,"vx3 is not a number (nan or -1.#IND) or infinity number -1.#INF in block="+block->toString()+", node="+ub_system::toString(ix1)+","+ub_system::toString(ix2)+","+ub_system::toString(ix3)));
 
                     data[index++].push_back(rho);
                     data[index++].push_back(vx1);
diff --git a/src/cpu/core/Utilities/ChangeRandomQs.hpp b/src/cpu/core/Utilities/ChangeRandomQs.hpp
index 44633cf3471a361cdd91788713a3a16bb588ee82..64c5349e29b9398a0f847d09eabbed247e115098 100644
--- a/src/cpu/core/Utilities/ChangeRandomQs.hpp
+++ b/src/cpu/core/Utilities/ChangeRandomQs.hpp
@@ -26,7 +26,7 @@
 //  SPDX-License-Identifier: GPL-3.0-or-later
 //  SPDX-FileCopyrightText: Copyright © VirtualFluids Project contributors, see AUTHORS.md in root folder
 //
-//! \addtogroup cpu_Utilities Utilities
+//! \addtogroup cpu_Utilities utilities
 //! \ingroup cpu_core core
 //! \{
 //! \author Konstantin Kutscher
@@ -41,7 +41,7 @@
 #include "BCArray3D.h"
 #include "BCSet.h"
 
-namespace Utilities
+namespace utilities
 {
    void ChangeRandomQs(SPtr<IntegrateValuesHelper> integrateValues)
    {
@@ -56,11 +56,11 @@ namespace Utilities
             SPtr<BoundaryConditions> bc = bcArray->getBC(val<1>(node), val<2>(node), val<3>(node));
             if (bc)
             {
-                for (int fdir=D3Q27System::FSTARTDIR; fdir<=D3Q27System::FENDDIR; fdir++)
+                for (int fdir=d3q27_system::FSTARTDIR; fdir<=d3q27_system::FENDDIR; fdir++)
                 {
                   if (bc->hasNoSlipBoundaryFlag(fdir))
                   {
-                     const int invDir = D3Q27System::INVDIR[fdir];
+                     const int invDir = d3q27_system::INVDIR[fdir];
                      float q = bc->getQ(invDir);
                      //double r = (double)UbRandom::rand(-50, 50);
                      float r = (float)UbRandom::rand(-10, 10);
diff --git a/src/cpu/core/Utilities/CheckpointConverter.cpp b/src/cpu/core/Utilities/CheckpointConverter.cpp
index e3c1953c04de6264c0becb77a702ff8bfb2497a2..e7dd164acaf4bed9e0469784053c8c9293736d90 100644
--- a/src/cpu/core/Utilities/CheckpointConverter.cpp
+++ b/src/cpu/core/Utilities/CheckpointConverter.cpp
@@ -43,12 +43,12 @@
 
 #define BLOCK_SIZE 1024
 
-using namespace MPIIODataStructures;
+using namespace mpi_io_data_structures;
 
 CheckpointConverter::CheckpointConverter(SPtr<Grid3D> grid, const std::string &path, std::shared_ptr<vf::parallel::Communicator> comm)
     : grid(grid), path(path), comm(comm)
 {
-    UbSystem::makeDirectory(path + "/mpi_io_cp");
+    ub_system::makeDirectory(path + "/mpi_io_cp");
 
     memset(&boundCondParamStr, 0, sizeof(boundCondParamStr));
 
@@ -173,15 +173,15 @@ void CheckpointConverter::convertBlocks(int step, int procCount)
 
     // file to read from
     MPI_File file_handlerR;
-    std::string filenameR = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBlocks.bin";
+    std::string filenameR = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBlocks.bin";
     int rcR = MPI_File_open(MPI_COMM_WORLD, filenameR.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handlerR);
     if (rcR != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filenameR);
 
     // file to write to
     MPI_File file_handlerW;
-    UbSystem::makeDirectory(path + "/mig/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step));
-    std::string filenameW = path + "/mig/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBlocks.bin";
+    ub_system::makeDirectory(path + "/mig/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step));
+    std::string filenameW = path + "/mig/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBlocks.bin";
     int rcW = MPI_File_open(MPI_COMM_WORLD, filenameW.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, MPI_INFO_NULL,
                             &file_handlerW);
     if (rcW != MPI_SUCCESS)
@@ -317,14 +317,14 @@ void CheckpointConverter::convertDataSet(int step, int procCount)
 {
     // file to read from
     MPI_File file_handlerR;
-    std::string filenameR = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSet.bin";
+    std::string filenameR = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSet.bin";
     int rcR = MPI_File_open(MPI_COMM_WORLD, filenameR.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handlerR);
     if (rcR != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filenameR);
 
     // file to write to
     MPI_File file_handlerW;
-    std::string filenameW = path + "/mig/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpDataSet.bin";
+    std::string filenameW = path + "/mig/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpDataSet.bin";
     int rcW = MPI_File_open(MPI_COMM_WORLD, filenameW.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, MPI_INFO_NULL,
                             &file_handlerW);
     if (rcW != MPI_SUCCESS)
@@ -416,7 +416,7 @@ void CheckpointConverter::convertDataSet(int step, int procCount)
 
     DSArraysPresence arrPresence;
     MPI_File file_handler1;
-    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpArrays.bin";
+    std::string filename1 = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpArrays.bin";
     int rc = MPI_File_open(MPI_COMM_WORLD, filename1.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handler1);
     if (rc != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filename1);
@@ -424,7 +424,7 @@ void CheckpointConverter::convertDataSet(int step, int procCount)
     MPI_File_close(&file_handler1);
 
     MPI_File file_handler2;
-    std::string filename2 = path + "/mig/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpArrays.bin";
+    std::string filename2 = path + "/mig/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpArrays.bin";
     int rc2 = MPI_File_open(MPI_COMM_WORLD, filename2.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, MPI_INFO_NULL,
                             &file_handler2);
     if (rc2 != MPI_SUCCESS)
@@ -433,8 +433,8 @@ void CheckpointConverter::convertDataSet(int step, int procCount)
     MPI_File_sync(file_handler2);
     MPI_File_close(&file_handler2);
 
-    std::string filenameRR = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step);
-    std::string filenameWW = path + "/mig/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step);
+    std::string filenameRR = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step);
+    std::string filenameWW = path + "/mig/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step);
 
     if (arrPresence.isAverageDensityArrayPresent)
         convert___Array(step, procCount, filenameRR + "/cpAverageDensityArray.bin",
@@ -549,14 +549,14 @@ void CheckpointConverter::convertBC(int step, int procCount)
 {
     // file to read from
     MPI_File file_handlerR;
-    std::string filenameR = path + "/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBC.bin";
+    std::string filenameR = path + "/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBC.bin";
     int rcR = MPI_File_open(MPI_COMM_WORLD, filenameR.c_str(), MPI_MODE_RDONLY, MPI_INFO_NULL, &file_handlerR);
     if (rcR != MPI_SUCCESS)
         throw UbException(UB_EXARGS, "couldn't open file " + filenameR);
 
     // file to write to
     MPI_File file_handlerW;
-    std::string filenameW = path + "/mig/mpi_io_cp/mpi_io_cp_" + UbSystem::toString(step) + "/cpBC.bin";
+    std::string filenameW = path + "/mig/mpi_io_cp/mpi_io_cp_" + ub_system::toString(step) + "/cpBC.bin";
     int rcW = MPI_File_open(MPI_COMM_WORLD, filenameW.c_str(), MPI_MODE_CREATE | MPI_MODE_WRONLY, MPI_INFO_NULL,
                             &file_handlerW);
     if (rcW != MPI_SUCCESS)
diff --git a/src/cpu/core/Utilities/CheckpointConverter.h b/src/cpu/core/Utilities/CheckpointConverter.h
index 0c2da97d86186084b3db7443b3190072bd6c0f44..493f823c83d8c1178e082523196875f2274ab10d 100644
--- a/src/cpu/core/Utilities/CheckpointConverter.h
+++ b/src/cpu/core/Utilities/CheckpointConverter.h
@@ -68,7 +68,7 @@ private:
     MPI_Datatype dataSetParamType, dataSetTypeRead, dataSetTypeWrite;
     MPI_Datatype boundCondType, boundCondType1000;
 
-    MPIIODataStructures::boundCondParam boundCondParamStr;
+    mpi_io_data_structures::boundCondParam boundCondParamStr;
 };
 
 #endif
diff --git a/src/cpu/core/Utilities/MathUtil.hpp b/src/cpu/core/Utilities/MathUtil.hpp
index dce9ecca3cb5adfcd24275d905cdede9fa146e32..0da7de883ac06facfd6d5ffe81563fd3871bf580 100644
--- a/src/cpu/core/Utilities/MathUtil.hpp
+++ b/src/cpu/core/Utilities/MathUtil.hpp
@@ -26,7 +26,7 @@
 //  SPDX-License-Identifier: GPL-3.0-or-later
 //  SPDX-FileCopyrightText: Copyright © VirtualFluids Project contributors, see AUTHORS.md in root folder
 //
-//! \addtogroup cpu_Utilities Utilities
+//! \addtogroup cpu_Utilities utilities
 //! \ingroup cpu_core core
 //! \{
 #ifndef MATHUTIL_H
@@ -35,7 +35,7 @@
 #include <math.h>
 #include "muParser.h"
 
-namespace Utilities
+namespace utilities
 {
    static bool isEven( int integer )
    {
diff --git a/src/cpu/core/Utilities/MemoryUtil.h b/src/cpu/core/Utilities/MemoryUtil.h
index c0140c3d7f34d8a20971e70d7ed27da279c324b3..67d318fabba18bfbd71e7a433b16f410bf31e297 100644
--- a/src/cpu/core/Utilities/MemoryUtil.h
+++ b/src/cpu/core/Utilities/MemoryUtil.h
@@ -26,7 +26,7 @@
 //  SPDX-License-Identifier: GPL-3.0-or-later
 //  SPDX-FileCopyrightText: Copyright © VirtualFluids Project contributors, see AUTHORS.md in root folder
 //
-//! \addtogroup cpu_Utilities Utilities
+//! \addtogroup cpu_Utilities utilities
 //! \ingroup cpu_core core
 //! \{
 //! \author Konstantin Kutscher
@@ -72,7 +72,7 @@
 //////////////////////////////////////////////////////////////////////////
 // MemoryUtil
 //////////////////////////////////////////////////////////////////////////
-namespace Utilities
+namespace utilities
 {
 //////////////////////////////////////////////////////////////////////////
 static long long getTotalPhysMem()
@@ -205,7 +205,7 @@ static std::string toString(SPtr<Grid3D> grid, int numberOfProcesses)
     return out.str();
 }
 
-} // namespace Utilities
+} // namespace utilities
 
 #endif
 
diff --git a/src/cpu/core/Utilities/VoxelMatrixUtil.hpp b/src/cpu/core/Utilities/VoxelMatrixUtil.hpp
index 6fc354eb280aff5ab857de195a7ee903d9e27da0..d54c31e46c97175d678bd29e0b52d08ae58d2d3e 100644
--- a/src/cpu/core/Utilities/VoxelMatrixUtil.hpp
+++ b/src/cpu/core/Utilities/VoxelMatrixUtil.hpp
@@ -26,7 +26,7 @@
 //  SPDX-License-Identifier: GPL-3.0-or-later
 //  SPDX-FileCopyrightText: Copyright © VirtualFluids Project contributors, see AUTHORS.md in root folder
 //
-//! \addtogroup cpu_Utilities Utilities
+//! \addtogroup cpu_Utilities utilities
 //! \ingroup cpu_core core
 //! \{
 //! \author Konstantin Kutscher
@@ -43,7 +43,7 @@
 #include "Grid3D.h"
 
 
-namespace Utilities
+namespace utilities
 {
    void voxelMatrixDiscretisation(SPtr<GbVoxelMatrix3D> matrix, std::string& pathname, int myid, int fileCounter, SPtr<Grid3D> grid, int bounceBackOption, bool vmFile)
    {
@@ -52,16 +52,16 @@ namespace Utilities
 
       if (vmFile)
       {
-         if (myid == 0) matrix->writeToVTKImageDataASCII(pathname + "/geo/vmatrix" + UbSystem::toString(fileCounter));
+         if (myid == 0) matrix->writeToVTKImageDataASCII(pathname + "/geo/vmatrix" + ub_system::toString(fileCounter));
       } 
       else
       {
          GbCuboid3DPtr vmBox(new GbCuboid3D(matrix->getX1Minimum(), matrix->getX2Minimum(), matrix->getX3Minimum(), matrix->getX1Maximum(), matrix->getX2Maximum(), matrix->getX3Maximum()));
-         if (myid == 0) GbSystem3D::writeGeoObject(vmBox.get(), pathname + "/geo/vmbox" + UbSystem::toString(fileCounter), WbWriterVtkXmlASCII::getInstance());
+         if (myid == 0) gb_system_3d::writeGeoObject(vmBox.get(), pathname + "/geo/vmbox" + ub_system::toString(fileCounter), WbWriterVtkXmlASCII::getInstance());
       }
 
       //GbCuboid3DPtr vmBox(new GbCuboid3D(matrix->getX1Minimum(), matrix->getX2Minimum(), matrix->getX3Minimum(), matrix->getX1Maximum(), matrix->getX2Maximum(), matrix->getX3Maximum()));
-      //if (myid == 0) GbSystem3D::writeGeoObject(vmBox.get(), pathname + "/geo/vmbox" + UbSystem::toString(fileCounter), WbWriterVtkXmlASCII::getInstance());
+      //if (myid == 0) gb_system_3d::writeGeoObject(vmBox.get(), pathname + "/geo/vmbox" + UbSystem::toString(fileCounter), WbWriterVtkXmlASCII::getInstance());
       //SPtr<D3Q27Interactor> vmBoxInt = SPtr<D3Q27Interactor>(new D3Q27Interactor(vmBox, grid, noSlipPM, Interactor3D::SOLID));
       //SetSolidOrBoundaryBlockVisitor v1(vmBoxInt, SetSolidOrBoundaryBlockVisitor::SOLID);
       //grid->accept(v1);
diff --git a/src/cpu/core/Visitors/BoundaryConditionsBlockVisitor.cpp b/src/cpu/core/Visitors/BoundaryConditionsBlockVisitor.cpp
index a847d49a874b3ca888cd4536ff4a16214ccd51e6..cce148823dc86bc5526c3e907758bea3e36f8624 100644
--- a/src/cpu/core/Visitors/BoundaryConditionsBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/BoundaryConditionsBlockVisitor.cpp
@@ -46,7 +46,7 @@
 #include "BCArray3D.h"
 #include "LBMKernel.h"
 
-BoundaryConditionsBlockVisitor::BoundaryConditionsBlockVisitor() : Block3DVisitor(0, D3Q27System::MAXLEVEL)
+BoundaryConditionsBlockVisitor::BoundaryConditionsBlockVisitor() : Block3DVisitor(0, d3q27_system::MAXLEVEL)
 {
 }
 //////////////////////////////////////////////////////////////////////////
diff --git a/src/cpu/core/Visitors/ChangeBoundaryDensityBlockVisitor.cpp b/src/cpu/core/Visitors/ChangeBoundaryDensityBlockVisitor.cpp
index 283c7682dfef10dd0fe00365d25e9d0686c9f34c..484cd5abc9dc80778b01041756deb79841ba25ce 100644
--- a/src/cpu/core/Visitors/ChangeBoundaryDensityBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/ChangeBoundaryDensityBlockVisitor.cpp
@@ -41,7 +41,7 @@
 #include "LBMKernel.h"
 
 ChangeBoundaryDensityBlockVisitor::ChangeBoundaryDensityBlockVisitor(real oldBoundaryDensity, real newBoundaryDensity)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), oldBoundaryDensity(oldBoundaryDensity),
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), oldBoundaryDensity(oldBoundaryDensity),
       newBoundaryDensity(newBoundaryDensity)
 {
 }
diff --git a/src/cpu/core/Visitors/CheckRatioBlockVisitor.cpp b/src/cpu/core/Visitors/CheckRatioBlockVisitor.cpp
index 66f4e1b3203aa135ab9e01605af144a284a4a555..2ce8cec36a3111bcbcf868514e600f6e74ecd70b 100644
--- a/src/cpu/core/Visitors/CheckRatioBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/CheckRatioBlockVisitor.cpp
@@ -37,7 +37,7 @@
 #include "D3Q27System.h"
 
 CheckRatioBlockVisitor::CheckRatioBlockVisitor(int levelDepth /*shut be maxGridLevel*/, bool includeNotActiveBlocks)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), levelDepth(levelDepth), includeNotActiveBlocks(includeNotActiveBlocks),
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), levelDepth(levelDepth), includeNotActiveBlocks(includeNotActiveBlocks),
       state(true)
 {
 }
diff --git a/src/cpu/core/Visitors/CreateTransmittersHelper.cpp b/src/cpu/core/Visitors/CreateTransmittersHelper.cpp
index 73632aa987301fcdcba847d8c2fc531949bf7fcf..2ccc08a348520c5984cc4334d7da0d8c0faae0de 100644
--- a/src/cpu/core/Visitors/CreateTransmittersHelper.cpp
+++ b/src/cpu/core/Visitors/CreateTransmittersHelper.cpp
@@ -61,7 +61,7 @@ void CreateTransmittersHelper::createTransmitters(SPtr<Block3D> sblock, SPtr<Blo
     int tgtLevel = tblock->getLevel();
     //   int tgtID    = tblock->getGlobalID();
 
-    int invDir = D3Q27System::INVDIR[dir];
+    int invDir = d3q27_system::INVDIR[dir];
 
     if (srcLevel != tgtLevel)
         invDir = dir;
@@ -111,7 +111,7 @@ void CreateTransmittersHelper::createTransmitters(SPtr<Block3D> sblock, SPtr<Blo
         // int myid = comm->getProcessID();
         // FILE * file;
         ////char * name = "d:/temp/sendPoolKey.csv";
-        // std::string name = "d:/temp/VectorKey" + UbSystem::toString(myid) + ".csv";
+        // std::string name = "d:/temp/VectorKey" + ub_system::toString(myid) + ".csv";
         // file = fopen(name.c_str(), "a");
         // fprintf(file, "%d;%d%;%d;%d;%d;%u;%d;%d%;%d;%d;%d;%u\n", sblock->getX1(), sblock->getX2(),
         // sblock->getX3()/*tgtID*/, dir, ib, keyOfSendCbVectorKey, tblock->getX1(), tblock->getX2(),
@@ -160,8 +160,8 @@ int CreateTransmittersHelper::generateMPITag(int srcLevel, int tgtLevel)
     } else {
         srcLevel++;
         tgtLevel++;
-        std::string str = UbSystem::toString<int>(srcLevel) + UbSystem::toString<int>(tgtLevel);
-        int r           = UbSystem::stringTo<int>(str);
+        std::string str = ub_system::toString<int>(srcLevel) + ub_system::toString<int>(tgtLevel);
+        int r           = ub_system::stringTo<int>(str);
         return r;
     }
 }
@@ -169,13 +169,13 @@ int CreateTransmittersHelper::generateMPITag(int srcLevel, int tgtLevel)
 string CreateTransmittersHelper::generatePoolKey(int srcRank, int srcLevel, int tgtRank, int tgtLevel)
 {
     std::string str;
-    str = UbSystem::toString<int>(srcLevel);
+    str = ub_system::toString<int>(srcLevel);
     str += "#";
-    str += UbSystem::toString<int>(tgtLevel);
+    str += ub_system::toString<int>(tgtLevel);
     str += "#";
-    str += UbSystem::toString<int>(srcRank);
+    str += ub_system::toString<int>(srcRank);
     str += "#";
-    str += UbSystem::toString<int>(tgtRank);
+    str += ub_system::toString<int>(tgtRank);
 
     return str;
 }
@@ -184,15 +184,15 @@ string CreateTransmittersHelper::generateVectorKey(int x1, int x2, int x3, int d
 {
     std::string str;
 
-    str += UbSystem::toString<int>(x1);
+    str += ub_system::toString<int>(x1);
     str += "#";
-    str += UbSystem::toString<int>(x2);
+    str += ub_system::toString<int>(x2);
     str += "#";
-    str += UbSystem::toString<int>(x3);
+    str += ub_system::toString<int>(x3);
     str += "#";
-    str += UbSystem::toString<int>(dir);
+    str += ub_system::toString<int>(dir);
     str += "#";
-    str += UbSystem::toString<int>(ib);
+    str += ub_system::toString<int>(ib);
 
     return str;
 }
diff --git a/src/cpu/core/Visitors/InitDistributionsBlockVisitor.cpp b/src/cpu/core/Visitors/InitDistributionsBlockVisitor.cpp
index a4c2d1af1337ad404c9d0dbdd0d9b9649c69dba2..00f9fa782d47daff42dac4bb09c8c1360bf12534 100644
--- a/src/cpu/core/Visitors/InitDistributionsBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/InitDistributionsBlockVisitor.cpp
@@ -42,7 +42,7 @@
 #include "D3Q27System.h"
 #include "LBMKernel.h"
 
-InitDistributionsBlockVisitor::InitDistributionsBlockVisitor() : Block3DVisitor(0, D3Q27System::MAXLEVEL)
+InitDistributionsBlockVisitor::InitDistributionsBlockVisitor() : Block3DVisitor(0, d3q27_system::MAXLEVEL)
 {
     using namespace vf::basics::constant;
     
@@ -102,31 +102,31 @@ void InitDistributionsBlockVisitor::setRho(const std::string &muParserString)
 //////////////////////////////////////////////////////////////////////////
 void InitDistributionsBlockVisitor::setVx1(real vx1)
 {
-    this->muVx1.SetExpr(UbSystem::toString(vx1, realLim::digits10));
+    this->muVx1.SetExpr(ub_system::toString(vx1, realLim::digits10));
     this->checkFunction(muVx1);
 }
 //////////////////////////////////////////////////////////////////////////
 void InitDistributionsBlockVisitor::setVx2(real vx2)
 {
-    this->muVx2.SetExpr(UbSystem::toString(vx2, realLim::digits10));
+    this->muVx2.SetExpr(ub_system::toString(vx2, realLim::digits10));
     this->checkFunction(muVx2);
 }
 //////////////////////////////////////////////////////////////////////////
 void InitDistributionsBlockVisitor::setVx3(real vx3)
 {
-    this->muVx3.SetExpr(UbSystem::toString(vx3, realLim::digits10));
+    this->muVx3.SetExpr(ub_system::toString(vx3, realLim::digits10));
     this->checkFunction(muVx3);
 }
 //////////////////////////////////////////////////////////////////////////
 void InitDistributionsBlockVisitor::setRho(real rho)
 {
-    this->muRho.SetExpr(UbSystem::toString(rho, realLim::digits10));
+    this->muRho.SetExpr(ub_system::toString(rho, realLim::digits10));
     this->checkFunction(muRho);
 }
 //////////////////////////////////////////////////////////////////////////
 void InitDistributionsBlockVisitor::visit(const SPtr<Grid3D> grid, SPtr<Block3D> block)
 {
-   using namespace D3Q27System;
+   using namespace d3q27_system;
    using namespace vf::lbm::dir;
    using namespace vf::basics::constant;
 
@@ -157,16 +157,16 @@ void InitDistributionsBlockVisitor::visit(const SPtr<Grid3D> grid, SPtr<Block3D>
          throw UbException(UB_EXARGS, "The LBM kernel isn't exist in block: "+block->toString());
 
       if(kernel->getCompressible()) 
-         calcFeqsFct   = &D3Q27System::calcCompFeq; 
+         calcFeqsFct   = &d3q27_system::calcCompFeq; 
       else                                                        
-         calcFeqsFct   = &D3Q27System::calcIncompFeq; 
+         calcFeqsFct   = &d3q27_system::calcIncompFeq; 
 
       SPtr<BCArray3D> bcArray = kernel->getBCSet()->getBCArray();
       SPtr<DistributionArray3D> distributions = kernel->getDataSet()->getFdistributions();  
 
       real o  = kernel->getCollisionFactor();
 
-      real f[D3Q27System::ENDF+1];
+      real f[d3q27_system::ENDF+1];
 
       for(std::size_t ix3=0; ix3<bcArray->getNX3(); ix3++)
          for(std::size_t ix2=0; ix2<bcArray->getNX2(); ix2++)
diff --git a/src/cpu/core/Visitors/InitDistributionsWithInterpolationGridVisitor.cpp b/src/cpu/core/Visitors/InitDistributionsWithInterpolationGridVisitor.cpp
index 848f94b24cc3dd175bcb15c95db5d2ca68ff9b57..ecedf3a2abfab7933bd6308adb12a58ff9b3fdcc 100644
--- a/src/cpu/core/Visitors/InitDistributionsWithInterpolationGridVisitor.cpp
+++ b/src/cpu/core/Visitors/InitDistributionsWithInterpolationGridVisitor.cpp
@@ -169,7 +169,7 @@ void InitDistributionsWithInterpolationGridVisitor::copyRemoteBlock(SPtr<Block3D
         SPtr<LBMKernel> newKernel = newBlock->getKernel();
         if (!newKernel)
             throw UbException(UB_EXARGS, "The LBM kernel isn't exist in new block: " + newBlock->toString() +
-                                             UbSystem::toString(newGridRank));
+                                             ub_system::toString(newGridRank));
 
         SPtr<EsoTwist3D> newDistributions =
             dynamicPointerCast<EsoTwist3D>(newKernel->getDataSet()->getFdistributions());
@@ -202,8 +202,8 @@ void InitDistributionsWithInterpolationGridVisitor::interpolateLocalBlockCoarseT
     D3Q27ICell icellF;
     real xoff, yoff, zoff;
 
-    real omegaC = LBMSystem::calcCollisionFactor(nu, oldBlock->getLevel());
-    real omegaF = LBMSystem::calcCollisionFactor(nu, newBlock->getLevel());
+    real omegaC = lbm_system::calcCollisionFactor(nu, oldBlock->getLevel());
+    real omegaF = lbm_system::calcCollisionFactor(nu, newBlock->getLevel());
 
     iProcessor->setOmegas(omegaC, omegaF);
 
@@ -250,9 +250,9 @@ void InitDistributionsWithInterpolationGridVisitor::interpolateLocalBlockCoarseT
                                                       val<1>(oldGridIndexMin), val<2>(oldGridIndexMin),
                                                       val<3>(oldGridIndexMin), xoff, yoff, zoff)) {
                         // std::string err = "For "+oldBlock->toString()+
-                        //   " x1="+UbSystem::toString(val<1>(oldGridIndexMin))+
-                        //   ", x2=" + UbSystem::toString(val<2>(oldGridIndexMin))+
-                        //   ", x3=" + UbSystem::toString(val<3>(oldGridIndexMin))+
+                        //   " x1="+ub_system::toString(val<1>(oldGridIndexMin))+
+                        //   ", x2=" + ub_system::toString(val<2>(oldGridIndexMin))+
+                        //   ", x3=" + ub_system::toString(val<3>(oldGridIndexMin))+
                         //   " interpolation is not implemented for other direction"+
                         //   " by using in: "+(std::string)typeid(*this).name()+
                         //   " or maybe you have a solid on the block boundary";
@@ -270,9 +270,9 @@ void InitDistributionsWithInterpolationGridVisitor::interpolateLocalBlockCoarseT
                             icellF.TNE[i] = c0o1;
                         }
                         //                     std::string err = "For "+oldBlock->toString()+
-                        //   " x1="+UbSystem::toString(val<1>(oldGridIndexMin))+
-                        //   ", x2=" + UbSystem::toString(val<2>(oldGridIndexMin))+
-                        //   ", x3=" + UbSystem::toString(val<3>(oldGridIndexMin))+
+                        //   " x1="+ub_system::toString(val<1>(oldGridIndexMin))+
+                        //   ", x2=" + ub_system::toString(val<2>(oldGridIndexMin))+
+                        //   ", x3=" + ub_system::toString(val<3>(oldGridIndexMin))+
                         //   " interpolation is not implemented for other direction"+
                         //   " by using in: "+(std::string)typeid(*this).name()+
                         //   " or maybe you have a solid on the block boundary";
@@ -324,8 +324,8 @@ void InitDistributionsWithInterpolationGridVisitor::interpolateRemoteBlockCoarse
         D3Q27ICell icellF;
         real xoff, yoff, zoff;
 
-        real omegaC = LBMSystem::calcCollisionFactor(nu, oldBlock->getLevel());
-        real omegaF = LBMSystem::calcCollisionFactor(nu, newBlock->getLevel());
+        real omegaC = lbm_system::calcCollisionFactor(nu, oldBlock->getLevel());
+        real omegaF = lbm_system::calcCollisionFactor(nu, newBlock->getLevel());
 
         iProcessor->setOmegas(omegaC, omegaF);
 
@@ -390,9 +390,9 @@ void InitDistributionsWithInterpolationGridVisitor::interpolateRemoteBlockCoarse
                                                           bMaxX3, val<1>(oldGridIndexMin), val<2>(oldGridIndexMin),
                                                           val<3>(oldGridIndexMin), xoff, yoff, zoff)) {
                             // std::string err = "For "+oldBlock->toString()+
-                            //   " x1="+UbSystem::toString(val<1>(oldGridIndexMin))+
-                            //   ", x2=" + UbSystem::toString(val<2>(oldGridIndexMin))+
-                            //   ", x3=" + UbSystem::toString(val<3>(oldGridIndexMin))+
+                            //   " x1="+ub_system::toString(val<1>(oldGridIndexMin))+
+                            //   ", x2=" + ub_system::toString(val<2>(oldGridIndexMin))+
+                            //   ", x3=" + ub_system::toString(val<3>(oldGridIndexMin))+
                             //   " interpolation is not implemented for other direction"+
                             //   " by using in: "+(std::string)typeid(*this).name()+
                             //   " or maybe you have a solid on the block boundary";
@@ -410,9 +410,9 @@ void InitDistributionsWithInterpolationGridVisitor::interpolateRemoteBlockCoarse
                                 icellF.TNE[i] = c0o1;
                             }
                             //                     std::string err = "For "+oldBlock->toString()+
-                            //   " x1="+UbSystem::toString(val<1>(oldGridIndexMin))+
-                            //   ", x2=" + UbSystem::toString(val<2>(oldGridIndexMin))+
-                            //   ", x3=" + UbSystem::toString(val<3>(oldGridIndexMin))+
+                            //   " x1="+ub_system::toString(val<1>(oldGridIndexMin))+
+                            //   ", x2=" + ub_system::toString(val<2>(oldGridIndexMin))+
+                            //   ", x3=" + ub_system::toString(val<3>(oldGridIndexMin))+
                             //   " interpolation is not implemented for other direction"+
                             //   " by using in: "+(std::string)typeid(*this).name()+
                             //   " or maybe you have a solid on the block boundary";
@@ -436,8 +436,8 @@ void InitDistributionsWithInterpolationGridVisitor::interpolateLocalBlockFineToC
     D3Q27ICell icellF;
     real xoff, yoff, zoff;
 
-    real omegaF = LBMSystem::calcCollisionFactor(nu, oldBlock->getLevel());
-    real omegaC = LBMSystem::calcCollisionFactor(nu, newBlock->getLevel());
+    real omegaF = lbm_system::calcCollisionFactor(nu, oldBlock->getLevel());
+    real omegaC = lbm_system::calcCollisionFactor(nu, newBlock->getLevel());
 
     iProcessor->setOmegas(omegaC, omegaF);
 
@@ -485,9 +485,9 @@ void InitDistributionsWithInterpolationGridVisitor::interpolateLocalBlockFineToC
                                                       val<1>(oldGridIndexMin), val<2>(oldGridIndexMin),
                                                       val<3>(oldGridIndexMin), xoff, yoff, zoff)) {
                         // std::string err = "For "+oldBlock->toString()+
-                        //   " x1="+UbSystem::toString(val<1>(oldGridIndexMin))+
-                        //   ", x2=" + UbSystem::toString(val<2>(oldGridIndexMin))+
-                        //   ", x3=" + UbSystem::toString(val<3>(oldGridIndexMin))+
+                        //   " x1="+ub_system::toString(val<1>(oldGridIndexMin))+
+                        //   ", x2=" + ub_system::toString(val<2>(oldGridIndexMin))+
+                        //   ", x3=" + ub_system::toString(val<3>(oldGridIndexMin))+
                         //   " interpolation is not implemented for other direction"+
                         //   " by using in: "+(std::string)typeid(*this).name()+
                         //   " or maybe you have a solid on the block boundary";
@@ -505,9 +505,9 @@ void InitDistributionsWithInterpolationGridVisitor::interpolateLocalBlockFineToC
                             icellF.TNE[i] = c0o1;
                         }
                         //                     std::string err = "For "+oldBlock->toString()+
-                        //   " x1="+UbSystem::toString(val<1>(oldGridIndexMin))+
-                        //   ", x2=" + UbSystem::toString(val<2>(oldGridIndexMin))+
-                        //   ", x3=" + UbSystem::toString(val<3>(oldGridIndexMin))+
+                        //   " x1="+ub_system::toString(val<1>(oldGridIndexMin))+
+                        //   ", x2=" + ub_system::toString(val<2>(oldGridIndexMin))+
+                        //   ", x3=" + ub_system::toString(val<3>(oldGridIndexMin))+
                         //   " interpolation is not implemented for other direction"+
                         //   " by using in: "+(std::string)typeid(*this).name()+
                         //   " or maybe you have a solid on the block boundary";
@@ -559,8 +559,8 @@ void InitDistributionsWithInterpolationGridVisitor::interpolateRemoteBlockFineTo
         D3Q27ICell icellF;
         real xoff, yoff, zoff;
 
-        real omegaF = LBMSystem::calcCollisionFactor(nu, oldBlock->getLevel());
-        real omegaC = LBMSystem::calcCollisionFactor(nu, newBlock->getLevel());
+        real omegaF = lbm_system::calcCollisionFactor(nu, oldBlock->getLevel());
+        real omegaC = lbm_system::calcCollisionFactor(nu, newBlock->getLevel());
 
         iProcessor->setOmegas(omegaC, omegaF);
 
@@ -625,9 +625,9 @@ void InitDistributionsWithInterpolationGridVisitor::interpolateRemoteBlockFineTo
                                                           bMaxX3, val<1>(oldGridIndexMin), val<2>(oldGridIndexMin),
                                                           val<3>(oldGridIndexMin), xoff, yoff, zoff)) {
                             // std::string err = "For "+oldBlock->toString()+
-                            //   " x1="+UbSystem::toString(val<1>(oldGridIndexMin))+
-                            //   ", x2=" + UbSystem::toString(val<2>(oldGridIndexMin))+
-                            //   ", x3=" + UbSystem::toString(val<3>(oldGridIndexMin))+
+                            //   " x1="+ub_system::toString(val<1>(oldGridIndexMin))+
+                            //   ", x2=" + ub_system::toString(val<2>(oldGridIndexMin))+
+                            //   ", x3=" + ub_system::toString(val<3>(oldGridIndexMin))+
                             //   " interpolation is not implemented for other direction"+
                             //   " by using in: "+(std::string)typeid(*this).name()+
                             //   " or maybe you have a solid on the block boundary";
@@ -645,9 +645,9 @@ void InitDistributionsWithInterpolationGridVisitor::interpolateRemoteBlockFineTo
                                 icellF.TNE[i] = c0o1;
                             }
                             //                     std::string err = "For "+oldBlock->toString()+
-                            //   " x1="+UbSystem::toString(val<1>(oldGridIndexMin))+
-                            //   ", x2=" + UbSystem::toString(val<2>(oldGridIndexMin))+
-                            //   ", x3=" + UbSystem::toString(val<3>(oldGridIndexMin))+
+                            //   " x1="+ub_system::toString(val<1>(oldGridIndexMin))+
+                            //   ", x2=" + ub_system::toString(val<2>(oldGridIndexMin))+
+                            //   ", x3=" + ub_system::toString(val<3>(oldGridIndexMin))+
                             //   " interpolation is not implemented for other direction"+
                             //   " by using in: "+(std::string)typeid(*this).name()+
                             //   " or maybe you have a solid on the block boundary";
diff --git a/src/cpu/core/Visitors/MetisPartitioningGridVisitor.cpp b/src/cpu/core/Visitors/MetisPartitioningGridVisitor.cpp
index 3ba593af89dc790710a351dfdbf3b00a3a3e4745..e54faf5351ea6bbd34e4b71faff02e7df76aa4db 100644
--- a/src/cpu/core/Visitors/MetisPartitioningGridVisitor.cpp
+++ b/src/cpu/core/Visitors/MetisPartitioningGridVisitor.cpp
@@ -292,7 +292,7 @@ void MetisPartitioningGridVisitor::clear()
 //////////////////////////////////////////////////////////////////////////
 int MetisPartitioningGridVisitor::getEdgeWeight(int dir)
 {
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     using namespace vf::lbm::dir;
 
     if (dir <= (int)d00M) {
diff --git a/src/cpu/core/Visitors/OverlapBlockVisitor.cpp b/src/cpu/core/Visitors/OverlapBlockVisitor.cpp
index a3df35238b7ccc258fa18d54915518f23fb9a48d..68a7af2b197f555ce0346d5540c4858f40cbfed7 100644
--- a/src/cpu/core/Visitors/OverlapBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/OverlapBlockVisitor.cpp
@@ -37,7 +37,7 @@
 #include "D3Q27System.h"
 
 OverlapBlockVisitor::OverlapBlockVisitor(int levelDepth /*shut be maxGridLevel*/, bool includeNotActiveBlocks)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), levelDepth(levelDepth), includeNotActiveBlocks(includeNotActiveBlocks)
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), levelDepth(levelDepth), includeNotActiveBlocks(includeNotActiveBlocks)
 {
 }
 //////////////////////////////////////////////////////////////////////////
diff --git a/src/cpu/core/Visitors/RatioBlockVisitor.cpp b/src/cpu/core/Visitors/RatioBlockVisitor.cpp
index 0acaa104d3dbbdc32452b1a66a60999b10390816..e657c0a0ed0ad1214616435f8e12b95dd0a305df 100644
--- a/src/cpu/core/Visitors/RatioBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/RatioBlockVisitor.cpp
@@ -37,7 +37,7 @@
 #include "D3Q27System.h"
 
 RatioBlockVisitor::RatioBlockVisitor(int levelDepth, bool includeNotActiveBlocks)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), maxLevelRatio(1), expandBlocks(true), levelDepth(levelDepth),
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), maxLevelRatio(1), expandBlocks(true), levelDepth(levelDepth),
       includeNotActiveBlocks(includeNotActiveBlocks)
 {
 }
diff --git a/src/cpu/core/Visitors/RatioSmoothBlockVisitor.cpp b/src/cpu/core/Visitors/RatioSmoothBlockVisitor.cpp
index 79f486e113af1b68eccf0c69f7e4a90a397b298d..da00ff67e5fffb55b57113ff0416254982325b04 100644
--- a/src/cpu/core/Visitors/RatioSmoothBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/RatioSmoothBlockVisitor.cpp
@@ -37,7 +37,7 @@
 #include "D3Q27System.h"
 
 RatioSmoothBlockVisitor::RatioSmoothBlockVisitor(int levelDepth, bool includeNotActiveBlocks)
-    : Block3DVisitor(D3Q27System::MAXLEVEL, 0), maxLevelRatio(1), expandBlocks(true), levelDepth(levelDepth),
+    : Block3DVisitor(d3q27_system::MAXLEVEL, 0), maxLevelRatio(1), expandBlocks(true), levelDepth(levelDepth),
       includeNotActiveBlocks(includeNotActiveBlocks)
 {
 }
diff --git a/src/cpu/core/Visitors/RefineCrossAndInsideGbObjectHelper.cpp b/src/cpu/core/Visitors/RefineCrossAndInsideGbObjectHelper.cpp
index a2ce0af752923ae375fa25848250c7b35de29d08..06b0f2710cc078d8ad91718b9875c26c3acbe0cb 100644
--- a/src/cpu/core/Visitors/RefineCrossAndInsideGbObjectHelper.cpp
+++ b/src/cpu/core/Visitors/RefineCrossAndInsideGbObjectHelper.cpp
@@ -88,7 +88,7 @@ void RefineCrossAndInsideGbObjectHelper::refine()
 
     std::vector<int> dirs;
 
-    for (int i = D3Q27System::FSTARTDIR; i <= D3Q27System::FENDDIR; i++) {
+    for (int i = d3q27_system::FSTARTDIR; i <= d3q27_system::FENDDIR; i++) {
         dirs.push_back(i);
     }
     SetInterpolationDirsBlockVisitor interDirsVisitor(dirs);
diff --git a/src/cpu/core/Visitors/RenumberBlockVisitor.cpp b/src/cpu/core/Visitors/RenumberBlockVisitor.cpp
index 78c008e6218753850ab04d5af9cbebb0fc967e5f..8e6cb4aab97cdc5c21d0ed718a3075eb007f8bcf 100644
--- a/src/cpu/core/Visitors/RenumberBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/RenumberBlockVisitor.cpp
@@ -39,7 +39,7 @@
 
 int RenumberBlockVisitor::counter = 0;
 
-RenumberBlockVisitor::RenumberBlockVisitor() : Block3DVisitor(0, D3Q27System::MAXLEVEL) {}
+RenumberBlockVisitor::RenumberBlockVisitor() : Block3DVisitor(0, d3q27_system::MAXLEVEL) {}
 //////////////////////////////////////////////////////////////////////////
 void RenumberBlockVisitor::visit(SPtr<Grid3D> grid, SPtr<Block3D> block)
 {
diff --git a/src/cpu/core/Visitors/SetBcBlocksBlockVisitor.cpp b/src/cpu/core/Visitors/SetBcBlocksBlockVisitor.cpp
index 9837cfb5164628057c19aa14c2a159abb03a62b6..a82867956f26583e4d447d8b3043990f2898bce8 100644
--- a/src/cpu/core/Visitors/SetBcBlocksBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/SetBcBlocksBlockVisitor.cpp
@@ -40,7 +40,7 @@
 #include "Interactor3D.h"
 
 SetBcBlocksBlockVisitor::SetBcBlocksBlockVisitor(SPtr<Interactor3D> interactor)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), interactor(interactor)
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), interactor(interactor)
 {
 }
 
diff --git a/src/cpu/core/Visitors/SetConnectorsBlockVisitor.h b/src/cpu/core/Visitors/SetConnectorsBlockVisitor.h
index 672c92db34ec5e314c2ae6be124037b483a2d6a1..f1bb43a8a918e2c8f3c279ef7f5791adf76ae798 100644
--- a/src/cpu/core/Visitors/SetConnectorsBlockVisitor.h
+++ b/src/cpu/core/Visitors/SetConnectorsBlockVisitor.h
@@ -77,7 +77,7 @@ protected:
 
 template <class T1, class T2>
 SetConnectorsBlockVisitor<T1, T2>::SetConnectorsBlockVisitor(std::shared_ptr<vf::parallel::Communicator> comm)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), comm(comm)
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), comm(comm)
 {
 }
 //////////////////////////////////////////////////////////////////////////
@@ -118,7 +118,7 @@ void SetConnectorsBlockVisitor<T1, T2>::setSameLevelConnectors(SPtr<Grid3D> grid
         int ix3   = block->getX3();
         int level = block->getLevel();
 
-        for (int dir = D3Q27System::FSTARTDIR; dir <= D3Q27System::FENDDIR; dir++) { 
+        for (int dir = d3q27_system::FSTARTDIR; dir <= d3q27_system::FENDDIR; dir++) { 
             SPtr<Block3D> neighBlock = grid->getNeighborBlock(dir, ix1, ix2, ix3, level);
 
             if (neighBlock) {
diff --git a/src/cpu/core/Visitors/SetForcingBlockVisitor.cpp b/src/cpu/core/Visitors/SetForcingBlockVisitor.cpp
index cada3c42d4393627d898af156d1850929b10e324..2dca07a6d1a528ed4c3d3bdc09bffd6122ff0c17 100644
--- a/src/cpu/core/Visitors/SetForcingBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/SetForcingBlockVisitor.cpp
@@ -38,14 +38,14 @@
 #include "LBMSystem.h"
 
 SetForcingBlockVisitor::SetForcingBlockVisitor(real forcingX1, real forcingX2, real forcingX3)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), forcingX1(forcingX1), forcingX2(forcingX2), forcingX3(forcingX3)
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), forcingX1(forcingX1), forcingX2(forcingX2), forcingX3(forcingX3)
 {
     ftype = 0;
 }
 //////////////////////////////////////////////////////////////////////////
 SetForcingBlockVisitor::SetForcingBlockVisitor(const mu::Parser &muForcingX1, const mu::Parser &muForcingX2,
                                                const mu::Parser &muForcingX3)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), muForcingX1(muForcingX1), muForcingX2(muForcingX2),
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), muForcingX1(muForcingX1), muForcingX2(muForcingX2),
       muForcingX3(muForcingX3)
 
 {
@@ -54,7 +54,7 @@ SetForcingBlockVisitor::SetForcingBlockVisitor(const mu::Parser &muForcingX1, co
 //////////////////////////////////////////////////////////////////////////
 SetForcingBlockVisitor::SetForcingBlockVisitor(const std::string &sForcingX1, const std::string &sForcingX2,
                                                const std::string &sForcingX3)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), sForcingX1(sForcingX1), sForcingX2(sForcingX2), sForcingX3(sForcingX3)
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), sForcingX1(sForcingX1), sForcingX2(sForcingX2), sForcingX3(sForcingX3)
 
 {
     ftype = 2;
diff --git a/src/cpu/core/Visitors/SetInterpolationConnectorsBlockVisitor.cpp b/src/cpu/core/Visitors/SetInterpolationConnectorsBlockVisitor.cpp
index 0b10250ef148f176e012a32cb4fa517fd6ff5873..6507df7fa98a6996a5bf9b0f5a755096b7810547 100644
--- a/src/cpu/core/Visitors/SetInterpolationConnectorsBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/SetInterpolationConnectorsBlockVisitor.cpp
@@ -45,7 +45,7 @@
 #include "Interpolator.h"
 
 SetInterpolationConnectorsBlockVisitor::SetInterpolationConnectorsBlockVisitor(std::shared_ptr<vf::parallel::Communicator> comm, real nue, SPtr<Interpolator> iProcessor) :
-Block3DVisitor(0, D3Q27System::MAXLEVEL), 
+Block3DVisitor(0, d3q27_system::MAXLEVEL), 
     comm(comm),
     nue(nue),
     iProcessor(iProcessor)
@@ -352,11 +352,11 @@ void SetInterpolationConnectorsBlockVisitor::setInterpolationConnectors(SPtr<Blo
     int cBlockRank   = cBlock->getRank();
 
     real omegaF {0.0};
-    if(fBlockSW) omegaF =LBMSystem::calcCollisionFactor(nue, fBlockSW->getLevel());
-    if(fBlockNW) omegaF =LBMSystem::calcCollisionFactor(nue, fBlockNW->getLevel());
-    if(fBlockSE) omegaF =LBMSystem::calcCollisionFactor(nue, fBlockSE->getLevel());
-    if(fBlockNE) omegaF =LBMSystem::calcCollisionFactor(nue, fBlockNE->getLevel());
-    real omegaC = LBMSystem::calcCollisionFactor(nue, cBlock->getLevel());
+    if(fBlockSW) omegaF =lbm_system::calcCollisionFactor(nue, fBlockSW->getLevel());
+    if(fBlockNW) omegaF =lbm_system::calcCollisionFactor(nue, fBlockNW->getLevel());
+    if(fBlockSE) omegaF =lbm_system::calcCollisionFactor(nue, fBlockSE->getLevel());
+    if(fBlockNE) omegaF =lbm_system::calcCollisionFactor(nue, fBlockNE->getLevel());
+    real omegaC = lbm_system::calcCollisionFactor(nue, cBlock->getLevel());
     iProcessor->setOmegas(omegaC, omegaF);
 
     InterpolationProcessorPtr cIProcessor(iProcessor->clone());
diff --git a/src/cpu/core/Visitors/SetInterpolationDirsBlockVisitor.cpp b/src/cpu/core/Visitors/SetInterpolationDirsBlockVisitor.cpp
index 50b03672fd0135b5830c2bb8c468378449f1bcbd..451ebf212ff5645d8f1c61bd01b3b0d5f144e8ca 100644
--- a/src/cpu/core/Visitors/SetInterpolationDirsBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/SetInterpolationDirsBlockVisitor.cpp
@@ -38,7 +38,7 @@
 #include <D3Q27System.h>
 
 SetInterpolationDirsBlockVisitor::SetInterpolationDirsBlockVisitor(std::vector<int> &dirs)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), dirs(dirs)
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), dirs(dirs)
 {
 }
 //////////////////////////////////////////////////////////////////////////
@@ -51,7 +51,7 @@ void SetInterpolationDirsBlockVisitor::visit(SPtr<Grid3D> grid, SPtr<Block3D> bl
     ix2   = block->getX2();
     ix3   = block->getX3();
     level = block->getLevel();
-    using namespace D3Q27System;
+    using namespace d3q27_system;
     if (level == 0)
         return;
 
diff --git a/src/cpu/core/Visitors/SetKernelBlockVisitor.cpp b/src/cpu/core/Visitors/SetKernelBlockVisitor.cpp
index 23d2b5feeb4a411bea913164ff05fd4ea680b5f2..197b7c052b2044af316992b02eccf9bec9f2a0cd 100644
--- a/src/cpu/core/Visitors/SetKernelBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/SetKernelBlockVisitor.cpp
@@ -47,13 +47,13 @@
 
 //////////////////////////////////////////////////////////////////////////
 SetKernelBlockVisitor::SetKernelBlockVisitor(SPtr<LBMKernel> kernel, real nue, SetKernelBlockVisitor::Action action)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), kernel(std::move(kernel)), nue(nue), action(action)
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), kernel(std::move(kernel)), nue(nue), action(action)
 {
 }
 
 SetKernelBlockVisitor::SetKernelBlockVisitor(SPtr<LBMKernel> kernel, real nue, int numberOfProcesses,
                                              SetKernelBlockVisitor::Action action)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), kernel(std::move(kernel)), nue(nue), action(action), numberOfProcesses(numberOfProcesses)
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), kernel(std::move(kernel)), nue(nue), action(action), numberOfProcesses(numberOfProcesses)
 {
 }
 
@@ -63,10 +63,10 @@ void SetKernelBlockVisitor::visit(SPtr<Grid3D> grid, SPtr<Block3D> block)
     throwExceptionIfNotEnoughMemory(grid);
 
     if (kernel && (block->getRank() == grid->getRank())) {
-        real collFactor = LBMSystem::calcCollisionFactor(nue, block->getLevel());
+        real collFactor = lbm_system::calcCollisionFactor(nue, block->getLevel());
         kernel->setCollisionFactor(collFactor);
         kernel->setIndex(block->getX1(), block->getX2(), block->getX3());
-        kernel->setDeltaT(LBMSystem::getDeltaT(block->getLevel()));
+        kernel->setDeltaT(lbm_system::getDeltaT(block->getLevel()));
         kernel->setBlock(block);
         UbTupleInt3 blockNX = grid->getBlockNX();
         kernel->setNX(std::array<int, 3>{ { val<1>(blockNX), val<2>(blockNX), val<3>(blockNX) } });
@@ -111,10 +111,10 @@ void SetKernelBlockVisitor::visit(SPtr<Grid3D> grid, SPtr<Block3D> block)
 
 void SetKernelBlockVisitor::throwExceptionIfNotEnoughMemory(const SPtr<Grid3D> &grid)
 {
-    auto availableMemory = Utilities::getTotalPhysMem();
+    auto availableMemory = utilities::getTotalPhysMem();
     auto requiredMemory  = getRequiredPhysicalMemory(grid);
     if (requiredMemory > availableMemory)
-        throw UbException(UB_EXARGS, "SetKernelBlockVisitor: Not enough memory!!! Rank = " + UbSystem::toString(grid->getRank()));
+        throw UbException(UB_EXARGS, "SetKernelBlockVisitor: Not enough memory!!! Rank = " + ub_system::toString(grid->getRank()));
 }
 
 real SetKernelBlockVisitor::getRequiredPhysicalMemory(const SPtr<Grid3D> &grid) const
diff --git a/src/cpu/core/Visitors/SetSolidBlocksBlockVisitor.cpp b/src/cpu/core/Visitors/SetSolidBlocksBlockVisitor.cpp
index e43900b25951ede3f679016f3d86fa743c8412ce..96e652f0937f103b3e96dc1f7492e55aab491b8b 100644
--- a/src/cpu/core/Visitors/SetSolidBlocksBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/SetSolidBlocksBlockVisitor.cpp
@@ -42,7 +42,7 @@
 #include "Interactor3D.h"
 
 SetSolidBlocksBlockVisitor::SetSolidBlocksBlockVisitor(SPtr<Interactor3D> interactor)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), interactor(std::move(interactor))
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), interactor(std::move(interactor))
 {
 }
 
diff --git a/src/cpu/core/Visitors/SetUndefinedNodesBlockVisitor.cpp b/src/cpu/core/Visitors/SetUndefinedNodesBlockVisitor.cpp
index c1587c1ab2731bbaead6aea969ad3172a19f7123..b492a69c3ae8e6563abf3832687f7e9802a21d5a 100644
--- a/src/cpu/core/Visitors/SetUndefinedNodesBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/SetUndefinedNodesBlockVisitor.cpp
@@ -42,7 +42,7 @@
 #include "LBMKernel.h"
 
 SetUndefinedNodesBlockVisitor::SetUndefinedNodesBlockVisitor(bool twoTypeOfConnectorsCheck)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), twoTypeOfConnectorsCheck(twoTypeOfConnectorsCheck)
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), twoTypeOfConnectorsCheck(twoTypeOfConnectorsCheck)
 {
 }
 //////////////////////////////////////////////////////////////////////////
diff --git a/src/cpu/core/Visitors/SpongeLayerBlockVisitor.cpp b/src/cpu/core/Visitors/SpongeLayerBlockVisitor.cpp
index dfe7bc571f6e2fbdd3351cab22827edbec7cec5f..e1adfccd3ab440c350317b645fc244c3b84576cd 100644
--- a/src/cpu/core/Visitors/SpongeLayerBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/SpongeLayerBlockVisitor.cpp
@@ -48,7 +48,7 @@ using namespace std;
 
 SpongeLayerBlockVisitor::SpongeLayerBlockVisitor(SPtr<GbCuboid3D> boundingBox, SPtr<LBMKernel> kernel, real nue,
                                                  int dir)
-    : Block3DVisitor(0, D3Q27System::MAXLEVEL), boundingBox(boundingBox), kernel(kernel), nue(nue), dir(dir)
+    : Block3DVisitor(0, d3q27_system::MAXLEVEL), boundingBox(boundingBox), kernel(kernel), nue(nue), dir(dir)
 {
 }
 //////////////////////////////////////////////////////////////////////////
@@ -77,10 +77,10 @@ void SpongeLayerBlockVisitor::visit(SPtr<Grid3D> grid, SPtr<Block3D> block)
         real maxX3 = val<3>(org) + val<3>(blockLengths);
 
         if (boundingBox->isCellInsideGbObject3D(minX1, minX2, minX3, maxX1, maxX2, maxX3)) {
-            real collFactor = LBMSystem::calcCollisionFactor(nue, block->getLevel());
+            real collFactor = lbm_system::calcCollisionFactor(nue, block->getLevel());
             kernel->setCollisionFactor(collFactor);
             kernel->setIndex(block->getX1(), block->getX2(), block->getX3());
-            kernel->setDeltaT(LBMSystem::getDeltaT(block->getLevel()));
+            kernel->setDeltaT(lbm_system::getDeltaT(block->getLevel()));
             kernel->setBlock(block);
             SPtr<LBMKernel> newKernel = kernel->clone();
 
diff --git a/src/cpu/core/Visitors/ViscosityBlockVisitor.cpp b/src/cpu/core/Visitors/ViscosityBlockVisitor.cpp
index 20f56d09800f04eb1260175dcbcce800453ab7ad..81009fd2dbe3fc9c19439c0f2858a98255d8f265 100644
--- a/src/cpu/core/Visitors/ViscosityBlockVisitor.cpp
+++ b/src/cpu/core/Visitors/ViscosityBlockVisitor.cpp
@@ -38,12 +38,12 @@
 #include "LBMKernel.h"
 #include "LBMSystem.h"
 
-ViscosityBlockVisitor::ViscosityBlockVisitor(real nu) : Block3DVisitor(0, D3Q27System::MAXLEVEL), nu(nu) {}
+ViscosityBlockVisitor::ViscosityBlockVisitor(real nu) : Block3DVisitor(0, d3q27_system::MAXLEVEL), nu(nu) {}
 //////////////////////////////////////////////////////////////////////////
 void ViscosityBlockVisitor::visit(SPtr<Grid3D> grid, SPtr<Block3D> block)
 {
     if (block->getRank() == grid->getRank()) {
-        real collFactor = LBMSystem::calcCollisionFactor(nu, block->getLevel());
+        real collFactor = lbm_system::calcCollisionFactor(nu, block->getLevel());
         block->getKernel()->setCollisionFactor(collFactor);
     }
 }
diff --git a/src/cpu/simulationconfig/D3Q27LBMSystem.cpp b/src/cpu/simulationconfig/D3Q27LBMSystem.cpp
index 14e048631a41d08fab0013092dbe8eb391c663de..39e89ccd5237815d37c130f7fd133eb863b9cf6d 100644
--- a/src/cpu/simulationconfig/D3Q27LBMSystem.cpp
+++ b/src/cpu/simulationconfig/D3Q27LBMSystem.cpp
@@ -32,7 +32,7 @@
 
 int D3Q27LBMSystem::getNumberOfDirections()
 {
-    return D3Q27System::ENDDIR;
+    return d3q27_system::ENDDIR;
 }
 
 std::shared_ptr<Interactor3D> D3Q27LBMSystem::makeInteractor()
diff --git a/src/cpu/simulationconfig/Simulation.cpp b/src/cpu/simulationconfig/Simulation.cpp
index 22cd8c24b94ab5d1bd3aada6fb3ea71622e0ef87..e596d40c10511afaa94e9d72bd11cc330b88a119 100644
--- a/src/cpu/simulationconfig/Simulation.cpp
+++ b/src/cpu/simulationconfig/Simulation.cpp
@@ -99,7 +99,7 @@ void CPUSimulation::addObject(const std::shared_ptr<GbObject3D> &object, const s
     this->interactors.push_back(lbmSystem->makeInteractor(object, this->grid, bcAdapter, state));
     if (communicator->getProcessID() != 0) return;
 
-    GbSystem3D::writeGeoObject(object, writerConfig.outputPath + folderPath, writerConfig.getWriter());
+    gb_system_3d::writeGeoObject(object, writerConfig.outputPath + folderPath, writerConfig.getWriter());
 }
 
 void CPUSimulation::addBCAdapter(const std::shared_ptr<BC> &bcAdapter)
@@ -271,7 +271,7 @@ std::shared_ptr<GbObject3D> CPUSimulation::makeSimulationBoundingBox()
     if (isMainProcess()) {
         VF_LOG_INFO("Bounding box dimensions = [({}},{}},{}}); ({}}, {}}, {}})]", box->minX1, box->minX2, box->minX3, box->maxX1, box->maxX2, box->maxX3);
 
-        GbSystem3D::writeGeoObject(gridCube.get(), writerConfig.outputPath + "/geo/gridCube", writerConfig.getWriter());
+        gb_system_3d::writeGeoObject(gridCube.get(), writerConfig.outputPath + "/geo/gridCube", writerConfig.getWriter());
     }
 
     return gridCube;
diff --git a/src/gpu/GridGenerator/TransientBCSetter/TransientBCSetter.h b/src/gpu/GridGenerator/TransientBCSetter/TransientBCSetter.h
index c58e97169c9e1460dc95d80fc11f29b609dbb72f..4ac33aa809b46104cab3975cabeee65c0f3b8280 100644
--- a/src/gpu/GridGenerator/TransientBCSetter/TransientBCSetter.h
+++ b/src/gpu/GridGenerator/TransientBCSetter/TransientBCSetter.h
@@ -44,7 +44,7 @@
 
 
 class Grid;
-namespace gg
+namespace grid_generator
 {
     class BoundaryCondition;
 }
diff --git a/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.cpp b/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.cpp
index e7f94bda7f28c7c6ad411192ca9cb7078513e29f..73171cca073387d069620442e703e99be1e1aaa1 100644
--- a/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.cpp
+++ b/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.cpp
@@ -38,7 +38,7 @@
 #include "grid/Grid.h"
 #include "GridGenerator/TransientBCSetter/TransientBCSetter.h"
 
-bool gg::BoundaryCondition::isSide( SideType side ) const
+bool grid_generator::BoundaryCondition::isSide( SideType side ) const
 {
     return this->side->whoAmI() == side;
 }
diff --git a/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h b/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h
index e01bf4c44f53f66b8c10a1ff82f5c11a0fc72ecc..8d286a429b349465ab61578521c39059cd5a26d2 100644
--- a/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h
+++ b/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h
@@ -48,7 +48,7 @@ enum class SideType;
 
 class TransientBCInputFileReader;
 
-namespace gg
+namespace grid_generator
 {
 class BoundaryCondition
 {
@@ -74,7 +74,7 @@ public:
 
 //////////////////////////////////////////////////////////////////////////
 
-class PressureBoundaryCondition : public gg::BoundaryCondition
+class PressureBoundaryCondition : public grid_generator::BoundaryCondition
 {
 public:
     static SPtr<PressureBoundaryCondition> make(real rho)
@@ -103,7 +103,7 @@ public:
 
 //////////////////////////////////////////////////////////////////////////
 
-class SlipBoundaryCondition : public gg::BoundaryCondition
+class SlipBoundaryCondition : public grid_generator::BoundaryCondition
 {
 public:
     static SPtr<SlipBoundaryCondition> make(real normalX, real normalY, real normalZ)
@@ -143,7 +143,7 @@ public:
 
 //////////////////////////////////////////////////////////////////////////
 
-class StressBoundaryCondition : public gg::BoundaryCondition
+class StressBoundaryCondition : public grid_generator::BoundaryCondition
 {
 public:
     static SPtr<StressBoundaryCondition> make(real normalX, real normalY, real normalZ, uint samplingOffset, real z0)
@@ -214,7 +214,7 @@ public:
 
 //////////////////////////////////////////////////////////////////////////
 
-class VelocityBoundaryCondition : public gg ::BoundaryCondition
+class VelocityBoundaryCondition : public grid_generator ::BoundaryCondition
 {
 public:
     static SPtr<VelocityBoundaryCondition> make(real vx, real vy, real vz)
@@ -258,7 +258,7 @@ public:
 //////////////////////////////////////////////////////////////////////////
 
 
-class GeometryBoundaryCondition : public gg::BoundaryCondition
+class GeometryBoundaryCondition : public grid_generator::BoundaryCondition
 {
 public:
     static SPtr<GeometryBoundaryCondition> make()
@@ -336,7 +336,7 @@ public:
     real getNormalz(uint index) { return this->normalZList[index]; }
 };
 
-class PrecursorBoundaryCondition : public gg::BoundaryCondition
+class PrecursorBoundaryCondition : public grid_generator::BoundaryCondition
 {
 public:
     static SPtr<PrecursorBoundaryCondition> make(SPtr<TransientBCInputFileReader> reader, int timeStepsBetweenReads, real velocityX, real velocityY, real velocityZ)
diff --git a/src/gpu/GridGenerator/grid/BoundaryConditions/Side.cpp b/src/gpu/GridGenerator/grid/BoundaryConditions/Side.cpp
index cd9cc46795368af09a63bdfe3284d301383ecbb2..5f4a59fb072ad93d0d34dcac66f23d683f2d5b9d 100644
--- a/src/gpu/GridGenerator/grid/BoundaryConditions/Side.cpp
+++ b/src/gpu/GridGenerator/grid/BoundaryConditions/Side.cpp
@@ -42,7 +42,7 @@
 #include <cstddef>
 #include <vector>
 
-using namespace gg;
+using namespace grid_generator;
 
 std::array<real, 3> Side::getNormal() const
 {
diff --git a/src/gpu/GridGenerator/grid/BoundaryConditions/Side.h b/src/gpu/GridGenerator/grid/BoundaryConditions/Side.h
index dcf910894ab6356799da54153412c9c840d18bfc..cf46d44b633fd9706b5be4e38883e0cb0e8f314d 100644
--- a/src/gpu/GridGenerator/grid/BoundaryConditions/Side.h
+++ b/src/gpu/GridGenerator/grid/BoundaryConditions/Side.h
@@ -52,7 +52,7 @@
 
 class Grid;
 
-namespace gg
+namespace grid_generator
 {
 class BoundaryCondition;
 }
@@ -69,7 +69,7 @@ class Side
 public:
     virtual ~Side() = default;
     virtual void addIndices(const std::vector<SPtr<Grid>> &grid, uint level,
-                            SPtr<gg::BoundaryCondition> boundaryCondition) = 0;
+                            SPtr<grid_generator::BoundaryCondition> boundaryCondition) = 0;
 
     virtual int getCoordinate() const = 0;
     virtual int getDirection() const = 0;
@@ -81,14 +81,14 @@ public:
     size_t getD3Q27Direction() const;
 
 protected:
-    void addIndices(SPtr<Grid> grid, SPtr<gg::BoundaryCondition> boundaryCondition, std::string coord, real constant,
+    void addIndices(SPtr<Grid> grid, SPtr<grid_generator::BoundaryCondition> boundaryCondition, std::string coord, real constant,
                            real startInner, real endInner, real startOuter, real endOuter);
 
-    static void setPressureNeighborIndices(SPtr<gg::BoundaryCondition> boundaryCondition, SPtr<Grid> grid, const uint index);
+    static void setPressureNeighborIndices(SPtr<grid_generator::BoundaryCondition> boundaryCondition, SPtr<Grid> grid, const uint index);
 
-    static void setStressSamplingIndices(SPtr<gg::BoundaryCondition> boundaryCondition, SPtr<Grid> grid, const uint index);
+    static void setStressSamplingIndices(SPtr<grid_generator::BoundaryCondition> boundaryCondition, SPtr<Grid> grid, const uint index);
 
-    void setQs(SPtr<Grid> grid, SPtr<gg::BoundaryCondition> boundaryCondition, uint index);
+    void setQs(SPtr<Grid> grid, SPtr<grid_generator::BoundaryCondition> boundaryCondition, uint index);
 
     virtual void correctNeighborForPeriodicBoundaries(const Grid *grid, std::array<real, 3>& coords, std::array<real, 3>& neighbors) const;
 
@@ -118,7 +118,7 @@ protected:
 class Geometry : public Side
 {
 public:
-    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<gg::BoundaryCondition> boundaryCondition) override;
+    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<grid_generator::BoundaryCondition> boundaryCondition) override;
 
     int getCoordinate() const override
     {
@@ -139,7 +139,7 @@ public:
 class MX : public Side
 {
 public:
-    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<gg::BoundaryCondition> boundaryCondition) override;
+    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<grid_generator::BoundaryCondition> boundaryCondition) override;
 
     int getCoordinate() const override
     {
@@ -160,7 +160,7 @@ public:
 class PX : public Side
 {
 public:
-    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<gg::BoundaryCondition> boundaryCondition) override;
+    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<grid_generator::BoundaryCondition> boundaryCondition) override;
 
     int getCoordinate() const override
     {
@@ -182,7 +182,7 @@ public:
 class MY : public Side
 {
 public:
-    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<gg::BoundaryCondition> boundaryCondition) override;
+    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<grid_generator::BoundaryCondition> boundaryCondition) override;
 
     int getCoordinate() const override
     {
@@ -203,7 +203,7 @@ public:
 class PY : public Side
 {
 public:
-    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<gg::BoundaryCondition> boundaryCondition) override;
+    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<grid_generator::BoundaryCondition> boundaryCondition) override;
 
     int getCoordinate() const override
     {
@@ -225,7 +225,7 @@ public:
 class MZ : public Side
 {
 public:
-    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<gg::BoundaryCondition> boundaryCondition) override;
+    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<grid_generator::BoundaryCondition> boundaryCondition) override;
 
     int getCoordinate() const override
     {
@@ -246,7 +246,7 @@ public:
 class PZ : public Side
 {
 public:
-    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<gg::BoundaryCondition> boundaryCondition) override;
+    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<grid_generator::BoundaryCondition> boundaryCondition) override;
 
     int getCoordinate() const override
     {
diff --git a/src/gpu/GridGenerator/grid/GridBuilder/GridBuilder.h b/src/gpu/GridGenerator/grid/GridBuilder/GridBuilder.h
index f4c8c453ff3b316d0b094d75ac02653837f249e9..7b2524e78d30f70f5227c8973ca23e1af480f3b1 100644
--- a/src/gpu/GridGenerator/grid/GridBuilder/GridBuilder.h
+++ b/src/gpu/GridGenerator/grid/GridBuilder/GridBuilder.h
@@ -62,7 +62,7 @@ class Grid;
 
 enum class SideType;
 
-namespace gg
+namespace grid_generator
 {
 class BoundaryCondition;
 }
@@ -137,7 +137,7 @@ public:
     virtual bool hasGeometryValues() const                                        = 0;
     virtual void getGeometryValues(real *vx, real *vy, real *vz, int level) const = 0;
 
-    virtual SPtr<gg::BoundaryCondition> getBoundaryCondition(SideType side, uint level) const = 0;
+    virtual SPtr<grid_generator::BoundaryCondition> getBoundaryCondition(SideType side, uint level) const = 0;
 
     virtual SPtr<GeometryBoundaryCondition> getGeometryBoundaryCondition(uint level) const = 0;
 
diff --git a/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp b/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp
index 35d1834985328ea893a10d164d82e85e1b0853e1..881ee424eb466e5e2e79a6dc9535b4b79a2af2c5 100644
--- a/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp
+++ b/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp
@@ -65,12 +65,12 @@ using namespace vf::gpu;
 
 LevelGridBuilder::LevelGridBuilder()
 {
-    this->communicationProcesses[CommunicationDirections::MX] = INVALID_INDEX;
-    this->communicationProcesses[CommunicationDirections::PX] = INVALID_INDEX;
-    this->communicationProcesses[CommunicationDirections::MY] = INVALID_INDEX;
-    this->communicationProcesses[CommunicationDirections::PY] = INVALID_INDEX;
-    this->communicationProcesses[CommunicationDirections::MZ] = INVALID_INDEX;
-    this->communicationProcesses[CommunicationDirections::PZ] = INVALID_INDEX;
+    this->communicationProcesses[communication_directions::MX] = INVALID_INDEX;
+    this->communicationProcesses[communication_directions::PX] = INVALID_INDEX;
+    this->communicationProcesses[communication_directions::MY] = INVALID_INDEX;
+    this->communicationProcesses[communication_directions::PY] = INVALID_INDEX;
+    this->communicationProcesses[communication_directions::MZ] = INVALID_INDEX;
+    this->communicationProcesses[communication_directions::PZ] = INVALID_INDEX;
 }
 
 std::shared_ptr<LevelGridBuilder> LevelGridBuilder::makeShared()
@@ -850,7 +850,7 @@ void LevelGridBuilder::writeArrows(std::string fileName) const
     QLineWriter::writeArrows(fileName, boundaryConditions[getNumberOfGridLevels() - 1]->geometryBoundaryCondition, grids[getNumberOfGridLevels() - 1]);
 }
 
-SPtr<gg::BoundaryCondition> LevelGridBuilder::getBoundaryCondition(SideType side, uint level) const
+SPtr<grid_generator::BoundaryCondition> LevelGridBuilder::getBoundaryCondition(SideType side, uint level) const
 {
     for (auto bc : this->boundaryConditions[level]->slipBoundaryConditions)
         if (bc->isSide(side))
diff --git a/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.h b/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.h
index d0f2bb646725288ba6e4cf86026cef3317d2a005..5cf94a451c85d6ad0b7171cfe0dd0ce9b351b839 100644
--- a/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.h
+++ b/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.h
@@ -162,7 +162,7 @@ public:
 
     void writeArrows(std::string fileName) const override;
 
-    SPtr<gg::BoundaryCondition> getBoundaryCondition( SideType side, uint level ) const override;
+    SPtr<grid_generator::BoundaryCondition> getBoundaryCondition( SideType side, uint level ) const override;
     SPtr<GeometryBoundaryCondition> getGeometryBoundaryCondition(uint level) const override;
 
 protected:
diff --git a/src/gpu/GridGenerator/grid/GridImp.cpp b/src/gpu/GridGenerator/grid/GridImp.cpp
index 9d6237bcddc69f145c26bf9e13df7acc5e3f8aa3..11a7c0ea479e10bad6ccf10c737bbc109eaf9be0 100644
--- a/src/gpu/GridGenerator/grid/GridImp.cpp
+++ b/src/gpu/GridGenerator/grid/GridImp.cpp
@@ -1737,27 +1737,27 @@ int GridImp::getShiftedCommunicationIndex(uint index, int direction)
 
     switch (direction)
     {
-    case CommunicationDirections::MX:
+    case communication_directions::MX:
         y = wrapCoord(y - (this->periodicShiftOnXinY + delta), startY - c1o2*delta, endY + c1o2*delta);
         z = wrapCoord(z - (this->periodicShiftOnXinZ + delta), startZ - c1o2*delta, endZ + c1o2*delta);
         break;
-    case CommunicationDirections::PX:
+    case communication_directions::PX:
         y = wrapCoord(y + (this->periodicShiftOnXinY + delta), startY - c1o2*delta, endY + c1o2*delta);
         z = wrapCoord(z + (this->periodicShiftOnXinZ + delta), startZ - c1o2*delta, endZ + c1o2*delta);
         break;
-    case CommunicationDirections::MY:
+    case communication_directions::MY:
         x = wrapCoord(x - (this->periodicShiftOnYinX + delta), startX - c1o2*delta, endX + c1o2*delta);
         z = wrapCoord(z - (this->periodicShiftOnYinZ + delta), startZ - c1o2*delta, endZ + c1o2*delta);
         break;
-    case CommunicationDirections::PY:
+    case communication_directions::PY:
         x = wrapCoord(x + (this->periodicShiftOnYinX + delta), startX - c1o2*delta, endX + c1o2*delta);
         z = wrapCoord(z + (this->periodicShiftOnYinZ + delta), startZ - c1o2*delta, endZ + c1o2*delta);
         break;
-    case CommunicationDirections::MZ:
+    case communication_directions::MZ:
         x = wrapCoord(x - (this->periodicShiftOnZinX + delta), startX - c1o2*delta, endX + c1o2*delta);
         y = wrapCoord(y - (this->periodicShiftOnZinY + delta), startY - c1o2*delta, endY + c1o2*delta);
         break;
-    case CommunicationDirections::PZ:
+    case communication_directions::PZ:
         x = wrapCoord(x + (this->periodicShiftOnZinX + delta), startX - c1o2*delta, endX + c1o2*delta);
         y = wrapCoord(y + (this->periodicShiftOnZinY + delta), startY - c1o2*delta, endY + c1o2*delta);
         break;
@@ -1788,12 +1788,12 @@ void GridImp::findCommunicationIndices(int direction, SPtr<BoundingBox> subDomai
 
         switch(direction)
         {
-            case CommunicationDirections::MX: findCommunicationIndex( shiftedIndex, x, subDomainBox->minX, direction); break;
-            case CommunicationDirections::PX: findCommunicationIndex( shiftedIndex, x, subDomainBox->maxX, direction); break;
-            case CommunicationDirections::MY: findCommunicationIndex( shiftedIndex, y, subDomainBox->minY, direction); break;
-            case CommunicationDirections::PY: findCommunicationIndex( shiftedIndex, y, subDomainBox->maxY, direction); break;
-            case CommunicationDirections::MZ: findCommunicationIndex( shiftedIndex, z, subDomainBox->minZ, direction); break;
-            case CommunicationDirections::PZ: findCommunicationIndex( shiftedIndex, z, subDomainBox->maxZ, direction); break;
+            case communication_directions::MX: findCommunicationIndex( shiftedIndex, x, subDomainBox->minX, direction); break;
+            case communication_directions::PX: findCommunicationIndex( shiftedIndex, x, subDomainBox->maxX, direction); break;
+            case communication_directions::MY: findCommunicationIndex( shiftedIndex, y, subDomainBox->minY, direction); break;
+            case communication_directions::PY: findCommunicationIndex( shiftedIndex, y, subDomainBox->maxY, direction); break;
+            case communication_directions::MZ: findCommunicationIndex( shiftedIndex, z, subDomainBox->minZ, direction); break;
+            case communication_directions::PZ: findCommunicationIndex( shiftedIndex, z, subDomainBox->maxZ, direction); break;
         }
     }
 }
diff --git a/src/gpu/GridGenerator/grid/MultipleGridBuilderFacade.cpp b/src/gpu/GridGenerator/grid/MultipleGridBuilderFacade.cpp
index 58219392eb68544990c5884143fc763e9a4067e3..b1a6b961e9cad91b0295921a7caf543f680ab986 100644
--- a/src/gpu/GridGenerator/grid/MultipleGridBuilderFacade.cpp
+++ b/src/gpu/GridGenerator/grid/MultipleGridBuilderFacade.cpp
@@ -44,7 +44,7 @@
 #include "grid/GridBuilder/MultipleGridBuilder.h"
 #include "grid/GridDimensions.h"
 
-using namespace CommunicationDirections;
+using namespace communication_directions;
 
 MultipleGridBuilderFacade::MultipleGridBuilderFacade(SPtr<MultipleGridBuilder> gridBuilder,
                                                      SPtr<GridDimensions> gridDimensions,
@@ -168,12 +168,12 @@ void MultipleGridBuilderFacade::configureSubDomainGrids()
     real zMaxCoarseGrid = zValues[index.at(Axis::z) + 1];
 
     // add overlap
-    xMinCoarseGrid -= (hasNeighbors[CommunicationDirections::MX]) ? overlapOfSubdomains.value() : 0;
-    yMinCoarseGrid -= (hasNeighbors[CommunicationDirections::MY]) ? overlapOfSubdomains.value() : 0;
-    zMinCoarseGrid -= (hasNeighbors[CommunicationDirections::MZ]) ? overlapOfSubdomains.value() : 0;
-    xMaxCoarseGrid += (hasNeighbors[CommunicationDirections::PX]) ? overlapOfSubdomains.value() : 0;
-    yMaxCoarseGrid += (hasNeighbors[CommunicationDirections::PY]) ? overlapOfSubdomains.value() : 0;
-    zMaxCoarseGrid += (hasNeighbors[CommunicationDirections::PZ]) ? overlapOfSubdomains.value() : 0;
+    xMinCoarseGrid -= (hasNeighbors[communication_directions::MX]) ? overlapOfSubdomains.value() : 0;
+    yMinCoarseGrid -= (hasNeighbors[communication_directions::MY]) ? overlapOfSubdomains.value() : 0;
+    zMinCoarseGrid -= (hasNeighbors[communication_directions::MZ]) ? overlapOfSubdomains.value() : 0;
+    xMaxCoarseGrid += (hasNeighbors[communication_directions::PX]) ? overlapOfSubdomains.value() : 0;
+    yMaxCoarseGrid += (hasNeighbors[communication_directions::PY]) ? overlapOfSubdomains.value() : 0;
+    zMaxCoarseGrid += (hasNeighbors[communication_directions::PZ]) ? overlapOfSubdomains.value() : 0;
 
     // add coarse grid
     gridBuilder->addCoarseGrid(xMinCoarseGrid, yMinCoarseGrid, zMinCoarseGrid, xMaxCoarseGrid, yMaxCoarseGrid,
@@ -204,27 +204,27 @@ void MultipleGridBuilderFacade::setUpCommunicationNeighbors()
             gridBuilder->findCommunicationIndices(direction);
 
             switch (direction) {
-                case CommunicationDirections::MX:
+                case communication_directions::MX:
                     gridBuilder->setCommunicationProcess(
                         direction, getIndex1D(index.at(Axis::x) - 1, index.at(Axis::y), index.at(Axis::z)));
                     break;
-                case CommunicationDirections::MY:
+                case communication_directions::MY:
                     gridBuilder->setCommunicationProcess(
                         direction, getIndex1D(index.at(Axis::x), index.at(Axis::y) - 1, index.at(Axis::z)));
                     break;
-                case CommunicationDirections::MZ:
+                case communication_directions::MZ:
                     gridBuilder->setCommunicationProcess(
                         direction, getIndex1D(index.at(Axis::x), index.at(Axis::y), index.at(Axis::z) - 1));
                     break;
-                case CommunicationDirections::PX:
+                case communication_directions::PX:
                     gridBuilder->setCommunicationProcess(
                         direction, getIndex1D(index.at(Axis::x) + 1, index.at(Axis::y), index.at(Axis::z)));
                     break;
-                case CommunicationDirections::PY:
+                case communication_directions::PY:
                     gridBuilder->setCommunicationProcess(
                         direction, getIndex1D(index.at(Axis::x), index.at(Axis::y) + 1, index.at(Axis::z)));
                     break;
-                case CommunicationDirections::PZ:
+                case communication_directions::PZ:
                     gridBuilder->setCommunicationProcess(
                         direction, getIndex1D(index.at(Axis::x), index.at(Axis::y), index.at(Axis::z) + 1));
                     break;
@@ -235,12 +235,12 @@ void MultipleGridBuilderFacade::setUpCommunicationNeighbors()
 
 void MultipleGridBuilderFacade::checkForNeighbors()
 {
-    hasNeighbors[CommunicationDirections::MX] = (index.at(Axis::x) > 0);
-    hasNeighbors[CommunicationDirections::MY] = (index.at(Axis::y) > 0);
-    hasNeighbors[CommunicationDirections::MZ] = (index.at(Axis::z) > 0);
-    hasNeighbors[CommunicationDirections::PX] = (index.at(Axis::x) < numberOfSubdomains[Axis::x] - 1);
-    hasNeighbors[CommunicationDirections::PY] = (index.at(Axis::y) < numberOfSubdomains[Axis::y] - 1);
-    hasNeighbors[CommunicationDirections::PZ] = (index.at(Axis::z) < numberOfSubdomains[Axis::z] - 1);
+    hasNeighbors[communication_directions::MX] = (index.at(Axis::x) > 0);
+    hasNeighbors[communication_directions::MY] = (index.at(Axis::y) > 0);
+    hasNeighbors[communication_directions::MZ] = (index.at(Axis::z) > 0);
+    hasNeighbors[communication_directions::PX] = (index.at(Axis::x) < numberOfSubdomains[Axis::x] - 1);
+    hasNeighbors[communication_directions::PY] = (index.at(Axis::y) < numberOfSubdomains[Axis::y] - 1);
+    hasNeighbors[communication_directions::PZ] = (index.at(Axis::z) < numberOfSubdomains[Axis::z] - 1);
 }
 
 void MultipleGridBuilderFacade::addFineGridsToGridBuilder()
diff --git a/src/gpu/GridGenerator/grid/MultipleGridBuilderFacade.h b/src/gpu/GridGenerator/grid/MultipleGridBuilderFacade.h
index 263f0ac15646b468da5cae3ef0dee5397918d435..a8c259653d0f4cffb8d9ff91378ccac0a503084a 100644
--- a/src/gpu/GridGenerator/grid/MultipleGridBuilderFacade.h
+++ b/src/gpu/GridGenerator/grid/MultipleGridBuilderFacade.h
@@ -167,10 +167,10 @@ private:
     void addGeometriesToGridBuilder();
 
     //! \brief check whether a subdomain is the last one in a direction
-    bool isFinalSubdomainInDirection(CommunicationDirections::CommunicationDirection direction) const;
+    bool isFinalSubdomainInDirection(communication_directions::CommunicationDirection direction) const;
 
     //! \brief get 1D index of the final subdomain in a direction, in the other directions it has the same position as the current subdomain
-    uint getIndexOfFinalSubdomainInDirection(CommunicationDirections::CommunicationDirection direction) const;
+    uint getIndexOfFinalSubdomainInDirection(communication_directions::CommunicationDirection direction) const;
 
     //! \brief call the grid builder's setter for a boundary condition
     template <typename function>
@@ -182,7 +182,7 @@ private:
         }
 
         if (sideType == SideType::GEOMETRY ||
-            !hasNeighbors.at(static_cast<CommunicationDirections::CommunicationDirection>(static_cast<int>(sideType)))) {
+            !hasNeighbors.at(static_cast<communication_directions::CommunicationDirection>(static_cast<int>(sideType)))) {
             boundaryConditionFunction();
         }
     }
@@ -212,10 +212,10 @@ private:
 
     //! \brief hasNeighbors, indicates if the current subdomains has a neighbor in a specific direction (computed)
     //! \details use the enum CommunciationDirection to access the data
-    std::map<CommunicationDirections::CommunicationDirection, bool> hasNeighbors = {
-        { CommunicationDirections::MX, false }, { CommunicationDirections::PX, false },
-        { CommunicationDirections::MY, false }, { CommunicationDirections::PY, false },
-        { CommunicationDirections::MZ, false }, { CommunicationDirections::PZ, false }
+    std::map<communication_directions::CommunicationDirection, bool> hasNeighbors = {
+        { communication_directions::MX, false }, { communication_directions::PX, false },
+        { communication_directions::MY, false }, { communication_directions::PY, false },
+        { communication_directions::MZ, false }, { communication_directions::PZ, false }
     };
 
     //! \brief collects fineGrids: uint is the level, Object* the gridShape
diff --git a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.cpp b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.cpp
index f0bf6fb8363bc65c0ede16a310850b6033783807..2606e3c770d25f84185444c8983f666c201692bd 100644
--- a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.cpp
+++ b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.cpp
@@ -157,19 +157,19 @@ void SimulationFileWriter::openFiles(SPtr<GridBuilder> builder)
         valueStreams.push_back(outV);
     }
 
-    if(builder->getCommunicationProcess(CommunicationDirections::MX) != INVALID_INDEX) sendFiles   [CommunicationDirections::MX].open( (path + std::to_string(builder->getCommunicationProcess(CommunicationDirections::MX)) + "Xs.dat").c_str() );
-    if(builder->getCommunicationProcess(CommunicationDirections::PX) != INVALID_INDEX) sendFiles   [CommunicationDirections::PX].open( (path + std::to_string(builder->getCommunicationProcess(CommunicationDirections::PX)) + "Xs.dat").c_str() );
-    if(builder->getCommunicationProcess(CommunicationDirections::MY) != INVALID_INDEX) sendFiles   [CommunicationDirections::MY].open( (path + std::to_string(builder->getCommunicationProcess(CommunicationDirections::MY)) + "Ys.dat").c_str() );
-    if(builder->getCommunicationProcess(CommunicationDirections::PY) != INVALID_INDEX) sendFiles   [CommunicationDirections::PY].open( (path + std::to_string(builder->getCommunicationProcess(CommunicationDirections::PY)) + "Ys.dat").c_str() );
-    if(builder->getCommunicationProcess(CommunicationDirections::MZ) != INVALID_INDEX) sendFiles   [CommunicationDirections::MZ].open( (path + std::to_string(builder->getCommunicationProcess(CommunicationDirections::MZ)) + "Zs.dat").c_str() );
-    if(builder->getCommunicationProcess(CommunicationDirections::PZ) != INVALID_INDEX) sendFiles   [CommunicationDirections::PZ].open( (path + std::to_string(builder->getCommunicationProcess(CommunicationDirections::PZ)) + "Zs.dat").c_str() );
-
-    if(builder->getCommunicationProcess(CommunicationDirections::MX) != INVALID_INDEX) receiveFiles[CommunicationDirections::MX].open( (path + std::to_string(builder->getCommunicationProcess(CommunicationDirections::MX)) + "Xr.dat").c_str() );
-    if(builder->getCommunicationProcess(CommunicationDirections::PX) != INVALID_INDEX) receiveFiles[CommunicationDirections::PX].open( (path + std::to_string(builder->getCommunicationProcess(CommunicationDirections::PX)) + "Xr.dat").c_str() );
-    if(builder->getCommunicationProcess(CommunicationDirections::MY) != INVALID_INDEX) receiveFiles[CommunicationDirections::MY].open( (path + std::to_string(builder->getCommunicationProcess(CommunicationDirections::MY)) + "Yr.dat").c_str() );
-    if(builder->getCommunicationProcess(CommunicationDirections::PY) != INVALID_INDEX) receiveFiles[CommunicationDirections::PY].open( (path + std::to_string(builder->getCommunicationProcess(CommunicationDirections::PY)) + "Yr.dat").c_str() );
-    if(builder->getCommunicationProcess(CommunicationDirections::MZ) != INVALID_INDEX) receiveFiles[CommunicationDirections::MZ].open( (path + std::to_string(builder->getCommunicationProcess(CommunicationDirections::MZ)) + "Zr.dat").c_str() );
-    if(builder->getCommunicationProcess(CommunicationDirections::PZ) != INVALID_INDEX) receiveFiles[CommunicationDirections::PZ].open( (path + std::to_string(builder->getCommunicationProcess(CommunicationDirections::PZ)) + "Zr.dat").c_str() );
+    if(builder->getCommunicationProcess(communication_directions::MX) != INVALID_INDEX) sendFiles   [communication_directions::MX].open( (path + std::to_string(builder->getCommunicationProcess(communication_directions::MX)) + "Xs.dat").c_str() );
+    if(builder->getCommunicationProcess(communication_directions::PX) != INVALID_INDEX) sendFiles   [communication_directions::PX].open( (path + std::to_string(builder->getCommunicationProcess(communication_directions::PX)) + "Xs.dat").c_str() );
+    if(builder->getCommunicationProcess(communication_directions::MY) != INVALID_INDEX) sendFiles   [communication_directions::MY].open( (path + std::to_string(builder->getCommunicationProcess(communication_directions::MY)) + "Ys.dat").c_str() );
+    if(builder->getCommunicationProcess(communication_directions::PY) != INVALID_INDEX) sendFiles   [communication_directions::PY].open( (path + std::to_string(builder->getCommunicationProcess(communication_directions::PY)) + "Ys.dat").c_str() );
+    if(builder->getCommunicationProcess(communication_directions::MZ) != INVALID_INDEX) sendFiles   [communication_directions::MZ].open( (path + std::to_string(builder->getCommunicationProcess(communication_directions::MZ)) + "Zs.dat").c_str() );
+    if(builder->getCommunicationProcess(communication_directions::PZ) != INVALID_INDEX) sendFiles   [communication_directions::PZ].open( (path + std::to_string(builder->getCommunicationProcess(communication_directions::PZ)) + "Zs.dat").c_str() );
+
+    if(builder->getCommunicationProcess(communication_directions::MX) != INVALID_INDEX) receiveFiles[communication_directions::MX].open( (path + std::to_string(builder->getCommunicationProcess(communication_directions::MX)) + "Xr.dat").c_str() );
+    if(builder->getCommunicationProcess(communication_directions::PX) != INVALID_INDEX) receiveFiles[communication_directions::PX].open( (path + std::to_string(builder->getCommunicationProcess(communication_directions::PX)) + "Xr.dat").c_str() );
+    if(builder->getCommunicationProcess(communication_directions::MY) != INVALID_INDEX) receiveFiles[communication_directions::MY].open( (path + std::to_string(builder->getCommunicationProcess(communication_directions::MY)) + "Yr.dat").c_str() );
+    if(builder->getCommunicationProcess(communication_directions::PY) != INVALID_INDEX) receiveFiles[communication_directions::PY].open( (path + std::to_string(builder->getCommunicationProcess(communication_directions::PY)) + "Yr.dat").c_str() );
+    if(builder->getCommunicationProcess(communication_directions::MZ) != INVALID_INDEX) receiveFiles[communication_directions::MZ].open( (path + std::to_string(builder->getCommunicationProcess(communication_directions::MZ)) + "Zr.dat").c_str() );
+    if(builder->getCommunicationProcess(communication_directions::PZ) != INVALID_INDEX) receiveFiles[communication_directions::PZ].open( (path + std::to_string(builder->getCommunicationProcess(communication_directions::PZ)) + "Zr.dat").c_str() );
 
     numberNodes_File.open((path + simulationFileNames::numberNodes).c_str(), std::ios::out | std::ios::binary);
     LBMvsSI_File.open((path + simulationFileNames::LBMvsSI).c_str(), std::ios::out | std::ios::binary);
@@ -608,7 +608,7 @@ void SimulationFileWriter::writeBoundaryShort(std::vector<real> boundary, int rb
     *valueStreams[rb] << "\n";
 }
 
-void SimulationFileWriter::writeBoundaryShort(SPtr<Grid> grid, SPtr<gg::BoundaryCondition> boundaryCondition, uint side)
+void SimulationFileWriter::writeBoundaryShort(SPtr<Grid> grid, SPtr<grid_generator::BoundaryCondition> boundaryCondition, uint side)
 {
     uint numberOfBoundaryNodes = (uint)boundaryCondition->indices.size();
 
@@ -738,19 +738,19 @@ void SimulationFileWriter::closeFiles()
         valueStreams[rb]->close();
     }
 
-    sendFiles[CommunicationDirections::MX].close();
-    sendFiles[CommunicationDirections::PX].close();
-    sendFiles[CommunicationDirections::MY].close();
-    sendFiles[CommunicationDirections::PY].close();
-    sendFiles[CommunicationDirections::MZ].close();
-    sendFiles[CommunicationDirections::PZ].close();
+    sendFiles[communication_directions::MX].close();
+    sendFiles[communication_directions::PX].close();
+    sendFiles[communication_directions::MY].close();
+    sendFiles[communication_directions::PY].close();
+    sendFiles[communication_directions::MZ].close();
+    sendFiles[communication_directions::PZ].close();
     
-    receiveFiles[CommunicationDirections::MX].close();
-    receiveFiles[CommunicationDirections::PX].close();
-    receiveFiles[CommunicationDirections::MY].close();
-    receiveFiles[CommunicationDirections::PY].close();
-    receiveFiles[CommunicationDirections::MZ].close();
-    receiveFiles[CommunicationDirections::PZ].close();
+    receiveFiles[communication_directions::MX].close();
+    receiveFiles[communication_directions::PX].close();
+    receiveFiles[communication_directions::MY].close();
+    receiveFiles[communication_directions::PY].close();
+    receiveFiles[communication_directions::MZ].close();
+    receiveFiles[communication_directions::PZ].close();
 
     numberNodes_File.close();
     LBMvsSI_File.close();
diff --git a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.h b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.h
index b860fbc904e62d983d7387b15cea465f353a3570..86f2edca3dee50a37160770f24ae8f5e18f02962 100644
--- a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.h
+++ b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.h
@@ -46,7 +46,7 @@
 class UnstructuredGridBuilder;
 class GridBuilder;
 class Grid;
-namespace gg
+namespace grid_generator
 {
 class BoundaryCondition;
 }
@@ -85,7 +85,7 @@ private:
     static void fillRBForNode(int index, int direction, int directionSign, int rb, std::vector<std::vector<std::vector<real> > > &qs, SPtr<Grid> grid);
     static void writeBoundary(std::vector<real> boundary, int rb);
     static void writeBoundaryShort(std::vector<real> boundary, int rb);
-    static void writeBoundaryShort(SPtr<Grid> grid, SPtr<gg::BoundaryCondition> boundaryCondition, uint side);
+    static void writeBoundaryShort(SPtr<Grid> grid, SPtr<grid_generator::BoundaryCondition> boundaryCondition, uint side);
 
     static void writeCommunicationFiles(SPtr<GridBuilder> builder);
 
diff --git a/src/gpu/GridGenerator/utilities/communication.cpp b/src/gpu/GridGenerator/utilities/communication.cpp
index 2501b0af6e595ff586014c745a88c62f1a68897f..07c70045792eecc3e19211348054e48231a0e14a 100644
--- a/src/gpu/GridGenerator/utilities/communication.cpp
+++ b/src/gpu/GridGenerator/utilities/communication.cpp
@@ -31,21 +31,21 @@
 //! \{
 #include "communication.h"
 
-using namespace CommunicationDirections;
+using namespace communication_directions;
 
-bool CommunicationDirections::isNegative(CommunicationDirection direction)
+bool communication_directions::isNegative(CommunicationDirection direction)
 {
     return direction == CommunicationDirection::MX || direction == CommunicationDirection::MY ||
            direction == CommunicationDirection::MZ;
 }
 
-bool CommunicationDirections::isPositive(CommunicationDirection direction)
+bool communication_directions::isPositive(CommunicationDirection direction)
 {
     return direction == CommunicationDirection::PX || direction == CommunicationDirection::PY ||
            direction == CommunicationDirection::PZ;
 }
 
-CommunicationDirection CommunicationDirections::getNegativeDirectionAlongAxis(Axis axis)
+CommunicationDirection communication_directions::getNegativeDirectionAlongAxis(Axis axis)
 {
     switch (axis) {
         case Axis::x:
@@ -62,7 +62,7 @@ CommunicationDirection CommunicationDirections::getNegativeDirectionAlongAxis(Ax
     }
 }
 
-CommunicationDirection CommunicationDirections::getPositiveDirectionAlongAxis(Axis axis)
+CommunicationDirection communication_directions::getPositiveDirectionAlongAxis(Axis axis)
 {
     switch (axis) {
         case Axis::x:
diff --git a/src/gpu/GridGenerator/utilities/communication.h b/src/gpu/GridGenerator/utilities/communication.h
index 4f96d9a2daf013473a2d052bddf3572e6fb54d03..bcce4eea915715852660f630f0f3a4d804d8c70f 100644
--- a/src/gpu/GridGenerator/utilities/communication.h
+++ b/src/gpu/GridGenerator/utilities/communication.h
@@ -39,7 +39,7 @@
 #include "grid/BoundaryConditions/Side.h"
 
 // has to have the same order as SideType in Side.h
-namespace CommunicationDirections
+namespace communication_directions
 {
 enum CommunicationDirection {
     MX = static_cast<int>(SideType::MX),
diff --git a/src/gpu/core/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp b/src/gpu/core/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp
index 71e4af61df120ea42ad2f6cf49fea460f4c9c78d..5b1acba8860e0859c0a066b3d0a0fd9d673a4273 100644
--- a/src/gpu/core/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp
+++ b/src/gpu/core/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp
@@ -563,7 +563,7 @@ void GridGenerator::initalValuesDomainDecompostion()
                 continue;
 
             for (uint level = 0; level < builder->getNumberOfGridLevels(); level++) {
-                if (direction == CommunicationDirections::MX || direction == CommunicationDirections::PX) {
+                if (direction == communication_directions::MX || direction == communication_directions::PX) {
                     int tempSend = builder->getNumberOfSendIndices(direction, level);
                     int tempRecv = builder->getNumberOfReceiveIndices(direction, level);
 
@@ -630,7 +630,7 @@ void GridGenerator::initalValuesDomainDecompostion()
                     }
                 }
 
-                if (direction == CommunicationDirections::MY || direction == CommunicationDirections::PY) {
+                if (direction == communication_directions::MY || direction == communication_directions::PY) {
                     int tempSend = builder->getNumberOfSendIndices(direction, level);
                     int tempRecv = builder->getNumberOfReceiveIndices(direction, level);
 
@@ -697,7 +697,7 @@ void GridGenerator::initalValuesDomainDecompostion()
                     }
                 }
 
-                if (direction == CommunicationDirections::MZ || direction == CommunicationDirections::PZ) {
+                if (direction == communication_directions::MZ || direction == communication_directions::PZ) {
                     int tempSend = builder->getNumberOfSendIndices(direction, level);
                     int tempRecv = builder->getNumberOfReceiveIndices(direction, level);
 
diff --git a/src/gpu/core/Output/EdgeNodeDebugWriter.hpp b/src/gpu/core/Output/EdgeNodeDebugWriter.hpp
index bc3199d75578fe91877969a1c94e8a1e9d7cc9f2..36b5b4351236eb47c137357e9ca5272c2401ce0b 100644
--- a/src/gpu/core/Output/EdgeNodeDebugWriter.hpp
+++ b/src/gpu/core/Output/EdgeNodeDebugWriter.hpp
@@ -48,7 +48,7 @@
 #include "Calculation/Calculation.h"
 #include "Parameter/Parameter.h"
 
-namespace EdgeNodeDebugWriter
+namespace edge_node_debug_writer
 {
 
 void addCoordinatesToNodeVector(SPtr<LBMSimulationParameter> parH, std::vector<UbTupleFloat3>& nodesVec,
@@ -131,7 +131,7 @@ void writeEdgeNodesXZ_Recv(SPtr<Parameter> para, int processID = 0)
         WbWriterVtkXmlBinary::getInstance()->writeNodesWithNodeData(filenameVec, nodesVec, datanames, nodedata);
     }
 }
-} // namespace EdgeNodeDebugWriter
+} // namespace edge_node_debug_writer
 
 #endif
 
diff --git a/src/gpu/core/Output/InterfaceDebugWriter.hpp b/src/gpu/core/Output/InterfaceDebugWriter.hpp
index 8a7676611f6043453d64ad4ef51b34cb33767121..87fe804ef1c193e46078341025a2cc573a7634e1 100644
--- a/src/gpu/core/Output/InterfaceDebugWriter.hpp
+++ b/src/gpu/core/Output/InterfaceDebugWriter.hpp
@@ -45,7 +45,7 @@
 #include "basics/utilities/UbSystem.h"
 #include <basics/writer/WbWriterVtkXmlBinary.h>
 
-namespace InterfaceDebugWriter
+namespace interface_debug_writer
 {
 
 void writeGridInterfaceLines(Parameter *para, int level, const uint *coarse, const uint *fine, uint numberOfNodes,
@@ -933,7 +933,7 @@ void writeRecvNodesStream(Parameter *para, int processID = 0)
     }
 }
 
-} // namespace InterfaceDebugWriter
+} // namespace interface_debug_writer
 #endif
 
 //! \}
diff --git a/src/gpu/core/Output/NeighborDebugWriter.cpp b/src/gpu/core/Output/NeighborDebugWriter.cpp
index b28e7dc77f7e538bebdb20589ca4a4868fee8b53..6c710461c49ec9d4c0075cdbee99669e77ef012b 100644
--- a/src/gpu/core/Output/NeighborDebugWriter.cpp
+++ b/src/gpu/core/Output/NeighborDebugWriter.cpp
@@ -44,7 +44,7 @@
 #include "StringUtilities/StringUtil.h"
 #include "Utilities/FindNeighbors.h"
 
-namespace NeighborDebugWriter
+namespace neighbor_debug_writer
 {
 
 void writeNeighborLinkLinesForDirection(LBMSimulationParameter* parH, int direction, const std::string& filePath, WbWriter* writer)
@@ -129,6 +129,6 @@ void writeBoundaryConditionNeighbors(QforBoundaryConditions* boundaryCondition,
                                     filePathBase);
 }
 
-} // namespace NeighborDebugWriter
+} // namespace neighbor_debug_writer
 
 //! \}
diff --git a/src/gpu/core/Output/NeighborDebugWriter.h b/src/gpu/core/Output/NeighborDebugWriter.h
index e4b9cdf7f34620d060785af13696418a149de68c..7d2e74396d000f2ad5f375817290c5f51456ad50 100644
--- a/src/gpu/core/Output/NeighborDebugWriter.h
+++ b/src/gpu/core/Output/NeighborDebugWriter.h
@@ -43,7 +43,7 @@ class WbWriter;
 struct QforDirectionalBoundaryCondition;
 struct QforBoundaryConditions;
 
-namespace NeighborDebugWriter
+namespace neighbor_debug_writer
 {
 
 //! \brief Write the links to the neighbors as lines for all 27 directions.
@@ -59,7 +59,7 @@ void writeBoundaryConditionNeighbors(QforDirectionalBoundaryCondition* boundaryC
 void writeBoundaryConditionNeighbors(QforBoundaryConditions* boundaryCondition, LBMSimulationParameter* parH,
                                      std::string& filePathBase);
 
-} // namespace NeighborDebugWriter
+} // namespace neighbor_debug_writer
 
 #endif
 
diff --git a/src/gpu/core/Output/QDebugVtkWriter.hpp b/src/gpu/core/Output/QDebugVtkWriter.hpp
index 06b9abe449f249c2770954a905a90737ac9dead1..11396462142bde07acf3354b8d98cb357576174b 100644
--- a/src/gpu/core/Output/QDebugVtkWriter.hpp
+++ b/src/gpu/core/Output/QDebugVtkWriter.hpp
@@ -48,7 +48,7 @@
 #include "gpu/core/Parameter/Parameter.h"
 #include "gpu/core/Utilities/FindNeighbors.h"
 
-namespace QDebugVtkWriter
+namespace q_debug_vtk_writer
 {
 
 using namespace vf::lbm::dir;
@@ -123,7 +123,7 @@ inline void writeQLinesDebug(Parameter *para, QforBoundaryConditions &boundaryQ,
     writeQLines(para->getParH(level).get(), boundaryQ, filePath, writer);
 }
 
-} // namespace QDebugVtkWriter
+} // namespace q_debug_vtk_writer
 
 #endif
 
diff --git a/src/gpu/core/Output/QDebugWriter.hpp b/src/gpu/core/Output/QDebugWriter.hpp
index d866e7f118caeab30165627067b9801604fb0c0b..de836b9a8280ec80c965187c8ab9196ed87e9637 100644
--- a/src/gpu/core/Output/QDebugWriter.hpp
+++ b/src/gpu/core/Output/QDebugWriter.hpp
@@ -48,7 +48,7 @@
 #include "Calculation/Calculation.h"
 #include "Parameter/Parameter.h"
 
-namespace QDebugWriter
+namespace q_debug_writer
 {
 
 void writeQValues(QforBoundaryConditions& Q, int* k, int kq, const std::string& name)
@@ -94,7 +94,7 @@ void writeQValues(QforBoundaryConditions& Q, int* k, int kq, const std::string&
     outQ->close();
 }
 
-} // namespace QDebugWriter
+} // namespace q_debug_writer
 
 #endif
 
diff --git a/src/gpu/core/Output/UnstructuredGridWriter.hpp b/src/gpu/core/Output/UnstructuredGridWriter.hpp
index 983a3511fb8d18f7712a62ef10ce85a2d869756c..852a4f7ddba7cbfd29a18bd3283ba7a9ee1806c2 100644
--- a/src/gpu/core/Output/UnstructuredGridWriter.hpp
+++ b/src/gpu/core/Output/UnstructuredGridWriter.hpp
@@ -51,7 +51,7 @@
 #include "Calculation/Calculation.h"
 #include "Parameter/Parameter.h"
 
-namespace UnstructuredGridWriter
+namespace unstructured_grid_writer
 {
 
 void writeUnstructuredGrid(Parameter* para, int level, std::string& fname, std::string& filenameVec2)
diff --git a/src/gpu/core/Restart/RestartObject.cpp b/src/gpu/core/Restart/RestartObject.cpp
index 93eaf86afcd41278f67be064ae15a404daf805b7..7e54ffb2c58603731e9a8893c75a97dbc5af7b30 100644
--- a/src/gpu/core/Restart/RestartObject.cpp
+++ b/src/gpu/core/Restart/RestartObject.cpp
@@ -64,7 +64,7 @@ void RestartObject::serialize(const std::string &filename, const std::shared_ptr
         fs.push_back(vec);
 
         for (size_t index2 = 0; index2 < (para->getD3Qxx() * para->getParH(index1)->numberOfNodes); index2++) {
-            if (UbMath::isNaN(para->getParH(index1)->distributions.f[0][index2])) {
+            if (ub_math::isNaN(para->getParH(index1)->distributions.f[0][index2])) {
                 fs[index1].push_back((real)0.0);
             } else {
                 fs[index1].push_back(para->getParH(index1)->distributions.f[0][index2]);
@@ -104,9 +104,9 @@ void ASCIIRestartObject::serialize_internal(const std::string &filename)
 
     if (!stream) {
         stream.clear();
-        std::string path = UbSystem::getPathFromString(filename);
+        std::string path = ub_system::getPathFromString(filename);
         if (!path.empty()) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             stream.open(filename.c_str());
         }
 
@@ -157,9 +157,9 @@ void BinaryRestartObject::serialize_internal(const std::string &filename)
 
     if (!stream) {
         stream.clear();
-        std::string path = UbSystem::getPathFromString(filename);
+        std::string path = ub_system::getPathFromString(filename);
         if (!path.empty()) {
-            UbSystem::makeDirectory(path);
+            ub_system::makeDirectory(path);
             stream.open(filename.c_str());
         }
 
diff --git a/src/gpu/core/Utilities/ScalingUtilities.h b/src/gpu/core/Utilities/ScalingUtilities.h
index c0cfe5f9d91db423394130694074919396c47b90..70275f43423e62ef0703eac85cdf8c002b8f239e 100644
--- a/src/gpu/core/Utilities/ScalingUtilities.h
+++ b/src/gpu/core/Utilities/ScalingUtilities.h
@@ -26,7 +26,7 @@
 //  SPDX-License-Identifier: GPL-3.0-or-later
 //  SPDX-FileCopyrightText: Copyright © VirtualFluids Project contributors, see AUTHORS.md in root folder
 //
-//! \addtogroup gpu_Utilities Utilities
+//! \addtogroup gpu_Utilities utilities
 //! \ingroup gpu_core core
 //! \{
 //! \author Martin Schoenherr, Anna Wellmann
diff --git a/src/parallel/transmitter/TbTransmitterMpiPool.h b/src/parallel/transmitter/TbTransmitterMpiPool.h
index e2fa91e9a149f264ed90b078f16c8ee3f2f44b63..3275e7a6f96a382bb8ddfe8586b6768a337b63a2 100644
--- a/src/parallel/transmitter/TbTransmitterMpiPool.h
+++ b/src/parallel/transmitter/TbTransmitterMpiPool.h
@@ -297,8 +297,8 @@ protected:
                 if (it == this->cbVectorMap.end())
                     throw UbException(UB_EXARGS, "map ist leer");
                 else if (it->first != vectorKey)
-                    throw UbException(UB_EXARGS, "vectorKey = " + UbSystem::toString(vectorKey) +
-                                                     " nicht vorhanden it->first =" + UbSystem::toString(it->first));
+                    throw UbException(UB_EXARGS, "vectorKey = " + ub_system::toString(vectorKey) +
+                                                     " nicht vorhanden it->first =" + ub_system::toString(it->first));
 
                 this->setCbVectorData(*it->second /*vec*/, vectorKey, startIndexInPool, dataSize);
             }
@@ -515,7 +515,7 @@ public:
     std::string toString() const override
     {
         return "TbCbVectorSenderMpiPool<" + (std::string) typeid(T).name() + " to rank (tag)" +
-               UbSystem::toString(getSendTbRank()) + "(" + UbSystem::toString(getSendTbTag()) + ")";
+               ub_system::toString(getSendTbRank()) + "(" + ub_system::toString(getSendTbTag()) + ")";
     }
 
 protected:
@@ -564,7 +564,7 @@ public:
     std::string toString() const override
     {
         return "TbCbVectorReceiverMpiPool<" + (std::string) typeid(T).name() + " to rank (tag)" +
-               UbSystem::toString(getRecvFromRank()) + "(" + UbSystem::toString(getRecvFromTag()) + ")";
+               ub_system::toString(getRecvFromRank()) + "(" + ub_system::toString(getRecvFromTag()) + ")";
     }
 
 protected:
diff --git a/tests/unit-tests/gpu/GridGenerator/grid/GridImpTest.cpp b/tests/unit-tests/gpu/GridGenerator/grid/GridImpTest.cpp
index ad631e012416e3c3bafbbc7981c99e44927d1d33..01df8a6ae149f29a47e941a4433c7fcf6c3542fa 100644
--- a/tests/unit-tests/gpu/GridGenerator/grid/GridImpTest.cpp
+++ b/tests/unit-tests/gpu/GridGenerator/grid/GridImpTest.cpp
@@ -865,7 +865,7 @@ TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, PX)
 
     gridBuilder->buildGrids();
     auto grid = gridBuilder->getGrid(0);
-    grid->findCommunicationIndices(CommunicationDirections::PX, subdomain, direction!=6);
+    grid->findCommunicationIndices(communication_directions::PX, subdomain, direction!=6);
     uint nodeIndex=0;
     for(uint iz=1; iz<grid->getNumberOfNodesZ()-1; iz++){
     for(uint iy=1; iy<grid->getNumberOfNodesY()-1; iy++){
@@ -875,12 +875,12 @@ TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, PX)
             y = wrap(y+shift, (ny+2)*dx);
         if(direction==1)
             z = wrap(z+shift, (nz+2)*dx);
-        compareNodeToCoordinates(grid, grid->getSendIndex(CommunicationDirections::PX, nodeIndex), x, y, z, "Send");
-        compareNodeToCoordinates(grid, grid->getReceiveIndex(CommunicationDirections::PX, nodeIndex), x+dx, y, z, "Receive");
+        compareNodeToCoordinates(grid, grid->getSendIndex(communication_directions::PX, nodeIndex), x, y, z, "Send");
+        compareNodeToCoordinates(grid, grid->getReceiveIndex(communication_directions::PX, nodeIndex), x+dx, y, z, "Receive");
         nodeIndex++;
     }}; 
-    EXPECT_EQ(nodeIndex, grid->getNumberOfSendNodes(CommunicationDirections::PX));
-    EXPECT_EQ(nodeIndex, grid->getNumberOfReceiveNodes(CommunicationDirections::PX));
+    EXPECT_EQ(nodeIndex, grid->getNumberOfSendNodes(communication_directions::PX));
+    EXPECT_EQ(nodeIndex, grid->getNumberOfReceiveNodes(communication_directions::PX));
 }
 
 TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, MX)
@@ -898,7 +898,7 @@ TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, MX)
     }
     gridBuilder->buildGrids();
     auto grid = gridBuilder->getGrid(0);
-    grid->findCommunicationIndices(CommunicationDirections::MX, subdomain, direction!=6);
+    grid->findCommunicationIndices(communication_directions::MX, subdomain, direction!=6);
     uint nodeIndex=0;
     for(uint iz=1; iz<grid->getNumberOfNodesZ()-1; iz++){
     for(uint iy=1; iy<grid->getNumberOfNodesY()-1; iy++){
@@ -908,12 +908,12 @@ TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, MX)
             y = wrap(y-shift, (ny+2)*dx);
         if(direction==1)
             z = wrap(z-shift, (nz+2)*dx);
-        compareNodeToCoordinates(grid, grid->getSendIndex(CommunicationDirections::MX, nodeIndex), x, y, z, "Send");
-        compareNodeToCoordinates(grid, grid->getReceiveIndex(CommunicationDirections::MX, nodeIndex), x-dx, y, z, "Receive");
+        compareNodeToCoordinates(grid, grid->getSendIndex(communication_directions::MX, nodeIndex), x, y, z, "Send");
+        compareNodeToCoordinates(grid, grid->getReceiveIndex(communication_directions::MX, nodeIndex), x-dx, y, z, "Receive");
         nodeIndex++;
     }};
-    EXPECT_EQ(nodeIndex, grid->getNumberOfSendNodes(CommunicationDirections::MX));
-    EXPECT_EQ(nodeIndex, grid->getNumberOfReceiveNodes(CommunicationDirections::MX));
+    EXPECT_EQ(nodeIndex, grid->getNumberOfSendNodes(communication_directions::MX));
+    EXPECT_EQ(nodeIndex, grid->getNumberOfReceiveNodes(communication_directions::MX));
 }
 
 TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, PY)
@@ -933,7 +933,7 @@ TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, PY)
 
     gridBuilder->buildGrids();
     auto grid = gridBuilder->getGrid(0);
-    grid->findCommunicationIndices(CommunicationDirections::PY, subdomain, direction!=6);
+    grid->findCommunicationIndices(communication_directions::PY, subdomain, direction!=6);
     uint nodeIndex=0;
     for(uint iz=1; iz<grid->getNumberOfNodesZ()-1; iz++){
     for(uint ix=1; ix<grid->getNumberOfNodesX()-1; ix++){
@@ -943,12 +943,12 @@ TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, PY)
             x = wrap(x+shift, (nx+2)*dx);
         if(direction==3)
             z = wrap(z+shift, (nz+2)*dx);
-        compareNodeToCoordinates(grid, grid->getSendIndex(CommunicationDirections::PY, nodeIndex), x, y, z, "Send");
-        compareNodeToCoordinates(grid, grid->getReceiveIndex(CommunicationDirections::PY, nodeIndex), x, y+dx, z, "Receive");
+        compareNodeToCoordinates(grid, grid->getSendIndex(communication_directions::PY, nodeIndex), x, y, z, "Send");
+        compareNodeToCoordinates(grid, grid->getReceiveIndex(communication_directions::PY, nodeIndex), x, y+dx, z, "Receive");
         nodeIndex++;
     }}; 
-    EXPECT_EQ(nodeIndex, grid->getNumberOfSendNodes(CommunicationDirections::PY));
-    EXPECT_EQ(nodeIndex, grid->getNumberOfReceiveNodes(CommunicationDirections::PY));
+    EXPECT_EQ(nodeIndex, grid->getNumberOfSendNodes(communication_directions::PY));
+    EXPECT_EQ(nodeIndex, grid->getNumberOfReceiveNodes(communication_directions::PY));
 }
 
 TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, MY)
@@ -966,7 +966,7 @@ TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, MY)
     }
     gridBuilder->buildGrids();
     auto grid = gridBuilder->getGrid(0);
-    grid->findCommunicationIndices(CommunicationDirections::MY, subdomain, direction!=6);
+    grid->findCommunicationIndices(communication_directions::MY, subdomain, direction!=6);
     uint nodeIndex=0;
     for(uint iz=1; iz<grid->getNumberOfNodesZ()-1; iz++){
     for(uint ix=1; ix<grid->getNumberOfNodesX()-1; ix++){
@@ -976,12 +976,12 @@ TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, MY)
             x = wrap(x-shift, (nx+2)*dx);
         if(direction==3)
             z = wrap(z-shift, (nz+2)*dx);
-        compareNodeToCoordinates(grid, grid->getSendIndex(CommunicationDirections::MY, nodeIndex), x, y, z, "Send");
-        compareNodeToCoordinates(grid, grid->getReceiveIndex(CommunicationDirections::MY, nodeIndex), x, y-dx, z, "Receive");
+        compareNodeToCoordinates(grid, grid->getSendIndex(communication_directions::MY, nodeIndex), x, y, z, "Send");
+        compareNodeToCoordinates(grid, grid->getReceiveIndex(communication_directions::MY, nodeIndex), x, y-dx, z, "Receive");
         nodeIndex++;
     }};
-    EXPECT_EQ(nodeIndex, grid->getNumberOfSendNodes(CommunicationDirections::MY));
-    EXPECT_EQ(nodeIndex, grid->getNumberOfReceiveNodes(CommunicationDirections::MY));
+    EXPECT_EQ(nodeIndex, grid->getNumberOfSendNodes(communication_directions::MY));
+    EXPECT_EQ(nodeIndex, grid->getNumberOfReceiveNodes(communication_directions::MY));
 }
 
 TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, PZ)
@@ -1001,7 +1001,7 @@ TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, PZ)
 
     gridBuilder->buildGrids();
     auto grid = gridBuilder->getGrid(0);
-    grid->findCommunicationIndices(CommunicationDirections::PZ, subdomain, direction!=6);
+    grid->findCommunicationIndices(communication_directions::PZ, subdomain, direction!=6);
     uint nodeIndex=0;
     for(uint iy=1; iy<grid->getNumberOfNodesY()-1; iy++){
     for(uint ix=1; ix<grid->getNumberOfNodesX()-1; ix++){
@@ -1011,12 +1011,12 @@ TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, PZ)
             x = wrap(x+shift, (nx+2)*dx);
         if(direction==5)
             y = wrap(y+shift, (ny+2)*dx);
-        compareNodeToCoordinates(grid, grid->getSendIndex(CommunicationDirections::PZ, nodeIndex), x, y, z, "Send");
-        compareNodeToCoordinates(grid, grid->getReceiveIndex(CommunicationDirections::PZ, nodeIndex), x, y, z+dx, "Receive");
+        compareNodeToCoordinates(grid, grid->getSendIndex(communication_directions::PZ, nodeIndex), x, y, z, "Send");
+        compareNodeToCoordinates(grid, grid->getReceiveIndex(communication_directions::PZ, nodeIndex), x, y, z+dx, "Receive");
         nodeIndex++;
     }}; 
-    EXPECT_EQ(nodeIndex, grid->getNumberOfSendNodes(CommunicationDirections::PZ));
-    EXPECT_EQ(nodeIndex, grid->getNumberOfReceiveNodes(CommunicationDirections::PZ));
+    EXPECT_EQ(nodeIndex, grid->getNumberOfSendNodes(communication_directions::PZ));
+    EXPECT_EQ(nodeIndex, grid->getNumberOfReceiveNodes(communication_directions::PZ));
 }
 
 TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, MZ)
@@ -1034,7 +1034,7 @@ TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, MZ)
     }
     gridBuilder->buildGrids();
     auto grid = gridBuilder->getGrid(0);
-    grid->findCommunicationIndices(CommunicationDirections::MZ, subdomain, direction!=6);
+    grid->findCommunicationIndices(communication_directions::MZ, subdomain, direction!=6);
     uint nodeIndex=0;
     for (uint iy = 1; iy < grid->getNumberOfNodesY() - 1; iy++) {
         for (uint ix = 1; ix < grid->getNumberOfNodesX() - 1; ix++) {
@@ -1044,14 +1044,14 @@ TEST_P(PeriodicBoundaryShiftMultiGPUIntegrationTest, MZ)
             x = wrap(x - shift, (nx + 2) * dx);
         if (direction == 5)
             y = wrap(y - shift, (ny + 2) * dx);
-        compareNodeToCoordinates(grid, grid->getSendIndex(CommunicationDirections::MZ, nodeIndex), x, y, z, "Send");
-        compareNodeToCoordinates(grid, grid->getReceiveIndex(CommunicationDirections::MZ, nodeIndex), x, y, z - dx,
+        compareNodeToCoordinates(grid, grid->getSendIndex(communication_directions::MZ, nodeIndex), x, y, z, "Send");
+        compareNodeToCoordinates(grid, grid->getReceiveIndex(communication_directions::MZ, nodeIndex), x, y, z - dx,
                                  "Receive");
         nodeIndex++;
         }
     };
-    EXPECT_EQ(nodeIndex, grid->getNumberOfSendNodes(CommunicationDirections::MZ));
-    EXPECT_EQ(nodeIndex, grid->getNumberOfReceiveNodes(CommunicationDirections::MZ));
+    EXPECT_EQ(nodeIndex, grid->getNumberOfSendNodes(communication_directions::MZ));
+    EXPECT_EQ(nodeIndex, grid->getNumberOfReceiveNodes(communication_directions::MZ));
 }
 INSTANTIATE_TEST_SUITE_P(PeriodicBoundaryShiftMultiGPUIntegration, PeriodicBoundaryShiftMultiGPUIntegrationTest,
                          testing::Combine(testing::Values(5), testing::Range(0, 7)));
@@ -1060,10 +1060,10 @@ namespace
 {
 
 void logForFindCommunicationIndexData(real coordinate, real coordinateLimit,
-                                      CommunicationDirections::CommunicationDirection direction, real delta)
+                                      communication_directions::CommunicationDirection direction, real delta)
 {
     VF_LOG_INFO("coordinate = {},\tcoordinateLimit = {},\tdirection = {} (isPositive: {}),\tdelta = {}", coordinate, coordinateLimit,
-                static_cast<int>(direction), CommunicationDirections::isPositive(direction), delta);
+                static_cast<int>(direction), communication_directions::isPositive(direction), delta);
 }
 
 TEST(GridImpTest, findCommunicationIndex_MX)
@@ -1073,7 +1073,7 @@ TEST(GridImpTest, findCommunicationIndex_MX)
     real delta = 1.5;
     auto sut = GridImp::makeShared(nullptr, minCoordinate, minCoordinate, minCoordinate, maxCoordinate, maxCoordinate,
                                    maxCoordinate, delta, "D3Q27", 0);
-    auto direction = CommunicationDirections::MX;
+    auto direction = communication_directions::MX;
     auto index = 42;
 
     // send
@@ -1143,7 +1143,7 @@ TEST(GridImpTest, findCommunicationIndex_PX)
     real delta = 1.5;
     auto sut = GridImp::makeShared(nullptr, minCoordinate, minCoordinate, minCoordinate, maxCoordinate, maxCoordinate,
                                    maxCoordinate, delta, "D3Q27", 0);
-    auto direction = CommunicationDirections::PX;
+    auto direction = communication_directions::PX;
     auto index = 42;
 
     // send
diff --git a/tests/unit-tests/gpu/GridGenerator/grid/MultipleGridBuilderFacadeTest.cpp b/tests/unit-tests/gpu/GridGenerator/grid/MultipleGridBuilderFacadeTest.cpp
index 6501f9e34acbe6555bcb5d93d4d85bb2f5abd4c7..f26a4b65195ae65a2c039883512206aa7064e385 100644
--- a/tests/unit-tests/gpu/GridGenerator/grid/MultipleGridBuilderFacadeTest.cpp
+++ b/tests/unit-tests/gpu/GridGenerator/grid/MultipleGridBuilderFacadeTest.cpp
@@ -681,19 +681,19 @@ TEST_F(MultipleGridBuilderFacadeTest_24subdomains, periodicAllDirectionsMultiGPU
 {
     sut->createGrids(0);
 
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::MX, false));
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::MY, false));
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::MZ, false));
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::MX, 1));
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::MY, 4));
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::MZ, 18));
-
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::PX, false)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::PY, false)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::PZ, false)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::PX, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::PY, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::PZ, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::MX, false));
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::MY, false));
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::MZ, false));
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::MX, 1));
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::MY, 4));
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::MZ, 18));
+
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::PX, false)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::PY, false)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::PZ, false)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::PX, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::PY, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::PZ, testing::_)).Times(0);
 
     sut->setPeriodicBoundaryCondition(true, true, true);
 }
@@ -702,19 +702,19 @@ TEST_F(MultipleGridBuilderFacadeTest_24subdomains, periodicAllDirectionsMultiGPU
 {
     sut->createGrids(9);
 
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::PX, false));
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::PX, 8));
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::PX, false));
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::PX, 8));
 
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::MX, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::MY, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::MZ, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::MX, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::MY, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::MZ, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::PY, false)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::PZ, false)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::PY, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::PZ, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::MX, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::MY, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::MZ, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::MX, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::MY, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::MZ, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::PY, false)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::PZ, false)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::PY, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::PZ, testing::_)).Times(0);
 
     sut->setPeriodicBoundaryCondition(true, true, true);
 }
@@ -723,19 +723,19 @@ TEST_F(MultipleGridBuilderFacadeTest_24subdomains, periodicAllDirectionsMultiGPU
 {
     sut->createGrids(17);
 
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::PX, testing::_));
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::PY, testing::_));
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::PX, 16));
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::PY, 13));
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::PX, testing::_));
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::PY, testing::_));
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::PX, 16));
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::PY, 13));
 
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::MX, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::MY, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::MZ, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::MX, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::MY, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::MZ, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::PZ, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::PZ, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::MX, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::MY, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::MZ, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::MX, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::MY, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::MZ, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::PZ, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::PZ, testing::_)).Times(0);
 
     sut->setPeriodicBoundaryCondition(true, true, true);
 }
@@ -744,19 +744,19 @@ TEST_F(MultipleGridBuilderFacadeTest_24subdomains, periodicAllDirectionsMultiGPU
 {
     sut->createGrids(23);
 
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::PX, testing::_));
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::PY, testing::_));
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::PZ, testing::_));
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::PX, 22));
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::PY, 19));
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::PZ, 5));
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::PX, testing::_));
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::PY, testing::_));
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::PZ, testing::_));
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::PX, 22));
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::PY, 19));
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::PZ, 5));
 
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::MX, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::MY, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::MZ, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::MX, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::MY, testing::_)).Times(0);
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::MZ, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::MX, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::MY, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::MZ, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::MX, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::MY, testing::_)).Times(0);
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::MZ, testing::_)).Times(0);
 
     sut->setPeriodicBoundaryCondition(true, true, true);
 }
@@ -787,11 +787,11 @@ TEST_F(MultipleGridBuilderFacadeTest_CreateMockAndSut, periodicXY2GPUs)
     sut.addDomainSplit(1.0, Axis::x);
     sut.setOverlapOfSubdomains(0.1);
 
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::PX, testing::_));
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::PX, 1));
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::PX, testing::_));
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::PX, 1));
     sut.createGrids(0);
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::MX, testing::_));
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::MX, 1));
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::MX, testing::_));
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::MX, 1));
     EXPECT_CALL(*mockGridBuilder, setPeriodicBoundaryCondition(false, true, false));
     sut.setPeriodicBoundaryCondition(true, true, false);
 }
@@ -801,8 +801,8 @@ TEST_F(MultipleGridBuilderFacadeTest_CreateMockAndSut, periodicYZ2GPUs)
     sut.addDomainSplit(1.0, Axis::x);
     sut.setOverlapOfSubdomains(0.1);
 
-    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(CommunicationDirections::PX, testing::_));
-    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(CommunicationDirections::PX, 1));
+    EXPECT_CALL(*mockGridBuilder, findCommunicationIndices(communication_directions::PX, testing::_));
+    EXPECT_CALL(*mockGridBuilder, setCommunicationProcess(communication_directions::PX, 1));
     sut.createGrids(0);
     EXPECT_CALL(*mockGridBuilder, setPeriodicBoundaryCondition(false, true, true));
     sut.setPeriodicBoundaryCondition(false, true, true);
diff --git a/tests/unit-tests/gpu/GridGenerator/grid/SideTest.cpp b/tests/unit-tests/gpu/GridGenerator/grid/SideTest.cpp
index 93c4cf7690b0bd4616625c8f3f2eff06cbfef944..cb16e1702de22d34a8b7eeb7847d05a21bca645b 100644
--- a/tests/unit-tests/gpu/GridGenerator/grid/SideTest.cpp
+++ b/tests/unit-tests/gpu/GridGenerator/grid/SideTest.cpp
@@ -54,7 +54,7 @@ class SideTestSpecificSubclass : public Side
 {
 
 public:
-    void setQs(SPtr<Grid> grid, SPtr<gg::BoundaryCondition> boundaryCondition, uint index)
+    void setQs(SPtr<Grid> grid, SPtr<grid_generator::BoundaryCondition> boundaryCondition, uint index)
     {
         Side::setQs(grid, boundaryCondition, index);
     };
@@ -75,7 +75,7 @@ private:
         return sideDirection;
     }
 
-    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<gg::BoundaryCondition> boundaryCondition) override
+    void addIndices(const std::vector<SPtr<Grid>> &grid, uint level, SPtr<grid_generator::BoundaryCondition> boundaryCondition) override
     {
         (void)grid;
         (void)level;
@@ -136,7 +136,7 @@ public:
     }
 };
 
-class BoundaryConditionSpy : public gg::BoundaryCondition
+class BoundaryConditionSpy : public grid_generator::BoundaryCondition
 {
 public:
     char getType() const override
diff --git a/tests/unit-tests/gpu/GridGenerator/utilities/communciationTest.cpp b/tests/unit-tests/gpu/GridGenerator/utilities/communciationTest.cpp
index a6a698bd236b3262733c756ab5a72340f40f1011..f2d609323b50f6b6aa66cf7326d7abb471ea4e26 100644
--- a/tests/unit-tests/gpu/GridGenerator/utilities/communciationTest.cpp
+++ b/tests/unit-tests/gpu/GridGenerator/utilities/communciationTest.cpp
@@ -33,39 +33,39 @@
 
 #include <gpu/GridGenerator/utilities/communication.h>
 
-using namespace CommunicationDirections;
+using namespace communication_directions;
 
 TEST(communicationTest, isNegative)
 {
-    EXPECT_TRUE(isNegative(CommunicationDirection::MX));
-    EXPECT_TRUE(isNegative(CommunicationDirection::MY));
-    EXPECT_TRUE(isNegative(CommunicationDirection::MZ));
-    EXPECT_FALSE(isNegative(CommunicationDirection::PX));
-    EXPECT_FALSE(isNegative(CommunicationDirection::PY));
-    EXPECT_FALSE(isNegative(CommunicationDirection::PZ));
+    EXPECT_TRUE(isNegative(communication_directions::MX));
+    EXPECT_TRUE(isNegative(communication_directions::MY));
+    EXPECT_TRUE(isNegative(communication_directions::MZ));
+    EXPECT_FALSE(isNegative(communication_directions::PX));
+    EXPECT_FALSE(isNegative(communication_directions::PY));
+    EXPECT_FALSE(isNegative(communication_directions::PZ));
 }
 
 TEST(communicationTest, isPositive)
 {
-    EXPECT_TRUE(isPositive(CommunicationDirection::PX));
-    EXPECT_TRUE(isPositive(CommunicationDirection::PY));
-    EXPECT_TRUE(isPositive(CommunicationDirection::PZ));
-    EXPECT_FALSE(isPositive(CommunicationDirection::MX));
-    EXPECT_FALSE(isPositive(CommunicationDirection::MY));
-    EXPECT_FALSE(isPositive(CommunicationDirection::MZ));
+    EXPECT_TRUE(isPositive(communication_directions::PX));
+    EXPECT_TRUE(isPositive(communication_directions::PY));
+    EXPECT_TRUE(isPositive(communication_directions::PZ));
+    EXPECT_FALSE(isPositive(communication_directions::MX));
+    EXPECT_FALSE(isPositive(communication_directions::MY));
+    EXPECT_FALSE(isPositive(communication_directions::MZ));
 }
 
 TEST(communicationTest, getNegativeDirectionAlongAxis)
 {
-    EXPECT_THAT(getNegativeDirectionAlongAxis(Axis::x), CommunicationDirection::MX);
-    EXPECT_THAT(getNegativeDirectionAlongAxis(Axis::y), CommunicationDirection::MY);
-    EXPECT_THAT(getNegativeDirectionAlongAxis(Axis::z), CommunicationDirection::MZ);
+    EXPECT_THAT(getNegativeDirectionAlongAxis(Axis::x), communication_directions::MX);
+    EXPECT_THAT(getNegativeDirectionAlongAxis(Axis::y), communication_directions::MY);
+    EXPECT_THAT(getNegativeDirectionAlongAxis(Axis::z), communication_directions::MZ);
 }
 
 TEST(communicationTest, getPositiveDirectionAlongAxis)
 {
-    EXPECT_THAT(getPositiveDirectionAlongAxis(Axis::x), CommunicationDirection::PX);
-    EXPECT_THAT(getPositiveDirectionAlongAxis(Axis::y), CommunicationDirection::PY);
-    EXPECT_THAT(getPositiveDirectionAlongAxis(Axis::z), CommunicationDirection::PZ);
+    EXPECT_THAT(getPositiveDirectionAlongAxis(Axis::x), communication_directions::PX);
+    EXPECT_THAT(getPositiveDirectionAlongAxis(Axis::y), communication_directions::PY);
+    EXPECT_THAT(getPositiveDirectionAlongAxis(Axis::z), communication_directions::PZ);
 }
 //! \}
diff --git a/tests/unit-tests/gpu/core/DataStructureInitializer/GridReaderGenerator/GridGeneratorTest.cpp b/tests/unit-tests/gpu/core/DataStructureInitializer/GridReaderGenerator/GridGeneratorTest.cpp
index 2a24378d823f796f0cd45d8ce9ef99726acff5ba..2f28a101ae140a3c20c934714a1467cc093aa9e0 100644
--- a/tests/unit-tests/gpu/core/DataStructureInitializer/GridReaderGenerator/GridGeneratorTest.cpp
+++ b/tests/unit-tests/gpu/core/DataStructureInitializer/GridReaderGenerator/GridGeneratorTest.cpp
@@ -47,7 +47,7 @@
 
 #include <parallel/NullCommunicator.h>
 
-namespace GridGeneratorTest
+namespace grid_generator_test
 {
 
 class LevelGridBuilderStub : public LevelGridBuilder
@@ -64,7 +64,7 @@ public:
     uint getCommunicationProcess(int direction) override
     {
         uint process = 0;
-        if (direction != CommunicationDirections::MX)
+        if (direction != communication_directions::MX)
             process = (uint)INVALID_INDEX;
         return process;
     }
@@ -117,9 +117,9 @@ public:
                                                           int direction) const override{};
 };
 
-} // namespace GridGeneratorTest
+} // namespace grid_generator_test
 
-using namespace GridGeneratorTest;
+using namespace grid_generator_test;
 
 class GridGeneratorTests_initalValuesDomainDecompostion : public testing::Test
 {
@@ -134,7 +134,7 @@ protected:
     std::shared_ptr<LevelGridBuilderStub> builder;
 
     const uint level = 1;
-    const uint direction = CommunicationDirections::MX;
+    const uint direction = communication_directions::MX;
 
     SPtr<GridGenerator> gridGenerator;
 
@@ -171,7 +171,7 @@ TEST_F(GridGeneratorTests_initalValuesDomainDecompostion, whenCommunicationInX_s
     builder->numberOfSendIndices = 1;
     act();
     EXPECT_THAT(para->getParH(level)->sendProcessNeighborX.size(),
-                testing::Eq(1)); // one entry for CommunicationDirections::MX
+                testing::Eq(1)); // one entry for communication_directions::MX
     EXPECT_THAT(para->getParH(level)->sendProcessNeighborY.size(), testing::Eq(0));
     EXPECT_THAT(para->getParH(level)->sendProcessNeighborZ.size(), testing::Eq(0));
 }
diff --git a/tests/unit-tests/gpu/core/DataStructureInitializer/GridReaderGenerator/IndexRearrangementForStreamsTest.cpp b/tests/unit-tests/gpu/core/DataStructureInitializer/GridReaderGenerator/IndexRearrangementForStreamsTest.cpp
index 5de846185cc44c2e72ce7436293c0be9a3b91a82..94d470563cf22ae8d447d5a06d6e79a23828774d 100644
--- a/tests/unit-tests/gpu/core/DataStructureInitializer/GridReaderGenerator/IndexRearrangementForStreamsTest.cpp
+++ b/tests/unit-tests/gpu/core/DataStructureInitializer/GridReaderGenerator/IndexRearrangementForStreamsTest.cpp
@@ -48,7 +48,7 @@
 
 #include <parallel/NullCommunicator.h>
 
-namespace indexRearrangementTests
+namespace index_rearrangement_tests
 {
 template <typename T>
 bool vectorsAreEqual(const T *vector1, const std::vector<T>& vectorExpected)
@@ -113,18 +113,18 @@ public:
     }
 };
 
-} // namespace indexRearrangementTests
+} // namespace index_rearrangement_tests
 
 //////////////////////////////////////////////////////////////////////////
 // Test reorderSendIndices
 //////////////////////////////////////////////////////////////////////////
-using namespace indexRearrangementTests;
+using namespace index_rearrangement_tests;
 
 struct SendIndicesForCommAfterFtoCX {
     // data to work on
     std::vector<int> sendIndices = { 10, 11, 12, 13, 14, 15, 16 };
     const int level = 0;
-    const int direction = CommunicationDirections::MX;
+    const int direction = communication_directions::MX;
     const int numberOfProcessNeighbors = 1;
     const int indexOfProcessNeighbor = 0;
 
@@ -596,7 +596,7 @@ struct RecvIndicesForCommAfterFtoC {
     std::vector<int> recvIndices = { 10, 11, 12, 13, 14, 15, 16 };
     std::vector<uint> sendIndicesForCommAfterFtoCPositions = {};
     const int level = 0;
-    const int direction = CommunicationDirections::MX;
+    const int direction = communication_directions::MX;
     const int numberOfProcessNeighbors = 1;
     const int indexOfProcessNeighbor = 0;
 
diff --git a/tests/unit-tests/gpu/core/Output/NeighborDebugWriterTest.cpp b/tests/unit-tests/gpu/core/Output/NeighborDebugWriterTest.cpp
index 06b71c0bd5caa2069da89f912332eb3915ac4962..0e01fa8969866d03c6739b771f78f0f122ba609c 100644
--- a/tests/unit-tests/gpu/core/Output/NeighborDebugWriterTest.cpp
+++ b/tests/unit-tests/gpu/core/Output/NeighborDebugWriterTest.cpp
@@ -89,7 +89,7 @@ TEST_F(NeighborDebugWriterTest, writeNeighborLinkLines_onlyFLuidNodes_writesAllN
     std::vector<UbTupleFloat3> expectedNodes = { oneCoord, threeCoord, oneCoord, threeCoord, threeCoord, threeCoord };
     std::vector<UbTupleInt2> expectedLines = { UbTupleInt2(0, 1), UbTupleInt2(2, 3), UbTupleInt2(4, 5) };
 
-    NeighborDebugWriter::writeNeighborLinkLinesForDirection(parH.get(), direction, "name", &writerSpy);
+    neighbor_debug_writer::writeNeighborLinkLinesForDirection(parH.get(), direction, "name", &writerSpy);
 
     EXPECT_THAT(writerSpy.nodes.size(), testing::Eq(numberOfNodes * 2));
     EXPECT_THAT(writerSpy.lines.size(), testing::Eq(numberOfNodes));
@@ -106,7 +106,7 @@ TEST_F(NeighborDebugWriterTest, writeNeighborLinkLines_fluidAndSolidNodes_writes
     std::vector<UbTupleFloat3> expectedNodes = { oneCoord, threeCoord, oneCoord, threeCoord};
     std::vector<UbTupleInt2> expectedLines = { UbTupleInt2(0, 1), UbTupleInt2(2, 3)};
 
-    NeighborDebugWriter::writeNeighborLinkLinesForDirection(parH.get(), direction, "name", &writerSpy);
+    neighbor_debug_writer::writeNeighborLinkLinesForDirection(parH.get(), direction, "name", &writerSpy);
 
     EXPECT_THAT(writerSpy.nodes.size(), testing::Eq((numberOfNodes-1) * 2));
     EXPECT_THAT(writerSpy.lines.size(), testing::Eq(numberOfNodes-1));
diff --git a/tests/unit-tests/gpu/core/Output/QDebugVtkWriterTest.cpp b/tests/unit-tests/gpu/core/Output/QDebugVtkWriterTest.cpp
index 79fb476726adc3b185ef3146ea972cc0fa6b0a30..dc45a54be2fc72b8664fb92ad53a890e50f42fec 100644
--- a/tests/unit-tests/gpu/core/Output/QDebugVtkWriterTest.cpp
+++ b/tests/unit-tests/gpu/core/Output/QDebugVtkWriterTest.cpp
@@ -43,7 +43,7 @@ MATCHER(DoubleNear5, "") {
     return abs(std::get<0>(arg) - std::get<1>(arg)) < 0.00001;
 }
 
-using namespace QDebugVtkWriter;
+using namespace q_debug_vtk_writer;
 
 double calcVectorLength(const std::array<double, 3> coords, const std::array<double, 3> neighborCoords)
 {