aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortradke <tradke@b7a48df3-cbbf-4440-997f-b4b717c9f7fc>2005-02-14 09:50:27 +0000
committertradke <tradke@b7a48df3-cbbf-4440-997f-b4b717c9f7fc>2005-02-14 09:50:27 +0000
commit14ff7488dc3d2014184aa69429c355bab1f294dd (patch)
treee45bc3036e2789135932ac56a23b61a2d69b9fbf /src
parent3dc1d916eed41796567e4b29f9b8198a734eea5f (diff)
Patch from Frank Loeffler: Add ability to check for the new-style mask too.
git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/ADMConstraints/trunk@110 b7a48df3-cbbf-4440-997f-b4b717c9f7fc
Diffstat (limited to 'src')
-rw-r--r--src/ADMConstraints.F16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/ADMConstraints.F b/src/ADMConstraints.F
index 80a5bc4..376c067 100644
--- a/src/ADMConstraints.F
+++ b/src/ADMConstraints.F
@@ -22,6 +22,8 @@
#include "cctk_Functions.h"
#include "cctk_Parameters.h"
+#include "SpaceMask.h"
+
subroutine ADMConstraints(CCTK_ARGUMENTS)
implicit none
@@ -39,6 +41,10 @@ c (for outer boundary condition)
integer sw(3)
logical docalc
+c flags for excision
+
+ integer ex_field, ex_type_excised
+
c Return code from Cactus sync routine and boundary conditions.
integer ierr
@@ -70,6 +76,12 @@ c Macros from Standard Einstein.
c --------------------------------------------------------------
+ if (check_excision_bitmask) then
+ call SpaceMask_GetTypeBits(ex_field, excision_mask_name)
+ call SpaceMask_GetStateBits(ex_type_excised, excision_mask_name, \
+ excision_type_excised)
+ end if
+
sw(1) = 1
sw(2) = 1
sw(3) = 1
@@ -120,6 +132,10 @@ c Calculate constraints.
if (use_mask .eq. 1) then
if (abs(emask(i,j,k)-1) > 0.001) then
docalc = .FALSE.
+ elseif (check_excision_bitmask .and.
+ . SpaceMask_CheckStateBitsF90(space_mask, i, j, k,\
+ ex_field, ex_type_excised)) then
+ docalc = .FALSE.
end if
end if