From 62ca8b9153eab2bfc3a296dca88f34f61010cb1f Mon Sep 17 00:00:00 2001
From: Martin Schoenherr <m.schoenherr@tu-braunschweig.de>
Date: Thu, 29 Jul 2021 11:33:34 +0200
Subject: [PATCH] deletet all gpu related files, changed alle .cu files to .cpp
 files and add the licence text where it was still missing

---
 .../StreetPointFinder/JunctionReader.cpp      |  32 +
 .../StreetPointFinder/JunctionReader.h        |  32 +
 .../StreetPointFinder/SinkReader.cpp          |  32 +
 .../StreetPointFinder/SinkReader.h            |  32 +
 .../StreetPointFinder/SourceReader.cpp        |  32 +
 .../StreetPointFinder/SourceReader.h          |  32 +
 .../StreetPointFinder/StreetPointFinder.cpp   |  32 +
 .../StreetPointFinder/StreetPointFinder.h     |  32 +
 .../GridGenerator/geometries/Arrow/Arrow.h    |  32 +
 .../geometries/Arrow/ArrowImp.cpp             |  32 +
 .../GridGenerator/geometries/Arrow/ArrowImp.h |  32 +
 .../{BoundingBox.cu => BoundingBox.cpp}       |   2 +-
 .../{Conglomerate.cu => Conglomerate.cpp}     |  32 +
 .../geometries/Conglomerate/Conglomerate.h    |  36 +-
 .../Cuboid/{Cuboid.cu => Cuboid.cpp}          |   2 +-
 .../geometries/{Object.cu => Object.cpp}      |   2 +-
 .../GridGenerator/geometries/Point/Point.cpp  |   0
 .../GridGenerator/geometries/Point/Point.h    |   0
 .../Sphere/{Sphere.cu => Sphere.cpp}          |  32 +
 .../GridGenerator/geometries/Sphere/Sphere.h  |  36 +-
 .../Triangle/{Triangle.cu => Triangle.cpp}    |  32 +
 .../geometries/Triangle/Triangle.h            |  32 +
 .../geometries/Triangle/TriangleException.h   |  36 +-
 .../{TriangularMesh.cu => TriangularMesh.cpp} |  32 +
 .../TriangularMesh/TriangularMesh.h           |  36 +-
 .../TriangularMesh/TriangularMeshStrategy.cpp |  32 +
 .../TriangularMesh/TriangularMeshStrategy.h   |  32 +
 .../TriangleNeighborFinder.cpp                |  32 +
 .../TriangleNeighborFinder.h                  |  32 +
 .../triangleRefinement/TriangleRefinement.cpp |  32 +
 .../triangleRefinement/TriangleRefinement.h   |  32 +
 .../Vertex/{Vertex.cu => Vertex.cpp}          |   2 +-
 .../VerticalCylinder/VerticalCylinder.cpp     | 122 ++++
 .../VerticalCylinder/VerticalCylinder.cu      |  90 ---
 .../VerticalCylinder/VerticalCylinder.h       |  36 +-
 .../BoundaryConditions/BoundaryCondition.h    |   2 +-
 .../grid/{Field.cu => Field.cpp}              |   4 +-
 src/gpu/GridGenerator/grid/Field.h            |   2 +-
 .../grid/GridBuilder/GridBuilder.h            |   2 +-
 .../grid/GridBuilder/LevelGridBuilder.cpp     |   5 +-
 .../grid/GridBuilder/LevelGridBuilder.h       |   2 +-
 .../grid/GridBuilder/MultipleGridBuilder.cpp  |   2 +-
 .../grid/GridBuilder/MultipleGridBuilder.h    |   2 +-
 .../grid/{GridImp.cu => GridImp.cpp}          |   4 +-
 .../{GridInterface.cu => GridInterface.cpp}   |  32 +
 src/gpu/GridGenerator/grid/GridInterface.h    |  32 +
 src/gpu/GridGenerator/grid/NodeValues.h       |  34 +-
 .../GridGenerator/grid/distributions/D3Q13.h  |  70 --
 .../GridGenerator/grid/distributions/D3Q19.h  | 100 ---
 .../GridGenerator/grid/distributions/D3Q7.h   |  32 +
 .../grid/kernel/runGridKernelGPU.cu           | 220 ------
 .../grid/kernel/runGridKernelGPU.cuh          |  23 -
 .../grid/partition/Partition.cpp              | 653 ------------------
 .../GridGenerator/grid/partition/Partition.h  |  45 --
 .../io/GridVTKWriter/GridVTKWriter.cpp        | 100 +--
 .../io/GridVTKWriter/GridVTKWriter.h          |  32 +
 src/gpu/GridGenerator/io/QLineWriter.cpp      |  32 +
 src/gpu/GridGenerator/io/QLineWriter.h        |  32 +
 .../io/STLReaderWriter/STLReader.cpp          |  32 +
 .../io/STLReaderWriter/STLReader.h            |  32 +
 .../io/STLReaderWriter/STLWriter.cpp          |  32 +
 .../io/STLReaderWriter/STLWriter.h            |  32 +
 .../SimulationFileNames.cpp                   |  32 +
 .../SimulationFileNames.h                     |  32 +
 .../SimulationFileWriter.cpp                  |  32 +
 .../SimulationFileWriter.h                    |  32 +
 .../PolyDataWriterWrapper.cpp                 |  29 -
 .../VTKWriterWrapper/PolyDataWriterWrapper.h  |  26 -
 .../UnstructuredGridWrapper.cpp               | 137 ----
 .../UnstructuredGridWrapper.h                 |  53 --
 .../GridGenerator/utilities/communication.h   |  32 +
 .../utilities/cuda/CudaErrorCheck.cu          |  55 --
 .../utilities/cuda/LaunchParameter.cu         |  49 --
 .../utilities/cuda/LaunchParameter.cuh        |  29 -
 .../utilities/cuda/cudaDefines.h              |  66 --
 .../utilities/cuda/cudaKernelCall.h           |  33 -
 .../utilities/math/{Math.cu => Math.cpp}      |   2 +-
 .../transformator/ArrowTransformator.cpp      |  32 +
 .../transformator/ArrowTransformator.h        |  32 +
 .../utilities/transformator/Transformator.cpp |  32 +
 .../utilities/transformator/Transformator.h   |  32 +
 .../transformator/TransformatorImp.cpp        |  32 +
 .../transformator/TransformatorImp.h          |  32 +
 83 files changed, 1708 insertions(+), 1817 deletions(-)
 rename src/gpu/GridGenerator/geometries/BoundingBox/{BoundingBox.cu => BoundingBox.cpp} (99%)
 rename src/gpu/GridGenerator/geometries/Conglomerate/{Conglomerate.cu => Conglomerate.cpp} (67%)
 rename src/gpu/GridGenerator/geometries/Cuboid/{Cuboid.cu => Cuboid.cpp} (99%)
 rename src/gpu/GridGenerator/geometries/{Object.cu => Object.cpp} (99%)
 delete mode 100644 src/gpu/GridGenerator/geometries/Point/Point.cpp
 delete mode 100644 src/gpu/GridGenerator/geometries/Point/Point.h
 rename src/gpu/GridGenerator/geometries/Sphere/{Sphere.cu => Sphere.cpp} (59%)
 rename src/gpu/GridGenerator/geometries/Triangle/{Triangle.cu => Triangle.cpp} (78%)
 rename src/gpu/GridGenerator/geometries/TriangularMesh/{TriangularMesh.cu => TriangularMesh.cpp} (79%)
 rename src/gpu/GridGenerator/geometries/Vertex/{Vertex.cu => Vertex.cpp} (99%)
 create mode 100644 src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.cpp
 delete mode 100644 src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.cu
 rename src/gpu/GridGenerator/grid/{Field.cu => Field.cpp} (98%)
 rename src/gpu/GridGenerator/grid/{GridImp.cu => GridImp.cpp} (99%)
 rename src/gpu/GridGenerator/grid/{GridInterface.cu => GridInterface.cpp} (87%)
 delete mode 100644 src/gpu/GridGenerator/grid/distributions/D3Q13.h
 delete mode 100644 src/gpu/GridGenerator/grid/distributions/D3Q19.h
 delete mode 100644 src/gpu/GridGenerator/grid/kernel/runGridKernelGPU.cu
 delete mode 100644 src/gpu/GridGenerator/grid/kernel/runGridKernelGPU.cuh
 delete mode 100644 src/gpu/GridGenerator/grid/partition/Partition.cpp
 delete mode 100644 src/gpu/GridGenerator/grid/partition/Partition.h
 delete mode 100644 src/gpu/GridGenerator/io/VTKWriterWrapper/PolyDataWriterWrapper.cpp
 delete mode 100644 src/gpu/GridGenerator/io/VTKWriterWrapper/PolyDataWriterWrapper.h
 delete mode 100644 src/gpu/GridGenerator/io/VTKWriterWrapper/UnstructuredGridWrapper.cpp
 delete mode 100644 src/gpu/GridGenerator/io/VTKWriterWrapper/UnstructuredGridWrapper.h
 delete mode 100644 src/gpu/GridGenerator/utilities/cuda/CudaErrorCheck.cu
 delete mode 100644 src/gpu/GridGenerator/utilities/cuda/LaunchParameter.cu
 delete mode 100644 src/gpu/GridGenerator/utilities/cuda/LaunchParameter.cuh
 delete mode 100644 src/gpu/GridGenerator/utilities/cuda/cudaDefines.h
 delete mode 100644 src/gpu/GridGenerator/utilities/cuda/cudaKernelCall.h
 rename src/gpu/GridGenerator/utilities/math/{Math.cu => Math.cpp} (99%)

diff --git a/src/gpu/GridGenerator/StreetPointFinder/JunctionReader.cpp b/src/gpu/GridGenerator/StreetPointFinder/JunctionReader.cpp
index 065d4ae64..bac17264d 100644
--- a/src/gpu/GridGenerator/StreetPointFinder/JunctionReader.cpp
+++ b/src/gpu/GridGenerator/StreetPointFinder/JunctionReader.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file JunctionReader.cpp
+//! \ingroup StreetPointFinder
+//! \author Stephan Lenz
+//=======================================================================================
 #include "JunctionReader.h"
 
 #include <fstream>
diff --git a/src/gpu/GridGenerator/StreetPointFinder/JunctionReader.h b/src/gpu/GridGenerator/StreetPointFinder/JunctionReader.h
index dea2a6a91..5b68b0357 100644
--- a/src/gpu/GridGenerator/StreetPointFinder/JunctionReader.h
+++ b/src/gpu/GridGenerator/StreetPointFinder/JunctionReader.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file JunctionReader.h
+//! \ingroup StreetPointFinder
+//! \author Stephan Lenz
+//=======================================================================================
 #ifndef JUNCTIONREADER_H
 #define JUNCTIONREADER_H
 
diff --git a/src/gpu/GridGenerator/StreetPointFinder/SinkReader.cpp b/src/gpu/GridGenerator/StreetPointFinder/SinkReader.cpp
index 3c3e76689..1224f1bf7 100644
--- a/src/gpu/GridGenerator/StreetPointFinder/SinkReader.cpp
+++ b/src/gpu/GridGenerator/StreetPointFinder/SinkReader.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file SinkReader.cpp
+//! \ingroup StreetPointFinder
+//! \author Stephan Lenz
+//=======================================================================================
 #include "SinkReader.h"
 
 #include <fstream>
diff --git a/src/gpu/GridGenerator/StreetPointFinder/SinkReader.h b/src/gpu/GridGenerator/StreetPointFinder/SinkReader.h
index 115aea552..ba28596b0 100644
--- a/src/gpu/GridGenerator/StreetPointFinder/SinkReader.h
+++ b/src/gpu/GridGenerator/StreetPointFinder/SinkReader.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file SinkReader.h
+//! \ingroup StreetPointFinder
+//! \author Stephan Lenz
+//=======================================================================================
 #ifndef SINKREADER_H
 #define  SINKREADER_H
 
diff --git a/src/gpu/GridGenerator/StreetPointFinder/SourceReader.cpp b/src/gpu/GridGenerator/StreetPointFinder/SourceReader.cpp
index e9cab0847..a3a62f942 100644
--- a/src/gpu/GridGenerator/StreetPointFinder/SourceReader.cpp
+++ b/src/gpu/GridGenerator/StreetPointFinder/SourceReader.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file SourceReader.cpp
+//! \ingroup StreetPointFinder
+//! \author Stephan Lenz
+//=======================================================================================
 #include "SourceReader.h"
 
 #include <fstream>
diff --git a/src/gpu/GridGenerator/StreetPointFinder/SourceReader.h b/src/gpu/GridGenerator/StreetPointFinder/SourceReader.h
index db95259ea..f79c618d0 100644
--- a/src/gpu/GridGenerator/StreetPointFinder/SourceReader.h
+++ b/src/gpu/GridGenerator/StreetPointFinder/SourceReader.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file SourceReader.h
+//! \ingroup StreetPointFinder
+//! \author Stephan Lenz
+//=======================================================================================
 #ifndef SOURCEREADER_H
 #define  SOURCEREADER_H
 
diff --git a/src/gpu/GridGenerator/StreetPointFinder/StreetPointFinder.cpp b/src/gpu/GridGenerator/StreetPointFinder/StreetPointFinder.cpp
index 3a764dd35..9fbd3933a 100644
--- a/src/gpu/GridGenerator/StreetPointFinder/StreetPointFinder.cpp
+++ b/src/gpu/GridGenerator/StreetPointFinder/StreetPointFinder.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file StreetPointFinder.cpp
+//! \ingroup StreetPointFinder
+//! \author Stephan Lenz
+//=======================================================================================
 #include "StreetPointFinder.h"
 
 #include "Core/Logger/Logger.h"
diff --git a/src/gpu/GridGenerator/StreetPointFinder/StreetPointFinder.h b/src/gpu/GridGenerator/StreetPointFinder/StreetPointFinder.h
index 73d1e0de0..feb3618f6 100644
--- a/src/gpu/GridGenerator/StreetPointFinder/StreetPointFinder.h
+++ b/src/gpu/GridGenerator/StreetPointFinder/StreetPointFinder.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file StreetPointFinder.h
+//! \ingroup StreetPointFinder
+//! \author Stephan Lenz
+//=======================================================================================
 #ifndef StreetPointFinder_H
 #define StreetPointFinder_H
 
diff --git a/src/gpu/GridGenerator/geometries/Arrow/Arrow.h b/src/gpu/GridGenerator/geometries/Arrow/Arrow.h
index dfd006042..945f1e3a8 100644
--- a/src/gpu/GridGenerator/geometries/Arrow/Arrow.h
+++ b/src/gpu/GridGenerator/geometries/Arrow/Arrow.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file Arrow.h
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef Arrow_H
 #define Arrow_H
 
diff --git a/src/gpu/GridGenerator/geometries/Arrow/ArrowImp.cpp b/src/gpu/GridGenerator/geometries/Arrow/ArrowImp.cpp
index 28176b4f5..f7ee7330c 100644
--- a/src/gpu/GridGenerator/geometries/Arrow/ArrowImp.cpp
+++ b/src/gpu/GridGenerator/geometries/Arrow/ArrowImp.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file ArrowImp.cpp
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #include "ArrowImp.h"
 
 #include "../Vertex/Vertex.h"
diff --git a/src/gpu/GridGenerator/geometries/Arrow/ArrowImp.h b/src/gpu/GridGenerator/geometries/Arrow/ArrowImp.h
index 195223d91..ef145b7de 100644
--- a/src/gpu/GridGenerator/geometries/Arrow/ArrowImp.h
+++ b/src/gpu/GridGenerator/geometries/Arrow/ArrowImp.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file ArrowImp.h
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef ArrowImp_H
 #define ArrowImp_H
 
diff --git a/src/gpu/GridGenerator/geometries/BoundingBox/BoundingBox.cu b/src/gpu/GridGenerator/geometries/BoundingBox/BoundingBox.cpp
similarity index 99%
rename from src/gpu/GridGenerator/geometries/BoundingBox/BoundingBox.cu
rename to src/gpu/GridGenerator/geometries/BoundingBox/BoundingBox.cpp
index a0e348ef8..676c1badd 100644
--- a/src/gpu/GridGenerator/geometries/BoundingBox/BoundingBox.cu
+++ b/src/gpu/GridGenerator/geometries/BoundingBox/BoundingBox.cpp
@@ -26,7 +26,7 @@
 //  You should have received a copy of the GNU General Public License along
 //  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
 //
