From 306978e493a1955aa45d54e3fd6c7a9e4183871a Mon Sep 17 00:00:00 2001
From: Dmitri Naumov <dmitri.naumov@ufz.de>
Date: Thu, 15 Jun 2017 21:24:56 +0200
Subject: [PATCH] [PL] Fix creation of specific body forces.

Correct checking of the size and proper error message.
---
 ProcessLib/HydroMechanics/CreateHydroMechanicsProcess.cpp     | 4 ++--
 ProcessLib/LIE/HydroMechanics/CreateHydroMechanicsProcess.cpp | 4 ++--
 ProcessLib/ThermoMechanics/CreateThermoMechanicsProcess.cpp   | 4 ++--
 3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/ProcessLib/HydroMechanics/CreateHydroMechanicsProcess.cpp b/ProcessLib/HydroMechanics/CreateHydroMechanicsProcess.cpp
index 7ec961e1075..298efe7c713 100644
--- a/ProcessLib/HydroMechanics/CreateHydroMechanicsProcess.cpp
+++ b/ProcessLib/HydroMechanics/CreateHydroMechanicsProcess.cpp
@@ -163,12 +163,12 @@ std::unique_ptr<Process> createHydroMechanicsProcess(
             //! \ogs_file_param{prj__processes__process__HYDRO_MECHANICS__specific_body_force}
             config.getConfigParameter<std::vector<double>>(
                 "specific_body_force");
-        if (specific_body_force.size() != DisplacementDim)
+        if (b.size() != DisplacementDim)
             OGS_FATAL(
                 "The size of the specific body force vector does not match the "
                 "displacement dimension. Vector size is %d, displacement "
                 "dimension is %d",
-                specific_body_force.size(), DisplacementDim);
+                b.size(), DisplacementDim);
 
         std::copy_n(b.data(), b.size(), specific_body_force.data());
     }
diff --git a/ProcessLib/LIE/HydroMechanics/CreateHydroMechanicsProcess.cpp b/ProcessLib/LIE/HydroMechanics/CreateHydroMechanicsProcess.cpp
index 972eec043d4..618f338480c 100644
--- a/ProcessLib/LIE/HydroMechanics/CreateHydroMechanicsProcess.cpp
+++ b/ProcessLib/LIE/HydroMechanics/CreateHydroMechanicsProcess.cpp
@@ -185,12 +185,12 @@ std::unique_ptr<Process> createHydroMechanicsProcess(
             //! \ogs_file_param{prj__processes__process__HYDRO_MECHANICS_WITH_LIE__specific_body_force}
             config.getConfigParameter<std::vector<double>>(
                 "specific_body_force");
-        if (specific_body_force.size() != GlobalDim)
+        if (b.size() != GlobalDim)
             OGS_FATAL(
                 "The size of the specific body force vector does not match the "
                 "displacement dimension. Vector size is %d, displacement "
                 "dimension is %d",
-                specific_body_force.size(), GlobalDim);
+                b.size(), GlobalDim);
 
         std::copy_n(b.data(), b.size(), specific_body_force.data());
     }
diff --git a/ProcessLib/ThermoMechanics/CreateThermoMechanicsProcess.cpp b/ProcessLib/ThermoMechanics/CreateThermoMechanicsProcess.cpp
index 63403dc4a6e..a35ab72aefc 100644
--- a/ProcessLib/ThermoMechanics/CreateThermoMechanicsProcess.cpp
+++ b/ProcessLib/ThermoMechanics/CreateThermoMechanicsProcess.cpp
@@ -155,12 +155,12 @@ std::unique_ptr<Process> createThermoMechanicsProcess(
             //! \ogs_file_param{prj__processes__process__THERMO_MECHANICS__specific_body_force}
             config.getConfigParameter<std::vector<double>>(
                 "specific_body_force");
-        if (specific_body_force.size() != DisplacementDim)
+        if (b.size() != DisplacementDim)
             OGS_FATAL(
                 "The size of the specific body force vector does not match the "
                 "displacement dimension. Vector size is %d, displacement "
                 "dimension is %d",
-                specific_body_force.size(), DisplacementDim);
+                b.size(), DisplacementDim);
 
         std::copy_n(b.data(), b.size(), specific_body_force.data());
     }
-- 
GitLab