aboutsummaryrefslogtreecommitdiff
path: root/src/include/centered_second.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/centered_second.h')
-rw-r--r--src/include/centered_second.h76
1 files changed, 39 insertions, 37 deletions
diff --git a/src/include/centered_second.h b/src/include/centered_second.h
index e0d552e..fbdba04 100644
--- a/src/include/centered_second.h
+++ b/src/include/centered_second.h
@@ -7,45 +7,47 @@ idx = half / cctk_delta_space(1)
idy = half / cctk_delta_space(2)
idz = half / cctk_delta_space(3)
-do k = kzl, kzr
- do j = jyl, jyr
- do i = ixl, ixr
- if ( eh_mask(i,j,k) .ge. 0 ) then
- if ( ( .not. btest(eh_mask(i,j,k),0) ) .and. &
- ( .not. btest(eh_mask(i,j,k),1) ) ) then
- dfx(i,j,k) = idx * ( f(i+1,j,k) - f(i-1,j,k) )
- else if ( btest(eh_mask(i,j,k),0) ) then
- dfx(i,j,k) = idx * ( -three * f(i,j,k) + &
- four * f(i+1,j,k) - f(i+2,j,k) )
+do l = 1, eh_number_level_sets
+ do k = kzl, kzr
+ do j = jyl, jyr
+ do i = ixl, ixr
+ if ( eh_mask(i,j,k,l) .ge. 0 ) then
+ if ( ( .not. btest(eh_mask(i,j,k,l),0) ) .and. &
+ ( .not. btest(eh_mask(i,j,k,l),1) ) ) then
+ dfx(i,j,k,l) = idx * ( f(i+1,j,k,l) - f(i-1,j,k,l) )
+ else if ( btest(eh_mask(i,j,k,l),0) ) then
+ dfx(i,j,k,l) = idx * ( -three * f(i,j,k,l) + &
+ four * f(i+1,j,k,l) - f(i+2,j,k,l) )
+ else
+ dfx(i,j,k,l) = idx * ( three * f(i,j,k,l) - &
+ four * f(i-1,j,k,l) + f(i-2,j,k,l) )
+ end if
+ if ( ( .not. btest(eh_mask(i,j,k,l),2) ) .and. &
+ ( .not. btest(eh_mask(i,j,k,l),3) ) ) then
+ dfy(i,j,k,l) = idy * ( f(i,j+1,k,l) - f(i,j-1,k,l) )
+ else if ( btest(eh_mask(i,j,k,l),2) ) then
+ dfy(i,j,k,l) = idy * ( -three * f(i,j,k,l) + &
+ four * f(i,j+1,k,l) - f(i,j+2,k,l) )
+ else
+ dfy(i,j,k,l) = idy * ( three * f(i,j,k,l) - &
+ four * f(i,j-1,k,l) + f(i,j-2,k,l) )
+ end if
+ if ( ( .not. btest(eh_mask(i,j,k,l),4) ) .and. &
+ ( .not. btest(eh_mask(i,j,k,l),5) ) ) then
+ dfz(i,j,k,l) = idz * ( f(i,j,k+1,l) - f(i,j,k-1,l) )
+ else if ( btest(eh_mask(i,j,k,l),4) ) then
+ dfz(i,j,k,l) = idz * ( -three * f(i,j,k,l) + &
+ four * f(i,j,k+1,l) - f(i,j,k+2,l) )
+ else
+ dfz(i,j,k,l) = idz * ( three * f(i,j,k,l) - &
+ four * f(i,j,k-1,l) + f(i,j,k-2,l) )
+ end if
else
- dfx(i,j,k) = idx * ( three * f(i,j,k) - &
- four * f(i-1,j,k) + f(i-2,j,k) )
+ dfx(i,j,k,l) = zero
+ dfy(i,j,k,l) = zero
+ dfz(i,j,k,l) = zero
end if
- if ( ( .not. btest(eh_mask(i,j,k),2) ) .and. &
- ( .not. btest(eh_mask(i,j,k),3) ) ) then
- dfy(i,j,k) = idy * ( f(i,j+1,k) - f(i,j-1,k) )
- else if ( btest(eh_mask(i,j,k),2) ) then
- dfy(i,j,k) = idy * ( -three * f(i,j,k) + &
- four * f(i,j+1,k) - f(i,j+2,k) )
- else
- dfy(i,j,k) = idy * ( three * f(i,j,k) - &
- four * f(i,j-1,k) + f(i,j-2,k) )
- end if
- if ( ( .not. btest(eh_mask(i,j,k),4) ) .and. &
- ( .not. btest(eh_mask(i,j,k),5) ) ) then
- dfz(i,j,k) = idz * ( f(i,j,k+1) - f(i,j,k-1) )
- else if ( btest(eh_mask(i,j,k),4) ) then
- dfz(i,j,k) = idz * ( -three * f(i,j,k) + &
- four * f(i,j,k+1) - f(i,j,k+2) )
- else
- dfz(i,j,k) = idz * ( three * f(i,j,k) - &
- four * f(i,j,k-1) + f(i,j,k-2) )
- end if
- else
- dfx(i,j,k) = zero
- dfy(i,j,k) = zero
- dfz(i,j,k) = zero
- end if
+ end do
end do
end do
end do