-//! \file BoundingBox.cu
+//! \file BoundingBox.cpp
 //! \ingroup geometries
 //! \author Soeren Peters, Stephan Lenz
 //=======================================================================================
diff --git a/src/gpu/GridGenerator/geometries/Conglomerate/Conglomerate.cu b/src/gpu/GridGenerator/geometries/Conglomerate/Conglomerate.cpp
similarity index 67%
rename from src/gpu/GridGenerator/geometries/Conglomerate/Conglomerate.cu
rename to src/gpu/GridGenerator/geometries/Conglomerate/Conglomerate.cpp
index b87eba98c..331b928c6 100644
--- a/src/gpu/GridGenerator/geometries/Conglomerate/Conglomerate.cu
+++ b/src/gpu/GridGenerator/geometries/Conglomerate/Conglomerate.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file Conglomerate.cpp
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #include "Conglomerate.h"
 
 Conglomerate::Conglomerate()
diff --git a/src/gpu/GridGenerator/geometries/Conglomerate/Conglomerate.h b/src/gpu/GridGenerator/geometries/Conglomerate/Conglomerate.h
index ab7369390..8cb26137d 100644
--- a/src/gpu/GridGenerator/geometries/Conglomerate/Conglomerate.h
+++ b/src/gpu/GridGenerator/geometries/Conglomerate/Conglomerate.h
@@ -1,9 +1,35 @@
-//  _    ___      __              __________      _     __
-// | |  / (_)____/ /___  ______ _/ / ____/ /_  __(_)___/ /____
-// | | / / / ___/ __/ / / / __ `/ / /_  / / / / / / __  / ___/
-// | |/ / / /  / /_/ /_/ / /_/ / / __/ / / /_/ / / /_/ (__  )
-// |___/_/_/   \__/\__,_/\__,_/_/_/   /_/\__,_/_/\__,_/____/
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
 //
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file Conglomerate.h
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef CONGLOMERATE_H
 #define CONGLOMERATE_H
 
diff --git a/src/gpu/GridGenerator/geometries/Cuboid/Cuboid.cu b/src/gpu/GridGenerator/geometries/Cuboid/Cuboid.cpp
similarity index 99%
rename from src/gpu/GridGenerator/geometries/Cuboid/Cuboid.cu
rename to src/gpu/GridGenerator/geometries/Cuboid/Cuboid.cpp
index 7636c2baf..e64a202ca 100644
--- a/src/gpu/GridGenerator/geometries/Cuboid/Cuboid.cu
+++ b/src/gpu/GridGenerator/geometries/Cuboid/Cuboid.cpp
@@ -26,7 +26,7 @@
 //  You should have received a copy of the GNU General Public License along
 //  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
 //
-//! \file Cuboid.cu
+//! \file Cuboid.cpp
 //! \ingroup geometries
 //! \author Soeren Peters, Stephan Lenz
 //=======================================================================================
diff --git a/src/gpu/GridGenerator/geometries/Object.cu b/src/gpu/GridGenerator/geometries/Object.cpp
similarity index 99%
rename from src/gpu/GridGenerator/geometries/Object.cu
rename to src/gpu/GridGenerator/geometries/Object.cpp
index 7a1fc8d8a..c162b3b1d 100644
--- a/src/gpu/GridGenerator/geometries/Object.cu
+++ b/src/gpu/GridGenerator/geometries/Object.cpp
@@ -26,7 +26,7 @@
 //  You should have received a copy of the GNU General Public License along
 //  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
 //
-//! \file Object.cu
+//! \file Object.cpp
 //! \ingroup geometries
 //! \author Soeren Peters, Stephan Lenz
 //=======================================================================================
diff --git a/src/gpu/GridGenerator/geometries/Point/Point.cpp b/src/gpu/GridGenerator/geometries/Point/Point.cpp
deleted file mode 100644
index e69de29bb..000000000
diff --git a/src/gpu/GridGenerator/geometries/Point/Point.h b/src/gpu/GridGenerator/geometries/Point/Point.h
deleted file mode 100644
index e69de29bb..000000000
diff --git a/src/gpu/GridGenerator/geometries/Sphere/Sphere.cu b/src/gpu/GridGenerator/geometries/Sphere/Sphere.cpp
similarity index 59%
rename from src/gpu/GridGenerator/geometries/Sphere/Sphere.cu
rename to src/gpu/GridGenerator/geometries/Sphere/Sphere.cpp
index 18a15e380..785e66d41 100644
--- a/src/gpu/GridGenerator/geometries/Sphere/Sphere.cu
+++ b/src/gpu/GridGenerator/geometries/Sphere/Sphere.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file Sphere.cpp
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #include "Sphere.h"
 
 #include <algorithm>    // std::min
diff --git a/src/gpu/GridGenerator/geometries/Sphere/Sphere.h b/src/gpu/GridGenerator/geometries/Sphere/Sphere.h
index 2e701efb3..ba5821f5b 100644
--- a/src/gpu/GridGenerator/geometries/Sphere/Sphere.h
+++ b/src/gpu/GridGenerator/geometries/Sphere/Sphere.h
@@ -1,9 +1,35 @@
-//  _    ___      __              __________      _     __
-// | |  / (_)____/ /___  ______ _/ / ____/ /_  __(_)___/ /____
-// | | / / / ___/ __/ / / / __ `/ / /_  / / / / / / __  / ___/
-// | |/ / / /  / /_/ /_/ / /_/ / / __/ / / /_/ / / /_/ (__  )
-// |___/_/_/   \__/\__,_/\__,_/_/_/   /_/\__,_/_/\__,_/____/
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
 //
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file Sphere.h
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef SPHERE_H
 #define SPHERE_H
 
diff --git a/src/gpu/GridGenerator/geometries/Triangle/Triangle.cu b/src/gpu/GridGenerator/geometries/Triangle/Triangle.cpp
similarity index 78%
rename from src/gpu/GridGenerator/geometries/Triangle/Triangle.cu
rename to src/gpu/GridGenerator/geometries/Triangle/Triangle.cpp
index ffbe326fa..6d53bd922 100644
--- a/src/gpu/GridGenerator/geometries/Triangle/Triangle.cu
+++ b/src/gpu/GridGenerator/geometries/Triangle/Triangle.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file Triangle.cpp
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #include "Triangle.h"
 #include "TriangleException.h"
 
diff --git a/src/gpu/GridGenerator/geometries/Triangle/Triangle.h b/src/gpu/GridGenerator/geometries/Triangle/Triangle.h
index fe72956a5..0017d2f71 100644
--- a/src/gpu/GridGenerator/geometries/Triangle/Triangle.h
+++ b/src/gpu/GridGenerator/geometries/Triangle/Triangle.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file Triangle.h
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef Triangle_h
 #define Triangle_h
 
diff --git a/src/gpu/GridGenerator/geometries/Triangle/TriangleException.h b/src/gpu/GridGenerator/geometries/Triangle/TriangleException.h
index 962a471b3..bb1eed45e 100644
--- a/src/gpu/GridGenerator/geometries/Triangle/TriangleException.h
+++ b/src/gpu/GridGenerator/geometries/Triangle/TriangleException.h
@@ -1,5 +1,37 @@
-#ifndef meshGenExcpetion_h
-#define meshGenExcpetion_h
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file TriangleException.h
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz, Martin Schoenherr
+//=======================================================================================
+#ifndef TriangleException_h
+#define TriangleException_h
 
 #include <exception>
 #include <iostream>
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.cu b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.cpp
similarity index 79%
rename from src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.cu
rename to src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.cpp
index b03691611..99c6137af 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.cu
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file TriangularMesh.cpp
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #include "TriangularMesh.h"
 
 #include "Core/Timer/Timer.h"
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.h b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.h
index 59c99d32e..3ecacc9f7 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.h
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.h
@@ -1,5 +1,37 @@
-#ifndef Geometry_h
-#define Geometry_h
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file TriangularMesh.h
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz, Martin Schoenherr
+//=======================================================================================
+#ifndef TriangularMesh_h
+#define TriangularMesh_h
 
 #include <stdio.h>
 #include <cuda_runtime.h>
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.cpp b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.cpp
index d4a42b918..d9c1486e2 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.cpp
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file TriangularMeshStrategy.cpp
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #include "TriangularMeshStrategy.h"
 
 #include "Core/Timer/Timer.h"
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.h b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.h
index 1822229ec..573a46484 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.h
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file TriangularMeshStrategy.h
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef TriangularMeshStrategy_H
 #define TriangularMeshStrategy_H
 
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/triangleNeighborFinder/TriangleNeighborFinder.cpp b/src/gpu/GridGenerator/geometries/TriangularMesh/triangleNeighborFinder/TriangleNeighborFinder.cpp
index 4fc0e6ded..08984d872 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/triangleNeighborFinder/TriangleNeighborFinder.cpp
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/triangleNeighborFinder/TriangleNeighborFinder.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file TriangleNeighborFinder.cpp
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #include "TriangleNeighborFinder.h"
 #include <omp.h>
 
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/triangleNeighborFinder/TriangleNeighborFinder.h b/src/gpu/GridGenerator/geometries/TriangularMesh/triangleNeighborFinder/TriangleNeighborFinder.h
index be0ebc5d0..b0dda279c 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/triangleNeighborFinder/TriangleNeighborFinder.h
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/triangleNeighborFinder/TriangleNeighborFinder.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file TriangleNeighborFinder.h
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef TriangleNeighborFinder_h
 #define TriangleNeighborFinder_h
 
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/triangleRefinement/TriangleRefinement.cpp b/src/gpu/GridGenerator/geometries/TriangularMesh/triangleRefinement/TriangleRefinement.cpp
index d97983925..c1babac23 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/triangleRefinement/TriangleRefinement.cpp
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/triangleRefinement/TriangleRefinement.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file TriangleRefinement.cpp
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #include "TriangleRefinement.h"
 
 #include <GridGenerator/geometries/Triangle/Triangle.h>
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/triangleRefinement/TriangleRefinement.h b/src/gpu/GridGenerator/geometries/TriangularMesh/triangleRefinement/TriangleRefinement.h
index 2cd5045a1..a9c5262fb 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/triangleRefinement/TriangleRefinement.h
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/triangleRefinement/TriangleRefinement.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file TriangleRefinement.h
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef TriangleRefinement_h
 #define TriangleRefinement_h
 
diff --git a/src/gpu/GridGenerator/geometries/Vertex/Vertex.cu b/src/gpu/GridGenerator/geometries/Vertex/Vertex.cpp
similarity index 99%
rename from src/gpu/GridGenerator/geometries/Vertex/Vertex.cu
rename to src/gpu/GridGenerator/geometries/Vertex/Vertex.cpp
index 23d49efa9..e3ada57bd 100644
--- a/src/gpu/GridGenerator/geometries/Vertex/Vertex.cu
+++ b/src/gpu/GridGenerator/geometries/Vertex/Vertex.cpp
@@ -26,7 +26,7 @@
 //  You should have received a copy of the GNU General Public License along
 //  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
 //
-//! \file Vertex.cu
+//! \file Vertex.cpp
 //! \ingroup geometries
 //! \author Soeren Peters, Stephan Lenz
 //=======================================================================================
diff --git a/src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.cpp b/src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.cpp
new file mode 100644
index 000000000..89bcd5034
--- /dev/null
+++ b/src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.cpp
@@ -0,0 +1,122 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __         
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |        
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |        
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |        
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____    
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|   
+//      \    \  |    |   ________________________________________________________________    
+//       \    \ |    |  |  ______________________________________________________________|   
+//        \    \|    |  |  |         __          __     __     __     ______      _______    
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)   
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______    
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/   
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can 
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of 
+//  the License, or (at your option) any later version.
+//  
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT 
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License 
+//  for more details.
+//  
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file VerticalCylinder.cpp
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
+#include "VerticalCylinder.h"
+
+VerticalCylinder::VerticalCylinder(const double& centerX, const double& centerY, const double& centerZ, const double& radius, const double& height)
+    : centerX(centerX), centerY(centerY), centerZ(centerZ), radius(radius), height(height)
+{
+
+}
+
+VerticalCylinder::~VerticalCylinder()
+{
+}
+
+SPtr<VerticalCylinder> VerticalCylinder::makeShared(double centerX, double centerY, double centerZ, double radius, double height)
+{
+    return SPtr<VerticalCylinder>(new VerticalCylinder(centerX, centerY, centerZ, radius, height));
+}
+
+Object* VerticalCylinder::clone() const
+{
+    return new VerticalCylinder(centerX, centerY, centerZ, radius, height);
+}
+
+double VerticalCylinder::getX1Centroid()
+{
+    return centerX;
+}
+
+double VerticalCylinder::getX1Minimum()
+{
+    return centerX - radius;
+}
+
+double VerticalCylinder::getX1Maximum()
+{
+    return centerX + radius;
+}
+
+double VerticalCylinder::getX2Centroid()
+{
+    return centerY;
+}
+
+double VerticalCylinder::getX2Minimum()
+{
+    return centerY - radius;
+}
+
+double VerticalCylinder::getX2Maximum()
+{
+    return centerY + radius;
+}
+
+double VerticalCylinder::getX3Centroid()
+{
+    return centerZ;
+}
+
+double VerticalCylinder::getX3Minimum()
+{
+    return centerZ - 0.5 * height;
+}
+
+double VerticalCylinder::getX3Maximum()
+{
+    return centerZ + 0.5 * height;
+}
+
+bool VerticalCylinder::isPointInObject(const double& x1, const double& x2, const double& x3, const double& minOffset, const double& maxOffset)
+{
+    double offset = maxOffset;
+    if (x1 < centerX || x2 < centerY || x3 < centerZ)
+        offset = minOffset;
+        
+
+    const double deltaX1 = x1 - centerX;
+    const double deltaX2 = x2 - centerY;
+    const double deltaX3 = x3 - centerZ;
+
+    if( deltaX3 > 0.5 * height || deltaX3 < - 0.5 * height )
+        return false;
+
+    return (deltaX1*deltaX1 + deltaX2*deltaX2) < ((this->radius - offset) * (this->radius - offset));
+}
+
+
+void VerticalCylinder::scale(double delta)
+{
+    this->radius += delta;
+    this->height += delta;
+}
diff --git a/src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.cu b/src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.cu
deleted file mode 100644
index 16a2640c1..000000000
--- a/src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.cu
+++ /dev/null
@@ -1,90 +0,0 @@
-#include "VerticalCylinder.h"
-
-VerticalCylinder::VerticalCylinder(const double& centerX, const double& centerY, const double& centerZ, const double& radius, const double& height)
-    : centerX(centerX), centerY(centerY), centerZ(centerZ), radius(radius), height(height)
-{
-
-}
-
-VerticalCylinder::~VerticalCylinder()
-{
-}
-
-SPtr<VerticalCylinder> VerticalCylinder::makeShared(double centerX, double centerY, double centerZ, double radius, double height)
-{
-    return SPtr<VerticalCylinder>(new VerticalCylinder(centerX, centerY, centerZ, radius, height));
-}
-
-Object* VerticalCylinder::clone() const
-{
-    return new VerticalCylinder(centerX, centerY, centerZ, radius, height);
-}
-
-double VerticalCylinder::getX1Centroid()
-{
-    return centerX;
-}
-
-double VerticalCylinder::getX1Minimum()
-{
-    return centerX - radius;
-}
-
-double VerticalCylinder::getX1Maximum()
-{
-    return centerX + radius;
-}
-
-double VerticalCylinder::getX2Centroid()
-{
-    return centerY;
-}
-
-double VerticalCylinder::getX2Minimum()
-{
-    return centerY - radius;
-}
-
-double VerticalCylinder::getX2Maximum()
-{
-    return centerY + radius;
-}
-
-double VerticalCylinder::getX3Centroid()
-{
-    return centerZ;
-}
-
-double VerticalCylinder::getX3Minimum()
-{
-    return centerZ - 0.5 * height;
-}
-
-double VerticalCylinder::getX3Maximum()
-{
-    return centerZ + 0.5 * height;
-}
-
-bool VerticalCylinder::isPointInObject(const double& x1, const double& x2, const double& x3, const double& minOffset, const double& maxOffset)
-{
-    double offset = maxOffset;
-    if (x1 < centerX || x2 < centerY || x3 < centerZ)
-        offset = minOffset;
-        
-
-    const double deltaX1 = x1 - centerX;
-    const double deltaX2 = x2 - centerY;
-    const double deltaX3 = x3 - centerZ;
-
-    if( deltaX3 > 0.5 * height || deltaX3 < - 0.5 * height )
-        return false;
-
-    return (deltaX1*deltaX1 + deltaX2*deltaX2) < ((this->radius - offset) * (this->radius - offset));
-}
-
-
-void VerticalCylinder::scale(double delta)
-{
-    this->radius += delta;
-    this->height += delta;
-}
diff --git a/src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.h b/src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.h
index a0c97aa80..24d9383bf 100644
--- a/src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.h
+++ b/src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.h
@@ -1,9 +1,35 @@
-//  _    ___      __              __________      _     __
-// | |  / (_)____/ /___  ______ _/ / ____/ /_  __(_)___/ /____
-// | | / / / ___/ __/ / / / __ `/ / /_  / / / / / / __  / ___/
-// | |/ / / /  / /_/ /_/ / /_/ / / __/ / / /_/ / / /_/ (__  )
-// |___/_/_/   \__/\__,_/\__,_/_/_/   /_/\__,_/_/\__,_/____/
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
 //
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file VerticalCylinder.h
+//! \ingroup geometries
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef VERTICAL_CYLINDER_H
 #define VERTICAL_CYLINDER_H
 
