00001 subroutine kerr_schild_gradH(x,y,z,r,H,gradH)
00002 use phys_constant, only : long
00003 use def_bh_parameter, only : m_kerr, a_kerr
00004 implicit none
00005 real(long) :: x, y, z, r, H, gradH(3)
00006 real(long) :: m, m2, a, a2, H2, H3, H3m2, H2mr32
00007
00008 m = m_kerr; m2 = m_kerr**2
00009 a = a_kerr; a2 = a_kerr**2
00010 H2= H**2 ; H3 = H**3
00011 H3m2 = H3/m2
00012 H2mr32 = 3.0d0*H2/(2.0d0*m*r)
00013
00014 gradH(1) = -x*H3m2 + x*H2mr32
00015 gradH(2) = -y*H3m2 + y*H2mr32
00016 gradH(3) = -z*H3m2 + z*H2mr32 &
00017 & +(0.5d0*m - H*r)*a2*H2*z/(m2*r**3)
00018
00019 end subroutine kerr_schild_gradH