From 2311dac7cfd9437abe830ecc68fca07a6e753de2 Mon Sep 17 00:00:00 2001
From: bathmann <jasper.bathmann@ufz.de>
Date: Fri, 12 Apr 2019 12:00:30 +0200
Subject: [PATCH] [PL/HC] Additional config parameter for
 HC-implementation-switch introduced

---
 .../ComponentTransport/ComponentTransportProcessData.h    | 8 +++++---
 .../CreateComponentTransportProcess.cpp                   | 7 ++++++-
 2 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/ProcessLib/ComponentTransport/ComponentTransportProcessData.h b/ProcessLib/ComponentTransport/ComponentTransportProcessData.h
index 33c12649f73..a45cb9b6943 100644
--- a/ProcessLib/ComponentTransport/ComponentTransportProcessData.h
+++ b/ProcessLib/ComponentTransport/ComponentTransportProcessData.h
@@ -41,8 +41,8 @@ struct ComponentTransportProcessData
             media_map_,
         ParameterLib::Parameter<double> const& retardation_factor_,
         ParameterLib::Parameter<double> const& decay_rate_,
-        Eigen::VectorXd const& specific_body_force_,
-        bool const has_gravity_)
+        Eigen::VectorXd const& specific_body_force_, bool const has_gravity_,
+        bool const non_advective_form_)
         : porous_media_properties(std::move(porous_media_properties_)),
           fluid_reference_density(fluid_reference_density_),
           fluid_properties(std::move(fluid_properties_)),
@@ -50,7 +50,8 @@ struct ComponentTransportProcessData
           retardation_factor(retardation_factor_),
           decay_rate(decay_rate_),
           specific_body_force(specific_body_force_),
-          has_gravity(has_gravity_)
+          has_gravity(has_gravity_),
+          non_advective_form(non_advective_form_)
     {
     }
 
@@ -75,6 +76,7 @@ struct ComponentTransportProcessData
     ParameterLib::Parameter<double> const& decay_rate;
     Eigen::VectorXd const specific_body_force;
     bool const has_gravity;
+    bool const non_advective_form;
 };
 
 }  // namespace ComponentTransport
diff --git a/ProcessLib/ComponentTransport/CreateComponentTransportProcess.cpp b/ProcessLib/ComponentTransport/CreateComponentTransportProcess.cpp
index c919fe849a2..eb8de233e12 100644
--- a/ProcessLib/ComponentTransport/CreateComponentTransportProcess.cpp
+++ b/ProcessLib/ComponentTransport/CreateComponentTransportProcess.cpp
@@ -148,6 +148,10 @@ std::unique_ptr<Process> createComponentTransportProcess(
         std::copy_n(b.data(), b.size(), specific_body_force.data());
     }
 
+    bool const non_advective_form =
+        //! \ogs_file_param{prj__processes__process__ComponentTransport__non_advective_form}
+        config.getConfigParameter<bool>("non_advective_form", false);
+
     auto media_map =
         MaterialPropertyLib::createMaterialSpatialDistributionMap(media, mesh);
 
@@ -159,7 +163,8 @@ std::unique_ptr<Process> createComponentTransportProcess(
         retardation_factor,
         decay_rate,
         specific_body_force,
-        has_gravity};
+        has_gravity,
+        non_advective_form};
 
     SecondaryVariableCollection secondary_variables;
 
-- 
GitLab