diff --git a/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h b/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h
index c1d8524ec..20fd08be4 100644
--- a/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h
+++ b/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h
@@ -28,7 +28,7 @@
 //
 //! \file BoundaryCondition.h
 //! \ingroup grid
-//! \author Soeren Peters, Stephan Lenz
+//! \author Soeren Peters, Stephan Lenz, Martin Schoenherr
 //=======================================================================================
 #ifndef BoundaryCondition_H
 #define BoundaryCondition_H
diff --git a/src/gpu/GridGenerator/grid/Field.cu b/src/gpu/GridGenerator/grid/Field.cpp
similarity index 98%
rename from src/gpu/GridGenerator/grid/Field.cu
rename to src/gpu/GridGenerator/grid/Field.cpp
index b330b2fba..d8ac2a80e 100644
--- a/src/gpu/GridGenerator/grid/Field.cu
+++ b/src/gpu/GridGenerator/grid/Field.cpp
@@ -26,9 +26,9 @@
 //  You should have received a copy of the GNU General Public License along
 //  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
 //
-//! \file Field.cu
+//! \file Field.cpp
 //! \ingroup grid
-//! \author Soeren Peters, Stephan Lenz
+//! \author Soeren Peters, Stephan Lenz, Martin Schoenherr
 //=======================================================================================
 #include "Field.h"
 
diff --git a/src/gpu/GridGenerator/grid/Field.h b/src/gpu/GridGenerator/grid/Field.h
index eafa81ec6..002c8c108 100644
--- a/src/gpu/GridGenerator/grid/Field.h
+++ b/src/gpu/GridGenerator/grid/Field.h
@@ -28,7 +28,7 @@
 //
 //! \file Field.h
 //! \ingroup grid
-//! \author Soeren Peters, Stephan Lenz
+//! \author Soeren Peters, Stephan Lenz, Martin Schoenherr
 //=======================================================================================
 #ifndef FIELD_H
 #define FIELD_H
diff --git a/src/gpu/GridGenerator/grid/GridBuilder/GridBuilder.h b/src/gpu/GridGenerator/grid/GridBuilder/GridBuilder.h
index faee46ca6..57290025c 100644
--- a/src/gpu/GridGenerator/grid/GridBuilder/GridBuilder.h
+++ b/src/gpu/GridGenerator/grid/GridBuilder/GridBuilder.h
@@ -28,7 +28,7 @@
 //
 //! \file GridBuilder.h
 //! \ingroup grid
-//! \author Soeren Peters, Stephan Lenz
+//! \author Soeren Peters, Stephan Lenz, Martin Schönherr
 //=======================================================================================
 #ifndef GridBuilder_H
 #define GridBuilder_H
diff --git a/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp b/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp
index 6137256e9..20c285c13 100644
--- a/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp
+++ b/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp
@@ -28,7 +28,7 @@
 //
 //! \file LevelGridBuilder.cpp
 //! \ingroup grid
-//! \author Soeren Peters, Stephan Lenz
+//! \author Soeren Peters, Stephan Lenz, Martin Schönherr
 //=======================================================================================
 #include "LevelGridBuilder.h"
 
@@ -46,13 +46,10 @@
 #include "grid/GridFactory.h"
 #include "grid/GridInterface.h"
 #include "grid/NodeValues.h"
-#include "grid/partition/Partition.h"
 
 #include "io/GridVTKWriter/GridVTKWriter.h"
 #include "io/QLineWriter.h"
 #include "io/SimulationFileWriter/SimulationFileWriter.h"
-#include "io/VTKWriterWrapper/PolyDataWriterWrapper.h"
-#include "io/VTKWriterWrapper/UnstructuredGridWrapper.h"
 
 #include "utilities/communication.h"
 #include "utilities/transformator/ArrowTransformator.h"
diff --git a/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.h b/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.h
index 0e1e9e25f..f2325435d 100644
--- a/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.h
+++ b/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.h
@@ -28,7 +28,7 @@
 //
 //! \file LevelGridBuilder.h
 //! \ingroup grid
-//! \author Soeren Peters, Stephan Lenz
+//! \author Soeren Peters, Stephan Lenz, Martin Schönherr
 //=======================================================================================
 #ifndef LEVEL_GRID_BUILDER_H
 #define LEVEL_GRID_BUILDER_H
diff --git a/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.cpp b/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.cpp
index 47bea5643..565a02a28 100644
--- a/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.cpp
+++ b/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.cpp
@@ -28,7 +28,7 @@
 //
 //! \file MultipleGridBuilder.cpp
 //! \ingroup grid
-//! \author Soeren Peters, Stephan Lenz
+//! \author Soeren Peters, Stephan Lenz, Martin Schönherr
 //=======================================================================================
 #include "MultipleGridBuilder.h"
 
diff --git a/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.h b/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.h
index 8c05a61ca..fa3defd96 100644
--- a/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.h
+++ b/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.h
@@ -28,7 +28,7 @@
 //
 //! \file MultipleGridBuilder.h
 //! \ingroup grid
-//! \author Soeren Peters, Stephan Lenz
+//! \author Soeren Peters, Stephan Lenz, Martin Schoenherr
 //=======================================================================================
 #ifndef MULTIPLE_GRID_BUILDER_H
 #define MULTIPLE_GRID_BUILDER_H
diff --git a/src/gpu/GridGenerator/grid/GridImp.cu b/src/gpu/GridGenerator/grid/GridImp.cpp
similarity index 99%
rename from src/gpu/GridGenerator/grid/GridImp.cu
rename to src/gpu/GridGenerator/grid/GridImp.cpp
index 6bb3db8d4..362007a93 100644
--- a/src/gpu/GridGenerator/grid/GridImp.cu
+++ b/src/gpu/GridGenerator/grid/GridImp.cpp
@@ -26,9 +26,9 @@
 //  You should have received a copy of the GNU General Public License along
 //  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
 //
-//! \file GridImp.cu
+//! \file GridImp.cpp
 //! \ingroup grid
-//! \author Soeren Peters, Stephan Lenz
+//! \author Soeren Peters, Stephan Lenz, Martin Schoenherr
 //=======================================================================================
 #include "GridImp.h"
 
diff --git a/src/gpu/GridGenerator/grid/GridInterface.cu b/src/gpu/GridGenerator/grid/GridInterface.cpp
similarity index 87%
rename from src/gpu/GridGenerator/grid/GridInterface.cu
rename to src/gpu/GridGenerator/grid/GridInterface.cpp
index 5b4dc9310..dc99a8397 100644
--- a/src/gpu/GridGenerator/grid/GridInterface.cu
+++ b/src/gpu/GridGenerator/grid/GridInterface.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file GridInterface.cpp
+//! \ingroup grid
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #include "GridInterface.h"
 
 #include <iostream>
diff --git a/src/gpu/GridGenerator/grid/GridInterface.h b/src/gpu/GridGenerator/grid/GridInterface.h
index d3ade4706..303d79d49 100644
--- a/src/gpu/GridGenerator/grid/GridInterface.h
+++ b/src/gpu/GridGenerator/grid/GridInterface.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file GridInterface.h
+//! \ingroup grid
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef GRID_INTERFACE_H
 #define GRID_INTERFACE_H
 
diff --git a/src/gpu/GridGenerator/grid/NodeValues.h b/src/gpu/GridGenerator/grid/NodeValues.h
index 5ecd9bce6..c726fdf85 100644
--- a/src/gpu/GridGenerator/grid/NodeValues.h
+++ b/src/gpu/GridGenerator/grid/NodeValues.h
@@ -28,7 +28,7 @@
 //
 //! \file NodeValues.h
 //! \ingroup grid
-//! \author Soeren Peters, Stephan Lenz
+//! \author Soeren Peters, Stephan Lenz, Martin Schoenherr
 //=======================================================================================
 #ifndef NodeValues_H
 #define NodeValues_H
@@ -75,36 +75,4 @@ static constexpr char OVERLAP_TMP = 60;
 } // namespace gpu
 } // namespace vf
 
-//#define FLUID 0
-//
-//#define FLUID_CFC 1
-//#define FLUID_CFF 2
-//
-//#define FLUID_FCC 3
-//#define FLUID_FCF 4
-//
-//#define MULTI_GPU_SEND 10
-//#define MULTI_GPU_RECIEVE 11
-//
-//#define BC_PRESSURE 20
-//#define BC_VELOCITY 21
-//#define BC_SOLID 22
-//
-//#define BC_SLIP 23
-//#define BC_NOSLIP 24
-//#define BC_OUTFLOW 25
-//
-//#define STOPPER_OUT_OF_GRID 30
-//#define STOPPER_COARSE_UNDER_FINE 31
-//#define STOPPER_SOLID 32
-//#define STOPPER_OUT_OF_GRID_BOUNDARY 33
-//
-//#define INVALID_OUT_OF_GRID 40
-//#define INVALID_COARSE_UNDER_FINE 41
-//#define INVALID_SOLID 42
-//
-//#define NEGATIVE_DIRECTION_BORDER = 51;
-//
-//#define OVERLAP_TMP 60
-
 #endif
diff --git a/src/gpu/GridGenerator/grid/distributions/D3Q13.h b/src/gpu/GridGenerator/grid/distributions/D3Q13.h
deleted file mode 100644
index f314b970c..000000000
--- a/src/gpu/GridGenerator/grid/distributions/D3Q13.h
+++ /dev/null
@@ -1,70 +0,0 @@
-#ifndef D3Q13_H
-#define D3Q13_H
-
-#define DIR_13_R 0
-#define DIR_13_NE 1
-#define DIR_13_SW 2
-#define DIR_13_SE 3
-#define DIR_13_NW 4
-#define DIR_13_TE 5
-#define DIR_13_BW 6
-#define DIR_13_BE 7
-#define DIR_13_TW 8
-#define DIR_13_TN 9
-#define DIR_13_BS 10
-#define DIR_13_BN 11
-#define DIR_13_TS 12
-
-#define DIR_13_START  0
-#define DIR_13_END   12
-
-
-#define DIR_13_NE_X  1
-#define DIR_13_NE_Y  1
-#define DIR_13_NE_Z  0
-
-#define DIR_13_SW_X  -1
-#define DIR_13_SW_Y  -1
-#define DIR_13_SW_Z  0
-
-#define DIR_13_SE_X  1
-#define DIR_13_SE_Y  -1
-#define DIR_13_SE_Z  0
-
-#define DIR_13_NW_X  -1
-#define DIR_13_NW_Y  1
-#define DIR_13_NW_Z  0
-
-#define DIR_13_TE_X  1
-#define DIR_13_TE_Y  0
-#define DIR_13_TE_Z  1
-
-#define DIR_13_BW_X  -1
-#define DIR_13_BW_Y  0
-#define DIR_13_BW_Z  -1
-
-#define DIR_13_BE_X  1
-#define DIR_13_BE_Y  0
-#define DIR_13_BE_Z  -1
-
-#define DIR_13_TW_X  -1
-#define DIR_13_TW_Y  0
-#define DIR_13_TW_Z  1
-
-#define DIR_13_TN_X  0
-#define DIR_13_TN_Y  1
-#define DIR_13_TN_Z  1
-
-#define DIR_13_BS_X  0
-#define DIR_13_BS_Y  -1
-#define DIR_13_BS_Z  -1
-
-#define DIR_13_BN_X  0
-#define DIR_13_BN_Y  1
-#define DIR_13_BN_Z  -1
-
-#define DIR_13_TS_X  0
-#define DIR_13_TS_Y  -1
-#define DIR_13_TS_Z  1
-
-#endif
diff --git a/src/gpu/GridGenerator/grid/distributions/D3Q19.h b/src/gpu/GridGenerator/grid/distributions/D3Q19.h
deleted file mode 100644
index 3f48a3bb1..000000000
--- a/src/gpu/GridGenerator/grid/distributions/D3Q19.h
+++ /dev/null
@@ -1,100 +0,0 @@
-#ifndef D3Q19_H_
-#define D3Q19_H_
-
-#define DIR_19_E    0
-#define DIR_19_W    1
-#define DIR_19_N    2
-#define DIR_19_S    3
-#define DIR_19_T    4
-#define DIR_19_B    5
-#define DIR_19_NE   6
-#define DIR_19_SW   7
-#define DIR_19_SE   8
-#define DIR_19_NW   9
-#define DIR_19_TE   10
-#define DIR_19_BW   11
-#define DIR_19_BE   12
-#define DIR_19_TW   13
-#define DIR_19_TN   14
-#define DIR_19_BS   15
-#define DIR_19_BN   16
-#define DIR_19_TS   17
-#define DIR_19_ZERO 18
-
-#define DIR_19_START  0
-#define DIR_19_END   18
-
-
-#define DIR_19_E_X  1
-#define DIR_19_E_Y  0
-#define DIR_19_E_Z  0
-            
-#define DIR_19_W_X  -1
-#define DIR_19_W_Y  0
-#define DIR_19_W_Z  0
-            
-#define DIR_19_N_X  0
-#define DIR_19_N_Y  1
-#define DIR_19_N_Z  0
-            
-#define DIR_19_S_X  0
-#define DIR_19_S_Y  -1
-#define DIR_19_S_Z  0
-            
-#define DIR_19_T_X  0
-#define DIR_19_T_Y  0
-#define DIR_19_T_Z  1
-            
-#define DIR_19_B_X  0
-#define DIR_19_B_Y  0
-#define DIR_19_B_Z  -1
-
-#define DIR_19_NE_X  1
-#define DIR_19_NE_Y  1
-#define DIR_19_NE_Z  0
-             
-#define DIR_19_SW_X  -1
-#define DIR_19_SW_Y  -1
-#define DIR_19_SW_Z  0
-             
-#define DIR_19_SE_X  1
-#define DIR_19_SE_Y  -1
-#define DIR_19_SE_Z  0
-             
-#define DIR_19_NW_X  -1
-#define DIR_19_NW_Y  1
-#define DIR_19_NW_Z  0
-             
-#define DIR_19_TE_X  1
-#define DIR_19_TE_Y  0
-#define DIR_19_TE_Z  1
-             
-#define DIR_19_BW_X  -1
-#define DIR_19_BW_Y  0
-#define DIR_19_BW_Z  -1
-             
-#define DIR_19_BE_X  1
-#define DIR_19_BE_Y  0
-#define DIR_19_BE_Z  -1
-             
-#define DIR_19_TW_X  -1
-#define DIR_19_TW_Y  0
-#define DIR_19_TW_Z  1
-             
-#define DIR_19_TN_X  0
-#define DIR_19_TN_Y  1
-#define DIR_19_TN_Z  1
-             
-#define DIR_19_BS_X  0
-#define DIR_19_BS_Y  -1
-#define DIR_19_BS_Z  -1
-             
-#define DIR_19_BN_X  0
-#define DIR_19_BN_Y  1
-#define DIR_19_BN_Z  -1
-             
-#define DIR_19_TS_X  0
-#define DIR_19_TS_Y  -1
-#define DIR_19_TS_Z  1
-
-#endif
diff --git a/src/gpu/GridGenerator/grid/distributions/D3Q7.h b/src/gpu/GridGenerator/grid/distributions/D3Q7.h
index 6654cc147..f43aeb01c 100644
--- a/src/gpu/GridGenerator/grid/distributions/D3Q7.h
+++ b/src/gpu/GridGenerator/grid/distributions/D3Q7.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file D3Q7.h
+//! \ingroup grid
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef D3Q7_H
 #define D3Q7_H
 
