From 5ec8dfeb733f1e4cbf3f718db336fbd4510dc2ff Mon Sep 17 00:00:00 2001
From: Claus-Justus Heine <Claus-Justus.Heine@IANS.Uni-Stuttgart.DE>
Date: Wed, 29 Mar 2017 14:26:49 +0000
Subject: [PATCH] XOR to take complement of Dirichlet mask used in an erroneous
 way.

---
 alberta/src/Common/l2scp.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/alberta/src/Common/l2scp.c b/alberta/src/Common/l2scp.c
index 4dedc6b..cebb4c4 100644
--- a/alberta/src/Common/l2scp.c
+++ b/alberta/src/Common/l2scp.c
@@ -3109,11 +3109,12 @@ static bool _AI_boundary_conditions(DOF_MATRIX *matrix,
   BNDRY_FLAGS_ALL(non_dirichlet);
   if (dirichlet_segment) {
     BNDRY_FLAGS_XOR(non_dirichlet, dirichlet_segment);
+    BNDRY_FLAGS_MARK_BNDRY(non_dirichlet);    
   } else {
     BNDRY_FLAGS_INIT(dirichlet);
     dirichlet_segment = dirichlet;
   }
-
+  
   if (fh && (gn || gn_loc)) {
     not_all_neumann =
       _AI_bndry_L2scp_fct_bas(fh, gn_loc, fd, fill_flag, gn,
@@ -3245,6 +3246,7 @@ _AI_boundary_conditions_dow(DOF_MATRIX *matrix,
   BNDRY_FLAGS_ALL(non_dirichlet);
   if (dirichlet_segment) {
     BNDRY_FLAGS_XOR(non_dirichlet, dirichlet_segment);
+    BNDRY_FLAGS_MARK_BNDRY(non_dirichlet);    
   } else {
     BNDRY_FLAGS_INIT(dirichlet);
     dirichlet_segment = dirichlet;
-- 
GitLab