aboutsummaryrefslogtreecommitdiff
path: root/src/pointwise.F90
diff options
context:
space:
mode:
Diffstat (limited to 'src/pointwise.F90')
-rw-r--r--src/pointwise.F90161
1 files changed, 85 insertions, 76 deletions
diff --git a/src/pointwise.F90 b/src/pointwise.F90
index 6f435cb..3b55f0e 100644
--- a/src/pointwise.F90
+++ b/src/pointwise.F90
@@ -27,7 +27,7 @@ module pointwise
public get_tensorderivs3
contains
#define TGR_INCLUDED
-#include "derivs.F90"
+#include "TAT/TGRtensor/src/derivs.F90"
#undef TGR_INCLUDED
subroutine calc_position (shape, i,j,k, pos)
integer, intent(in) :: shape(3)
@@ -166,38 +166,41 @@ contains
gammazyz(pos) = gamma(3,2,3)
gammazzz(pos) = gamma(3,3,3)
end subroutine set_connections
- subroutine get_scalarderivs (a, f, pos, off, dx)
- CCTK_REAL, intent(in) :: a(*)
- CCTK_REAL, intent(out) :: f(3)
- integer, intent(in) :: pos, off(3)
- CCTK_REAL, intent(in) :: dx(3)
- call get_derivs (a, f, pos, off, dx)
+ subroutine get_scalarderivs (a, f, pos, off, dx, order)
+ CCTK_REAL, intent(in) :: a(*)
+ CCTK_REAL, intent(out) :: f(3)
+ integer, intent(in) :: pos, off(3)
+ CCTK_REAL, intent(in) :: dx(3)
+ integer, intent(in), optional :: order
+ call get_derivs (a, f, pos, off, dx, order)
end subroutine get_scalarderivs
- subroutine get_vectorderivs (ax,ay,az, f, pos, off, dx)
- CCTK_REAL, intent(in) :: ax(*),ay(*),az(*)
- CCTK_REAL, intent(out) :: f(3,3)
- integer, intent(in) :: pos, off(3)
- CCTK_REAL, intent(in) :: dx(3)
+ subroutine get_vectorderivs (ax,ay,az, f, pos, off, dx, order)
+ CCTK_REAL, intent(in) :: ax(*),ay(*),az(*)
+ CCTK_REAL, intent(out) :: f(3,3)
+ integer, intent(in) :: pos, off(3)
+ CCTK_REAL, intent(in) :: dx(3)
+ integer, intent(in), optional :: order
CCTK_REAL :: fx(3),fy(3),fz(3)
- call get_derivs (ax, fx, pos, off, dx)
- call get_derivs (ay, fy, pos, off, dx)
- call get_derivs (az, fz, pos, off, dx)
+ call get_derivs (ax, fx, pos, off, dx, order)
+ call get_derivs (ay, fy, pos, off, dx, order)
+ call get_derivs (az, fz, pos, off, dx, order)
f(1,:) = fx
f(2,:) = fy
f(3,:) = fz
end subroutine get_vectorderivs
- subroutine get_tensorderivs (axx,axy,axz,ayy,ayz,azz, f, pos, off, dx)
- CCTK_REAL, intent(in) :: axx(*),axy(*),axz(*),ayy(*),ayz(*),azz(*)
- CCTK_REAL, intent(out) :: f(3,3,3)
- integer, intent(in) :: pos, off(3)
- CCTK_REAL, intent(in) :: dx(3)
+ subroutine get_tensorderivs (axx,axy,axz,ayy,ayz,azz, f, pos, off, dx, order)
+ CCTK_REAL, intent(in) :: axx(*),axy(*),axz(*),ayy(*),ayz(*),azz(*)
+ CCTK_REAL, intent(out) :: f(3,3,3)
+ integer, intent(in) :: pos, off(3)
+ CCTK_REAL, intent(in) :: dx(3)
+ integer, intent(in), optional :: order
CCTK_REAL :: fxx(3),fxy(3),fxz(3),fyy(3),fyz(3),fzz(3)
- call get_derivs (axx, fxx, pos, off, dx)
- call get_derivs (axy, fxy, pos, off, dx)
- call get_derivs (axz, fxz, pos, off, dx)
- call get_derivs (ayy, fyy, pos, off, dx)
- call get_derivs (ayz, fyz, pos, off, dx)
- call get_derivs (azz, fzz, pos, off, dx)
+ call get_derivs (axx, fxx, pos, off, dx, order)
+ call get_derivs (axy, fxy, pos, off, dx, order)
+ call get_derivs (axz, fxz, pos, off, dx, order)
+ call get_derivs (ayy, fyy, pos, off, dx, order)
+ call get_derivs (ayz, fyz, pos, off, dx, order)
+ call get_derivs (azz, fzz, pos, off, dx, order)
f(1,1,:) = fxx
f(1,2,:) = fxy
f(1,3,:) = fxz
@@ -208,38 +211,41 @@ contains
f(3,2,:) = fyz
f(3,3,:) = fzz
end subroutine get_tensorderivs
- subroutine get_scalarderivs2 (a, f, pos, off, dx)
- CCTK_REAL, intent(in) :: a(*)
- CCTK_REAL, intent(out) :: f(3,3)
- integer, intent(in) :: pos, off(3)
- CCTK_REAL, intent(in) :: dx(3)
- call get_derivs2 (a, f, pos, off, dx)
+ subroutine get_scalarderivs2 (a, f, pos, off, dx, order)
+ CCTK_REAL, intent(in) :: a(*)
+ CCTK_REAL, intent(out) :: f(3,3)
+ integer, intent(in) :: pos, off(3)
+ CCTK_REAL, intent(in) :: dx(3)
+ integer, intent(in), optional :: order
+ call get_derivs2 (a, f, pos, off, dx, order)
end subroutine get_scalarderivs2
- subroutine get_vectorderivs2 (ax,ay,az, f, pos, off, dx)
- CCTK_REAL, intent(in) :: ax(*),ay(*),az(*)
- CCTK_REAL, intent(out) :: f(3,3,3)
- integer, intent(in) :: pos, off(3)
- CCTK_REAL, intent(in) :: dx(3)
+ subroutine get_vectorderivs2 (ax,ay,az, f, pos, off, dx, order)
+ CCTK_REAL, intent(in) :: ax(*),ay(*),az(*)
+ CCTK_REAL, intent(out) :: f(3,3,3)
+ integer, intent(in) :: pos, off(3)
+ CCTK_REAL, intent(in) :: dx(3)
+ integer, intent(in), optional :: order
CCTK_REAL :: fx(3,3),fy(3,3),fz(3,3)
- call get_derivs2 (ax, fx, pos, off, dx)
- call get_derivs2 (ay, fy, pos, off, dx)
- call get_derivs2 (az, fz, pos, off, dx)
+ call get_derivs2 (ax, fx, pos, off, dx, order)
+ call get_derivs2 (ay, fy, pos, off, dx, order)
+ call get_derivs2 (az, fz, pos, off, dx, order)
f(1,:,:) = fx
f(2,:,:) = fy
f(3,:,:) = fz
end subroutine get_vectorderivs2
- subroutine get_tensorderivs2 (axx,axy,axz,ayy,ayz,azz, f, pos, off, dx)
- CCTK_REAL, intent(in) :: axx(*),axy(*),axz(*),ayy(*),ayz(*),azz(*)
- CCTK_REAL, intent(out) :: f(3,3,3,3)
- integer, intent(in) :: pos, off(3)
- CCTK_REAL, intent(in) :: dx(3)
+ subroutine get_tensorderivs2 (axx,axy,axz,ayy,ayz,azz, f, pos, off, dx, order)
+ CCTK_REAL, intent(in) :: axx(*),axy(*),axz(*),ayy(*),ayz(*),azz(*)
+ CCTK_REAL, intent(out) :: f(3,3,3,3)
+ integer, intent(in) :: pos, off(3)
+ CCTK_REAL, intent(in) :: dx(3)
+ integer, intent(in), optional :: order
CCTK_REAL :: fxx(3,3),fxy(3,3),fxz(3,3),fyy(3,3),fyz(3,3),fzz(3,3)
- call get_derivs2 (axx, fxx, pos, off, dx)
- call get_derivs2 (axy, fxy, pos, off, dx)
- call get_derivs2 (axz, fxz, pos, off, dx)
- call get_derivs2 (ayy, fyy, pos, off, dx)
- call get_derivs2 (ayz, fyz, pos, off, dx)
- call get_derivs2 (azz, fzz, pos, off, dx)
+ call get_derivs2 (axx, fxx, pos, off, dx, order)
+ call get_derivs2 (axy, fxy, pos, off, dx, order)
+ call get_derivs2 (axz, fxz, pos, off, dx, order)
+ call get_derivs2 (ayy, fyy, pos, off, dx, order)
+ call get_derivs2 (ayz, fyz, pos, off, dx, order)
+ call get_derivs2 (azz, fzz, pos, off, dx, order)
f(1,1,:,:) = fxx
f(1,2,:,:) = fxy
f(1,3,:,:) = fxz
@@ -250,39 +256,42 @@ contains
f(3,2,:,:) = fyz
f(3,3,:,:) = fzz
end subroutine get_tensorderivs2
- subroutine get_scalarderivs3 (a, f, pos, off, dx)
- CCTK_REAL, intent(in) :: a(*)
- CCTK_REAL, intent(out) :: f(3,3,3)
- integer, intent(in) :: pos, off(3)
- CCTK_REAL, intent(in) :: dx(3)
- call get_derivs3 (a, f, pos, off, dx)
+ subroutine get_scalarderivs3 (a, f, pos, off, dx, order)
+ CCTK_REAL, intent(in) :: a(*)
+ CCTK_REAL, intent(out) :: f(3,3,3)
+ integer, intent(in) :: pos, off(3)
+ CCTK_REAL, intent(in) :: dx(3)
+ integer, intent(in), optional :: order
+ call get_derivs3 (a, f, pos, off, dx, order)
end subroutine get_scalarderivs3
- subroutine get_vectorderivs3 (ax,ay,az, f, pos, off, dx)
- CCTK_REAL, intent(in) :: ax(*),ay(*),az(*)
- CCTK_REAL, intent(out) :: f(3,3,3,3)
- integer, intent(in) :: pos, off(3)
- CCTK_REAL, intent(in) :: dx(3)
+ subroutine get_vectorderivs3 (ax,ay,az, f, pos, off, dx, order)
+ CCTK_REAL, intent(in) :: ax(*),ay(*),az(*)
+ CCTK_REAL, intent(out) :: f(3,3,3,3)
+ integer, intent(in) :: pos, off(3)
+ CCTK_REAL, intent(in) :: dx(3)
+ integer, intent(in), optional :: order
CCTK_REAL :: fx(3,3,3),fy(3,3,3),fz(3,3,3)
- call get_derivs3 (ax, fx, pos, off, dx)
- call get_derivs3 (ay, fy, pos, off, dx)
- call get_derivs3 (az, fz, pos, off, dx)
+ call get_derivs3 (ax, fx, pos, off, dx, order)
+ call get_derivs3 (ay, fy, pos, off, dx, order)
+ call get_derivs3 (az, fz, pos, off, dx, order)
f(1,:,:,:) = fx
f(2,:,:,:) = fy
f(3,:,:,:) = fz
end subroutine get_vectorderivs3
- subroutine get_tensorderivs3 (axx,axy,axz,ayy,ayz,azz, f, pos, off, dx)
- CCTK_REAL, intent(in) :: axx(*),axy(*),axz(*),ayy(*),ayz(*),azz(*)
- CCTK_REAL, intent(out) :: f(3,3,3,3,3)
- integer, intent(in) :: pos, off(3)
- CCTK_REAL, intent(in) :: dx(3)
+ subroutine get_tensorderivs3 (axx,axy,axz,ayy,ayz,azz, f, pos, off, dx, order)
+ CCTK_REAL, intent(in) :: axx(*),axy(*),axz(*),ayy(*),ayz(*),azz(*)
+ CCTK_REAL, intent(out) :: f(3,3,3,3,3)
+ integer, intent(in) :: pos, off(3)
+ CCTK_REAL, intent(in) :: dx(3)
+ integer, intent(in), optional :: order
CCTK_REAL :: fxx(3,3,3),fxy(3,3,3),fxz(3,3,3),&
& fyy(3,3,3),fyz(3,3,3),fzz(3,3,3)
- call get_derivs3 (axx, fxx, pos, off, dx)
- call get_derivs3 (axy, fxy, pos, off, dx)
- call get_derivs3 (axz, fxz, pos, off, dx)
- call get_derivs3 (ayy, fyy, pos, off, dx)
- call get_derivs3 (ayz, fyz, pos, off, dx)
- call get_derivs3 (azz, fzz, pos, off, dx)
+ call get_derivs3 (axx, fxx, pos, off, dx, order)
+ call get_derivs3 (axy, fxy, pos, off, dx, order)
+ call get_derivs3 (axz, fxz, pos, off, dx, order)
+ call get_derivs3 (ayy, fyy, pos, off, dx, order)
+ call get_derivs3 (ayz, fyz, pos, off, dx, order)
+ call get_derivs3 (azz, fzz, pos, off, dx, order)
f(1,1,:,:,:) = fxx
f(1,2,:,:,:) = fxy
f(1,3,:,:,:) = fxz