diff --git a/src/gpu/GridGenerator/grid/kernel/runGridKernelGPU.cu b/src/gpu/GridGenerator/grid/kernel/runGridKernelGPU.cu
deleted file mode 100644
index ff9a60d78..000000000
--- a/src/gpu/GridGenerator/grid/kernel/runGridKernelGPU.cu
+++ /dev/null
@@ -1,220 +0,0 @@
-#include "runGridKernelGPU.cuh"
-
-#include "utilities/cuda/cudaDefines.h"
-#include "utilities/cuda/cudaKernelCall.h"
-#include "utilities/cuda/LaunchParameter.cuh"
-#include "grid/GridImp.h"
-#include "geometries/TriangularMesh/TriangularMesh.h"
-
-GLOBAL void initalField(GridImp grid);
-GLOBAL void runMeshing(GridImp grid, const TriangularMesh geom);
-
-GLOBAL void findGridInterface(GridImp grid, GridImp finerGrid);
-GLOBAL void runKernelTomarkNodesToDeleteOutsideOfGeometry(GridImp grid);
-GLOBAL void markNodesToDeleteOutsideOfGeometry(GridImp grid);
-GLOBAL void findNeighborIndicesKernel(GridImp grid);
-GLOBAL void setOverlapNodesToInvalid(GridImp grid, GridImp finderGrid);
-
-//////////////////////////////////////////////////////////////////////////
-
-float runKernelInitalUniformGrid3d(const LaunchParameter& para, GridImp &grid)
-{
-    return runKernel(initalField, para, grid);
-}
-
-GLOBAL void initalField(GridImp grid)
-{
-    //TODO: outcomment because of nvlink warning caused by the new allocation in Cell().
-    //uint index = LaunchParameter::getGlobalIdx_2D_1D();
-    //if (index < grid.getSize())
-    //    grid.findInnerNode(index);
-}
-
-//////////////////////////////////////////////////////////////////////////
-
-float runKernelToMesh(const LaunchParameter& para, GridImp &grid, const TriangularMesh &geom)
-{
-    return runKernel(runMeshing, para, grid, geom);
-}
-
-GLOBAL void runMeshing(GridImp grid, const TriangularMesh geom)
-{
-    // TODO: outcomment because of nvlink warning caused by the new allocation in Cell().
-    //unsigned int i = LaunchParameter::getGlobalIdx_1D_1D();
-    //if (i < geom.size)
-    //    grid.mesh(geom.triangles[i]);
-}
-
-//////////////////////////////////////////////////////////////////////////
-
-float runKernelToMarkNodesToDeleteOutsideOfGeometry(const LaunchParameter& para, GridImp &grid)
-{
-    return runKernel(markNodesToDeleteOutsideOfGeometry, para, grid);
-}
-
-GLOBAL void markNodesToDeleteOutsideOfGeometry(GridImp grid)
-{
-    //int numberOfEdgeNodes = grid.ny * grid.nz;
-    //unsigned int i = LaunchParameter::getGlobalIdx_1D_1D();
-
-    //if (i < numberOfEdgeNodes)
-    //{
-    //    int x = 0;
-    //    int y = i % grid.ny;
-    //    int z = i / grid.ny;
-
-    //    grid.setFieldEntryToSolid(grid.transCoordToIndex(x, y, z));
-
-    //    while (grid.isFluid(i) && x < grid.nx - 1)
-    //    {
-    //        x += 1;
-    //        grid.setFieldEntryToSolid(grid.transCoordToIndex(x, y, z));
-    //    }
-    //}
-
-}
-
-
-//////////////////////////////////////////////////////////////////////////
-
-float runKernelSetOverlapNodesToInvalid(const LaunchParameter& para, GridImp &grid, GridImp &finerGrid)
-{
-    return runKernel(setOverlapNodesToInvalid, para, grid, finerGrid);
-}
-
-GLOBAL void setOverlapNodesToInvalid(GridImp grid, GridImp finerGrid)
-{
-	// not up to date
-    //const uint index = LaunchParameter::getGlobalIdx_2D_1D();
-    //if (index < grid.getSize())
-        //grid.findGridInterfaceCF(index, finerGrid);
-}
-
-
-
-/*#################################################################################*/
-/*---------------------------------find invalid nodes------------------------------*/
-/*---------------------------------------------------------------------------------*/
-GLOBAL void setInvalidNodes(GridImp grid, bool *foundInvalidNode);
-/*---------------------------------------------------------------------------------*/
-
-float runKernelSetToInvalid(const LaunchParameter& para, GridImp &grid)
-{
-    bool* foundInvalidNode_d;
-    bool* foundInvalidNode_h = new bool();
-    *foundInvalidNode_h = true;
-    CudaSafeCall( cudaMalloc(&foundInvalidNode_d, sizeof(bool)));
-    CudaCheckError();
-    cudaEvent_t start, stop;
-    cudaEventCreate(&start);
-    cudaEventCreate(&stop);
-    cudaEventRecord(start, 0);
-
-    while (*foundInvalidNode_h)
-    {
-        *foundInvalidNode_h = false;
-        CudaSafeCall(cudaMemcpy(foundInvalidNode_d, foundInvalidNode_h, sizeof(bool), cudaMemcpyHostToDevice));
-        setInvalidNodes << <para.blocks, para.threads >> >(grid, foundInvalidNode_d);
-        cudaDeviceSynchronize();
-        CudaCheckError();
-
-        CudaSafeCall(cudaMemcpy(foundInvalidNode_h, foundInvalidNode_d, sizeof(bool), cudaMemcpyDeviceToHost));
-    }
-
-    cudaDeviceSynchronize();
-    cudaEventRecord(stop, 0);
-    cudaEventSynchronize(stop);
-    float elapsedTime;
-    cudaEventElapsedTime(&elapsedTime, start, stop);
-
-    cudaEventDestroy(start);
-    cudaEventDestroy(stop);
-
-    CudaCheckError();
-    cudaFree(foundInvalidNode_d);
-    delete foundInvalidNode_h;
-
-    return elapsedTime;
-}
-
-
-GLOBAL void setInvalidNodes(GridImp grid, bool *foundInvalidNode)
-{
-    // not up to date
-    //uint index = LaunchParameter::getGlobalIdx_2D_1D();
-    ////if (index < grid.getSize())
-    //    //grid.setInsideNode(index, *foundInvalidNode);
-}
-
-
-/*#################################################################################*/
-
-float runKernelFindIndices(const LaunchParameter& para, GridImp &grid)
-{
-    return runKernel(findNeighborIndicesKernel, para, grid);
-}
-
-GLOBAL void findNeighborIndicesKernel(GridImp grid)
-{
-    // not up to date
-    //uint index = LaunchParameter::getGlobalIdx_2D_1D();
-    //if (index < grid.getSize())
-    //    grid.setNeighborIndices(index);
-}
-
-
-/*#################################################################################*/
-
-float runKernelToFindGridInterface(const LaunchParameter& para, GridImp &grid, GridImp &finerGrid)
-{
-    return runKernel(findGridInterface, para, grid, finerGrid);
-}
-
-GLOBAL void findGridInterface(GridImp grid, GridImp finerGrid)
-{
-	// not up to date
-    //uint index = LaunchParameter::getGlobalIdx_2D_1D();
-    //if (index < grid.getSize())
-    //    grid.findGridInterfaceCF(index, finerGrid);
-}
-/*#################################################################################*/
-
-GLOBAL void findNeighborsNewIndices(GridImp grid);
-float runKernelToFindNeighborsNewIndices(const LaunchParameter& para, GridImp &grid)
-{
-    return runKernel(findNeighborsNewIndices, para, grid);
-}
-
-GLOBAL void findNeighborsNewIndices(GridImp grid)
-{
-    // not up to date
-    //unsigned int index = LaunchParameter::getGlobalIdx_2D_1D();
-    //if (index < grid.getSize())
-    //    grid.setNeighborIndices(index);
-}
-/*#################################################################################*/
-
-GLOBAL void findGridInterfaceNewIndicesFC(GridImp grid);
-GLOBAL void findGridInterfaceNewIndicesCF(GridImp grid);
-float runKernelToFindGridInterfaceNewIndices(const LaunchParameter& para, GridImp &grid)
-{
-    runKernel(findGridInterfaceNewIndicesCF, para, grid);
-    return runKernel(findGridInterfaceNewIndicesFC, para, grid);
-}
-
-
-GLOBAL void findGridInterfaceNewIndicesCF(GridImp grid)
-{
-    // not up to date
-    //unsigned int index = LaunchParameter::getGlobalIdx_2D_1D();
-    //if (index < grid.getNumberOfNodesCF())
-        //grid.findForGridInterfaceSparseIndexCF(index);
-}
-
-GLOBAL void findGridInterfaceNewIndicesFC(GridImp grid)
-{
-    // not up to date
-    // unsigned int index = LaunchParameter::getGlobalIdx_2D_1D();
-    //if (index < grid.getNumberOfNodesFC())
-    //    grid.findForGridInterfaceSparseIndexFCcoarse(index);
-}
diff --git a/src/gpu/GridGenerator/grid/kernel/runGridKernelGPU.cuh b/src/gpu/GridGenerator/grid/kernel/runGridKernelGPU.cuh
deleted file mode 100644
index e63e42881..000000000
--- a/src/gpu/GridGenerator/grid/kernel/runGridKernelGPU.cuh
+++ /dev/null
@@ -1,23 +0,0 @@
-#ifndef runGridKernelGPU_H
-#define runGridKernelGPU_H
-
-
-class Grid;
-class GridImp;
-class TriangularMesh;
-class LaunchParameter;
-
-float runKernelInitalUniformGrid3d(const LaunchParameter& para, GridImp &grid);
-float runKernelToMesh(const LaunchParameter& para, GridImp &grid, const TriangularMesh &geom);
-float runKernelToMarkNodesToDeleteOutsideOfGeometry(const LaunchParameter& para, GridImp &grid);
-
-float runKernelToFindGridInterface(const LaunchParameter& para, GridImp &grid, GridImp &finerGrid);
-float runKernelToFindNeighborsNewIndices(const LaunchParameter& para, GridImp &grid);
-float runKernelToFindGridInterfaceNewIndices(const LaunchParameter& para, GridImp &grid);
-
-
-float runKernelSetOverlapNodesToInvalid(const LaunchParameter& para, GridImp &grid, GridImp &finerGrid);
-float runKernelSetToInvalid(const LaunchParameter& para, GridImp &grid);
-float runKernelFindIndices(const LaunchParameter& para, GridImp &grid);
-
-#endif
diff --git a/src/gpu/GridGenerator/grid/partition/Partition.cpp b/src/gpu/GridGenerator/grid/partition/Partition.cpp
deleted file mode 100644
index 970599105..000000000
--- a/src/gpu/GridGenerator/grid/partition/Partition.cpp
+++ /dev/null
@@ -1,653 +0,0 @@
-//#include "Partition.h"
-//
-//#include "metis.h"
-//#include <stdio.h>
-//#include <iostream>
-//
-//#include <global.h>
-//#include <GridGenerator/grid/Grid.h>
-//#include <GridGenerator/geometries/Triangle/Triangle.h>
-//#include <GridGenerator/geometries/Vertex/Vertex.h>
-//#include <GridGenerator/geometries/BoundingBox/BoundingBox.h>
-//#include <GridGenerator/io/GridVTKWriter/GridVTKWriter.h>
-//#include <GridGenerator/io/VTKWriterWrapper/UnstructuredGridWrapper.h>
-//#include <GridGenerator/utilities/Transformator/TransformatorImp.h>
-//
-//#include <utilities/logger/Logger.h>
-//
-//int Partition::calcEdgesFromGraph(SPtr<Grid> grid) 
-//{
-//    int insideNeighbors = 6;
-//    int cornerNeighbors = 3;
-//    int outsideEdgesNeighbors = 4;
-//    int ousiteAreaNeighbors = 5;
-//
-//    int corner = 8;
-//    int outsiteEdges = grid->getNumberOfNodesX() * 4 + grid->getNumberOfNodesY() * 4 + grid->getNumberOfNodesZ() * 4 - 24;
-//    int outsideArea = 2 * grid->getNumberOfNodesX()*grid->getNumberOfNodesY() + 2 * grid->getNumberOfNodesX()*grid->getNumberOfNodesZ() + 2 * grid->getNumberOfNodesY()*grid->getNumberOfNodesZ() - 8 * grid->getNumberOfNodesX() - 8 * grid->getNumberOfNodesY() - 8 * grid->getNumberOfNodesZ() + 24;
-//    int inside = grid->getSize() - corner - outsiteEdges - outsideArea;
-//    return inside * insideNeighbors + outsideArea * ousiteAreaNeighbors + outsiteEdges * outsideEdgesNeighbors + corner * cornerNeighbors;
-//}
-//
-//void Partition::partitionGridMesh(SPtr<Grid> grid) 
-//{
-//    printf("MESH\n");
-//
-//    idx_t nelements = (grid->getNumberOfNodesX() - 1) * (grid->getNumberOfNodesY() - 1) * (grid->getNumberOfNodesZ() - 1);
-//    idx_t nNodes = nelements * 8;
-//    idx_t nWeightsMesh = 1;
-//    idx_t nPartsMesh = 2;
-//
-//    idx_t *partMeshNodes = new idx_t[nNodes];
-//    idx_t *partMeshElements = new idx_t[nelements];
-//    idx_t objval;
-//
-//    // Indexes of starting points in adjacent array
-//    idx_t *eptr = new idx_t[nelements + 1];
-//
-//    for (int i = 0; i < nelements + 1; i++) {
-//        eptr[i] = i * 8;
-//    }
-//
-//    // Adjacent vertices in consecutive index order
-//    idx_t *eind = new idx_t[nNodes];
-//
-//    real x, y, z, newX, newY, newZ;
-//    int nIndex;
-//    int numberNode = 0;
-//    for (unsigned int index = 0; index < grid->getSize(); index++) {
-//        grid->transIndexToCoords(index, x, y, z);
-//
-//        newX = x + 1;
-//        newY = y + 1;
-//        newZ = z + 1;
-//        if (newX >= grid->getNumberOfNodesX() || newY >= grid->getNumberOfNodesY() || newZ >= grid->getNumberOfNodesZ())
-//            continue;
-//
-//        // self
-//        eind[numberNode] = index;
-//        numberNode++;
-//
-//        //+x
-//        nIndex = grid->transCoordToIndex(newX, y, z);
-//        eind[numberNode] = nIndex;
-//        numberNode++;
-//
-//        //x//+y
-//        nIndex = grid->transCoordToIndex(newX, newY, z);
-//        eind[numberNode] = nIndex;
-//        numberNode++;
-//
-//        //+y
-//        nIndex = grid->transCoordToIndex(x, newY, z);
-//        eind[numberNode] = nIndex;
-//        numberNode++;
-//
-//        //+z
-//        nIndex = grid->transCoordToIndex(x, y, newZ);
-//        eind[numberNode] = nIndex;
-//        numberNode++;
-//
-//        //+z//+x
-//        nIndex = grid->transCoordToIndex(newX, y, newZ);
-//        eind[numberNode] = nIndex;
-//        numberNode++;
-//
-//        //+z//+x//+y
-//        nIndex = grid->transCoordToIndex(newX, newY, newZ);
-//        eind[numberNode] = nIndex;
-//        numberNode++;
-//
-//        //+z//+y
-//        nIndex = grid->transCoordToIndex(x, newY, newZ);
-//        eind[numberNode] = nIndex;
-//        numberNode++;
-//
-//    }
-//
-//
-//    //for (int i = 0; i < nelements; i++) {
-//    //    printf("element %d: ", i);
-//    //    for (int v = eptr[i]; v < eptr[i + 1]; v++) {
-//    //        printf("%d ", eind[v]);
-//    //    }
-//    //    printf("\n");
-//    //}
-//
-//    // Weights of vertices
-//    // if all weights are equal then can be set to NULL
-//    //idx_t vwgtMesh[nNodes * nWeightsMesh] = { 1, 1, 1, 1, 1, 1, 1, 1, 1 };
-//
-//    idx_t ncommon = 4;
-//
-//    rstatus_et ret = (rstatus_et)METIS_PartMeshDual(&nelements, &nNodes, eptr, eind,
-//        NULL, NULL, &ncommon, &nPartsMesh,
-//        NULL, NULL, &objval, partMeshElements, partMeshNodes);
-//
-//    std::cout << ret << std::endl;
-//
-//    for (int part_i = 0; part_i < nelements; part_i++){
-//        std::cout << part_i << " " << partMeshElements[part_i] << std::endl;
-//    }
-//
-//
-//    for (unsigned int part_i = 0; part_i < grid->getSize(); part_i++){
-//        //grid->setFieldEntry(part_i, partMeshNodes[part_i]);
-//    }
-//
-//    GridVTKWriter::writeSparseGridToVTK(grid, "../../../../metisGridMesh.vtk");
-//
-//    delete[] partMeshNodes;
-//    delete[] partMeshElements;
-//    delete[] eptr;
-//    delete[] eind;
-//}
-//
-//void Partition::partitionGrid(SPtr<Grid> grid) {
-//    idx_t nVertices = grid->getSize();
-//    idx_t nEdges = calcEdgesFromGraph(grid);
-//    idx_t nWeights = 1;
-//    idx_t nParts = 4;
-//
-//    idx_t objval;
-//    idx_t* part = new idx_t[nVertices];
-//    idx_t* xadj = new idx_t[nVertices + 1];
-//    idx_t* adjncy = new idx_t[nEdges];
-//
-//    xadj[0] = 0;
-//	real x, y, z, newX, newY, newZ;
-//    int nIndex;
-//    int numberOfNeighbors = 0;
-//    int counter = 0;
-//    for (int index = 0; index < nVertices; index++) {
-//        grid->transIndexToCoords(index, x, y, z);
-//        //+x 
-//        newX = x + 1;
-//        if (newX >= 0 && newX < grid->getNumberOfNodesX()) {
-//            nIndex = grid->transCoordToIndex(newX, y, z);
-//            adjncy[numberOfNeighbors] = nIndex;
-//            numberOfNeighbors++;
-//        }
-//        //-x
-//        newX = x - 1;
-//        if (newX >= 0 && newX < grid->getNumberOfNodesX()) {
-//            nIndex = grid->transCoordToIndex(newX, y, z);
-//            adjncy[numberOfNeighbors] = nIndex;
-//            numberOfNeighbors++;
-//        }
-//
-//        //+y
-//        newY = y + 1;
-//        if (newY >= 0 && newY < grid->getNumberOfNodesY()) {
-//            nIndex = grid->transCoordToIndex(x, newY, z);
-//            adjncy[numberOfNeighbors] = nIndex;
-//            numberOfNeighbors++;
-//        }
-//
-//        //-y
-//        newY = y - 1;
-//        if (newY >= 0 && newY < grid->getNumberOfNodesY()) {
-//            nIndex = grid->transCoordToIndex(x, newY, z);
-//            adjncy[numberOfNeighbors] = nIndex;
-//            numberOfNeighbors++;
-//        }
-//
-//        //+z
-//        newZ = z + 1;
-//        if (newZ >= 0 && newZ < grid->getNumberOfNodesZ()) {
-//            nIndex = grid->transCoordToIndex(x, y, newZ);
-//            adjncy[numberOfNeighbors] = nIndex;
-//            numberOfNeighbors++;
-//        }
-//
-//        //-z
-//        newZ = z - 1;
-//        if (newZ >= 0 && newZ < grid->getNumberOfNodesZ()) {
-//            nIndex = grid->transCoordToIndex(x, y, newZ);
-//            adjncy[numberOfNeighbors] = nIndex;
-//            numberOfNeighbors++;
-//        }
-//        xadj[index + 1] = numberOfNeighbors;
-//    }
-//
-//
-//    // Indexes of starting points in adjacent array
-//    //idx_t xadj[nVertices + 1] = { 0, 2, 5, 7, 9, 12, 14 };
-//
-//    // Adjacent vertices in consecutive index order
-//    //idx_t adjncy[2 * nEdges] = { 1, 3, 0, 4, 2, 1, 5, 0, 4, 3, 1, 5, 4, 2 };
-//
-//
-//    //for (int index = 0; index < nVertices; index++) {
-//    //    printf("vertexNachbarn von %d: ", index);
-//    //    printf("Grenzen: %d - %d, ", xadj[index], xadj[index + 1]);
-//    //    for (int v = xadj[index]; v < xadj[index + 1]; v++) {
-//    //        printf("%d ", adjncy[v]);
-//    //    }
-//    //    printf("\n");
-//    //}
-//
-//    // Weights of vertices
-//    // if all weights are equal then can be set to NULL
-//    //idx_t* vwgt = new idx_t[nVertices * nWeights];
-//
-//    idx_t options[METIS_NOPTIONS];
-//    METIS_SetDefaultOptions(options);
-//
-//    options[METIS_OPTION_OBJTYPE] = METIS_OBJTYPE_CUT; //minimizing the edge-cut communication
-//
-//    options[METIS_OPTION_NCUTS] = 1; // number of different partitioning //default 1
-//    options[METIS_OPTION_CONTIG] = 1; // force contiguous partitions
-//    options[METIS_OPTION_DBGLVL] = 0; //print debugging information
-//
-//    rstatus_et ret = (rstatus_et)METIS_PartGraphKway(&nVertices, &nWeights, xadj, adjncy,
-//        NULL, NULL, NULL, &nParts, NULL,
-//        NULL, options, &objval, part);
-//
-//    std::cout << ret << std::endl;
-//
-//    //for (unsigned part_i = 0; part_i < nVertices; part_i++){
-//    //    std::cout << part_i << " " << part[part_i] << std::endl;
-//    //}
-//
-//    for (int part_i = 0; part_i < nVertices; part_i++){
-//        //grid->setFieldEntry(part_i, part[part_i]);
-//    }
-//
-//    GridVTKWriter::writeSparseGridToVTK(grid, "../../../../metisGridFineFourParts.vtk");
-//}
-//
-//std::vector<std::vector<int> > Partition::partitionBoxes(std::vector<std::vector<BoundingBox> > boxes, int processes, std::vector< std::shared_ptr<Transformator> > transformators)
-//{
-//    if (processes == 1){
-//        std::vector<std::vector<int> > tasks;
-//        tasks.resize(processes);
-//        tasks[0].push_back(0);
-//        tasks[0].push_back(0);
-//        return tasks;
-//    }
-//
-//    std::vector<idx_t> xadj;
-//    std::vector<idx_t> adjncy;
-//
-//    int numberOfNeighbors = 0;
-//    xadj.push_back(0);
-//    for (int level = 0; level < boxes.size(); level++) {
-//        for (int i = 0; i < boxes[level].size(); i++) {
-//        	
-//			BoundingBox box = boxes[level][i];
-//            transformators[level]->transformGridToWorld(box);
-//
-//            int index = i + (int)boxes[level].size() * level;
-//            for (int levelCompare = 0; levelCompare < boxes.size(); levelCompare++) {
-//                for (int iCompare = 0; iCompare < boxes[levelCompare].size(); iCompare++) {
-//                    int indexCompare = iCompare + (int)boxes[levelCompare].size() * levelCompare;
-//                    if (index == indexCompare)
-//                        continue;
-//
-//					BoundingBox boxCompare = boxes[levelCompare][iCompare];
-//                    transformators[level]->transformGridToWorld(boxCompare);
-//                    if (box.intersect(boxCompare)) {
-//                        adjncy.push_back(indexCompare);
-//                        numberOfNeighbors++;
-//                    }
-//                }
-//            }
-//            xadj.push_back(numberOfNeighbors);
-//        }
-//    }
-//
-//    //logging::Logger::getInstance()->logTerminal("Metis Graph Structure:");
-//    //for (int index = 0; index < xadj.size() - 1; index++) {
-//    //    logging::Logger::getInstance()->logTerminal("vertex neighbor [" + SSTR(index) + "]");
-//    //    logging::Logger::getInstance()->logTerminal(" boundary: " + SSTR(xadj[index]) + " - " + SSTR(xadj[index + 1]) + ",");
-//    //    for (int v = xadj[index]; v < xadj[index + 1]; v++) {
-//    //        logging::Logger::getInstance()->logTerminal(SSTR(adjncy[v]) + " ");
-//    //    }
-//    //    logging::Logger::getInstance()->logTerminal("\n");
-//    //}
-//
-//    // Weights of vertices
-//    // if all weights are equal then can be set to NULL
-//    //idx_t* vwgt = new idx_t[nVertices * nWeights];
-//
-//    idx_t options[METIS_NOPTIONS];
-//    METIS_SetDefaultOptions(options);
-//
-//    options[METIS_OPTION_OBJTYPE] = METIS_OBJTYPE_CUT; //minimizing the edge-cut communication
-//
-//    options[METIS_OPTION_NCUTS] = 1; // number of different partitioning //default 1
-//    options[METIS_OPTION_CONTIG] = 1; // force contiguous partitions
-//    options[METIS_OPTION_DBGLVL] = 0; //print debugging information
-//
-//    idx_t nVertices = (idx_t)xadj.size() - 1;
-//    idx_t nWeights = 1;
-//    idx_t nParts = processes;
-//
-//    idx_t objval;
-//    idx_t* part = new idx_t[nVertices];
-//
-//    //rstatus_et ret = (rstatus_et)METIS_PartGraphKway(&nVertices, &nWeights, xadj.data(), adjncy.data(),
-//    //    NULL, NULL, NULL, &nParts, NULL,
-//    //    NULL, options, &objval, part);
-//
-//    rstatus_et ret = (rstatus_et)METIS_PartGraphRecursive(&nVertices, &nWeights, xadj.data(), adjncy.data(),
-//        NULL, NULL, NULL, &nParts, NULL,
-//        NULL, options, &objval, part);
-//
-//	if (ret == METIS_OK)
-//		*logging::out << logging::Logger::INFO_INTERMEDIATE << "Metis Status: OK\n";
-//
-//    
-//
-//    for (int part_i = 0; part_i < nVertices; part_i++)
-//		*logging::out << logging::Logger::INFO_INTERMEDIATE << "Block: " << part_i << " - Partition: " << part[part_i] << "\n";
-//    
-//
-//    std::vector<std::vector<int> > tasks;
-//    tasks.resize(processes);
-//    
-//    for (int i = 0; i < nVertices; i++) {
-//        int x = i % boxes[0].size();
-//        int level = (i - x) / (int)boxes[0].size();
-//        tasks[part[i]].push_back(level);
-//        tasks[part[i]].push_back(x);
-//    }
-//
-//    return tasks;
-//}
-//
-//std::vector<BoundingBox> Partition::getProcessBoxes(const int numberOfProcesses, const int globalNx, const int globalNy, const int globalNz)
-//{
-//    std::vector<BoundingBox> boxes;
-//	BoundingBox b(0, globalNx, 0, globalNy, 0, globalNz);
-//    boxes.push_back(b);
-//    if (numberOfProcesses == 1)
-//        return boxes;
-//
-//    bool splitX, splitY, splitZ;
-//    while (boxes.size() < numberOfProcesses)
-//	{
-//        findMaxBoxSize(boxes, splitX, splitY, splitZ);
-//        if (numberOfProcesses % 3 == 0)
-//            splitAllBoxesInThreePieces(boxes, splitX, splitY, splitZ);
-//        else 
-//            splitAllBoxesInTwoPieces(boxes, splitX, splitY, splitZ);
-//    }
-//    return boxes;
-//}
-//
-//std::vector<std::vector<Triangle> > Partition::getTrianglesPerProcess(std::vector<BoundingBox> &boxes, Triangle *triangles, int nTriangles)
-//{
-//    std::vector<Triangle> triangleVec;
-//    triangleVec.resize(nTriangles);
-//    for (int i = 0; i < nTriangles; i++)
-//        triangleVec[i] = triangles[i];
-//
-//    std::vector<std::vector<Triangle> > trianglesPerProcess;
-//    trianglesPerProcess.resize(boxes.size());
-//
-//    for (int j = 0; j < triangleVec.size(); j++) {
-//        for (int i = 0; i < boxes.size(); i++) {
-//            if (boxes[i].isInside(triangleVec[j])) {
-//                trianglesPerProcess[i].push_back(triangleVec[j]);
-//                triangleVec.erase(triangleVec.begin() + j);
-//                j--;
-//                break;
-//            }
-//            else if (boxes[i].intersect(triangleVec[j])) {
-//                //splitAndPushTriangle(boxes[i], trianglesPerProcess[i], triangleVec, j);
-//                trianglesPerProcess[i].push_back(triangleVec[j]);
-//            }
-//        }
-//    }
-//    return trianglesPerProcess;
-//}
-//
-//void Partition::findMaxBoxSize(std::vector<BoundingBox> &boxes, bool &splitX, bool &splitY, bool &splitZ)
-//{
-//    int lengthX, lengthY, lengthZ;
-//    lengthX = boxes[0].maxX - boxes[0].minX;
-//    lengthY = boxes[0].maxY - boxes[0].minY;
-//    lengthZ = boxes[0].maxZ - boxes[0].minZ;
-//
-//    splitX = true, splitY = false, splitZ = false;
-//    if (lengthX < lengthY){
-//        splitX = splitZ = false;
-//        splitY = true;
-//    }
-//    else if (lengthY < lengthZ){
-//        splitX = splitY = false;
-//        splitZ = true;
-//    }
-//}
-//
-//void Partition::splitAllBoxesInThreePieces(std::vector<BoundingBox> &boxes, bool splitX, bool splitY, bool splitZ)
-//{
-//    std::vector<BoundingBox> boxesTemp;
-//    for (int i = 0; i < boxes.size(); i++) {
-//        if (splitX) {
-//            int newLengthX = (boxes[i].maxX - boxes[i].minX) / 3;
-//			BoundingBox splitBox1(boxes[i].minX, boxes[i].minX + newLengthX, boxes[i].minY, boxes[i].maxY, boxes[i].minZ, boxes[i].maxZ);
-//			BoundingBox splitBox2(boxes[i].minX, boxes[i].minX + newLengthX + newLengthX, boxes[i].minY, boxes[i].maxY, boxes[i].minZ, boxes[i].maxZ);
-//			BoundingBox splitBox3(boxes[i].minX + newLengthX + newLengthX, boxes[i].maxX, boxes[i].minY, boxes[i].maxY, boxes[i].minZ, boxes[i].maxZ);
-//            boxesTemp.push_back(splitBox1);
-//            boxesTemp.push_back(splitBox2);
-//            boxesTemp.push_back(splitBox3);
-//        }
-//        if (splitY) {
-//            int newLengthY = (boxes[i].maxY - boxes[i].minY) / 3;
-//			BoundingBox splitBox1(boxes[i].minX, boxes[i].maxX, boxes[i].minY, boxes[i].minY + newLengthY, boxes[i].minZ, boxes[i].maxZ);
-//			BoundingBox splitBox2(boxes[i].minX, boxes[i].maxX, boxes[i].minY + newLengthY, boxes[i].minY + newLengthY + newLengthY, boxes[i].minZ, boxes[i].maxZ);
-//			BoundingBox splitBox3(boxes[i].minX, boxes[i].maxX, boxes[i].minY + newLengthY + newLengthY, boxes[i].maxY, boxes[i].minZ, boxes[i].maxZ);
-//            boxesTemp.push_back(splitBox1);
-//            boxesTemp.push_back(splitBox2);
-//            boxesTemp.push_back(splitBox3);
-//        }
-//        if (splitZ) {
-//            int newLengthZ = (boxes[i].maxZ - boxes[i].minZ) / 3;
-//			BoundingBox splitBox1(boxes[i].minX, boxes[i].maxX, boxes[i].minY, boxes[i].maxY, boxes[i].minZ, boxes[i].minZ + newLengthZ);
-//			BoundingBox splitBox2(boxes[i].minX, boxes[i].maxX, boxes[i].minY, boxes[i].maxY, boxes[i].minZ + newLengthZ, boxes[i].minZ + newLengthZ + newLengthZ);
-//			BoundingBox splitBox3(boxes[i].minX, boxes[i].maxX, boxes[i].minY, boxes[i].maxY, boxes[i].minZ + newLengthZ + newLengthZ, boxes[i].maxZ);
-//            boxesTemp.push_back(splitBox1);
-//            boxesTemp.push_back(splitBox2);
-//            boxesTemp.push_back(splitBox3);
-//        }
-//    }
-//    boxes.clear();
-//    boxes = boxesTemp;
-//}
-//
-//void Partition::splitAllBoxesInTwoPieces(std::vector<BoundingBox> &boxes, bool splitX, bool splitY, bool splitZ)
-//{
-//    std::vector<BoundingBox> boxesTemp;
-//    for (int i = 0; i < boxes.size(); i++) {
-//        if (splitX) {
-//            int newLengthX = (boxes[i].maxX - boxes[i].minX) / 2;
-//			BoundingBox splitBox1(boxes[i].minX, boxes[i].minX + newLengthX, boxes[i].minY, boxes[i].maxY, boxes[i].minZ, boxes[i].maxZ);
-//			BoundingBox splitBox2(boxes[i].minX + newLengthX, boxes[i].maxX, boxes[i].minY, boxes[i].maxY, boxes[i].minZ, boxes[i].maxZ);
-//            boxesTemp.push_back(splitBox1);
-//            boxesTemp.push_back(splitBox2);
-//        }
-//        if (splitY) {
-//            int newLengthY = (boxes[i].maxY - boxes[i].minY) / 2;
-//			BoundingBox splitBox1(boxes[i].minX, boxes[i].maxX, boxes[i].minY, boxes[i].minY + newLengthY, boxes[i].minZ, boxes[i].maxZ);
-//			BoundingBox splitBox2(boxes[i].minX, boxes[i].maxX, boxes[i].minY + newLengthY, boxes[i].maxY, boxes[i].minZ, boxes[i].maxZ);
-//            boxesTemp.push_back(splitBox1);
-//            boxesTemp.push_back(splitBox2);
-//        }
-//        if (splitZ) {
-//            int newLengthZ = (boxes[i].maxZ - boxes[i].minZ) / 2;
-//			BoundingBox splitBox1(boxes[i].minX, boxes[i].maxX, boxes[i].minY, boxes[i].maxY, boxes[i].minZ, boxes[i].minZ + newLengthZ);
-//			BoundingBox splitBox2(boxes[i].minX, boxes[i].maxX, boxes[i].minY, boxes[i].maxY, boxes[i].minZ + newLengthZ, boxes[i].maxZ);
-//            boxesTemp.push_back(splitBox1);
-//            boxesTemp.push_back(splitBox2);
-//        }
-//    }
-//    boxes.clear();
-//    boxes = boxesTemp;
-//}
-//
-//std::vector<std::vector<Triangle> >  Partition::splitTriangles(std::vector<Triangle> &triangleVec, std::vector<BoundingBox> boxes)
-//{
-//    std::vector<std::vector<Triangle> > trianglesPerProcess;
-//    trianglesPerProcess.resize(boxes.size());
-//
-//    for (int j = 0; j < triangleVec.size(); j++) {
-//        for (int i = 0; i < boxes.size(); i++) {
-//            if (boxes[i].isInside(triangleVec[j])) {
-//                trianglesPerProcess[i].push_back(triangleVec[j]);
-//                triangleVec.erase(triangleVec.begin() + j);
-//                j--;
-//                break;
-//            }
-//            else if (boxes[i].intersect(triangleVec[j])) {
-//                splitAndPushTriangle(boxes[i], trianglesPerProcess[i], triangleVec, j);
-//                //trianglesPerProcess[i].push_back(triangleVec[j]);
-//            }
-//        }
-//    }
-//
-//    return trianglesPerProcess;
-//
-//}
-//
-//
-//
-//void Partition::splitAndPushTriangle(BoundingBox &box, std::vector<Triangle> &trianglesPerProcess, std::vector<Triangle> &triangleVec, int indexTriangle)
-//{
-//    Triangle triangleToSplit = triangleVec[indexTriangle];
-//	//BoundingBox triangleBox = BoundingBox::makeExactBox(triangleToSplit);
-//    //std::vector<std::vector<Vertex> > intersectionsBox = box.getIntersectionPoints(triangleBox);
-//
-//    //UnstructuredGridWriter writer;
-//    //double v1[3] = { triangleToSplit.v1.x, triangleToSplit.v1.y, triangleToSplit.v1.z };
-//    //double v2[3] = { triangleToSplit.v2.x, triangleToSplit.v2.y, triangleToSplit.v2.z };
-//    //double v3[3] = { triangleToSplit.v3.x, triangleToSplit.v3.y, triangleToSplit.v3.z };
-//    //writer.addTriangle(v1, v2, v3);
-//    //double b[6] = { box.minX, box.maxX, box.minY, box.maxY, box.minZ, box.maxZ };
-//    //writer.addBoundingBox(b);
-//    //double b2[6] = { triangleBox.minX, triangleBox.maxX, triangleBox.minY, triangleBox.maxY, triangleBox.minZ, triangleBox.maxZ };
-//    //writer.addBoundingBox(b2);
-//    //writer.writeUnstructuredGridToFile("testIntersectionTriangle");
-//
-//
-//    //for (int i = 0; i < intersectionsBox.size(); i++) {
-//    //    if (intersectionsBox[i].size() == 0)
-//    //        continue;
-//
-//    //    Vertex edge1 = intersectionsBox[i][0] - intersectionsBox[i][1];
-//    //    Vertex edge2 = intersectionsBox[i][1] - intersectionsBox[i][2];
-//    //    Vertex normal = edge1.crossProduct(edge2);
-//    //    normal.normalize();
-//
-//    //    Vertex point(intersectionsBox[i][0].x, intersectionsBox[i][0].y, intersectionsBox[i][0].z);
-//    //    Vertex v4 = (triangleToSplit.v1 - point);
-//    //    Vertex v5 = (triangleToSplit.v2 - point);
-//    //    Vertex v6 = (triangleToSplit.v3 - point);
-//
-//    //    real d1 = v4 * normal;
-//    //    real d2 = v5 * normal;
-//    //    real d3 = v6 * normal;
-//
-//    //    // a to b crosses the clipping plane
-//    //    if (d1 * d2 < 0.0f)
-//    //        sliceTriangle(trianglesPerProcess, triangleVec, indexTriangle, triangleToSplit.v1, triangleToSplit.v2, triangleToSplit.v3, d1, d2, d3);
-//
-//    //    // a to c crosses the clipping plane
-//    //    else if (d1 * d3 < 0.0f)
-//    //        sliceTriangle(trianglesPerProcess, triangleVec, indexTriangle, triangleToSplit.v3, triangleToSplit.v1, triangleToSplit.v2, d3, d1, d2);
-//
-//    //    // b to c crosses the clipping plane
-//    //    else if (d2 * d3 < 0.0f)
-//    //        sliceTriangle(trianglesPerProcess, triangleVec, indexTriangle, triangleToSplit.v2, triangleToSplit.v3, triangleToSplit.v1, d2, d3, d1);
-//    //}
-//}
-//
-//
-//void Partition::sliceTriangle(
-//    std::vector<Triangle>& out,
-//    std::vector<Triangle>& triangleVec,
-//    int index,
-//    const Vertex& a, // First point on triangle, CCW order
-//    const Vertex& b, // Second point on triangle, CCW order
-//    const Vertex& c, // Third point on triangle, CCW order
-//    real d1,        // Distance of point a to the splitting plane
-//    real d2,        // Distance of point b to the splitting plane
-//    real d3         // Distance of point c to the splitting plane
-//    )
-//{
-//    // Calculate the intersection point from a to b
-//    Vertex ab = a + ((b - a) * (d1 / (d1 - d2)) );
-//    Triangle tri;
-//
-//    if (d1 < 0.0f)
-//    {
-//        // b to c crosses the clipping plane
-//        if (d3 < 0.0f)
-//        {
-//            // Calculate intersection point from b to c
-//            Vertex bc = b + ((c - b) *  (d2 / (d2 - d3)));
-//
-//            tri.set(b, bc, ab);
-//            triangleVec.push_back(tri);
-//
-//            tri.set(bc, c, a);
-//            triangleVec.push_back(tri);
-//
-//            tri.set(ab, bc, a);
-//            triangleVec.push_back(tri);
-//        }
-//
-//        // c to a crosses the clipping plane
-//        else
-//        {
-//            // Calculate intersection point from a to c
-//            Vertex ac = a + ((c - a) * (d1 / (d1 - d3)));
-//
-//            tri.set(a, ab, ac);
-//            triangleVec.push_back(tri);
-//
-//            tri.set(ab, b, c);
-//            triangleVec.push_back(tri);
-//
-//            tri.set(ac, ab, c);
-//            triangleVec.push_back(tri);
-//        }
-//    }
-//    else
-//    {
-//        // c to a crosses the clipping plane
-//        if (d3 < 0.0f)
-//        {
-//            // Calculate intersection point from a to c
-//            Vertex ac = a +  ((c - a) * (d1 / (d1 - d3)));
-//
-//            tri.set(a, ab, ac);
-//            triangleVec.push_back(tri);
-//
-//            tri.set(ac, ab, b);
-//            triangleVec.push_back(tri);
-//
-//            tri.set(b, c, ac);
-//            triangleVec.push_back(tri);
-//        }
-//
-//        // b to c crosses the clipping plane
-//        else
-//        {
-//            // Calculate intersection point from b to c
-//            Vertex bc = b + ((c - b) * (d2 / (d2 - d3)));
-//
-//            tri.set(b, bc, ab);
-//            triangleVec.push_back(tri);
-//
-//            tri.set(a, ab, bc);
-//            triangleVec.push_back(tri);
-//
-//            tri.set(c, a, bc);
-//            triangleVec.push_back(tri);
-//        }
-//    }
-//}
-//
diff --git a/src/gpu/GridGenerator/grid/partition/Partition.h b/src/gpu/GridGenerator/grid/partition/Partition.h
deleted file mode 100644
index a45f7668b..000000000
--- a/src/gpu/GridGenerator/grid/partition/Partition.h
+++ /dev/null
@@ -1,45 +0,0 @@
-//#ifndef Partition_H
-//#define Partition_H
-//
-//#include "global.h"
-//
-//
-//#include <vector>
-//#include <string>
-//#include <memory>
-//
-//class BoundingBox;
-//struct Triangle;
-//struct Vertex;
-//class Grid;
-//class Transformator;
-//
-//class GRIDGENERATOR_EXPORT Partition
-//{
-//public:
-//    static void partitionGridMesh(SPtr<Grid> grid);
-//    static void partitionGrid(SPtr<Grid> grid);
-//
-//	static std::vector<BoundingBox > getProcessBoxes(const int numberOfProcesses, const int globalNx, const int globalNy, const int globalNz);
-//    static std::vector<std::vector<int> > partitionBoxes(std::vector<std::vector<BoundingBox> >, int processes, std::vector< std::shared_ptr<Transformator> > transformators);
-//
-//    static std::vector<std::vector<Triangle> > getTrianglesPerProcess(std::vector<BoundingBox> &boxes, Triangle *triangles, int nTriangles);
-//
-//    static std::vector<std::vector<Triangle> >  splitTriangles(std::vector<Triangle> &triangleVec, std::vector<BoundingBox> boxes);
-//    
-//private:
-//    Partition(){};
-//    ~Partition(){};
-//
-//    static int calcEdgesFromGraph(SPtr<Grid> grid);
-//
-//    static void splitAllBoxesInThreePieces(std::vector<BoundingBox> &boxes, bool splitX, bool splitY, bool splitZ);
-//    static void splitAllBoxesInTwoPieces(std::vector<BoundingBox> &boxes, bool splitX, bool splitY, bool splitZ);
-//    static void findMaxBoxSize(std::vector<BoundingBox> &boxes, bool &splitX, bool &splitY, bool &splitZ);
-//
-//    static void splitAndPushTriangle(BoundingBox &box, std::vector<Triangle> &trianglesPerProcess, std::vector<Triangle> &triangleVec, int indexTriangle);
-//    static void sliceTriangle(std::vector<Triangle> &out, std::vector<Triangle>& triangleVec, int index, const Vertex& a, const Vertex& b, const Vertex& c, real d1, real d2, real d3);
-//
-//};
-//
-//#endif
diff --git a/src/gpu/GridGenerator/io/GridVTKWriter/GridVTKWriter.cpp b/src/gpu/GridGenerator/io/GridVTKWriter/GridVTKWriter.cpp
index 835cdf8d6..2c8624732 100644
--- a/src/gpu/GridGenerator/io/GridVTKWriter/GridVTKWriter.cpp
+++ b/src/gpu/GridGenerator/io/GridVTKWriter/GridVTKWriter.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file GridVTKWriter.cpp
+//! \ingroup io
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #define _CRT_SECURE_NO_DEPRECATE
 #include "GridVTKWriter.h"
 
