diff --git a/ProcessLib/GroundwaterFlow/GroundwaterFlowProcess.h b/ProcessLib/GroundwaterFlow/GroundwaterFlowProcess.h
index 52190044adb96b79710f07e995a831ce31a84946..901617056f5e60b08392d1859f4373ea051e3203 100644
--- a/ProcessLib/GroundwaterFlow/GroundwaterFlowProcess.h
+++ b/ProcessLib/GroundwaterFlow/GroundwaterFlowProcess.h
@@ -55,7 +55,8 @@ public:
         std::vector<GlobalIndexType> indices_cache;
         auto const r_c_indices = NumLib::getRowColumnIndices(
             element_id, *_local_to_global_index_map, indices_cache);
-        std::vector<double> local_x(x[0]->get(r_c_indices.rows));
+        constexpr int process_id = 0;  // monolithic scheme.
+        std::vector<double> local_x(x[process_id]->get(r_c_indices.rows));
 
         return _local_assemblers[element_id]->getFlux(p, t, local_x);
     }
diff --git a/ProcessLib/TES/TESProcess.cpp b/ProcessLib/TES/TESProcess.cpp
index b69f677285f950246bb424397b48a4580554db1d..bf92c44477f0f5cc1efe0142e5d5d162549a29c8 100644
--- a/ProcessLib/TES/TESProcess.cpp
+++ b/ProcessLib/TES/TESProcess.cpp
@@ -322,7 +322,8 @@ GlobalVector const& TESProcess::computeVapourPartialPressure(
     std::vector<NumLib::LocalToGlobalIndexMap const*> const& dof_table,
     std::unique_ptr<GlobalVector>& result_cache)
 {
-    assert(dof_table[0] == _local_to_global_index_map.get());
+    constexpr int process_id = 0;  // monolithic scheme.
+    assert(dof_table[process_id] == _local_to_global_index_map.get());
 
     auto const& dof_table_single = getSingleComponentDOFTable();
     result_cache = MathLib::MatrixVectorTraits<GlobalVector>::newInstance(
@@ -334,10 +335,12 @@ GlobalVector const& TESProcess::computeVapourPartialPressure(
 
     for (GlobalIndexType node_id = 0; node_id < nnodes; ++node_id)
     {
-        auto const p = NumLib::getNodalValue(*x[0], _mesh, *dof_table[0],
-                                             node_id, COMPONENT_ID_PRESSURE);
-        auto const x_mV = NumLib::getNodalValue(
-            *x[0], _mesh, *dof_table[0], node_id, COMPONENT_ID_MASS_FRACTION);
+        auto const p =
+            NumLib::getNodalValue(*x[process_id], _mesh, *dof_table[process_id],
+                                  node_id, COMPONENT_ID_PRESSURE);
+        auto const x_mV =
+            NumLib::getNodalValue(*x[process_id], _mesh, *dof_table[process_id],
+                                  node_id, COMPONENT_ID_MASS_FRACTION);
 
         auto const x_nV = Adsorption::AdsorptionReaction::getMolarFraction(
             x_mV, _assembly_params.M_react, _assembly_params.M_inert);
@@ -354,7 +357,8 @@ GlobalVector const& TESProcess::computeRelativeHumidity(
     std::vector<NumLib::LocalToGlobalIndexMap const*> const& dof_table,
     std::unique_ptr<GlobalVector>& result_cache)
 {
-    assert(dof_table[0] == _local_to_global_index_map.get());
+    constexpr int process_id = 0;  // monolithic scheme.
+    assert(dof_table[process_id] == _local_to_global_index_map.get());
 
     auto const& dof_table_single = getSingleComponentDOFTable();
     result_cache = MathLib::MatrixVectorTraits<GlobalVector>::newInstance(
@@ -367,12 +371,13 @@ GlobalVector const& TESProcess::computeRelativeHumidity(
     auto const& x = *xs[0];  // monolithic process
     for (GlobalIndexType node_id = 0; node_id < nnodes; ++node_id)
     {
-        auto const p = NumLib::getNodalValue(x, _mesh, *dof_table[0], node_id,
-                                             COMPONENT_ID_PRESSURE);
-        auto const T = NumLib::getNodalValue(x, _mesh, *dof_table[0], node_id,
-                                             COMPONENT_ID_TEMPERATURE);
-        auto const x_mV = NumLib::getNodalValue(
-            x, _mesh, *dof_table[0], node_id, COMPONENT_ID_MASS_FRACTION);
+        auto const p = NumLib::getNodalValue(x, _mesh, *dof_table[process_id],
+                                             node_id, COMPONENT_ID_PRESSURE);
+        auto const T = NumLib::getNodalValue(x, _mesh, *dof_table[process_id],
+                                             node_id, COMPONENT_ID_TEMPERATURE);
+        auto const x_mV =
+            NumLib::getNodalValue(x, _mesh, *dof_table[process_id], node_id,
+                                  COMPONENT_ID_MASS_FRACTION);
 
         auto const x_nV = Adsorption::AdsorptionReaction::getMolarFraction(
             x_mV, _assembly_params.M_react, _assembly_params.M_inert);
@@ -392,7 +397,8 @@ GlobalVector const& TESProcess::computeEquilibriumLoading(
     std::vector<NumLib::LocalToGlobalIndexMap const*> const& dof_table,
     std::unique_ptr<GlobalVector>& result_cache)
 {
-    assert(dof_table[0] == _local_to_global_index_map.get());
+    constexpr int process_id = 0;  // monolithic scheme.
+    assert(dof_table[process_id] == _local_to_global_index_map.get());
 
     auto const& dof_table_single = getSingleComponentDOFTable();
     result_cache = MathLib::MatrixVectorTraits<GlobalVector>::newInstance(
@@ -405,12 +411,13 @@ GlobalVector const& TESProcess::computeEquilibriumLoading(
     auto const& x = *xs[0];  // monolithic process
     for (GlobalIndexType node_id = 0; node_id < nnodes; ++node_id)
     {
-        auto const p = NumLib::getNodalValue(x, _mesh, *dof_table[0], node_id,
-                                             COMPONENT_ID_PRESSURE);
-        auto const T = NumLib::getNodalValue(x, _mesh, *dof_table[0], node_id,
-                                             COMPONENT_ID_TEMPERATURE);
-        auto const x_mV = NumLib::getNodalValue(
-            x, _mesh, *dof_table[0], node_id, COMPONENT_ID_MASS_FRACTION);
+        auto const p = NumLib::getNodalValue(x, _mesh, *dof_table[process_id],
+                                             node_id, COMPONENT_ID_PRESSURE);
+        auto const T = NumLib::getNodalValue(x, _mesh, *dof_table[process_id],
+                                             node_id, COMPONENT_ID_TEMPERATURE);
+        auto const x_mV =
+            NumLib::getNodalValue(x, _mesh, *dof_table[process_id], node_id,
+                                  COMPONENT_ID_MASS_FRACTION);
 
         auto const x_nV = Adsorption::AdsorptionReaction::getMolarFraction(
             x_mV, _assembly_params.M_react, _assembly_params.M_inert);