From cb4cacf6cd977c87aa5ca5a25d2656b4a5a500fa Mon Sep 17 00:00:00 2001
From: Dmitri Naumov <dmitri.naumov@ufz.de>
Date: Thu, 15 Aug 2019 15:41:31 +0200
Subject: [PATCH] [PL] Run asm initialization on all elements.

Now initialization call is executed on all elements,
even those marked as non-active.
---
 ProcessLib/HydroMechanics/HydroMechanicsProcess.cpp        | 7 ++-----
 ProcessLib/PhaseField/PhaseFieldProcess.cpp                | 7 ++-----
 ProcessLib/RichardsMechanics/RichardsMechanicsProcess.cpp  | 7 ++-----
 ProcessLib/SmallDeformation/SmallDeformationProcess.cpp    | 7 ++-----
 .../SmallDeformationNonlocalProcess.cpp                    | 7 ++-----
 .../ThermoHydroMechanics/ThermoHydroMechanicsProcess.cpp   | 7 ++-----
 .../ThermoMechanicalPhaseFieldProcess.cpp                  | 7 ++-----
 ProcessLib/ThermoMechanics/ThermoMechanicsProcess.cpp      | 7 ++-----
 8 files changed, 16 insertions(+), 40 deletions(-)

diff --git a/ProcessLib/HydroMechanics/HydroMechanicsProcess.cpp b/ProcessLib/HydroMechanics/HydroMechanicsProcess.cpp
index 3a1bcd5fd4e..d4c754e7716 100644
--- a/ProcessLib/HydroMechanics/HydroMechanicsProcess.cpp
+++ b/ProcessLib/HydroMechanics/HydroMechanicsProcess.cpp
@@ -247,12 +247,9 @@ void HydroMechanicsProcess<DisplacementDim>::initializeConcreteProcess(
             MeshLib::MeshItemType::Node, 1);
 
     // Initialize local assemblers after all variables have been set.
-    const int process_id = 0;
-    ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0];
-
-    GlobalExecutor::executeSelectedMemberOnDereferenced(
+    GlobalExecutor::executeMemberOnDereferenced(
         &LocalAssemblerInterface::initialize, _local_assemblers,
-        pv.getActiveElementIDs(), *_local_to_global_index_map);
+        *_local_to_global_index_map);
 }
 
 template <int DisplacementDim>
diff --git a/ProcessLib/PhaseField/PhaseFieldProcess.cpp b/ProcessLib/PhaseField/PhaseFieldProcess.cpp
index 6465ed380f8..cd92d295f40 100644
--- a/ProcessLib/PhaseField/PhaseFieldProcess.cpp
+++ b/ProcessLib/PhaseField/PhaseFieldProcess.cpp
@@ -142,12 +142,9 @@ void PhaseFieldProcess<DisplacementDim>::initializeConcreteProcess(
                          &LocalAssemblerInterface::getIntPtEpsilon));
 
     // Initialize local assemblers after all variables have been set.
-    const int process_id = 0;
-    ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0];
-
-    GlobalExecutor::executeSelectedMemberOnDereferenced(
+    GlobalExecutor::executeMemberOnDereferenced(
         &LocalAssemblerInterface::initialize, _local_assemblers,
-        pv.getActiveElementIDs(), *_local_to_global_index_map);
+        *_local_to_global_index_map);
 }
 
 template <int DisplacementDim>
diff --git a/ProcessLib/RichardsMechanics/RichardsMechanicsProcess.cpp b/ProcessLib/RichardsMechanics/RichardsMechanicsProcess.cpp
index 5378d63831e..1de8b423d0c 100644
--- a/ProcessLib/RichardsMechanics/RichardsMechanicsProcess.cpp
+++ b/ProcessLib/RichardsMechanics/RichardsMechanicsProcess.cpp
@@ -203,12 +203,9 @@ void RichardsMechanicsProcess<DisplacementDim>::initializeConcreteProcess(
             MeshLib::MeshItemType::Node, 1);
 
     // Initialize local assemblers after all variables have been set.
-    const int process_id = 0;
-    ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0];
-
-    GlobalExecutor::executeSelectedMemberOnDereferenced(
+    GlobalExecutor::executeMemberOnDereferenced(
         &LocalAssemblerInterface::initialize, _local_assemblers,
-        pv.getActiveElementIDs(), *_local_to_global_index_map);
+        *_local_to_global_index_map);
 }
 
 template <int DisplacementDim>
diff --git a/ProcessLib/SmallDeformation/SmallDeformationProcess.cpp b/ProcessLib/SmallDeformation/SmallDeformationProcess.cpp
index a79e050820e..095302459ac 100644
--- a/ProcessLib/SmallDeformation/SmallDeformationProcess.cpp
+++ b/ProcessLib/SmallDeformation/SmallDeformationProcess.cpp
@@ -233,12 +233,9 @@ void SmallDeformationProcess<DisplacementDim>::initializeConcreteProcess(
     }
 
     // Initialize local assemblers after all variables have been set.