@@ -241,74 +273,6 @@ void GridVTKWriter::writeInterpolationCellsToVTKXML(SPtr<Grid> grid, SPtr<Grid>
 	}
     WbWriterVtkXmlBinary::getInstance()->writeOctsWithCellData(name, nodes, cells, celldatanames, celldata);
 }
-//deprecated
-//void GridVTKWriter::writeGridToVTKXML(SPtr<Grid> grid, const std::string& name, WRITING_FORMAT format)
-//{
-//    std::vector<UbTupleFloat3> nodes;
-//    std::vector<UbTupleUInt8> cells;
-//    std::vector<std::string> nodedatanames;
-//    std::vector< std::vector<double> > nodedata;
-//
-//    nodedatanames.push_back("types");
-//
-//
-//    nodedata.resize(nodedatanames.size());
-//
-//    CbArray3D<int> nodeNumbers(grid->getNumberOfNodesX(), grid->getNumberOfNodesY(), grid->getNumberOfNodesZ(), -1);
-//    int nr = 0;
-//
-//    for (real x = grid->getStartX(); x <= grid->getEndX(); x += grid->getDelta())
-//    {
-//        for (real y = grid->getStartY(); y <= grid->getEndY(); y += grid->getDelta())
-//        {
-//            for (real z = grid->getStartZ(); z <= grid->getEndZ(); z += grid->getDelta())
-//            {
-//                const auto xTranslate = int((x - grid->getStartX()) / grid->getDelta());
-//                const auto yTranslate = int((y - grid->getStartY()) / grid->getDelta());
-//                const auto zTranslate = int((z - grid->getStartZ()) / grid->getDelta());
-//                nodeNumbers(xTranslate, yTranslate, zTranslate) = nr++;
-//                nodes.push_back(UbTupleFloat3(float(x), float(y),float(z)));
-//
-//                const char type = grid->getFieldEntry(grid->transCoordToIndex(x, y, z));
-//                nodedata[0].push_back(type);
-//            }
-//        }
-//    }
-//
-//    int SWB, SEB, NEB, NWB, SWT, SET, NET, NWT;
-//    for (real x = grid->getStartX(); x < grid->getEndX(); x += grid->getDelta())
-//    {
-//        for (real y = grid->getStartY(); y < grid->getEndY(); y += grid->getDelta())
-//        {
-//            for (real z = grid->getStartZ(); z < grid->getEndZ(); z += grid->getDelta())
-//            {
-//                const auto xTranslate = int((x - grid->getStartX()) / grid->getDelta());
-//                const auto yTranslate = int((y - grid->getStartY()) / grid->getDelta());
-//                const auto zTranslate = int((z - grid->getStartZ()) / grid->getDelta());
-//
-//				if (!nodeNumbers.indicesInRange(xTranslate + 1, yTranslate +1, zTranslate +1)) // blame Lenz
-//					continue;
-//
-//                if ((SWB = nodeNumbers(xTranslate, yTranslate, zTranslate)) >= 0
-//                    && (SEB = nodeNumbers(xTranslate + 1, yTranslate, zTranslate)) >= 0
-//                    && (NEB = nodeNumbers(xTranslate + 1, yTranslate + 1, zTranslate)) >= 0
-//                    && (NWB = nodeNumbers(xTranslate, yTranslate + 1, zTranslate)) >= 0
-//                    && (SWT = nodeNumbers(xTranslate, yTranslate, zTranslate + 1)) >= 0
-//                    && (SET = nodeNumbers(xTranslate + 1, yTranslate, zTranslate + 1)) >= 0
-//                    && (NET = nodeNumbers(xTranslate + 1, yTranslate + 1, zTranslate + 1)) >= 0
-//                    && (NWT = nodeNumbers(xTranslate, yTranslate + 1, zTranslate + 1)) >= 0)
-//                {
-//                    Cell cell(x, y, z, grid->getDelta());
-//                    if(grid->nodeInCellIs(cell, OUT_OF_GRID) || grid->nodeInCellIs(cell, INVALID_NODE))
-//                        continue;
-//
-//                    cells.push_back(makeUbTuple(uint(SWB), uint(SEB), uint(NEB), uint(NWB), uint(SWT), uint(SET), uint(NET), uint(NWT)));
-//                }
-//            }
-//        }
-//    }
-//    WbWriterVtkXmlBinary::getInstance()->writeOctsWithNodeData(name, nodes, cells, nodedatanames, nodedata);
-//}
 
 
 /*#################################################################################*/
