From c80727ebc7b845ebb9e3d6e7233619efca5051d3 Mon Sep 17 00:00:00 2001
From: schoen <schoen@irmb.tu-bs.de>
Date: Tue, 6 Apr 2021 14:15:54 +0200
Subject: [PATCH] due to the changes in the kernel factory the includes and
 calls in the numerical test framework are also changed

---
 CMake/cmake_config_files/MOLLOK.config.cmake     |  2 +-
 apps/gpu/tests/NumericalTests/CMakeLists.txt     |  2 +-
 .../SimulationInfo/ShearWaveSimulationInfo.cpp   |  4 ++--
 .../SimulationInfo/ShearWaveSimulationInfo.h     |  4 ++--
 .../ShearWaveSimulationParameter.cpp             |  9 +++------
 .../ShearWaveSimulationParameter.h               |  4 ++--
 .../SimulationInfoTaylorGreenVortexUx.cpp        |  4 ++--
 .../SimulationInfoTaylorGreenVortexUx.h          |  4 ++--
 .../SimulationParameterTaylorGreenVortexUx.cpp   |  9 +++------
 .../SimulationParameterTaylorGreenVortexUx.h     |  4 ++--
 .../SimulationInfoTaylorGreenVortexUz.cpp        |  4 ++--
 .../SimulationInfoTaylorGreenVortexUz.h          |  4 ++--
 .../SimulationParameterTaylorGreenVortexUz.cpp   |  9 +++------
 .../SimulationParameterTaylorGreenVortexUz.h     |  4 ++--
 .../L2NormTestBetweenKernelsParameterStruct.h    |  6 ++----
 .../ConfigFileReaderNT/ConfigFileReaderNT.cpp    | 16 ++++++----------
 .../ConfigFileReaderNT/ConfigFileReaderNT.h      |  8 ++------
 .../KernelConfiguration/KernelConfiguration.h    |  7 +++----
 .../KernelConfigurationImp.cpp                   | 14 ++++++--------
 .../KernelConfiguration/KernelConfigurationImp.h | 16 ++++++++--------
 .../BasicSimulationInfo/BasicSimulationInfo.cpp  |  9 +++------
 .../BasicSimulationInfo/BasicSimulationInfo.h    |  6 ++----
 .../Utilities/LogFileWriter/LogFileWriterImp.cpp |  9 +++------
 .../Utilities/LogFileWriter/LogFileWriterImp.h   |  6 ++----
 .../NumericalTestFactoryImp.cpp                  | 12 ++++++------
 .../NumericalTestFactoryImp.h                    | 14 ++++++--------
 .../SimulationInfo/SimulationInfoImp.cpp         |  7 ++-----
 .../Utilities/SimulationInfo/SimulationInfoImp.h |  4 +---
 .../SimulationParameterImp.cpp                   |  2 +-
 .../SimulationParameter/SimulationParameterImp.h |  4 +---
 .../Utilities/Structs/ConfigDataStruct.h         |  4 +---
 31 files changed, 84 insertions(+), 127 deletions(-)

diff --git a/CMake/cmake_config_files/MOLLOK.config.cmake b/CMake/cmake_config_files/MOLLOK.config.cmake
index ee4eaa520..4bb199d69 100644
--- a/CMake/cmake_config_files/MOLLOK.config.cmake
+++ b/CMake/cmake_config_files/MOLLOK.config.cmake
@@ -9,5 +9,5 @@ SET(BOOST_ROOT  "D:/libraries/boost_1_74_0"  CACHE PATH "BOOST_ROOT")
 SET(BOOST_LIBRARYDIR  "D:/libraries/boost_1_74_0/stageMSVC64VS2019/lib" CACHE PATH "BOOST_LIBRARYDIR")
 SET(CMAKE_CUDA_ARCHITECTURES 52)
 
-SET(PATH_NUMERICAL_TESTS "E:/temp/numericalTests/")
+SET(PATH_NUMERICAL_TESTS "D:/out/numericalTests/")
 LIST(APPEND VF_COMPILER_DEFINITION "PATH_NUMERICAL_TESTS=${PATH_NUMERICAL_TESTS}")
diff --git a/apps/gpu/tests/NumericalTests/CMakeLists.txt b/apps/gpu/tests/NumericalTests/CMakeLists.txt
index edb9dbe5b..51804baa2 100644
--- a/apps/gpu/tests/NumericalTests/CMakeLists.txt
+++ b/apps/gpu/tests/NumericalTests/CMakeLists.txt
@@ -11,4 +11,4 @@ if(BUILD_SHARED_LIBS)
     target_compile_definitions (${library_name} PRIVATE "GTEST_LINKED_AS_SHARED_LIBRARY=1")
 endif()
 
-linkCUDA()
+#linkCUDA()
diff --git a/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationInfo/ShearWaveSimulationInfo.cpp b/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationInfo/ShearWaveSimulationInfo.cpp
index 5b03e0a40..5d531a634 100644
--- a/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationInfo/ShearWaveSimulationInfo.cpp
+++ b/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationInfo/ShearWaveSimulationInfo.cpp
@@ -5,12 +5,12 @@
 
 #include <sstream>
 
-std::shared_ptr<ShearWaveSimulationInfo> ShearWaveSimulationInfo::getNewInstance(int simID, KernelType kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations)
+std::shared_ptr<ShearWaveSimulationInfo> ShearWaveSimulationInfo::getNewInstance(int simID, std::string kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations)
 {
 	return std::shared_ptr<ShearWaveSimulationInfo>(new ShearWaveSimulationInfo(simID, kernel,viscosity, simParaStruct, gridInfoStruct, numberOfSimulations));
 }
 
