From 30c0fd1f9acf26f9af10fe4e827f1b6a027f0d3f Mon Sep 17 00:00:00 2001
From: renchao_lu <renchao.lu@gmail.com>
Date: Fri, 11 Dec 2020 19:36:45 +0100
Subject: [PATCH] [PL/TimeLoop] Remove _chemical_solver_interface from class
 TimeLoop.

---
 Applications/ApplicationsLib/ProjectData.cpp | 12 ++++--------
 Applications/ApplicationsLib/ProjectData.h   |  4 +---
 ProcessLib/CreateTimeLoop.cpp                |  7 ++-----
 ProcessLib/CreateTimeLoop.h                  |  9 +--------
 ProcessLib/TimeLoop.cpp                      |  6 +-----
 ProcessLib/TimeLoop.h                        |  5 -----
 6 files changed, 9 insertions(+), 34 deletions(-)

diff --git a/Applications/ApplicationsLib/ProjectData.cpp b/Applications/ApplicationsLib/ProjectData.cpp
index 6c3104115ef..8e8d16614e7 100644
--- a/Applications/ApplicationsLib/ProjectData.cpp
+++ b/Applications/ApplicationsLib/ProjectData.cpp
@@ -353,7 +353,7 @@ ProjectData::ProjectData(BaseLib::ConfigTree const& project_config,
 
     //! \ogs_file_param{prj__time_loop}
     parseTimeLoop(project_config.getConfigSubtree("time_loop"),
-                  output_directory, std::move(chemical_solver_interface));
+                  output_directory);
 }
 
 void ProjectData::parseProcessVariables(
@@ -1036,17 +1036,13 @@ void ProjectData::parseProcesses(
     }
 }
 
-void ProjectData::parseTimeLoop(
-    BaseLib::ConfigTree const& config,
-    std::string const& output_directory,
-    std::unique_ptr<ChemistryLib::ChemicalSolverInterface>&&
-        chemical_solver_interface)
+void ProjectData::parseTimeLoop(BaseLib::ConfigTree const& config,
+                                std::string const& output_directory)
 {
     DBUG("Reading time loop configuration.");
 
     _time_loop = ProcessLib::createTimeLoop(
-        config, output_directory, _processes, _nonlinear_solvers, _mesh_vec,
-        std::move(chemical_solver_interface));
+        config, output_directory, _processes, _nonlinear_solvers, _mesh_vec);
 
     if (!_time_loop)
     {
diff --git a/Applications/ApplicationsLib/ProjectData.h b/Applications/ApplicationsLib/ProjectData.h
index a12704bee55..6b02facc8ed 100644
--- a/Applications/ApplicationsLib/ProjectData.h
+++ b/Applications/ApplicationsLib/ProjectData.h
@@ -107,9 +107,7 @@ private:
 
     /// Parses the time loop configuration.
     void parseTimeLoop(BaseLib::ConfigTree const& config,
-                       const std::string& output_directory,
-                       std::unique_ptr<ChemistryLib::ChemicalSolverInterface>&&
-                           chemical_solver_interface);
+                       const std::string& output_directory);
 
     void parseLinearSolvers(BaseLib::ConfigTree const& config);
 
diff --git a/ProcessLib/CreateTimeLoop.cpp b/ProcessLib/CreateTimeLoop.cpp
index 6a422d6e86f..925151cf38d 100644
--- a/ProcessLib/CreateTimeLoop.cpp
+++ b/ProcessLib/CreateTimeLoop.cpp
@@ -24,9 +24,7 @@ std::unique_ptr<TimeLoop> createTimeLoop(
     const std::vector<std::unique_ptr<Process>>& processes,
     const std::map<std::string, std::unique_ptr<NumLib::NonlinearSolverBase>>&
         nonlinear_solvers,
-    std::vector<std::unique_ptr<MeshLib::Mesh>> const& meshes,
-    std::unique_ptr<ChemistryLib::ChemicalSolverInterface>&&
-        chemical_solver_interface)
+    std::vector<std::unique_ptr<MeshLib::Mesh>> const& meshes)
 {
     auto const& coupling_config
         //! \ogs_file_param{prj__time_loop__global_process_coupling}
@@ -94,7 +92,6 @@ std::unique_ptr<TimeLoop> createTimeLoop(
 
     return std::make_unique<TimeLoop>(
         std::move(output), std::move(per_process_data), max_coupling_iterations,
-        std::move(global_coupling_conv_criteria),
-        std::move(chemical_solver_interface), start_time, end_time);
+        std::move(global_coupling_conv_criteria), start_time, end_time);
 }
 }  // namespace ProcessLib