diff --git a/src/gpu/GridGenerator/io/GridVTKWriter/GridVTKWriter.h b/src/gpu/GridGenerator/io/GridVTKWriter/GridVTKWriter.h
index 43fe61145..cf33df096 100644
--- a/src/gpu/GridGenerator/io/GridVTKWriter/GridVTKWriter.h
+++ b/src/gpu/GridGenerator/io/GridVTKWriter/GridVTKWriter.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file GridVTKWriter.h
+//! \ingroup io
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef GridVTKWriter_h
 #define GridVTKWriter_h
 
diff --git a/src/gpu/GridGenerator/io/QLineWriter.cpp b/src/gpu/GridGenerator/io/QLineWriter.cpp
index 6df995b2d..29894e8d5 100644
--- a/src/gpu/GridGenerator/io/QLineWriter.cpp
+++ b/src/gpu/GridGenerator/io/QLineWriter.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file QLineWriter.cpp
+//! \ingroup io
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #include "QLineWriter.h"
 
 #include <vector>
diff --git a/src/gpu/GridGenerator/io/QLineWriter.h b/src/gpu/GridGenerator/io/QLineWriter.h
index 01596adbd..c7fed1a8f 100644
--- a/src/gpu/GridGenerator/io/QLineWriter.h
+++ b/src/gpu/GridGenerator/io/QLineWriter.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file QLineWriter.h
+//! \ingroup io
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef QLINEWRITER_H
 #define QLINEWRITER_H
 