-    const int process_id = 0;
-    ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0];
-
-    GlobalExecutor::executeSelectedMemberOnDereferenced(
+    GlobalExecutor::executeMemberOnDereferenced(
         &LocalAssemblerInterface::initialize, _local_assemblers,
-        pv.getActiveElementIDs(), *_local_to_global_index_map);
+        *_local_to_global_index_map);
 }
 
 template <int DisplacementDim>
diff --git a/ProcessLib/SmallDeformationNonlocal/SmallDeformationNonlocalProcess.cpp b/ProcessLib/SmallDeformationNonlocal/SmallDeformationNonlocalProcess.cpp
index 9a2c8d174a7..6f17af718df 100644
--- a/ProcessLib/SmallDeformationNonlocal/SmallDeformationNonlocalProcess.cpp
+++ b/ProcessLib/SmallDeformationNonlocal/SmallDeformationNonlocalProcess.cpp
@@ -225,12 +225,9 @@ void SmallDeformationNonlocalProcess<DisplacementDim>::
     }
 
     // Initialize local assemblers after all variables have been set.
-    const int process_id = 0;
-    ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0];
-
-    GlobalExecutor::executeSelectedMemberOnDereferenced(
+    GlobalExecutor::executeMemberOnDereferenced(
         &LocalAssemblerInterface::initialize, _local_assemblers,
-        pv.getActiveElementIDs(), *_local_to_global_index_map);
+        *_local_to_global_index_map);
 }
 
 template <int DisplacementDim>
diff --git a/ProcessLib/ThermoHydroMechanics/ThermoHydroMechanicsProcess.cpp b/ProcessLib/ThermoHydroMechanics/ThermoHydroMechanicsProcess.cpp
index 9cab4ed92ff..823ab71831a 100644
--- a/ProcessLib/ThermoHydroMechanics/ThermoHydroMechanicsProcess.cpp
+++ b/ProcessLib/ThermoHydroMechanics/ThermoHydroMechanicsProcess.cpp
@@ -204,12 +204,9 @@ void ThermoHydroMechanicsProcess<DisplacementDim>::initializeConcreteProcess(
             MeshLib::MeshItemType::Node, 1);
 
     // Initialize local assemblers after all variables have been set.
-    const int process_id = 0;
-    ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0];
-
-    GlobalExecutor::executeSelectedMemberOnDereferenced(
+    GlobalExecutor::executeMemberOnDereferenced(
         &LocalAssemblerInterface::initialize, _local_assemblers,
-        pv.getActiveElementIDs(), *_local_to_global_index_map);
+        *_local_to_global_index_map);
 }
 
 template <int DisplacementDim>
diff --git a/ProcessLib/ThermoMechanicalPhaseField/ThermoMechanicalPhaseFieldProcess.cpp b/ProcessLib/ThermoMechanicalPhaseField/ThermoMechanicalPhaseFieldProcess.cpp
index bb006dc5c26..2a1ec6a1c7c 100644
--- a/ProcessLib/ThermoMechanicalPhaseField/ThermoMechanicalPhaseFieldProcess.cpp
+++ b/ProcessLib/ThermoMechanicalPhaseField/ThermoMechanicalPhaseFieldProcess.cpp
@@ -163,12 +163,9 @@ void ThermoMechanicalPhaseFieldProcess<DisplacementDim>::
                              getIntPtHeatFlux));
 
     // Initialize local assemblers after all variables have been set.
-    const int process_id = 0;
-    ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0];
-
-    GlobalExecutor::executeSelectedMemberOnDereferenced(
+    GlobalExecutor::executeMemberOnDereferenced(
         &LocalAssemblerInterface::initialize, _local_assemblers,
-        pv.getActiveElementIDs(), *_local_to_global_index_map);
+        *_local_to_global_index_map);
 }
 
 template <int DisplacementDim>
diff --git a/ProcessLib/ThermoMechanics/ThermoMechanicsProcess.cpp b/ProcessLib/ThermoMechanics/ThermoMechanicsProcess.cpp
index 55901ee6618..444684c2458 100644
--- a/ProcessLib/ThermoMechanics/ThermoMechanicsProcess.cpp
+++ b/ProcessLib/ThermoMechanics/ThermoMechanicsProcess.cpp
@@ -250,12 +250,9 @@ void ThermoMechanicsProcess<DisplacementDim>::initializeConcreteProcess(
     }
 
     // Initialize local assemblers after all variables have been set.
-    const int process_id = 0;
-    ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0];
-
-    GlobalExecutor::executeSelectedMemberOnDereferenced(
+    GlobalExecutor::executeMemberOnDereferenced(
         &LocalAssemblerInterface::initialize, _local_assemblers,
-        pv.getActiveElementIDs(), *_local_to_global_index_map);
+        *_local_to_global_index_map);
 }
 
 template <int DisplacementDim>
-- 
GitLab