From 5c09e5cb10cf5e7336e1af2811efb51ecd0969ca Mon Sep 17 00:00:00 2001
From: Dmitri Naumov <dmitri.naumov@ufz.de>
Date: Wed, 7 Dec 2022 14:31:21 +0100
Subject: [PATCH] [PL/BC] Exclude ghost nodes from Dirichlet BCs

On partition interfaces the BCs must be set on the nodes
"owning" partition and not on ghost nodes.
---
 .../PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp  | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/ProcessLib/BoundaryConditionAndSourceTerm/PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp b/ProcessLib/BoundaryConditionAndSourceTerm/PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp
index 545f472c348..55221da50b3 100644
--- a/ProcessLib/BoundaryConditionAndSourceTerm/PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp
+++ b/ProcessLib/BoundaryConditionAndSourceTerm/PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp
@@ -57,6 +57,11 @@ void PhaseFieldIrreversibleDamageOracleBoundaryCondition::preTimestep(
         const auto g_idx =
             _dof_table.getGlobalIndex(l, _variable_id, _component_id);
 
+        if (g_idx < 0)
+        {
+            continue;
+        }
+
         if ((*x[process_id])[g_idx] <= irreversibleDamage)
         {
             _bc_values.ids.emplace_back(g_idx);
-- 
GitLab