From 02c8f59208c4f493b4d73526da9cd2459f9e5022 Mon Sep 17 00:00:00 2001
From: ChaofanChen <chaofan.chen@ufz.de>
Date: Tue, 29 Dec 2020 16:44:19 +0100
Subject: [PATCH] [BHE/coaxial] Calculate BHE advection vectors based on the
 element direction.

For deviated coaxial BHE, inflow direction is the same as the element direction.
---
 .../HeatTransportBHE/BHE/BHECommonCoaxial.cpp  | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/ProcessLib/HeatTransportBHE/BHE/BHECommonCoaxial.cpp b/ProcessLib/HeatTransportBHE/BHE/BHECommonCoaxial.cpp
index 15090b71e66..4ccb7cfb4b1 100644
--- a/ProcessLib/HeatTransportBHE/BHE/BHECommonCoaxial.cpp
+++ b/ProcessLib/HeatTransportBHE/BHE/BHECommonCoaxial.cpp
@@ -88,18 +88,18 @@ BHECommonCoaxial::pipeHeatConductions() const
 
 std::array<Eigen::Vector3d, BHECommonCoaxial::number_of_unknowns>
 BHECommonCoaxial::pipeAdvectionVectors(
-    Eigen::Vector3d const& /*elem_direction*/) const
+    Eigen::Vector3d const& elem_direction) const
 {
     double const rho_r = refrigerant.density;
     double const Cp_r = refrigerant.specific_heat_capacity;
-    auto v = velocities();
-
-    return {{// pipe i, Eq. 26 and Eq. 23
-             {0, 0, -rho_r * Cp_r * std::abs(v[0])},
-             // pipe o, Eq. 27 and Eq. 24
-             {0, 0, rho_r * Cp_r * std::abs(v[1])},
-             // grout g, Eq. 28 and Eq. 25
-             {0, 0, 0}}};
+    auto const v = velocities();
+
+    return {// pipe i, Eq. 26 and Eq. 23
+            rho_r * Cp_r * std::abs(v[0]) * elem_direction,
+            // pipe o, Eq. 27 and Eq. 24
+            -rho_r * Cp_r * std::abs(v[1]) * elem_direction,
+            // grout g, Eq. 28 and Eq. 25
+            {0, 0, 0}};
 }
 
 std::array<double, BHECommonCoaxial::number_of_unknowns>
-- 
GitLab