diff --git a/ProcessLib/CreateTimeLoop.h b/ProcessLib/CreateTimeLoop.h
index c005c61c32e..322380cf7a0 100644
--- a/ProcessLib/CreateTimeLoop.h
+++ b/ProcessLib/CreateTimeLoop.h
@@ -30,11 +30,6 @@ namespace NumLib
 class NonlinearSolverBase;
 }
 
-namespace ChemistryLib
-{
-class ChemicalSolverInterface;
-}
-
 namespace ProcessLib
 {
 class TimeLoop;
@@ -49,8 +44,6 @@ std::unique_ptr<TimeLoop> createTimeLoop(
     std::vector<std::unique_ptr<Process>> const& processes,
     std::map<std::string, std::unique_ptr<NumLib::NonlinearSolverBase>> const&
         nonlinear_solvers,
-    std::vector<std::unique_ptr<MeshLib::Mesh>> const& meshes,
-    std::unique_ptr<ChemistryLib::ChemicalSolverInterface>&&
-        chemical_solver_interface);
+    std::vector<std::unique_ptr<MeshLib::Mesh>> const& meshes);
 
 }  // namespace ProcessLib
diff --git a/ProcessLib/TimeLoop.cpp b/ProcessLib/TimeLoop.cpp
index b4e981105b8..80b37eef7a2 100644
--- a/ProcessLib/TimeLoop.cpp
+++ b/ProcessLib/TimeLoop.cpp
@@ -12,7 +12,6 @@
 
 #include "BaseLib/Error.h"
 #include "BaseLib/RunTime.h"
-#include "ChemistryLib/ChemicalSolverInterface.h"
 #include "CoupledSolutionsForStaggeredScheme.h"
 #include "MathLib/LinAlg/LinAlg.h"
 #include "NumLib/ODESolver/ConvergenceCriterionPerComponent.h"
@@ -323,16 +322,13 @@ TimeLoop::TimeLoop(std::unique_ptr<Output>&& output,
                    const int global_coupling_max_iterations,
                    std::vector<std::unique_ptr<NumLib::ConvergenceCriterion>>&&
                        global_coupling_conv_crit,
-                   std::unique_ptr<ChemistryLib::ChemicalSolverInterface>&&
-                       chemical_solver_interface,
                    const double start_time, const double end_time)
     : _output(std::move(output)),
       _per_process_data(std::move(per_process_data)),
       _start_time(start_time),
       _end_time(end_time),
       _global_coupling_max_iterations(global_coupling_max_iterations),
-      _global_coupling_conv_crit(std::move(global_coupling_conv_crit)),
-      _chemical_solver_interface(std::move(chemical_solver_interface))
+      _global_coupling_conv_crit(std::move(global_coupling_conv_crit))
 {
 }
 
diff --git a/ProcessLib/TimeLoop.h b/ProcessLib/TimeLoop.h
index 7e2e5f5b20d..1094269aa64 100644
--- a/ProcessLib/TimeLoop.h
+++ b/ProcessLib/TimeLoop.h
@@ -43,8 +43,6 @@ public:
              const int global_coupling_max_iterations,
              std::vector<std::unique_ptr<NumLib::ConvergenceCriterion>>&&
                  global_coupling_conv_crit,
-             std::unique_ptr<ChemistryLib::ChemicalSolverInterface>&&
-                 chemical_system,
              const double start_time, const double end_time);
 
     void initialize();
@@ -125,9 +123,6 @@ private:
     std::vector<std::unique_ptr<NumLib::ConvergenceCriterion>>
         _global_coupling_conv_crit;
 
-    std::unique_ptr<ChemistryLib::ChemicalSolverInterface>
-        _chemical_solver_interface;
-
     /// Solutions of the previous coupling iteration for the convergence
     /// criteria of the coupling iteration.
     std::vector<GlobalVector*> _solutions_of_last_cpl_iteration;
-- 
GitLab