diff --git a/ProcessLib/HT/CreateHTProcess.cpp b/ProcessLib/HT/CreateHTProcess.cpp
index d62f564733d341a4225b3a8302a60a98f145583b..9f68e20397666fa72e310d66698f4a6f03de5155 100644
--- a/ProcessLib/HT/CreateHTProcess.cpp
+++ b/ProcessLib/HT/CreateHTProcess.cpp
@@ -18,7 +18,7 @@
 #include "ProcessLib/Utils/ProcessUtils.h"
 
 #include "HTProcess.h"
-#include "HTMaterialProperties.h"
+#include "HTProcessData.h"
 #include "HTLocalAssemblerInterface.h"
 
 namespace ProcessLib
@@ -139,7 +139,7 @@ std::unique_ptr<Process> createHTProcess(
     auto media_map =
         MaterialPropertyLib::createMaterialSpatialDistributionMap(media, mesh);
 
-    HTMaterialProperties material_properties{
+    HTProcessData process_data{
         std::move(media_map),     has_fluid_thermal_expansion,
         *solid_thermal_expansion, *biot_constant,
         specific_body_force,      has_gravity};
@@ -155,7 +155,7 @@ std::unique_ptr<Process> createHTProcess(
     return std::make_unique<HTProcess>(
         std::move(name), mesh, std::move(jacobian_assembler), parameters,
         integration_order, std::move(process_variables),
-        std::move(material_properties), std::move(secondary_variables),
+        std::move(process_data), std::move(secondary_variables),
         std::move(named_function_caller), use_monolithic_scheme,
         std::move(surfaceflux), _heat_transport_process_id,
         _hydraulic_process_id);
diff --git a/ProcessLib/HT/HTFEM.h b/ProcessLib/HT/HTFEM.h
index 27984d5db843b7c461e15a0bdae9ac61ed79614d..0e3c1084fd691141eaf45c8e240ddfbdd686cd56 100644
--- a/ProcessLib/HT/HTFEM.h
+++ b/ProcessLib/HT/HTFEM.h
@@ -12,7 +12,7 @@
 #include <Eigen/Dense>
 #include <vector>
 
-#include "HTMaterialProperties.h"
+#include "HTProcessData.h"
 
 #include "MaterialLib/MPL/Medium.h"
 #include "MaterialLib/MPL/Utils/FormEigenTensor.h"
@@ -50,11 +50,11 @@ public:
           std::size_t const local_matrix_size,
           bool const is_axially_symmetric,
           unsigned const integration_order,
-          HTMaterialProperties const& material_properties,
+          HTProcessData const& process_data,
           const unsigned dof_per_node)
         : HTLocalAssemblerInterface(),
           _element(element),
-          _material_properties(material_properties),
+          _process_data(process_data),
           _integration_method(integration_order)
     {
         // This assertion is valid only if all nodal d.o.f. use the same shape
@@ -127,7 +127,7 @@ public:
             p_int_pt;
 
         auto const& medium =
-            *_material_properties.media_map->getMedium(_element.getID());
+            *_process_data.media_map->getMedium(_element.getID());
         auto const& liquid_phase = medium.phase("AqueousLiquid");
         auto const& solid_phase = medium.phase("Solid");
 
@@ -146,13 +146,13 @@ public:
         GlobalDimVectorType q =
             -K_over_mu * shape_matrices.dNdx * p_nodal_values;
 
-        if (this->_material_properties.has_gravity)
+        if (this->_process_data.has_gravity)
         {
             auto const rho_w =
                 liquid_phase
                     .property(MaterialPropertyLib::PropertyType::density)
                     .template value<double>(vars);
-            auto const b = this->_material_properties.specific_body_force;
+            auto const b = this->_process_data.specific_body_force;
             q += K_over_mu * rho_w * b;
         }
 
@@ -163,7 +163,7 @@ public:
 
 protected:
     MeshLib::Element const& _element;
-    HTMaterialProperties const& _material_properties;
+    HTProcessData const& _process_data;
 
     IntegrationMethod const _integration_method;
     std::vector<
@@ -179,7 +179,7 @@ protected:
         const double specific_heat_capacity_fluid)
     {
         auto const& medium =
-            *_material_properties.media_map->getMedium(this->_element.getID());
+            *_process_data.media_map->getMedium(this->_element.getID());
         auto const& solid_phase = medium.phase("Solid");
 
         auto const specific_heat_capacity_solid =
@@ -202,7 +202,7 @@ protected:
         const GlobalDimVectorType& velocity, const GlobalDimMatrixType& I)
     {
         auto const& medium =
-            *_material_properties.media_map->getMedium(_element.getID());
+            *_process_data.media_map->getMedium(_element.getID());
         auto const& solid_phase = medium.phase("Solid");
         auto const& liquid_phase = medium.phase("AqueousLiquid");
 
@@ -270,7 +270,7 @@ protected:
             &local_p[0], ShapeFunction::NPOINTS);
 
         auto const& medium =
-            *_material_properties.media_map->getMedium(_element.getID());
+            *_process_data.media_map->getMedium(_element.getID());
         auto const& liquid_phase = medium.phase("AqueousLiquid");
         auto const& solid_phase = medium.phase("Solid");
 
@@ -305,13 +305,13 @@ protected:
 
             cache_mat.col(ip).noalias() = -K_over_mu * dNdx * p_nodal_values;
 
-            if (_material_properties.has_gravity)
+            if (_process_data.has_gravity)
             {
                 auto const rho_w =
                     liquid_phase
                         .property(MaterialPropertyLib::PropertyType::density)
                         .template value<double>(vars);
-                auto const b = _material_properties.specific_body_force;
+                auto const b = _process_data.specific_body_force;
                 // here it is assumed that the vector b is directed 'downwards'
                 cache_mat.col(ip).noalias() += K_over_mu * rho_w * b;
             }
diff --git a/ProcessLib/HT/HTProcess.cpp b/ProcessLib/HT/HTProcess.cpp
index a9074a8bae53be0499aaec91746619c050531997..2b06e55ba8a5c2e67c069ad01e03e8f37a526320 100644
--- a/ProcessLib/HT/HTProcess.cpp
+++ b/ProcessLib/HT/HTProcess.cpp
@@ -31,7 +31,7 @@ HTProcess::HTProcess(
     unsigned const integration_order,
     std::vector<std::vector<std::reference_wrapper<ProcessVariable>>>&&
         process_variables,
-    HTMaterialProperties&& material_properties,
+    HTProcessData&& process_data,
     SecondaryVariableCollection&& secondary_variables,
     NumLib::NamedFunctionCaller&& named_function_caller,
     bool const use_monolithic_scheme,
@@ -42,7 +42,7 @@ HTProcess::HTProcess(
               integration_order, std::move(process_variables),
               std::move(secondary_variables), std::move(named_function_caller),
               use_monolithic_scheme),
-      _material_properties(std::move(material_properties)),
+      _process_data(std::move(process_data)),
       _surfaceflux(std::move(surfaceflux)),
       _heat_transport_process_id(heat_transport_process_id),
       _hydraulic_process_id(hydraulic_process_id)
@@ -67,14 +67,14 @@ void HTProcess::initializeConcreteProcess(
             mesh.getDimension(), mesh.getElements(), dof_table,
             pv.getShapeFunctionOrder(), _local_assemblers,
             mesh.isAxiallySymmetric(), integration_order,
-            _material_properties);
+            _process_data);
     }
     else
     {
         ProcessLib::createLocalAssemblers<StaggeredHTFEM>(
             mesh.getDimension(), mesh.getElements(), dof_table,
             pv.getShapeFunctionOrder(), _local_assemblers,
-            mesh.isAxiallySymmetric(), integration_order, _material_properties,
+            mesh.isAxiallySymmetric(), integration_order, _process_data,
             _heat_transport_process_id, _hydraulic_process_id);
     }
 
diff --git a/ProcessLib/HT/HTProcess.h b/ProcessLib/HT/HTProcess.h
index b6dbe34253f9778c28b4b31de51ed98519758ec7..732b3f62b076181dbab80c4564c3e723b25fc228 100644
--- a/ProcessLib/HT/HTProcess.h
+++ b/ProcessLib/HT/HTProcess.h
@@ -11,7 +11,7 @@
 
 #include <array>
 
-#include "HTMaterialProperties.h"
+#include "HTProcessData.h"
 #include "ProcessLib/Process.h"
 
 namespace NumLib
@@ -59,7 +59,7 @@ public:
         unsigned const integration_order,
         std::vector<std::vector<std::reference_wrapper<ProcessVariable>>>&&
             process_variables,
-        HTMaterialProperties&& material_properties,
+        HTProcessData&& process_data,
         SecondaryVariableCollection&& secondary_variables,
         NumLib::NamedFunctionCaller&& named_function_caller,
         bool const use_monolithic_scheme,
@@ -116,7 +116,7 @@ private:
     std::tuple<NumLib::LocalToGlobalIndexMap*, bool>
         getDOFTableForExtrapolatorData() const override;
 
-    HTMaterialProperties _material_properties;
+    HTProcessData _process_data;
 
     std::vector<std::unique_ptr<HTLocalAssemblerInterface>> _local_assemblers;
 
diff --git a/ProcessLib/HT/HTMaterialProperties.h b/ProcessLib/HT/HTProcessData.h
similarity index 91%
rename from ProcessLib/HT/HTMaterialProperties.h
rename to ProcessLib/HT/HTProcessData.h
index 4503b3c3e1fa18dfc601b5badb6af53732b109b4..3ea19bbc09224549fbb2fbb53a04f9131ed3c1e0 100644
--- a/ProcessLib/HT/HTMaterialProperties.h
+++ b/ProcessLib/HT/HTProcessData.h
@@ -19,12 +19,9 @@
 
 namespace ProcessLib
 {
-template <typename ReturnType>
-struct Parameter;
-
 namespace HT
 {
-struct HTMaterialProperties final
+struct HTProcessData final
 {
     std::unique_ptr<MaterialPropertyLib::MaterialSpatialDistributionMap>
         media_map;
diff --git a/ProcessLib/HT/MonolithicHTFEM.h b/ProcessLib/HT/MonolithicHTFEM.h
index 9471fcdc260080ae61cdf7417d31fa02ca332f8a..6b992aad18af22f66d6dee2a0486029f34da233e 100644
--- a/ProcessLib/HT/MonolithicHTFEM.h
+++ b/ProcessLib/HT/MonolithicHTFEM.h
@@ -14,7 +14,7 @@
 #include <Eigen/Dense>
 #include <vector>
 
-#include "HTMaterialProperties.h"
+#include "HTProcessData.h"
 #include "MaterialLib/MPL/Medium.h"
 #include "MaterialLib/MPL/Utils/FormEigenTensor.h"
 
@@ -59,10 +59,10 @@ public:
                     std::size_t const local_matrix_size,
                     bool is_axially_symmetric,
                     unsigned const integration_order,
-                    HTMaterialProperties const& material_properties)
+                    HTProcessData const& process_data)
         : HTFEM<ShapeFunction, IntegrationMethod, GlobalDim>(
               element, local_matrix_size, is_axially_symmetric,
-              integration_order, material_properties, NUM_NODAL_DOF)
+              integration_order, process_data, NUM_NODAL_DOF)
     {
     }
 
@@ -99,7 +99,7 @@ public:
         auto p_nodal_values = Eigen::Map<const NodalVectorType>(
             &local_x[pressure_index], pressure_size);
 
-        auto const& process_data = this->_material_properties;
+        auto const& process_data = this->_process_data;
         auto const& medium =
             *process_data.media_map->getMedium(this->_element.getID());
         auto const& liquid_phase = medium.phase("AqueousLiquid");
diff --git a/ProcessLib/HT/StaggeredHTFEM-impl.h b/ProcessLib/HT/StaggeredHTFEM-impl.h
index 90b380727ed715a13d62b1938c17d1d99cc86edc..bb937037c7a5b390cf9e607471b06b0e190fab1f 100644
--- a/ProcessLib/HT/StaggeredHTFEM-impl.h
+++ b/ProcessLib/HT/StaggeredHTFEM-impl.h
@@ -71,13 +71,13 @@ void StaggeredHTFEM<ShapeFunction, IntegrationMethod, GlobalDim>::
     ParameterLib::SpatialPosition pos;
     pos.setElementID(this->_element.getID());
 
-    auto const& material_properties = this->_material_properties;
-    auto const& medium = *this->_material_properties.media_map->getMedium(
+    auto const& process_data = this->_process_data;
+    auto const& medium = *this->_process_data.media_map->getMedium(
         this->_element.getID());
     auto const& liquid_phase = medium.phase("AqueousLiquid");
     auto const& solid_phase = medium.phase("Solid");
 
-    auto const& b = material_properties.specific_body_force;
+    auto const& b = process_data.specific_body_force;
 
     MaterialPropertyLib::VariableArray vars;
 
@@ -142,13 +142,13 @@ void StaggeredHTFEM<ShapeFunction, IntegrationMethod, GlobalDim>::
 
         local_K.noalias() += w * dNdx.transpose() * K_over_mu * dNdx;
 
-        if (material_properties.has_gravity)
+        if (process_data.has_gravity)
         {
             local_b.noalias() +=
                 w * fluid_density * dNdx.transpose() * K_over_mu * b;
         }
 
-        if (!material_properties.has_fluid_thermal_expansion)
+        if (!process_data.has_fluid_thermal_expansion)
         {
             return;
         }
@@ -156,7 +156,7 @@ void StaggeredHTFEM<ShapeFunction, IntegrationMethod, GlobalDim>::
         // Add the thermal expansion term
         {
             auto const solid_thermal_expansion =
-                material_properties.solid_thermal_expansion(t, pos)[0];
+                process_data.solid_thermal_expansion(t, pos)[0];
             const double dfluid_density_dT =
                 liquid_phase
                     .property(MaterialPropertyLib::PropertyType::density)
@@ -165,7 +165,7 @@ void StaggeredHTFEM<ShapeFunction, IntegrationMethod, GlobalDim>::
             double T0_int_pt = 0.;
             NumLib::shapeFunctionInterpolate(local_T0, N, T0_int_pt);
             auto const biot_constant =
-                material_properties.biot_constant(t, pos)[0];
+                process_data.biot_constant(t, pos)[0];
             const double eff_thermal_expansion =
                 3.0 * (biot_constant - porosity) * solid_thermal_expansion -
                 porosity * dfluid_density_dT / fluid_density;
@@ -204,13 +204,13 @@ void StaggeredHTFEM<ShapeFunction, IntegrationMethod, GlobalDim>::
     ParameterLib::SpatialPosition pos;
     pos.setElementID(this->_element.getID());
 
-    auto const& material_properties = this->_material_properties;
+    auto const& process_data = this->_process_data;
     auto const& medium =
-        *material_properties.media_map->getMedium(this->_element.getID());
+        *process_data.media_map->getMedium(this->_element.getID());
     auto const& liquid_phase = medium.phase("AqueousLiquid");
     auto const& solid_phase = medium.phase("Solid");
 
-    auto const& b = material_properties.specific_body_force;
+    auto const& b = process_data.specific_body_force;
 
     GlobalDimMatrixType const& I(
         GlobalDimMatrixType::Identity(GlobalDim, GlobalDim));
@@ -272,7 +272,7 @@ void StaggeredHTFEM<ShapeFunction, IntegrationMethod, GlobalDim>::
         GlobalDimMatrixType const K_over_mu =
             intrinsic_permeability / viscosity;
         GlobalDimVectorType const velocity =
-            material_properties.has_gravity
+            process_data.has_gravity
                 ? GlobalDimVectorType(-K_over_mu * (dNdx * local_p_Eigen_type -
                                                     fluid_density * b))
                 : GlobalDimVectorType(-K_over_mu * dNdx * local_p_Eigen_type);
diff --git a/ProcessLib/HT/StaggeredHTFEM.h b/ProcessLib/HT/StaggeredHTFEM.h
index 8a8c5e47baec5111d7c5922e524d1e304e4cea85..6c9d02e4605cf2ef03450373a29699e25bc5cc66 100644
--- a/ProcessLib/HT/StaggeredHTFEM.h
+++ b/ProcessLib/HT/StaggeredHTFEM.h
@@ -55,12 +55,12 @@ public:
                    std::size_t const local_matrix_size,
                    bool is_axially_symmetric,
                    unsigned const integration_order,
-                   HTMaterialProperties const& material_properties,
+                   HTProcessData const& process_data,
                    const int heat_transport_process_id,
                    const int hydraulic_process_id)
         : HTFEM<ShapeFunction, IntegrationMethod, GlobalDim>(
               element, local_matrix_size, is_axially_symmetric,
-              integration_order, material_properties, 1),
+              integration_order, process_data, 1),
         _heat_transport_process_id(heat_transport_process_id),
         _hydraulic_process_id(hydraulic_process_id)
     {