-ShearWaveSimulationInfo::ShearWaveSimulationInfo(int simID, KernelType kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations)
+ShearWaveSimulationInfo::ShearWaveSimulationInfo(int simID, std::string kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations)
 	: SimulationInfoImp(simID, kernel, viscosity, gridInfoStruct->lx, numberOfSimulations, "ShearWave", simParaStruct->dataToCalcTests)
 {
 	std::ostringstream oss;
diff --git a/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationInfo/ShearWaveSimulationInfo.h b/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationInfo/ShearWaveSimulationInfo.h
index 67640fcf2..19f6285ea 100644
--- a/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationInfo/ShearWaveSimulationInfo.h
+++ b/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationInfo/ShearWaveSimulationInfo.h
@@ -13,10 +13,10 @@ struct GridInformationStruct;
 class ShearWaveSimulationInfo : public SimulationInfoImp
 {
 public:
-	static std::shared_ptr<ShearWaveSimulationInfo> getNewInstance(int simID, KernelType kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations);
+	static std::shared_ptr<ShearWaveSimulationInfo> getNewInstance(int simID, std::string kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations);
 
 private:
 	ShearWaveSimulationInfo() {};
-	ShearWaveSimulationInfo(int simID, KernelType kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations);
+	ShearWaveSimulationInfo(int simID, std::string kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations);
 };
 #endif 
\ No newline at end of file
diff --git a/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationParameter/ShearWaveSimulationParameter.cpp b/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationParameter/ShearWaveSimulationParameter.cpp
index 0865a30bd..76d8fae4b 100644
--- a/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationParameter/ShearWaveSimulationParameter.cpp
+++ b/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationParameter/ShearWaveSimulationParameter.cpp
@@ -5,16 +5,14 @@
 
 #include "Utilities/Structs/GridInformationStruct.h"
 
-#include "VirtualFluids_GPU/Kernel/Utilities/Mapper/KernelMapper/KernelMapper.h"
-
 #include <sstream>
 
-std::shared_ptr<SimulationParameter> ShearWaveSimulationParameter::getNewInstance(KernelType kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> parameterStruct, std::shared_ptr<GridInformationStruct> gridInfo)
+std::shared_ptr<SimulationParameter> ShearWaveSimulationParameter::getNewInstance(std::string kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> parameterStruct, std::shared_ptr<GridInformationStruct> gridInfo)
 {
 	return std::shared_ptr<SimulationParameter>(new ShearWaveSimulationParameter(kernel, viscosity, parameterStruct, gridInfo));
 }
 
-ShearWaveSimulationParameter::ShearWaveSimulationParameter(KernelType kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> parameterStruct, std::shared_ptr<GridInformationStruct> gridInfo)
+ShearWaveSimulationParameter::ShearWaveSimulationParameter(std::string kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> parameterStruct, std::shared_ptr<GridInformationStruct> gridInfo)
 :SimulationParameterImp(kernel, viscosity, parameterStruct->basicSimulationParameter, gridInfo)
 {
 	this->timeStepLength = parameterStruct->basicTimeStepLength * (gridInfo->lx / l0)*(gridInfo->lx / l0);
@@ -24,8 +22,7 @@ ShearWaveSimulationParameter::ShearWaveSimulationParameter(KernelType kernel, do
 	else
 		this->maxVelocity = parameterStruct->uz / (lx / l0);
  
-	std::shared_ptr<KernelMapper> myKernelMapper = KernelMapper::getInstance();
-	std::string kernelName = myKernelMapper->getString(kernel);
+	std::string kernelName = kernel;
 
 	std::ostringstream oss;
 	oss << parameterStruct->vtkFilePath << "/ShearWave/Viscosity_" << viscosity << "/ux_" << parameterStruct->ux << "_uz_" << parameterStruct->uz << "/" << kernelName << "/grid" << lx;
diff --git a/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationParameter/ShearWaveSimulationParameter.h b/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationParameter/ShearWaveSimulationParameter.h
index 34b0b1240..51251274d 100644
--- a/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationParameter/ShearWaveSimulationParameter.h
+++ b/apps/gpu/tests/NumericalTests/Simulations/ShearWave/SimulationParameter/ShearWaveSimulationParameter.h
@@ -8,11 +8,11 @@ struct ShearWaveParameterStruct;
 class ShearWaveSimulationParameter : public SimulationParameterImp
 {
 public:
-	static std::shared_ptr<SimulationParameter> getNewInstance(KernelType kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> parameterStruct, std::shared_ptr<GridInformationStruct> gridInfo);
+	static std::shared_ptr<SimulationParameter> getNewInstance(std::string kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> parameterStruct, std::shared_ptr<GridInformationStruct> gridInfo);
 
 protected:
 	ShearWaveSimulationParameter() {};
-	ShearWaveSimulationParameter(KernelType kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> parameterStruct, std::shared_ptr<GridInformationStruct> gridInfo);
+	ShearWaveSimulationParameter(std::string kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> parameterStruct, std::shared_ptr<GridInformationStruct> gridInfo);
 
 };
 
diff --git a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationInfo/SimulationInfoTaylorGreenVortexUx.cpp b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationInfo/SimulationInfoTaylorGreenVortexUx.cpp
index b4f751ee3..35f2139bf 100644
--- a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationInfo/SimulationInfoTaylorGreenVortexUx.cpp
+++ b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationInfo/SimulationInfoTaylorGreenVortexUx.cpp
@@ -5,12 +5,12 @@
 
 #include <sstream>
 
-std::shared_ptr<SimulationInfoTaylorGreenUx> SimulationInfoTaylorGreenUx::getNewInstance(int simID, KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations)
+std::shared_ptr<SimulationInfoTaylorGreenUx> SimulationInfoTaylorGreenUx::getNewInstance(int simID, std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations)
 {
 	return std::shared_ptr<SimulationInfoTaylorGreenUx>(new SimulationInfoTaylorGreenUx(simID, kernel, viscosity, simParaStruct, gridInfoStruct, numberOfSimulations));
 }
 
-SimulationInfoTaylorGreenUx::SimulationInfoTaylorGreenUx(int simID, KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations)
+SimulationInfoTaylorGreenUx::SimulationInfoTaylorGreenUx(int simID, std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations)
 	: SimulationInfoImp(simID, kernel, viscosity, gridInfoStruct->lx, numberOfSimulations, "TaylorGreenVortex Ux", simParaStruct->dataToCalcTests)
 {
 	std::ostringstream oss;
diff --git a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationInfo/SimulationInfoTaylorGreenVortexUx.h b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationInfo/SimulationInfoTaylorGreenVortexUx.h
index 7949d1805..266b1f283 100644
--- a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationInfo/SimulationInfoTaylorGreenVortexUx.h
+++ b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationInfo/SimulationInfoTaylorGreenVortexUx.h
@@ -13,11 +13,11 @@ struct GridInformationStruct;
 class SimulationInfoTaylorGreenUx : public SimulationInfoImp
 {
 public:
-	static std::shared_ptr<SimulationInfoTaylorGreenUx> getNewInstance(int simID, KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations);
+	static std::shared_ptr<SimulationInfoTaylorGreenUx> getNewInstance(int simID, std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations);
 
 private:
 	SimulationInfoTaylorGreenUx() {};
-	SimulationInfoTaylorGreenUx(int simID, KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations);
+	SimulationInfoTaylorGreenUx(int simID, std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations);
 	
 };
 #endif 
\ No newline at end of file
diff --git a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationParameter/SimulationParameterTaylorGreenVortexUx.cpp b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationParameter/SimulationParameterTaylorGreenVortexUx.cpp
index 489faf652..934419410 100644
--- a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationParameter/SimulationParameterTaylorGreenVortexUx.cpp
+++ b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationParameter/SimulationParameterTaylorGreenVortexUx.cpp
@@ -3,23 +3,20 @@
 #include "Simulations/TaylorGreenVortexUx/TaylorGreenVortexUxParameterStruct.h"
 #include "Utilities/Structs/GridInformationStruct.h"
 
-#include "VirtualFluids_GPU/Kernel/Utilities/Mapper/KernelMapper/KernelMapper.h"
-
 #include <sstream>
 
-std::shared_ptr<SimulationParameter> SimulationParameterTaylorGreenUx::getNewInstance(KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo)
+std::shared_ptr<SimulationParameter> SimulationParameterTaylorGreenUx::getNewInstance(std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo)
 {
 	return std::shared_ptr<SimulationParameter>(new SimulationParameterTaylorGreenUx(kernel, viscosity, tgvParameterStruct, gridInfo));
 }
 
-SimulationParameterTaylorGreenUx::SimulationParameterTaylorGreenUx(KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo)
+SimulationParameterTaylorGreenUx::SimulationParameterTaylorGreenUx(std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo)
 :SimulationParameterImp(kernel, viscosity, tgvParameterStruct->basicSimulationParameter, gridInfo)
 {
 	this->maxVelocity = tgvParameterStruct->ux / (lx / l0);
 	this->timeStepLength = tgvParameterStruct->basicTimeStepLength * (gridInfo->lx / l0)*(gridInfo->lx / l0);
 
-	std::shared_ptr<KernelMapper> myKernelMapper = KernelMapper::getInstance();
-	std::string kernelName = myKernelMapper->getString(kernel);
+	std::string kernelName = kernel;
 
 	std::ostringstream oss;
 	oss << tgvParameterStruct->vtkFilePath << "/TaylorGreenVortex Ux/Viscosity_" << viscosity << "/ux_" << tgvParameterStruct->ux << "_amplitude_" << tgvParameterStruct->amplitude << "/" << kernelName << "/grid" << lx;
diff --git a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationParameter/SimulationParameterTaylorGreenVortexUx.h b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationParameter/SimulationParameterTaylorGreenVortexUx.h
index 575cfcecf..a69f1eba8 100644
--- a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationParameter/SimulationParameterTaylorGreenVortexUx.h
+++ b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUx/SimulationParameter/SimulationParameterTaylorGreenVortexUx.h
@@ -11,11 +11,11 @@ struct TaylorGreenVortexUxParameterStruct;
 class SimulationParameterTaylorGreenUx : public SimulationParameterImp
 {
 public:
-	static std::shared_ptr<SimulationParameter> getNewInstance(KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo);
+	static std::shared_ptr<SimulationParameter> getNewInstance(std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo);
 
 	
 protected:
-	SimulationParameterTaylorGreenUx(KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo);
+	SimulationParameterTaylorGreenUx(std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo);
 
 };
 #endif 
diff --git a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationInfo/SimulationInfoTaylorGreenVortexUz.cpp b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationInfo/SimulationInfoTaylorGreenVortexUz.cpp
index 6bf7eee7e..c4ca53feb 100644
--- a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationInfo/SimulationInfoTaylorGreenVortexUz.cpp
+++ b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationInfo/SimulationInfoTaylorGreenVortexUz.cpp
@@ -5,12 +5,12 @@
 
 #include <sstream>
 
-std::shared_ptr<SimulationInfoTaylorGreenUz> SimulationInfoTaylorGreenUz::getNewInstance(int simID, KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations)
+std::shared_ptr<SimulationInfoTaylorGreenUz> SimulationInfoTaylorGreenUz::getNewInstance(int simID, std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations)
 {
 	return std::shared_ptr<SimulationInfoTaylorGreenUz>(new SimulationInfoTaylorGreenUz(simID, kernel, viscosity, simParaStruct, gridInfoStruct, numberOfSimulations));
 }
 
-SimulationInfoTaylorGreenUz::SimulationInfoTaylorGreenUz(int simID, KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations)
+SimulationInfoTaylorGreenUz::SimulationInfoTaylorGreenUz(int simID, std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations)
 	: SimulationInfoImp(simID, kernel, viscosity, gridInfoStruct->lx, numberOfSimulations, "TaylorGreenVortex Uz", simParaStruct->dataToCalcTests)
 {
 	std::ostringstream oss;
diff --git a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationInfo/SimulationInfoTaylorGreenVortexUz.h b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationInfo/SimulationInfoTaylorGreenVortexUz.h
index 0520c3ce3..8e8c44220 100644
--- a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationInfo/SimulationInfoTaylorGreenVortexUz.h
+++ b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationInfo/SimulationInfoTaylorGreenVortexUz.h
@@ -13,11 +13,11 @@ struct GridInformationStruct;
 class SimulationInfoTaylorGreenUz : public SimulationInfoImp
 {
 public:
-	static std::shared_ptr<SimulationInfoTaylorGreenUz> getNewInstance(int simID, KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations);
+	static std::shared_ptr<SimulationInfoTaylorGreenUz> getNewInstance(int simID, std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations);
 
 private:
 	SimulationInfoTaylorGreenUz() {};
-	SimulationInfoTaylorGreenUz(int simID, KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations);
+	SimulationInfoTaylorGreenUz(int simID, std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> simParaStruct, std::shared_ptr<GridInformationStruct> gridInfoStruct, int numberOfSimulations);
 	
 };
 #endif 
\ No newline at end of file
diff --git a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationParameter/SimulationParameterTaylorGreenVortexUz.cpp b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationParameter/SimulationParameterTaylorGreenVortexUz.cpp
index ea60fdd95..ab1914db3 100644
--- a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationParameter/SimulationParameterTaylorGreenVortexUz.cpp
+++ b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationParameter/SimulationParameterTaylorGreenVortexUz.cpp
@@ -3,23 +3,20 @@
 #include "Simulations/TaylorGreenVortexUz/InitialConditions/InitialConditionTaylorGreenVortexUz.h"
 #include "Simulations/TaylorGreenVortexUz/TaylorGreenVortexUzParameterStruct.h"
 
-#include "VirtualFluids_GPU/Kernel/Utilities/Mapper/KernelMapper/KernelMapper.h"
-
 #include <sstream>
 
-std::shared_ptr<SimulationParameterTaylorGreenUz> SimulationParameterTaylorGreenUz::getNewInstance(KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo)
+std::shared_ptr<SimulationParameterTaylorGreenUz> SimulationParameterTaylorGreenUz::getNewInstance(std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo)
 {
 	return std::shared_ptr<SimulationParameterTaylorGreenUz>(new SimulationParameterTaylorGreenUz(kernel, viscosity, tgvParameterStruct, gridInfo));
 }
 
-SimulationParameterTaylorGreenUz::SimulationParameterTaylorGreenUz(KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo)
+SimulationParameterTaylorGreenUz::SimulationParameterTaylorGreenUz(std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo)
 :SimulationParameterImp(kernel, viscosity, tgvParameterStruct->basicSimulationParameter, gridInfo)
 {
 	this->timeStepLength = tgvParameterStruct->basicTimeStepLength * (gridInfo->lz / l0)*(gridInfo->lz / l0);
 	this->maxVelocity = tgvParameterStruct->uz / (lz / l0);
 
-	std::shared_ptr<KernelMapper> myKernelMapper = KernelMapper::getInstance();
-	std::string kernelName = myKernelMapper->getString(kernel);
+	std::string kernelName = kernel;
 
 	std::ostringstream oss;
 	oss << tgvParameterStruct->vtkFilePath << "/TaylorGreenVortex Uz/Viscosity_" << viscosity << "/uz_" << tgvParameterStruct->uz << "_amplitude_" << tgvParameterStruct->amplitude << "/" << kernelName << "/grid" << lx;
diff --git a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationParameter/SimulationParameterTaylorGreenVortexUz.h b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationParameter/SimulationParameterTaylorGreenVortexUz.h
index c17fd8df7..6fd025549 100644
--- a/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationParameter/SimulationParameterTaylorGreenVortexUz.h
+++ b/apps/gpu/tests/NumericalTests/Simulations/TaylorGreenVortexUz/SimulationParameter/SimulationParameterTaylorGreenVortexUz.h
@@ -12,10 +12,10 @@ struct GridInformationStruct;
 class SimulationParameterTaylorGreenUz : public SimulationParameterImp
 {
 public:
-	static std::shared_ptr<SimulationParameterTaylorGreenUz> getNewInstance(KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo);
+	static std::shared_ptr<SimulationParameterTaylorGreenUz> getNewInstance(std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo);
 	
 protected:
-	SimulationParameterTaylorGreenUz(KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo);
+	SimulationParameterTaylorGreenUz(std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> tgvParameterStruct, std::shared_ptr<GridInformationStruct> gridInfo);
 
 };
 #endif 
diff --git a/apps/gpu/tests/NumericalTests/Tests/L2NormTestBetweenKernels/L2NormTestBetweenKernelsParameterStruct.h b/apps/gpu/tests/NumericalTests/Tests/L2NormTestBetweenKernels/L2NormTestBetweenKernelsParameterStruct.h
index 11a8de55c..ce32b8927 100644
--- a/apps/gpu/tests/NumericalTests/Tests/L2NormTestBetweenKernels/L2NormTestBetweenKernelsParameterStruct.h
+++ b/apps/gpu/tests/NumericalTests/Tests/L2NormTestBetweenKernels/L2NormTestBetweenKernelsParameterStruct.h
@@ -7,15 +7,13 @@
 
 #include "Utilities/Structs/BasicTestParameterStruct.h"
 
-#include "VirtualFluids_GPU/Kernel//Utilities/KernelType.h"
-
 struct L2NormTestBetweenKernelsParameterStruct
 {
 	std::shared_ptr<BasicTestParameterStruct> basicTestParameter;
 
-	KernelType basicKernel;
+	std::string basicKernel;
 
-	std::vector<KernelType> kernelsToTest;
+	std::vector<std::string> kernelsToTest;
 	std::vector<int> timeSteps;
 
 	std::vector<std::string> normalizeData;
diff --git a/apps/gpu/tests/NumericalTests/Utilities/ConfigFileReaderNT/ConfigFileReaderNT.cpp b/apps/gpu/tests/NumericalTests/Utilities/ConfigFileReaderNT/ConfigFileReaderNT.cpp
index aa2768f63..37734bc4d 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/ConfigFileReaderNT/ConfigFileReaderNT.cpp
+++ b/apps/gpu/tests/NumericalTests/Utilities/ConfigFileReaderNT/ConfigFileReaderNT.cpp
@@ -3,8 +3,6 @@
 #include "Core/Input/Input.h"
 #include "Core/StringUtilities/StringUtil.h"
 
-#include "VirtualFluids_GPU/Kernel/Utilities/Mapper/KernelMapper/KernelMapper.h"
-
 #include <fstream>
 #include <string>
 
@@ -18,8 +16,6 @@ std::shared_ptr<ConfigFileReader> ConfigFileReader::getNewInstance(const std::st
 
 ConfigFileReader::ConfigFileReader(const std::string aFilePath) : myFilePath(aFilePath)
 {
-    myKernelMapper = KernelMapper::getInstance();
-
     // If PATH_NUMERICAL_TESTS is not defined, the grid definitions for the tests needs to be placed in the project root
     // directories.
 #ifdef PATH_NUMERICAL_TESTS
@@ -274,7 +270,7 @@ ConfigFileReader::makeL2NormTestBetweenKernelsParameter(std::shared_ptr<input::I
     std::shared_ptr<L2NormTestBetweenKernelsParameterStruct> testParameter =
         std::shared_ptr<L2NormTestBetweenKernelsParameterStruct>(new L2NormTestBetweenKernelsParameterStruct);
     testParameter->basicTestParameter = basicTestParameter;
-    testParameter->basicKernel        = myKernelMapper->getEnum(input->getValue("BasicKernel_L2NormBetweenKernels"));
+    testParameter->basicKernel        = input->getValue("BasicKernel_L2NormBetweenKernels");
     testParameter->kernelsToTest      = readKernelList(input);
     testParameter->timeSteps          = StringUtil::toIntVector(input->getValue("Timesteps_L2NormBetweenKernels"));
     testParameter->normalizeData      = StringUtil::toStringVector(input->getValue("NormalizeData_L2Norm"));
@@ -363,7 +359,7 @@ std::shared_ptr<LogFileParameterStruct> ConfigFileReader::makeLogFilePara(std::s
     return logFilePara;
 }
 
-std::vector<KernelType> ConfigFileReader::readKernelList(std::shared_ptr<input::Input> input)
+std::vector<std::string> ConfigFileReader::readKernelList(std::shared_ptr<input::Input> input)
 {
     if (StringUtil::toBool(input->getValue("L2NormBetweenKernelsTest"))) {
         std::vector<std::string> kernelList = StringUtil::toStringVector(input->getValue("KernelsToTest"));
@@ -383,15 +379,15 @@ std::vector<KernelType> ConfigFileReader::readKernelList(std::shared_ptr<input::
             std::vector<std::string>::iterator it = kernelNames.begin();
             kernelNames.erase(it);
         }
-        std::vector<KernelType> kernels;
+        std::vector<std::string> kernels;
         for (int i = 0; i < kernelNames.size(); i++)
-            kernels.push_back(myKernelMapper->getEnum(kernelNames.at(i)));
+            kernels.push_back(kernelNames.at(i));
         return kernels;
     } else {
         std::vector<std::string> kernelList = StringUtil::toStringVector(input->getValue("KernelsToTest"));
-        std::vector<KernelType> kernels;
+        std::vector<std::string> kernels;
         for (int i = 0; i < kernelList.size(); i++)
-            kernels.push_back(myKernelMapper->getEnum(kernelList.at(i)));
+            kernels.push_back(kernelList.at(i));
 
         return kernels;
     }
diff --git a/apps/gpu/tests/NumericalTests/Utilities/ConfigFileReaderNT/ConfigFileReaderNT.h b/apps/gpu/tests/NumericalTests/Utilities/ConfigFileReaderNT/ConfigFileReaderNT.h
index 64ae87ca0..92f58890b 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/ConfigFileReaderNT/ConfigFileReaderNT.h
+++ b/apps/gpu/tests/NumericalTests/Utilities/ConfigFileReaderNT/ConfigFileReaderNT.h
@@ -1,8 +1,6 @@
 #ifndef CONFIG_FILE_READER_H
 #define CONFIG_FILE_READER_H
 
-#include "VirtualFluids_GPU/Kernel//Utilities/KernelType.h"
-
 #include "Core/Input/Input.h"
 #include "Utilities/Structs/ConfigDataStruct.h"
 
@@ -10,8 +8,6 @@
 #include <string>
 #include <vector>
 
-class KernelMapper;
-
 class ConfigFileReader
 {
 public:
@@ -25,7 +21,7 @@ private:
 
     std::ifstream openConfigFile(const std::string aFilePath);
     bool checkConfigFile(std::shared_ptr<input::Input> input);
-    std::vector<KernelType> readKernelList(std::shared_ptr<input::Input> input);
+    std::vector<std::string> readKernelList(std::shared_ptr<input::Input> input);
 
     int calcNumberOfSimulations(std::shared_ptr<input::Input> input);
     int calcNumberOfSimulationGroup(std::shared_ptr<input::Input> input, std::string simName);
@@ -59,6 +55,6 @@ private:
 
     const std::string myFilePath;
     std::shared_ptr<ConfigDataStruct> configData;
-    std::shared_ptr<KernelMapper> myKernelMapper;
+    //std::shared_ptr<KernelMapper> myKernelMapper;
 };
 #endif
\ No newline at end of file
diff --git a/apps/gpu/tests/NumericalTests/Utilities/KernelConfiguration/KernelConfiguration.h b/apps/gpu/tests/NumericalTests/Utilities/KernelConfiguration/KernelConfiguration.h
index 0878a8c84..dbcb9b003 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/KernelConfiguration/KernelConfiguration.h
+++ b/apps/gpu/tests/NumericalTests/Utilities/KernelConfiguration/KernelConfiguration.h
@@ -1,17 +1,16 @@
 #ifndef KERNEL_CONFIGURATION_H
 #define KERNEL_CONFIGURATION_H
 
+#include <string>
 #include <vector>
 
-#include "VirtualFluids_GPU/Kernel//Utilities/KernelType.h"
-
 class KernelConfiguration
 {
 public:
-	virtual KernelType getMainKernel() = 0;
+    virtual std::string getMainKernel()              = 0;
 	virtual bool getMultiKernelOn() = 0;
 	virtual	std::vector<int> getMultiKernelLevel() = 0;
-	virtual std::vector<KernelType> getMultiKernel() = 0;
+    virtual std::vector<std::string> getMultiKernel() = 0;
 
 private:	
 
diff --git a/apps/gpu/tests/NumericalTests/Utilities/KernelConfiguration/KernelConfigurationImp.cpp b/apps/gpu/tests/NumericalTests/Utilities/KernelConfiguration/KernelConfigurationImp.cpp
index 39b7afdd4..303fee859 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/KernelConfiguration/KernelConfigurationImp.cpp
+++ b/apps/gpu/tests/NumericalTests/Utilities/KernelConfiguration/KernelConfigurationImp.cpp
@@ -1,7 +1,6 @@
 #include "KernelConfigurationImp.h"
 
-KernelType KernelConfigurationImp::getMainKernel()
-{
+std::string KernelConfigurationImp::getMainKernel() {
 	return mainKernel;
 }
 
@@ -15,22 +14,21 @@ std::vector<int> KernelConfigurationImp::getMultiKernelLevel()
 	return multiKernelLevel;
 }
 
-std::vector<KernelType> KernelConfigurationImp::getMultiKernel()
-{
+std::vector<std::string> KernelConfigurationImp::getMultiKernel() {
 	return multiKernel;
 }
 
-std::shared_ptr<KernelConfigurationImp> KernelConfigurationImp::getNewInstance(KernelType kernelName)
+std::shared_ptr<KernelConfigurationImp> KernelConfigurationImp::getNewInstance(std::string kernelName)
 {
 	return std::shared_ptr<KernelConfigurationImp>(new KernelConfigurationImp(kernelName));
 }
 
-std::shared_ptr<KernelConfigurationImp> KernelConfigurationImp::getNewInstance(KernelType kernel, std::vector<int> multiKernelLevel, std::vector<KernelType> multiKernelName)
+std::shared_ptr<KernelConfigurationImp> KernelConfigurationImp::getNewInstance(std::string kernel, std::vector<int> multiKernelLevel, std::vector<std::string> multiKernelName)
 {
 	return std::shared_ptr<KernelConfigurationImp>(new KernelConfigurationImp(kernel, multiKernelLevel, multiKernelName));
 }
 
-KernelConfigurationImp::KernelConfigurationImp(KernelType kernel)
+KernelConfigurationImp::KernelConfigurationImp(std::string kernel)
 {
 	this->mainKernel = kernel;
 	multiKernelOn = false;
@@ -38,7 +36,7 @@ KernelConfigurationImp::KernelConfigurationImp(KernelType kernel)
 	multiKernel.resize(0);
 }
 
-KernelConfigurationImp::KernelConfigurationImp(KernelType mainKernel, std::vector<int> multiKernelLevel, std::vector<KernelType> multiKernel)
+KernelConfigurationImp::KernelConfigurationImp(std::string mainKernel, std::vector<int> multiKernelLevel, std::vector<std::string> multiKernel)
 {
 	this->mainKernel = mainKernel;
 	multiKernelOn = true;
diff --git a/apps/gpu/tests/NumericalTests/Utilities/KernelConfiguration/KernelConfigurationImp.h b/apps/gpu/tests/NumericalTests/Utilities/KernelConfiguration/KernelConfigurationImp.h
index 0c6ac6f75..7e8ad9fee 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/KernelConfiguration/KernelConfigurationImp.h
+++ b/apps/gpu/tests/NumericalTests/Utilities/KernelConfiguration/KernelConfigurationImp.h
@@ -8,22 +8,22 @@
 class KernelConfigurationImp : public KernelConfiguration
 {
 public:
-	KernelType getMainKernel();
+    std::string getMainKernel();
 	bool getMultiKernelOn();
 	std::vector<int> getMultiKernelLevel();
-	std::vector<KernelType> getMultiKernel();
+    std::vector<std::string> getMultiKernel();
 
-	static std::shared_ptr<KernelConfigurationImp> getNewInstance(KernelType kernel);
-	static std::shared_ptr<KernelConfigurationImp> getNewInstance(KernelType kernel, std::vector<int> multiKernelLevel, std::vector<KernelType> multiKernel);
+	static std::shared_ptr<KernelConfigurationImp> getNewInstance(std::string kernel);
+	static std::shared_ptr<KernelConfigurationImp> getNewInstance(std::string kernel, std::vector<int> multiKernelLevel, std::vector<std::string> multiKernel);
 
 private:
-	KernelConfigurationImp(KernelType kernel);
-	KernelConfigurationImp(KernelType kernel, std::vector<int> multiKernelLevel, std::vector<KernelType> multiKernel);
+    KernelConfigurationImp(std::string kernel);
+    KernelConfigurationImp(std::string kernel, std::vector<int> multiKernelLevel, std::vector<std::string> multiKernel);
 	KernelConfigurationImp() {};
 
-	KernelType mainKernel;
+	std::string mainKernel;
 	bool multiKernelOn;
 	std::vector<int> multiKernelLevel;
-	std::vector<KernelType> multiKernel;
+    std::vector<std::string> multiKernel;
 };
 #endif 
\ No newline at end of file
diff --git a/apps/gpu/tests/NumericalTests/Utilities/LogFileInformation/BasicSimulationInfo/BasicSimulationInfo.cpp b/apps/gpu/tests/NumericalTests/Utilities/LogFileInformation/BasicSimulationInfo/BasicSimulationInfo.cpp
index d4def3edb..f01dccf5c 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/LogFileInformation/BasicSimulationInfo/BasicSimulationInfo.cpp
+++ b/apps/gpu/tests/NumericalTests/Utilities/LogFileInformation/BasicSimulationInfo/BasicSimulationInfo.cpp
@@ -1,8 +1,6 @@
 #include "BasicSimulationInfo.h"
 
-#include "VirtualFluids_GPU/Kernel/Utilities/Mapper/KernelMapper/KernelMapper.h"
-
-std::shared_ptr<BasicSimulationInfo> BasicSimulationInfo::getNewInstance(int numberOfTimeSteps, double viscosity, int basicTimeStepLength, KernelType kernel)
+std::shared_ptr<BasicSimulationInfo> BasicSimulationInfo::getNewInstance(int numberOfTimeSteps, double viscosity, int basicTimeStepLength, std::string kernel)
 {
 	return std::shared_ptr<BasicSimulationInfo>(new BasicSimulationInfo(numberOfTimeSteps, viscosity, basicTimeStepLength, kernel));
 }
@@ -18,9 +16,8 @@ std::string BasicSimulationInfo::getOutput()
 	return oss.str();
 }
 
-BasicSimulationInfo::BasicSimulationInfo(int numberOfTimeSteps, double viscosity, int basicTimeStepLength, KernelType kernel)
+BasicSimulationInfo::BasicSimulationInfo(int numberOfTimeSteps, double viscosity, int basicTimeStepLength, std::string kernel)
   : numberOfTimeSteps(numberOfTimeSteps), viscosity(viscosity), basicTimeStepLength(basicTimeStepLength)
 {
-	std::shared_ptr<KernelMapper> myKernelMapper = KernelMapper::getInstance();
-	kernelName = myKernelMapper->getString(kernel);
+	kernelName = kernel;
 }
\ No newline at end of file
diff --git a/apps/gpu/tests/NumericalTests/Utilities/LogFileInformation/BasicSimulationInfo/BasicSimulationInfo.h b/apps/gpu/tests/NumericalTests/Utilities/LogFileInformation/BasicSimulationInfo/BasicSimulationInfo.h
index 4692533a4..20897bc5f 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/LogFileInformation/BasicSimulationInfo/BasicSimulationInfo.h
+++ b/apps/gpu/tests/NumericalTests/Utilities/LogFileInformation/BasicSimulationInfo/BasicSimulationInfo.h
@@ -3,19 +3,17 @@
 
 #include "../LogFileInformationImp.h"
 
-#include "VirtualFluids_GPU/Kernel//Utilities/KernelType.h"
-
 #include <memory>
 
 class BasicSimulationInfo : public LogFileInformationImp
 {
 public:
-	static std::shared_ptr<BasicSimulationInfo> getNewInstance(int numberOfTimeSteps, double viscosity, int basicTimeStepLength, KernelType kernel);
+	static std::shared_ptr<BasicSimulationInfo> getNewInstance(int numberOfTimeSteps, double viscosity, int basicTimeStepLength, std::string kernel);
 	std::string getOutput();
 
 private:
 	BasicSimulationInfo() {};
-	BasicSimulationInfo(int numberOfTimeSteps, double viscosity, int basicTimeStepLength, KernelType kernel);
+    BasicSimulationInfo(int numberOfTimeSteps, double viscosity, int basicTimeStepLength, std::string kernel);
 
 	int numberOfTimeSteps;
 	int basicTimeStepLength;
diff --git a/apps/gpu/tests/NumericalTests/Utilities/LogFileWriter/LogFileWriterImp.cpp b/apps/gpu/tests/NumericalTests/Utilities/LogFileWriter/LogFileWriterImp.cpp
index f8aa2c5ed..4d9154563 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/LogFileWriter/LogFileWriterImp.cpp
+++ b/apps/gpu/tests/NumericalTests/Utilities/LogFileWriter/LogFileWriterImp.cpp
@@ -7,17 +7,14 @@
 #include "Utilities/LogFileInformation/LogFileTimeInformation/LogFileTimeInformation.h"
 #include "Utilities/LogFileInformation/TestLogFileInformation/TestLogFileInformation.h"
 
-#include "VirtualFluids_GPU/Kernel/Utilities/Mapper/KernelMapper/KernelMapper.h"
-
 #include <helper_functions.h>
 #include <iomanip>
 #include <ctime>
 #include <filesystem>
 
-LogFileWriterImp::LogFileWriterImp(std::shared_ptr<LogFileHead> logFileHead, std::shared_ptr<BasicSimulationInfo> basicSimInfo, std::shared_ptr<BasicTestLogFileInformation> basicTestInfo, std::vector<std::shared_ptr<TestLogFileInformation> > testLogFiles, std::shared_ptr<LogFileTimeInformation> logFileTimeInfo, std::shared_ptr<SimulationLogFileInformation> simLogInfo, KernelType kernel, double viscosity) : viscosity(viscosity)
+LogFileWriterImp::LogFileWriterImp(std::shared_ptr<LogFileHead> logFileHead, std::shared_ptr<BasicSimulationInfo> basicSimInfo, std::shared_ptr<BasicTestLogFileInformation> basicTestInfo, std::vector<std::shared_ptr<TestLogFileInformation> > testLogFiles, std::shared_ptr<LogFileTimeInformation> logFileTimeInfo, std::shared_ptr<SimulationLogFileInformation> simLogInfo, std::string kernel, double viscosity) : viscosity(viscosity)
 {
-	std::shared_ptr<KernelMapper> myKernelMapper = KernelMapper::getInstance();
-	kernelName = myKernelMapper->getString(kernel);
+	kernelName = kernel;
 
 	logFileInfo.push_back(logFileHead);
 	logFileInfo.push_back(basicSimInfo);
@@ -29,7 +26,7 @@ LogFileWriterImp::LogFileWriterImp(std::shared_ptr<LogFileHead> logFileHead, std
 		logFileInfo.push_back(testLogFiles.at(i));
 }
 
-std::shared_ptr<LogFileWriterImp> LogFileWriterImp::getNewInstance(std::shared_ptr<LogFileHead> logFileHead, std::shared_ptr<BasicSimulationInfo> basicSimInfo, std::shared_ptr<BasicTestLogFileInformation> basicTestInfo, std::vector<std::shared_ptr<TestLogFileInformation> > testLogFiles, std::shared_ptr<LogFileTimeInformation> logFileTimeInfo, std::shared_ptr<SimulationLogFileInformation> simLogInfo, KernelType kernel, double viscosity)
+std::shared_ptr<LogFileWriterImp> LogFileWriterImp::getNewInstance(std::shared_ptr<LogFileHead> logFileHead, std::shared_ptr<BasicSimulationInfo> basicSimInfo, std::shared_ptr<BasicTestLogFileInformation> basicTestInfo, std::vector<std::shared_ptr<TestLogFileInformation> > testLogFiles, std::shared_ptr<LogFileTimeInformation> logFileTimeInfo, std::shared_ptr<SimulationLogFileInformation> simLogInfo, std::string kernel, double viscosity)
 {
 	return std::shared_ptr<LogFileWriterImp>(new LogFileWriterImp(logFileHead, basicSimInfo, basicTestInfo, testLogFiles, logFileTimeInfo, simLogInfo, kernel, viscosity));
 }
diff --git a/apps/gpu/tests/NumericalTests/Utilities/LogFileWriter/LogFileWriterImp.h b/apps/gpu/tests/NumericalTests/Utilities/LogFileWriter/LogFileWriterImp.h
index fb8e19b24..f810e90a9 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/LogFileWriter/LogFileWriterImp.h
+++ b/apps/gpu/tests/NumericalTests/Utilities/LogFileWriter/LogFileWriterImp.h
@@ -3,8 +3,6 @@
 
 #include "LogFileWriter.h"
 
-#include "VirtualFluids_GPU/Kernel//Utilities/KernelType.h"
-
 #include <fstream>
 #include <vector>
 #include <memory>
@@ -23,12 +21,12 @@ public:
 	static std::shared_ptr<LogFileWriterImp> getNewInstance(std::shared_ptr<LogFileHead> logFileHead, std::shared_ptr<BasicSimulationInfo> basicSimInfo, std::shared_ptr<BasicTestLogFileInformation> basicTestInfo, std::vector<std::shared_ptr<TestLogFileInformation> > testLogFiles,
 														std::shared_ptr<LogFileTimeInformation> logFileTimeInfo,
 														std::shared_ptr<SimulationLogFileInformation> simLogInfo, 
-														KernelType kernel, double viscosity);
+														std::string kernel, double viscosity);
 	void writeLogFile(std::string basicFilePath);
 	
 
 private:
-	LogFileWriterImp(std::shared_ptr<LogFileHead> logFileHead, std::shared_ptr<BasicSimulationInfo> basicSimInfo, std::shared_ptr<BasicTestLogFileInformation> basicTestInfo, std::vector<std::shared_ptr<TestLogFileInformation> > testLogFiles, std::shared_ptr<LogFileTimeInformation> logFileTimeInfo, std::shared_ptr<SimulationLogFileInformation> simLogInfo, KernelType kernel, double viscosity);
+	LogFileWriterImp(std::shared_ptr<LogFileHead> logFileHead, std::shared_ptr<BasicSimulationInfo> basicSimInfo, std::shared_ptr<BasicTestLogFileInformation> basicTestInfo, std::vector<std::shared_ptr<TestLogFileInformation> > testLogFiles, std::shared_ptr<LogFileTimeInformation> logFileTimeInfo, std::shared_ptr<SimulationLogFileInformation> simLogInfo, std::string kernel, double viscosity);
 	std::string calcDateAndTime();
 	std::string buildFilePath(std::string basicFilePath);
 
diff --git a/apps/gpu/tests/NumericalTests/Utilities/NumericalTestFactory/NumericalTestFactoryImp.cpp b/apps/gpu/tests/NumericalTests/Utilities/NumericalTestFactory/NumericalTestFactoryImp.cpp
index 009f17d61..ce9393188 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/NumericalTestFactory/NumericalTestFactoryImp.cpp
+++ b/apps/gpu/tests/NumericalTests/Utilities/NumericalTestFactory/NumericalTestFactoryImp.cpp
@@ -125,7 +125,7 @@ void NumericalTestFactoryImp::init(std::shared_ptr<ConfigDataStruct> configFileD
 	}
 }
 
-std::shared_ptr<NumericalTestStruct> NumericalTestFactoryImp::makeNumericalTestStruct(std::shared_ptr<ConfigDataStruct> configFileData, std::shared_ptr<SimulationDataStruct> simDataStruct, KernelType kernel, double viscosity, int basicTimeStepLength)
+std::shared_ptr<NumericalTestStruct> NumericalTestFactoryImp::makeNumericalTestStruct(std::shared_ptr<ConfigDataStruct> configFileData, std::shared_ptr<SimulationDataStruct> simDataStruct, std::string kernel, double viscosity, int basicTimeStepLength)
 {
 	std::shared_ptr<NumericalTestStruct> numTestStruct = std::shared_ptr<NumericalTestStruct>(new NumericalTestStruct);
 
@@ -167,7 +167,7 @@ void NumericalTestFactoryImp::addNumericalTestStruct(std::shared_ptr<NumericalTe
 	myLogFileWriterQueue->addLogFileWriter(numericalTestStruct->logFileWriter);
 }
 
-std::shared_ptr<SimulationDataStruct> NumericalTestFactoryImp::makeTaylorGreenUxSimulationData(KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> simParaStruct, std::vector<std::shared_ptr<GridInformationStruct> > gridInfoStruct)
+std::shared_ptr<SimulationDataStruct> NumericalTestFactoryImp::makeTaylorGreenUxSimulationData(std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> simParaStruct, std::vector<std::shared_ptr<GridInformationStruct> > gridInfoStruct)
 {
 	std::shared_ptr<SimulationDataStruct> simDataStruct = std::shared_ptr<SimulationDataStruct>(new SimulationDataStruct);
 
@@ -190,7 +190,7 @@ std::shared_ptr<SimulationDataStruct> NumericalTestFactoryImp::makeTaylorGreenUx
 	return simDataStruct;
 }
 
-std::shared_ptr<SimulationDataStruct> NumericalTestFactoryImp::makeTaylorGreenUzSimulationData(KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> simParaStruct, std::vector<std::shared_ptr<GridInformationStruct> > gridInfoStruct)
+std::shared_ptr<SimulationDataStruct> NumericalTestFactoryImp::makeTaylorGreenUzSimulationData(std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> simParaStruct, std::vector<std::shared_ptr<GridInformationStruct> > gridInfoStruct)
 {
 	std::shared_ptr<SimulationDataStruct> simDataStruct = std::shared_ptr<SimulationDataStruct>(new SimulationDataStruct);
 	if (gridInfoStruct.size() > 0) {
@@ -212,7 +212,7 @@ std::shared_ptr<SimulationDataStruct> NumericalTestFactoryImp::makeTaylorGreenUz
 	return simDataStruct;
 }
 
-std::shared_ptr<SimulationDataStruct> NumericalTestFactoryImp::makeShearWaveSimulationData(KernelType kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> simParaStruct, std::vector<std::shared_ptr<GridInformationStruct> > gridInfoStruct)
+std::shared_ptr<SimulationDataStruct> NumericalTestFactoryImp::makeShearWaveSimulationData(std::string kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> simParaStruct, std::vector<std::shared_ptr<GridInformationStruct> > gridInfoStruct)
 {
 	std::shared_ptr<SimulationDataStruct> simDataStruct = std::shared_ptr<SimulationDataStruct>(new SimulationDataStruct);
 	if (gridInfoStruct.size() > 0) {
@@ -369,7 +369,7 @@ std::vector<std::shared_ptr<L2NormTest> > NumericalTestFactoryImp::makeL2NormTes
 	return l2Tests;
 }
 
-std::shared_ptr<TestStruct> NumericalTestFactoryImp::makeL2NormTestsBetweenKernelsStructs(std::shared_ptr<L2NormTestBetweenKernelsParameterStruct> testPara, std::vector<std::shared_ptr<TestSimulationImp> > testSim, KernelType kernelName)
+std::shared_ptr<TestStruct> NumericalTestFactoryImp::makeL2NormTestsBetweenKernelsStructs(std::shared_ptr<L2NormTestBetweenKernelsParameterStruct> testPara, std::vector<std::shared_ptr<TestSimulationImp> > testSim, std::string kernelName)
 {
 	std::shared_ptr<TestStruct> testStruct = std::shared_ptr<TestStruct>(new TestStruct);
 	testStruct->testName = "L2NormTestBetweenKernel";
@@ -465,7 +465,7 @@ void NumericalTestFactoryImp::initTestStruct(std::shared_ptr<TestStruct> testStr
 	}
 }
 
-std::shared_ptr<LogFileWriter> NumericalTestFactoryImp::makeLogFileWriter(std::vector<std::shared_ptr<TestLogFileInformation> > testLogFiles, std::shared_ptr<SimulationLogFileInformation> simLogInfo, std::vector<std::shared_ptr<SimulationInfo> > simInfo, KernelType kernel, double viscosity, int basicTimeStepLength, std::shared_ptr<LogFileParameterStruct> logFilePara, std::shared_ptr<BasicTestLogFileInformation> basicTestLogFileInfo)
+std::shared_ptr<LogFileWriter> NumericalTestFactoryImp::makeLogFileWriter(std::vector<std::shared_ptr<TestLogFileInformation> > testLogFiles, std::shared_ptr<SimulationLogFileInformation> simLogInfo, std::vector<std::shared_ptr<SimulationInfo> > simInfo, std::string kernel, double viscosity, int basicTimeStepLength, std::shared_ptr<LogFileParameterStruct> logFilePara, std::shared_ptr<BasicTestLogFileInformation> basicTestLogFileInfo)
 {
 	std::shared_ptr<LogFileHead> logFileHead = LogFileHead::getNewInstance(logFilePara->devices);
 	std::shared_ptr<BasicSimulationInfo> basicSimInfo = BasicSimulationInfo::getNewInstance(logFilePara->numberOfTimeSteps, viscosity, basicTimeStepLength, kernel);
diff --git a/apps/gpu/tests/NumericalTests/Utilities/NumericalTestFactory/NumericalTestFactoryImp.h b/apps/gpu/tests/NumericalTests/Utilities/NumericalTestFactory/NumericalTestFactoryImp.h
index ee9d28215..1d9b33d35 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/NumericalTestFactory/NumericalTestFactoryImp.h
+++ b/apps/gpu/tests/NumericalTests/Utilities/NumericalTestFactory/NumericalTestFactoryImp.h
@@ -3,8 +3,6 @@
 
 #include "NumericalTestFactory.h"
 
-#include "VirtualFluids_GPU/Kernel//Utilities/KernelType.h"
-
 struct ConfigDataStruct;
 struct GridInformationStruct;
 struct L2NormTestParameterStruct;
@@ -61,19 +59,19 @@ private:
 
 	void init(std::shared_ptr<ConfigDataStruct> configFileData);
 
-	std::shared_ptr<NumericalTestStruct> makeNumericalTestStruct(std::shared_ptr<ConfigDataStruct> configFileData, std::shared_ptr<SimulationDataStruct> simDataStruct, KernelType kernel, double viscosity, int basicTimeStepLength);
+	std::shared_ptr<NumericalTestStruct> makeNumericalTestStruct(std::shared_ptr<ConfigDataStruct> configFileData, std::shared_ptr<SimulationDataStruct> simDataStruct, std::string kernel, double viscosity, int basicTimeStepLength);
 	void addNumericalTestStruct(std::shared_ptr<NumericalTestStruct> numericalTestStruct);
 
-	std::shared_ptr<SimulationDataStruct> makeTaylorGreenUxSimulationData(KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> simParaStruct, std::vector<std::shared_ptr<GridInformationStruct> > gridInfoStruct);
-	std::shared_ptr<SimulationDataStruct> makeTaylorGreenUzSimulationData(KernelType kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> simParaStruct, std::vector<std::shared_ptr<GridInformationStruct> > gridInfoStruct);
-	std::shared_ptr<SimulationDataStruct> makeShearWaveSimulationData(KernelType kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> simParaStruct, std::vector<std::shared_ptr<GridInformationStruct> > gridInfoStruct);
+	std::shared_ptr<SimulationDataStruct> makeTaylorGreenUxSimulationData(std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUxParameterStruct> simParaStruct, std::vector<std::shared_ptr<GridInformationStruct> > gridInfoStruct);
+	std::shared_ptr<SimulationDataStruct> makeTaylorGreenUzSimulationData(std::string kernel, double viscosity, std::shared_ptr<TaylorGreenVortexUzParameterStruct> simParaStruct, std::vector<std::shared_ptr<GridInformationStruct> > gridInfoStruct);
+	std::shared_ptr<SimulationDataStruct> makeShearWaveSimulationData(std::string kernel, double viscosity, std::shared_ptr<ShearWaveParameterStruct> simParaStruct, std::vector<std::shared_ptr<GridInformationStruct> > gridInfoStruct);
 
 	std::vector<std::shared_ptr<TestSimulationImp> > makeTestSimulations(std::vector<std::shared_ptr<TestSimulationDataStruct> > testSimDataStruct, std::shared_ptr<VectorWriterInformationStruct> vectorWriterInfo, unsigned int ySliceForCalculation);
 
 	std::shared_ptr<TestStruct> makePhiTestsStructs(std::shared_ptr<PhiTestParameterStruct> testParameter, std::vector<std::shared_ptr<TestSimulationImp> > testSimumlations, double viscosity);
 	std::shared_ptr<TestStruct> makeNyTestsStructs(std::shared_ptr<NyTestParameterStruct> testParameter, std::vector<std::shared_ptr<TestSimulationImp> > testSimumlations, double viscosity);
 	std::shared_ptr<TestStruct> makeL2NormTestsStructs(std::shared_ptr<L2NormTestParameterStruct> testParameter, std::vector<std::shared_ptr<TestSimulationImp> > testSimumlations);
-	std::shared_ptr<TestStruct> makeL2NormTestsBetweenKernelsStructs(std::shared_ptr<L2NormTestBetweenKernelsParameterStruct> testPara, std::vector<std::shared_ptr<TestSimulationImp> > testSim, KernelType kernel);
+	std::shared_ptr<TestStruct> makeL2NormTestsBetweenKernelsStructs(std::shared_ptr<L2NormTestBetweenKernelsParameterStruct> testPara, std::vector<std::shared_ptr<TestSimulationImp> > testSim, std::string kernel);
 	
 	std::vector<std::shared_ptr<PhiTest> > makePhiTests(std::shared_ptr<PhiTestParameterStruct> testParameter, std::vector<std::shared_ptr<TestSimulationImp> > testSim, std::vector<std::shared_ptr<PhiTestPostProcessingStrategy> > phiAndNuPostProStrategy, double viscosity, std::string dataToCalculate);
 	std::vector<std::shared_ptr<NyTest> > makeNyTests(std::shared_ptr<NyTestParameterStruct> testParameter, std::vector<std::shared_ptr<TestSimulationImp> > testSim, std::vector<std::shared_ptr<NyTestPostProcessingStrategy> > phiAndNuPostProStrategy, double viscosity, std::string dataToCalculate);
@@ -81,7 +79,7 @@ private:
 	std::vector<std::vector<std::shared_ptr<L2NormTestBetweenKernels> > > makeL2NormTestsBetweenKernels(std::shared_ptr<L2NormTestBetweenKernelsParameterStruct> testPara, std::vector<std::shared_ptr<TestSimulationImp> > testSim, std::vector<std::shared_ptr<L2NormBetweenKernelPostProcessingStrategy> > postProcessingStrategies);
 	std::vector<std::shared_ptr<L2NormTestBetweenKernels> > linkL2NormTestsBetweenKernels(std::shared_ptr<L2NormTestBetweenKernelsParameterStruct> testPara, std::vector<std::shared_ptr<TestSimulationImp> > testSim, std::vector<std::shared_ptr<L2NormBetweenKernelPostProcessingStrategy> > postProcessingStrategies);
 
-	std::shared_ptr<LogFileWriter> makeLogFileWriter(std::vector<std::shared_ptr<TestLogFileInformation> > testLogFiles, std::shared_ptr<SimulationLogFileInformation> simLogInfo, std::vector<std::shared_ptr<SimulationInfo> > simInfo, KernelType kernel, double viscosity, int basicTimeStepLength, std::shared_ptr<LogFileParameterStruct> logFilePara, std::shared_ptr<BasicTestLogFileInformation> basicTestLogFileInfo);
+	std::shared_ptr<LogFileWriter> makeLogFileWriter(std::vector<std::shared_ptr<TestLogFileInformation> > testLogFiles, std::shared_ptr<SimulationLogFileInformation> simLogInfo, std::vector<std::shared_ptr<SimulationInfo> > simInfo, std::string kernel, double viscosity, int basicTimeStepLength, std::shared_ptr<LogFileParameterStruct> logFilePara, std::shared_ptr<BasicTestLogFileInformation> basicTestLogFileInfo);
 
 	void initTestStruct(std::shared_ptr<TestStruct> testStruct, std::shared_ptr<NumericalTestStruct> numericalTestStruct, std::vector<std::shared_ptr<TestLogFileInformation> > &testLogFileInfo, std::shared_ptr<BasicTestLogFileInformation> basicTestLogFileInfo);
 
diff --git a/apps/gpu/tests/NumericalTests/Utilities/SimulationInfo/SimulationInfoImp.cpp b/apps/gpu/tests/NumericalTests/Utilities/SimulationInfo/SimulationInfoImp.cpp
index 2ad0909cb..749bba1f2 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/SimulationInfo/SimulationInfoImp.cpp
+++ b/apps/gpu/tests/NumericalTests/Utilities/SimulationInfo/SimulationInfoImp.cpp
@@ -2,8 +2,6 @@
 
 #include "Utilities/Time/TimeInfo.h"
 
-#include "VirtualFluids_GPU/Kernel/Utilities/Mapper/KernelMapper/KernelMapper.h"
-
 #include <iomanip>
 #include <sstream>
 
@@ -62,9 +60,8 @@ std::vector<std::string> SimulationInfoImp::getDataToCalcTests()
 	return dataToCalcTests;
 }
 
-SimulationInfoImp::SimulationInfoImp(int simID, KernelType kernel, double viscosity, int lx, int numberOfSimulations, std::string simulationName, std::vector<std::string> dataToCalcTests)
+SimulationInfoImp::SimulationInfoImp(int simID, std::string kernel, double viscosity, int lx, int numberOfSimulations, std::string simulationName, std::vector<std::string> dataToCalcTests)
 	: simID(simID), lx(lx), viscosity(viscosity), numberOfSimulations(numberOfSimulations), simulationName(simulationName), dataToCalcTests(dataToCalcTests)
 {
-	std::shared_ptr<KernelMapper> myKernelMapper = KernelMapper::getInstance();
-	this->kernelName = myKernelMapper->getString(kernel);
+	this->kernelName = kernel;
 }
diff --git a/apps/gpu/tests/NumericalTests/Utilities/SimulationInfo/SimulationInfoImp.h b/apps/gpu/tests/NumericalTests/Utilities/SimulationInfo/SimulationInfoImp.h
index 906a3e9ce..8f44f1dc6 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/SimulationInfo/SimulationInfoImp.h
+++ b/apps/gpu/tests/NumericalTests/Utilities/SimulationInfo/SimulationInfoImp.h
@@ -3,8 +3,6 @@
 
 #include "SimulationInfo.h"
 
-#include "VirtualFluids_GPU/Kernel//Utilities/KernelType.h"
-
 #include <memory>
 
 class TimeInfo;
@@ -26,7 +24,7 @@ public:
 
 protected:
 	SimulationInfoImp() {};
-	SimulationInfoImp(int simID, KernelType kernel, double viscosity, int lx, int numberOfSimulations, std::string simulationName, std::vector<std::string> dataToCalcTests);
+	SimulationInfoImp(int simID, std::string kernel, double viscosity, int lx, int numberOfSimulations, std::string simulationName, std::vector<std::string> dataToCalcTests);
 
 	double viscosity;
 	std::string kernelName;
diff --git a/apps/gpu/tests/NumericalTests/Utilities/SimulationParameter/SimulationParameterImp.cpp b/apps/gpu/tests/NumericalTests/Utilities/SimulationParameter/SimulationParameterImp.cpp
index 870aab755..6e0a0ef66 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/SimulationParameter/SimulationParameterImp.cpp
+++ b/apps/gpu/tests/NumericalTests/Utilities/SimulationParameter/SimulationParameterImp.cpp
@@ -7,7 +7,7 @@
 
 #include <filesystem>
 
-SimulationParameterImp::SimulationParameterImp(KernelType kernel, double viscosity, std::shared_ptr<BasicSimulationParameterStruct> basicSimPara, std::shared_ptr<GridInformationStruct> gridInfo)
+SimulationParameterImp::SimulationParameterImp(std::string kernel, double viscosity, std::shared_ptr<BasicSimulationParameterStruct> basicSimPara, std::shared_ptr<GridInformationStruct> gridInfo)
 	: viscosity(viscosity)
 {
 	kernelConfig = KernelConfigurationImp::getNewInstance(kernel);
diff --git a/apps/gpu/tests/NumericalTests/Utilities/SimulationParameter/SimulationParameterImp.h b/apps/gpu/tests/NumericalTests/Utilities/SimulationParameter/SimulationParameterImp.h
index 5aa8fff50..f4c0792cb 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/SimulationParameter/SimulationParameterImp.h
+++ b/apps/gpu/tests/NumericalTests/Utilities/SimulationParameter/SimulationParameterImp.h
@@ -4,8 +4,6 @@
 #include "SimulationParameter.h"
 
 #include "LBM/LB.h"
-#include "VirtualFluids_GPU/Kernel//Utilities/KernelType.h"
-
 struct GridInformationStruct;
 struct BasicSimulationParameterStruct;
 
@@ -28,7 +26,7 @@ public:
 
 protected:
 	SimulationParameterImp() {};
-	SimulationParameterImp(KernelType kernelName, double viscosity, std::shared_ptr<BasicSimulationParameterStruct> basicSimPara, std::shared_ptr<GridInformationStruct> gridInfo);
+	SimulationParameterImp(std::string kernelName, double viscosity, std::shared_ptr<BasicSimulationParameterStruct> basicSimPara, std::shared_ptr<GridInformationStruct> gridInfo);
 
 	void generateFileDirectionInMyStystem(std::string filePath);
 
diff --git a/apps/gpu/tests/NumericalTests/Utilities/Structs/ConfigDataStruct.h b/apps/gpu/tests/NumericalTests/Utilities/Structs/ConfigDataStruct.h
index cbfbb3e73..021d5c403 100644
--- a/apps/gpu/tests/NumericalTests/Utilities/Structs/ConfigDataStruct.h
+++ b/apps/gpu/tests/NumericalTests/Utilities/Structs/ConfigDataStruct.h
@@ -5,8 +5,6 @@
 #include <string>
 #include <vector>
 
-#include "VirtualFluids_GPU/Kernel//Utilities/KernelType.h"
-
 #include "Simulations/ShearWave/ShearWaveParameterStruct.h"
 #include "Simulations/TaylorGreenVortexUx/TaylorGreenVortexUxParameterStruct.h"
 #include "Simulations/TaylorGreenVortexUz/TaylorGreenVortexUzParameterStruct.h"
@@ -22,7 +20,7 @@
 struct ConfigDataStruct
 {
 	std::vector<double> viscosity;
-	std::vector<KernelType> kernelsToTest;
+    std::vector<std::string> kernelsToTest;
 
 	std::vector<std::shared_ptr<TaylorGreenVortexUxParameterStruct> > taylorGreenVortexUxParameter;
 	std::vector<std::shared_ptr<GridInformationStruct> > taylorGreenVortexUxGridInformation;
-- 
GitLab