diff --git a/MaterialLib/SolidModels/CreateEhlers.h b/MaterialLib/SolidModels/CreateEhlers.h
index 167acc52154d6eca8d7dbe10d445c83737e4ab88..b22e160b079dfcd68da2193ced0dd1fcdca22194 100644
--- a/MaterialLib/SolidModels/CreateEhlers.h
+++ b/MaterialLib/SolidModels/CreateEhlers.h
@@ -9,12 +9,8 @@
 
 #pragma once
 
-#include <logog/include/logog.hpp>
-
 #include "ProcessLib/Utils/ProcessUtils.h"  // required for findParameter
-
 #include "Ehlers.h"
-#include "MechanicsBase.h"
 
 namespace MaterialLib
 {
@@ -67,7 +63,7 @@ inline std::unique_ptr<DamagePropertiesParameters> createDamageProperties(
 }
 
 template <int DisplacementDim>
-std::unique_ptr<MechanicsBase<DisplacementDim>> createEhlers(
+std::unique_ptr<SolidEhlers<DisplacementDim>> createEhlers(
     std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters,
     BaseLib::ConfigTree const& config)
 {
@@ -194,7 +190,7 @@ std::unique_ptr<MechanicsBase<DisplacementDim>> createEhlers(
     auto const nonlinear_solver_parameters =
         createNewtonRaphsonSolverParameters(nonlinear_solver_config);
 
-    return std::unique_ptr<MechanicsBase<DisplacementDim>>{
+    return std::unique_ptr<SolidEhlers<DisplacementDim>>{
         new SolidEhlers<DisplacementDim>{nonlinear_solver_parameters, mp,
                                          std::move(ehlers_damage_properties)}};
 }
diff --git a/MaterialLib/SolidModels/CreateLubby2.h b/MaterialLib/SolidModels/CreateLubby2.h
index a9bc8d685af67b983c5e54b26d0b8d40620d4517..ca31ea936c5a442145ccbbbe739f430ae3f1b39e 100644
--- a/MaterialLib/SolidModels/CreateLubby2.h
+++ b/MaterialLib/SolidModels/CreateLubby2.h
@@ -9,12 +9,9 @@
 
 #pragma once
 
-#include <logog/include/logog.hpp>
-
 #include "ProcessLib/Utils/ProcessUtils.h"  // required for findParameter
 
 #include "Lubby2.h"
-#include "MechanicsBase.h"
 
 namespace MaterialLib
 {
@@ -42,7 +39,7 @@ createNewtonRaphsonSolverParameters(BaseLib::ConfigTree const& config)
 }
 
 template <int DisplacementDim>
-std::unique_ptr<MechanicsBase<DisplacementDim>> createLubby2(
+std::unique_ptr<Lubby2<DisplacementDim>> createLubby2(
     std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters,
     BaseLib::ConfigTree const& config)
 {
@@ -126,7 +123,7 @@ std::unique_ptr<MechanicsBase<DisplacementDim>> createLubby2(
     auto const nonlinear_solver_parameters =
         createNewtonRaphsonSolverParameters(nonlinear_solver_config);
 
-    return std::unique_ptr<MechanicsBase<DisplacementDim>>{
+    return std::unique_ptr<Lubby2<DisplacementDim>>{
         new Lubby2<DisplacementDim>{nonlinear_solver_parameters, mp}};
 }
 
diff --git a/MaterialLib/SolidModels/Ehlers.h b/MaterialLib/SolidModels/Ehlers.h
index ecb12c0ac84a9ed957601169909e55288e5ffa80..edc092e2ffde6561ef6b023f815132fbd41f9503 100644
--- a/MaterialLib/SolidModels/Ehlers.h
+++ b/MaterialLib/SolidModels/Ehlers.h
@@ -19,18 +19,13 @@
 
 #pragma once
 
-#include <cfloat>
-#include <memory>
 #ifndef NDEBUG
 #include <ostream>
 #endif
 
-#include <Eigen/Dense>
-#include <logog/include/logog.hpp>
-#include <utility>
-
 #include "BaseLib/Error.h"
 #include "NumLib/NewtonRaphson.h"
+#include "ProcessLib/Parameter/Parameter.h"
 
 #include "KelvinVector.h"
 #include "MechanicsBase.h"
diff --git a/MaterialLib/SolidModels/LinearElasticIsotropic.h b/MaterialLib/SolidModels/LinearElasticIsotropic.h
index 3d3370b12e6a6c7533c6095569ab12a75440c5ca..82528bc7e9cbb4a964ceaf98c0c5c2a409812ce2 100644
--- a/MaterialLib/SolidModels/LinearElasticIsotropic.h
+++ b/MaterialLib/SolidModels/LinearElasticIsotropic.h
@@ -9,9 +9,8 @@
 
 #pragma once
 
-#include <utility>
-
 #include "MechanicsBase.h"
+#include "ProcessLib/Parameter/Parameter.h"
 
 namespace MaterialLib
 {
diff --git a/MaterialLib/SolidModels/Lubby2.h b/MaterialLib/SolidModels/Lubby2.h
index 3cec4597a186462f3765834d67e5a3264d494a79..989ed506996fd9b0f475556ef4680b64df129ef2 100644
--- a/MaterialLib/SolidModels/Lubby2.h
+++ b/MaterialLib/SolidModels/Lubby2.h
@@ -9,11 +9,8 @@
 
 #pragma once
 
-#include <logog/include/logog.hpp>
-#include <utility>
-
-#include "BaseLib/Error.h"
 #include "NumLib/NewtonRaphson.h"
+#include "ProcessLib/Parameter/Parameter.h"
 
 #include "KelvinVector.h"
 #include "MechanicsBase.h"
diff --git a/MaterialLib/SolidModels/MechanicsBase.h b/MaterialLib/SolidModels/MechanicsBase.h
index 5dc04b9a79e9cd216bef54c3f71e5afec33b3833..18e5506a3b5f6c520f0f55df4a17d43aa2471722 100644
--- a/MaterialLib/SolidModels/MechanicsBase.h
+++ b/MaterialLib/SolidModels/MechanicsBase.h
@@ -13,7 +13,11 @@
 #include <tuple>
 
 #include "ProcessLib/Deformation/BMatrixPolicy.h"
-#include "ProcessLib/Parameter/Parameter.h"
+
+namespace ProcessLib
+{
+class SpatialPosition;
+}
 
 namespace MeshLib
 {