! $Header$ #include "cctk.h" module constants implicit none private public delta1, delta2, delta3, delta4 public eta4 public epsilon1, epsilon2, epsilon3, epsilon4 public pi CCTK_REAL, parameter :: zero = 0 integer, parameter :: rk = kind(zero) CCTK_REAL, parameter :: delta1(1) & = reshape((/ 1 /), (/1/)) CCTK_REAL, parameter :: delta2(2,2) & = reshape((/ 1,0, 0,1 /), (/2,2/)) CCTK_REAL, parameter :: delta3(3,3) & = reshape((/ 1,0,0, 0,1,0, 0,0,1 /), (/3,3/)) CCTK_REAL, parameter :: delta4(0:3,0:3) & = reshape((/ 1,0,0,0, 0,1,0,0, 0,0,1,0, 0,0,0,1 /), (/4,4/)) CCTK_REAL, parameter :: eta4(0:3,0:3) & = reshape((/ -1,0,0,0, 0,1,0,0, 0,0,1,0, 0,0,0,1 /), (/4,4/)) CCTK_REAL, parameter :: epsilon1(1) & = reshape ((/ +1 /), (/1/)) CCTK_REAL, parameter :: epsilon2(2,2) & = reshape ((/ 0,+1, -1,0 /), (/2,2/)) CCTK_REAL, parameter :: epsilon3(3,3,3) & = reshape ((/ 0,0,0, 0,0,-1, 0,+1,0, & & 0,0,+1, 0,0,0, -1,0,0, & & 0,-1,0, +1,0,0, 0,0,0 /), (/3,3,3/)) CCTK_REAL, parameter :: epsilon4(0:3,0:3,0:3,0:3) & = reshape ((/ 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, & & 0,0,0,0, 0,0,0,0, 0,0,0,+1, 0,0,-1,0, & & 0,0,0,0, 0,0,0,-1, 0,0,0,0, 0,+1,0,0, & & 0,0,0,0, 0,0,+1,0, 0,-1,0,0, 0,0,0,0, & & 0,0,0,0, 0,0,0,0, 0,0,0,-1, 0,0,+1,0, & & 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, & & 0,0,0,+1, 0,0,0,0, 0,0,0,0, -1,0,0,0, & & 0,0,-1,0, 0,0,0,0, +1,0,0,0, 0,0,0,0, & & 0,0,0,0, 0,0,0,+1, 0,0,0,0, 0,-1,0,0, & & 0,0,0,-1, 0,0,0,0, 0,0,0,0, +1,0,0,0, & & 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, & & 0,+1,0,0, -1,0,0,0, 0,0,0,0, 0,0,0,0, & & 0,0,0,0, 0,0,-1,0, 0,+1,0,0, 0,0,0,0, & & 0,0,+1,0, 0,0,0,0, -1,0,0,0, 0,0,0,0, & & 0,-1,0,0, +1,0,0,0, 0,0,0,0, 0,0,0,0, & & 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0 /), & & (/4,4,4,4/)) CCTK_REAL, parameter :: pi = 3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117068_rk end module constants