diff --git a/src/gpu/GridGenerator/io/STLReaderWriter/STLReader.cpp b/src/gpu/GridGenerator/io/STLReaderWriter/STLReader.cpp
index 3f41f66ae..3e91d8829 100644
--- a/src/gpu/GridGenerator/io/STLReaderWriter/STLReader.cpp
+++ b/src/gpu/GridGenerator/io/STLReaderWriter/STLReader.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file STLReader.cpp
+//! \ingroup io
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #define _CRT_SECURE_NO_DEPRECATE
 #include "STLReader.h"
 
diff --git a/src/gpu/GridGenerator/io/STLReaderWriter/STLReader.h b/src/gpu/GridGenerator/io/STLReaderWriter/STLReader.h
index 3e7beef8c..333313727 100644
--- a/src/gpu/GridGenerator/io/STLReaderWriter/STLReader.h
+++ b/src/gpu/GridGenerator/io/STLReaderWriter/STLReader.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file STLReader.h
+//! \ingroup io
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef STLReader_H
 #define STLReader_H
 
diff --git a/src/gpu/GridGenerator/io/STLReaderWriter/STLWriter.cpp b/src/gpu/GridGenerator/io/STLReaderWriter/STLWriter.cpp
index 36e099c61..e29320cbd 100644
--- a/src/gpu/GridGenerator/io/STLReaderWriter/STLWriter.cpp
+++ b/src/gpu/GridGenerator/io/STLReaderWriter/STLWriter.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file STLWriter.cpp
+//! \ingroup io
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #define _CRT_SECURE_NO_DEPRECATE
 #include "STLWriter.h"
 
diff --git a/src/gpu/GridGenerator/io/STLReaderWriter/STLWriter.h b/src/gpu/GridGenerator/io/STLReaderWriter/STLWriter.h
index c61854802..4ba87fd82 100644
--- a/src/gpu/GridGenerator/io/STLReaderWriter/STLWriter.h
+++ b/src/gpu/GridGenerator/io/STLReaderWriter/STLWriter.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file STLWriter.h
+//! \ingroup io
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef STLWriter_H
 #define STLWriter_H
 
diff --git a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileNames.cpp b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileNames.cpp
index 7cf2412a3..34b6b1d3c 100644
--- a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileNames.cpp
+++ b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileNames.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file SimulationFileNames.cpp
+//! \ingroup io
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #include "SimulationFileNames.h"
 
 const std::string fileEnding = ".dat";
diff --git a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileNames.h b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileNames.h
index fdc09047f..4be5b44bd 100644
--- a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileNames.h
+++ b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileNames.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file SimulationFileNames.h
+//! \ingroup io
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef SimulationFileNames_H
 #define SimulationFileNames_H
 
diff --git a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.cpp b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.cpp
index 5921f5be0..320a6e5fb 100644
--- a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.cpp
+++ b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file SimulationFileWriter.cpp
+//! \ingroup io
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #define _CRT_SECURE_NO_DEPRECATE
 #include "SimulationFileWriter.h"
 
diff --git a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.h b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.h
index ef9110880..d5d2a377b 100644
--- a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.h
+++ b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file SimulationFileWriter.h
+//! \ingroup io
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef SimulationFileWriter_H
 #define SimulationFileWriter_H
 
diff --git a/src/gpu/GridGenerator/io/VTKWriterWrapper/PolyDataWriterWrapper.cpp b/src/gpu/GridGenerator/io/VTKWriterWrapper/PolyDataWriterWrapper.cpp
deleted file mode 100644
index 3ce6742b1..000000000
--- a/src/gpu/GridGenerator/io/VTKWriterWrapper/PolyDataWriterWrapper.cpp
+++ /dev/null
@@ -1,29 +0,0 @@
-//#include "PolyDataWriterWrapper.h"
-//
-//#include <VTKWriter/PolyDataWriter/PolyDataWriterImp.h>
-//
-//#include <GridGenerator/geometries/Arrow/Arrow.h>
-//#include <GridGenerator/geometries/Vertex/Vertex.h>
-//
-//
-//PolyDataWriterWrapper::PolyDataWriterWrapper()
-//{
-//	writer = std::shared_ptr<PolyDataWriter>(new PolyDataWriterImp());
-//}
-//
-//PolyDataWriterWrapper::~PolyDataWriterWrapper()
-//{
-//
-//}
-//
-//void PolyDataWriterWrapper::addVectorArrow(std::shared_ptr<const Arrow> arrow)
-//{
-//	double startPoint[] = { arrow->getStart()->x, arrow->getStart()->y, arrow->getStart()->z };
-//	double endPoint[] = { arrow->getEnd()->x, arrow->getEnd()->y, arrow->getEnd()->z };
-//	writer->addVectorArrow(startPoint, endPoint);
-//}
-//
-//void PolyDataWriterWrapper::writePolyDataToFile(const std::string& filename) const
-//{
-//	writer->writePolyDataToFile(filename);
-//}
diff --git a/src/gpu/GridGenerator/io/VTKWriterWrapper/PolyDataWriterWrapper.h b/src/gpu/GridGenerator/io/VTKWriterWrapper/PolyDataWriterWrapper.h
deleted file mode 100644
index c7b3829d6..000000000
--- a/src/gpu/GridGenerator/io/VTKWriterWrapper/PolyDataWriterWrapper.h
+++ /dev/null
@@ -1,26 +0,0 @@
-//#ifndef PolyDataWriterWrapper_H
-//#define PolyDataWriterWrapper_H
-//
-//
-//#include <string>
-//#include <memory>
-//
-//class PolyDataWriter;
-//class Arrow;
-//
-//class PolyDataWriterWrapper
-//{
-//public:
-//	GRIDGENERATOR_EXPORT PolyDataWriterWrapper();
-//	GRIDGENERATOR_EXPORT ~PolyDataWriterWrapper();
-//
-//	GRIDGENERATOR_EXPORT virtual void addVectorArrow(std::shared_ptr<const Arrow> arrow);
-//	GRIDGENERATOR_EXPORT virtual void writePolyDataToFile(const std::string &filename) const;
-//
-//private:
-//    std::shared_ptr<PolyDataWriter> writer;
-//
-//};
-//
-//
-//#endif
diff --git a/src/gpu/GridGenerator/io/VTKWriterWrapper/UnstructuredGridWrapper.cpp b/src/gpu/GridGenerator/io/VTKWriterWrapper/UnstructuredGridWrapper.cpp
deleted file mode 100644
index b2de0057c..000000000
--- a/src/gpu/GridGenerator/io/VTKWriterWrapper/UnstructuredGridWrapper.cpp
+++ /dev/null
@@ -1,137 +0,0 @@
-//#define _CRT_SECURE_NO_DEPRECATE
-//#include "UnstructuredGridWrapper.h"
-//#include <iostream>
-//
-//#include <VTKWriter/UnstructuredGridWriter/UnstructuredGridWriter.h>
-//
-//#include <GridGenerator/geometries/Triangle/Triangle.h>
-//#include <GridGenerator/geometries/Vertex/Vertex.h>
-//#include <GridGenerator/geometries/BoundingBox/BoundingBox.h>
-//#include <GridGenerator/grid/Grid.cuh>
-//
-//UnstructuredGridWrapper::UnstructuredGridWrapper()
-//{
-//#ifndef __unix__
-//    this->writer = new UnstructuredGridWriter();
-//#endif
-//}
-//
-//UnstructuredGridWrapper::~UnstructuredGridWrapper()
-//{
-//#ifndef __unix__
-//    delete this->writer;
-//#endif
-//}
-//
-//void UnstructuredGridWrapper::addBoundingBox(double boundingBox[6], int type)
-//{
-//#ifndef __unix__
-//    this->writer->addBoundingBox(boundingBox, type);
-//#endif
-//}
-//
-//template <typename T>
-//void UnstructuredGridWrapper::addBoundingBox(BoundingBox<T> box, int type)
-//{
-//#ifndef __unix__
-//    double b[6] = {box.minX,box.maxX,box.minY,box.maxY,box.minZ,box.maxZ };
-//    this->writer->addBoundingBox(b, type);
-//#endif
-//}
-//
-//void UnstructuredGridWrapper::addVoxel(double node[3], double nodeNX[3], double nodeNY[3], double nodeNZ[3], double nodeNYNX[3], double nodeNZNY[3], double nodeNZNX[3], double nodeNZNYNX[3], int nodeTypes[8])
-//{
-//#ifndef __unix__
-//    this->writer->addVoxel(node, nodeNX, nodeNY, nodeNZ, nodeNYNX, nodeNZNY, nodeNZNX, nodeNZNYNX, nodeTypes);
-//#endif
-//}
-//
-//void UnstructuredGridWrapper::addTriangle(double v1[3], double v2[3], double v3[3], int type[3])
-//{
-//#ifndef __unix__
-//    this->writer->addTriangle(v1, v2, v3, type);
-//#endif
-//}
-//
-//void UnstructuredGridWrapper::addTriangle(Triangle t, int type[3])
-//{
-//#ifndef __unix__
-//    double v1[3] = { t.v1.x, t.v1.y, t.v1.z };
-//    double v2[3] = { t.v2.x, t.v2.y, t.v2.z };
-//    double v3[3] = { t.v3.x, t.v3.y, t.v3.z };
-//
-//    this->writer->addTriangle(v1, v2, v3, type);
-//#endif
-//}
-//
-//void UnstructuredGridWrapper::addTriangles(std::vector<Triangle> triangles)
-//{
-//#ifndef __unix__
-//    for (int i = 0; i < triangles.size(); i++) {
-//        double v1[3] = { triangles[i].v1.x, triangles[i].v1.y, triangles[i].v1.z };
-//        double v2[3] = { triangles[i].v2.x, triangles[i].v2.y, triangles[i].v2.z };
-//        double v3[3] = { triangles[i].v3.x, triangles[i].v3.y, triangles[i].v3.z };
-//
-//        this->writer->addTriangle(v1, v2, v3, 0);
-//    }
-//#endif
-//}
-//
-//void UnstructuredGridWrapper::addGridPoints(double grid[], int nx, int ny, int nz)
-//{
-//#ifndef __unix__
-//    this->writer->addGridPoints(grid, nx, ny, nz);
-//#endif
-//}
-//
-//void UnstructuredGridWrapper::addGridPoint(int x, int y, int z, int type)
-//{
-//#ifndef __unix__
-//    this->writer->addGridPoint(x, y, z, type);
-//#endif
-//}
-//
-//void UnstructuredGridWrapper::addGridPoint(Vertex v, int type)
-//{
-//#ifndef __unix__
-//    this->writer->addGridPoint((int)v.x, (int)v.y, (int)v.z, type);
-//#endif
-//}
-//
-//void UnstructuredGridWrapper::writeUnstructuredGridToFile(std::string filename)
-//{
-//#ifndef __unix__
-//    std::string path = PATH_TO_DATA;
-//    filename = path + filename;
-//    this->writer->writeUnstructuredGridToFile(filename);
-//#endif
-//}
-//
-//void UnstructuredGridWrapper::displayUnstructuredGrid()
-//{
-//#ifndef __unix__
-//    this->writer->displayUnstructuredGrid();
-//#endif
-//}
-//
-//void UnstructuredGridWrapper::displayUnstructuredGrid(std::string filename)
-//{
-//#ifndef __unix__
-//    std::string path = PATH_TO_DATA;
-//    filename = path + filename;
-//    this->writer->displayUnstructuredGrid(filename);
-//#endif
-//}
-//template <typename T>
-//void UnstructuredGridWrapper::writeBoxesToFile(std::vector<BoundingBox<T>> boxes, std::string name)
-//{
-//#ifndef __unix__
-//	UnstructuredGridWrapper writer;
-//	for (int i = 0; i < boxes.size(); i++) {
-//		writer.addBoundingBox(boxes[i], 0);
-//	}
-//	writer.writeUnstructuredGridToFile(name);
-//#endif
-//}
-//
-//template void UnstructuredGridWrapper::addBoundingBox(BoundingBox b, int type);
diff --git a/src/gpu/GridGenerator/io/VTKWriterWrapper/UnstructuredGridWrapper.h b/src/gpu/GridGenerator/io/VTKWriterWrapper/UnstructuredGridWrapper.h
deleted file mode 100644
index 6e13ba9dd..000000000
--- a/src/gpu/GridGenerator/io/VTKWriterWrapper/UnstructuredGridWrapper.h
+++ /dev/null
@@ -1,53 +0,0 @@
-//#ifndef UnstructuredGridWrapper_H
-//#define UnstructuredGridWrapper_H
-//
-//
-//#include <string>
-//#include <vector>
-//
-//class UnstructuredGridWriter;
-//struct Triangle;
-//
-//template <class T>
-//class BoundingBox;
-//struct Vertex;
-//class Grid;
-//
-//class GRIDGENERATOR_EXPORT UnstructuredGridWrapper
-//{
-//public:
-//    UnstructuredGridWrapper();
-//    ~UnstructuredGridWrapper();
-//
-//    void addBoundingBox(double boundingBox[6], int type);
-//	template <typename T>
-//    void addBoundingBox(BoundingBox<T> b, int type);
-//    void addVoxel(double node[3], double nodeNX[3], double nodeNY[3], double nodeNZ[3],
-//        double nodeNYNX[3], double nodeNZNY[3], double nodeNZNX[3], double nodeNZNYNX[3], int nodeTypes[8]);
-//
-//    void addTriangle(double v1[3], double v2[3], double v3[3], int type[3]);
-//    void addTriangle(Triangle t, int type[3]);
-//    void addTriangles(std::vector<Triangle> triangles);
-//
-//    void addGridPoints(double grid[], int nx, int ny, int nz);
-//
-//    void addGridPoint(int x, int y, int z, int type);
-//    void addGridPoint(Vertex v, int type);
-//
-//    void writeUnstructuredGridToFile(std::string filename);
-//	
-//    void displayUnstructuredGrid();
-//    void displayUnstructuredGrid(std::string filename);
-//
-//	template <typename T>
-//	static void writeBoxesToFile(std::vector<BoundingBox<T>>, std::string name);
-//
-//private:
-//#ifndef __unix__
-//    UnstructuredGridWriter *writer;
-//#endif
-//
-//};
-//
-//
-//#endif
diff --git a/src/gpu/GridGenerator/utilities/communication.h b/src/gpu/GridGenerator/utilities/communication.h
index 23dbd0832..11a1085f6 100644
--- a/src/gpu/GridGenerator/utilities/communication.h
+++ b/src/gpu/GridGenerator/utilities/communication.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file Communication.h
+//! \ingroup utilities
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef Communication_H
 #define Communication_H
 
diff --git a/src/gpu/GridGenerator/utilities/cuda/CudaErrorCheck.cu b/src/gpu/GridGenerator/utilities/cuda/CudaErrorCheck.cu
deleted file mode 100644
index 1d06e1783..000000000
--- a/src/gpu/GridGenerator/utilities/cuda/CudaErrorCheck.cu
+++ /dev/null
@@ -1,55 +0,0 @@
-#ifndef CudaErrorCheck_cu
-#define CudaErrorCheck_cu
-
-
-#include "cuda.h"
-#include "cuda_runtime.h"
-#include "device_launch_parameters.h"
-#include <stdio.h>
-
-#define CUDA_ERROR_CHECK
-
-#define CudaSafeCall( err ) __cudaSafeCall( err, __FILE__, __LINE__ )
-#define CudaCheckError()    __cudaCheckError( __FILE__, __LINE__ )
-
-inline void __cudaSafeCall(cudaError err, const char *file, const int line)
-{
-#ifdef CUDA_ERROR_CHECK
-	if (cudaSuccess != err)
-	{
-		fprintf(stderr, "cudaSafeCall() failed at %s:%i : %s\n",
-			file, line, cudaGetErrorString(err));
-		exit(-1);
-	}
-#endif
-
-	return;
-}
-
-inline void __cudaCheckError(const char *file, const int line)
-{
-#ifdef CUDA_ERROR_CHECK
-	cudaError err = cudaGetLastError();
-	if (cudaSuccess != err)
-	{
-		fprintf(stderr, "cudaCheckError() failed at %s\nline:%i : %s\n",
-			file, line, cudaGetErrorString(err));
-		fprintf(stderr, "CudaError: %d\n", err);
-		exit(-1);
-	}
-
-	// More careful checking. However, this will affect performance.
-	// Comment away if needed.
-	err = cudaDeviceSynchronize();
-	if (cudaSuccess != err)
-	{
-		fprintf(stderr, "cudaCheckError() with sync failed at %s:%i : %s\n",
-			file, line, cudaGetErrorString(err));
-		exit(-1);
-	}
-#endif
-
-	return;
-}
-
-#endif
diff --git a/src/gpu/GridGenerator/utilities/cuda/LaunchParameter.cu b/src/gpu/GridGenerator/utilities/cuda/LaunchParameter.cu
deleted file mode 100644
index ce1371592..000000000
--- a/src/gpu/GridGenerator/utilities/cuda/LaunchParameter.cu
+++ /dev/null
@@ -1,49 +0,0 @@
-#include "LaunchParameter.cuh"
-
-#define MAXBLOCKSIZE 65535
-
-LaunchParameter::LaunchParameter()
-{
-
-}
-
-LaunchParameter LaunchParameter::make_2D1D_launchParameter(int size, int threadDim)
-{
-	LaunchParameter para;
-	para.threads = dim3(threadDim, 1, 1);
-
-	int blocks_ = (int)(ceil((size / ((real)threadDim))));
-	para.blocks = dim3(blocks_, 1, 1);
-
-	if (blocks_ > MAXBLOCKSIZE) {
-		blocks_ = (int)sqrt((double)blocks_);
-		para.blocks = dim3(blocks_, blocks_, 1);
-	}
-	return para;
-}
-
-LaunchParameter LaunchParameter::make_1D1D_launchParameter(int size, int threadDim)
-{
-	LaunchParameter para;
-	para.threads = dim3(threadDim, 1, 1);
-	int blocks_ = (int)(ceil((real)size / (real)threadDim));
-	para.blocks = dim3(blocks_, 1);
-	return para;
-}
-
-__device__ int LaunchParameter::getGlobalIdx_2D_1D()
-{
-	int blockId = blockIdx.y * gridDim.x + blockIdx.x;
-	int threadId = blockId * blockDim.x + threadIdx.x;
-	return threadId;
-}
-
-__device__ int LaunchParameter::getGlobalIdx_1D_1D() {
-	return blockIdx.x *blockDim.x + threadIdx.x;
-}
-
-void LaunchParameter::print() const
-{
-	*logging::out << logging::Logger::INFO_INTERMEDIATE << "blocks: (" << blocks.x << ", " << blocks.y << ", " << blocks.z << ")"
-		<< ", threads: (" << threads.x << ", " << threads.y << ", " << threads.z << ")\n";
-}
diff --git a/src/gpu/GridGenerator/utilities/cuda/LaunchParameter.cuh b/src/gpu/GridGenerator/utilities/cuda/LaunchParameter.cuh
deleted file mode 100644
index 5029b0c52..000000000
--- a/src/gpu/GridGenerator/utilities/cuda/LaunchParameter.cuh
+++ /dev/null
@@ -1,29 +0,0 @@
-#ifndef kernelHelper_CUH
-#define kernelHelper_CUH
-
-#include <cuda.h>
-#include <cuda_runtime.h>
-#include <device_launch_parameters.h>
-#include <stdio.h>
-
-#include "global.h"
-
-class LaunchParameter
-{
-public:
-	GRIDGENERATOR_EXPORT LaunchParameter();
-
-	GRIDGENERATOR_EXPORT static LaunchParameter make_2D1D_launchParameter(int size, int threadDim);
-	GRIDGENERATOR_EXPORT static LaunchParameter make_1D1D_launchParameter(int size, int threadDim);
-
-	static int getGlobalIdx_2D_1D();
-	static int getGlobalIdx_1D_1D();
-
-	void print() const;
-
-	dim3 threads;
-	dim3 blocks;
-};
-
-
-#endif
diff --git a/src/gpu/GridGenerator/utilities/cuda/cudaDefines.h b/src/gpu/GridGenerator/utilities/cuda/cudaDefines.h
deleted file mode 100644
index b20401ef4..000000000
--- a/src/gpu/GridGenerator/utilities/cuda/cudaDefines.h
+++ /dev/null
@@ -1,66 +0,0 @@
-#ifndef CUDA_DEFINES_H
-#define CUDA_DEFINES_H
-
-#include <cuda_runtime.h>
-#include <stdio.h>
-
-#define CUDA_HOST __host__
-#define DEVICE __device__
-#define GLOBAL __global__
-#define CONSTANT __constant__
-
-
-#define HOSTDEVICE CUDA_HOST DEVICE
-
-static void printCudaInformation(int i) {
-    cudaDeviceProp prop;
-    cudaGetDeviceProperties(&prop, i);
-    printf(" --- General Information for device %d ---\n", i);
-    printf("Name: %s\n", prop.name);
-    printf("Compute capability: %d.%d\n", prop.major, prop.minor);
-    printf("Clock rate: %d\n", prop.clockRate);
-    printf("Device copy overlap: ");
-    if (prop.deviceOverlap)
-        printf("Enabled\n");
-    else
-        printf("Disabled\n");
-    printf("Kernel execition timeout : ");
-    if (prop.kernelExecTimeoutEnabled)
-        printf("Enabled\n");
-    else
-        printf("Disabled\n");
-    printf(" --- Memory Information for device %d ---\n", i);
-    printf("Total global mem: %zu\n", prop.totalGlobalMem);
-    printf("Total constant Mem: %zu\n", prop.totalConstMem);
-    printf("Max mem pitch: %zu\n", prop.memPitch);
-    printf("Texture Alignment: %zu\n", prop.textureAlignment);
-    printf("max Texture 1D: %d\n", prop.maxTexture1D);
-    printf("max Texture 2D: %d, %d\n", prop.maxTexture2D[0], prop.maxTexture2D[1]);
-    printf("max Texture 3D: %d, %d, %d\n", prop.maxTexture3D[0], prop.maxTexture3D[1], prop.maxTexture3D[2]);
-    printf(" --- MP Information for device %d ---\n", i);
-    printf("Multiprocessor count: %d\n",
-        prop.multiProcessorCount);
-    printf("Shared mem per mp: %zd\n", prop.sharedMemPerBlock);
-    printf("Registers per mp: %d\n", prop.regsPerBlock);
-    printf("Threads in warp: %d\n", prop.warpSize);
-    printf("Max threads per block: %d\n",
-        prop.maxThreadsPerBlock);
-    printf("Max thread dimensions: (%d, %d, %d)\n",
-        prop.maxThreadsDim[0], prop.maxThreadsDim[1],
-        prop.maxThreadsDim[2]);
-    printf("Max grid dimensions: (%d, %d, %d)\n",
-        prop.maxGridSize[0], prop.maxGridSize[1],
-        prop.maxGridSize[2]);
-    printf(" --- -------------------------------- ---\n");
-    printf("\n");
-
-    cudaSetDevice(i);
-    size_t free;
-    size_t total;
-    cudaMemGetInfo(&free, &total);
-    printf("Free: %zu Bytes, Total: %zu Bytes\n", free, total);
-    printf("Free: %zu MB, Total: %zu MB\n", free / 1000 / 1000, total / 1000 / 1000);
-    //cudaDeviceSetLimit(cudaLimitMallocHeapSize, free);
-}
-
-#endif 
diff --git a/src/gpu/GridGenerator/utilities/cuda/cudaKernelCall.h b/src/gpu/GridGenerator/utilities/cuda/cudaKernelCall.h
deleted file mode 100644
index 591197742..000000000
--- a/src/gpu/GridGenerator/utilities/cuda/cudaKernelCall.h
+++ /dev/null
@@ -1,33 +0,0 @@
-#ifndef cudaKernelCall_H
-#define cudaKernelCall_H
-
-#include "utilities/cuda/cudaDefines.h"
-#include "utilities/cuda/CudaErrorCheck.cu"
-#include "utilities/cuda/LaunchParameter.cuh"
-
-template<typename Functor, typename... TArgs>
-CUDA_HOST float runKernel(Functor kernel, const LaunchParameter& para, TArgs... args)
-{
-	para.print();
-
-	cudaEvent_t start, stop;
-	cudaEventCreate(&start);
-	cudaEventCreate(&stop);
-
-	cudaEventRecord(start, 0);
-	kernel << < para.blocks, para.threads >> >(args...);
-	CudaCheckError();
-	cudaDeviceSynchronize();
-	cudaEventRecord(stop, 0);
-
-	cudaEventSynchronize(stop);
-	float elapsedTime;
-	cudaEventElapsedTime(&elapsedTime, start, stop);
-	cudaEventDestroy(start);
-	cudaEventDestroy(stop);
-
-	return elapsedTime;
-}
-
-
-#endif 
diff --git a/src/gpu/GridGenerator/utilities/math/Math.cu b/src/gpu/GridGenerator/utilities/math/Math.cpp
similarity index 99%
rename from src/gpu/GridGenerator/utilities/math/Math.cu
rename to src/gpu/GridGenerator/utilities/math/Math.cpp
index 404ecaf33..0f5f5cc8e 100644
--- a/src/gpu/GridGenerator/utilities/math/Math.cu
+++ b/src/gpu/GridGenerator/utilities/math/Math.cpp
@@ -26,7 +26,7 @@
 //  You should have received a copy of the GNU General Public License along
 //  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
 //
-//! \file Math.cu
+//! \file Math.cpp
 //! \ingroup utilities
 //! \author Soeren Peters, Stephan Lenz
 //=======================================================================================
diff --git a/src/gpu/GridGenerator/utilities/transformator/ArrowTransformator.cpp b/src/gpu/GridGenerator/utilities/transformator/ArrowTransformator.cpp
index 7ec055c59..74a33c31b 100644
--- a/src/gpu/GridGenerator/utilities/transformator/ArrowTransformator.cpp
+++ b/src/gpu/GridGenerator/utilities/transformator/ArrowTransformator.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file ArrowTransformator.h
+//! \ingroup utilities
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #include "ArrowTransformator.h"
 
 #include "utilities/transformator/TransformatorImp.h"
diff --git a/src/gpu/GridGenerator/utilities/transformator/ArrowTransformator.h b/src/gpu/GridGenerator/utilities/transformator/ArrowTransformator.h
index 186b66838..ad8011494 100644
--- a/src/gpu/GridGenerator/utilities/transformator/ArrowTransformator.h
+++ b/src/gpu/GridGenerator/utilities/transformator/ArrowTransformator.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file ArrowTransformator.h
+//! \ingroup utilities
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef ArrowTransformator_h
 #define ArrowTransformator_h
 
diff --git a/src/gpu/GridGenerator/utilities/transformator/Transformator.cpp b/src/gpu/GridGenerator/utilities/transformator/Transformator.cpp
index 4f59dc648..7e854c4ba 100644
--- a/src/gpu/GridGenerator/utilities/transformator/Transformator.cpp
+++ b/src/gpu/GridGenerator/utilities/transformator/Transformator.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file Transformator.cpp
+//! \ingroup utilities
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #include "Transformator.h"
 
 #include "utilities/transformator/TransformatorImp.h"
diff --git a/src/gpu/GridGenerator/utilities/transformator/Transformator.h b/src/gpu/GridGenerator/utilities/transformator/Transformator.h
index 0f092ddb9..9510e818f 100644
--- a/src/gpu/GridGenerator/utilities/transformator/Transformator.h
+++ b/src/gpu/GridGenerator/utilities/transformator/Transformator.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file Transformator.h
+//! \ingroup utilities
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef Transformator_h
 #define Transformator_h
 
diff --git a/src/gpu/GridGenerator/utilities/transformator/TransformatorImp.cpp b/src/gpu/GridGenerator/utilities/transformator/TransformatorImp.cpp
index 224dda497..3c7a3b675 100644
--- a/src/gpu/GridGenerator/utilities/transformator/TransformatorImp.cpp
+++ b/src/gpu/GridGenerator/utilities/transformator/TransformatorImp.cpp
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file TransformatorImp.cpp
+//! \ingroup utilities
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #include "TransformatorImp.h"
 
 #include <memory>
diff --git a/src/gpu/GridGenerator/utilities/transformator/TransformatorImp.h b/src/gpu/GridGenerator/utilities/transformator/TransformatorImp.h
index 626abacaf..81ba5a25b 100644
--- a/src/gpu/GridGenerator/utilities/transformator/TransformatorImp.h
+++ b/src/gpu/GridGenerator/utilities/transformator/TransformatorImp.h
@@ -1,3 +1,35 @@
+//=======================================================================================
+// ____          ____    __    ______     __________   __      __       __        __
+// \    \       |    |  |  |  |   _   \  |___    ___| |  |    |  |     /  \      |  |
+//  \    \      |    |  |  |  |  |_)   |     |  |     |  |    |  |    /    \     |  |
+//   \    \     |    |  |  |  |   _   /      |  |     |  |    |  |   /  /\  \    |  |
+//    \    \    |    |  |  |  |  | \  \      |  |     |   \__/   |  /  ____  \   |  |____
+//     \    \   |    |  |__|  |__|  \__\     |__|      \________/  /__/    \__\  |_______|
+//      \    \  |    |   ________________________________________________________________
+//       \    \ |    |  |  ______________________________________________________________|
+//        \    \|    |  |  |         __          __     __     __     ______      _______
+//         \         |  |  |_____   |  |        |  |   |  |   |  |   |   _  \    /  _____)
+//          \        |  |   _____|  |  |        |  |   |  |   |  |   |  | \  \   \_______
+//           \       |  |  |        |  |_____   |   \_/   |   |  |   |  |_/  /    _____  |
+//            \ _____|  |__|        |________|   \_______/    |__|   |______/    (_______/
+//
+//  This file is part of VirtualFluids. VirtualFluids is free software: you can
+//  redistribute it and/or modify it under the terms of the GNU General Public
+//  License as published by the Free Software Foundation, either version 3 of
+//  the License, or (at your option) any later version.
+//
+//  VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
+//  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+//  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+//  for more details.
+//
+//  You should have received a copy of the GNU General Public License along
+//  with VirtualFluids (see COPYING.txt). If not, see <http://www.gnu.org/licenses/>.
+//
+//! \file TransformatorImp.h
+//! \ingroup utilities
+//! \author Soeren Peters, Stephan Lenz
+//=======================================================================================
 #ifndef TransformatorImp_h
 #define TransformatorImp_h
 
-- 
GitLab