00001 subroutine calc_potential_minus_rinv_excision
00002 use phys_constant, only : long, pi
00003 use grid_parameter, only : nrg, ntg, npg
00004 use grid_parameter_binary_excision, only :
00005 use coordinate_grav_r, only : rg
00006 use def_metric, only : psi
00007 use def_vector_x, only : vec_xg
00008 implicit none
00009 real(long) :: rrgg, small = 1.0d-14
00010 integer :: irg,itg,ipg
00011
00012
00013 do ipg = 0, npg
00014 do itg = 0, ntg
00015 do irg = 0, nrg
00016 rrgg = sqrt(vec_xg(irg,itg,ipg,1)**2 + vec_xg(irg,itg,ipg,2)**2 &
00017 & + vec_xg(irg,itg,ipg,3)**2 + small**2)
00018 if(rrgg >= 10.0d0) &
00019 & psi(irg,itg,ipg) = psi(irg,itg,ipg) + (2.0/(4.0*pi))/rrgg
00020 end do
00021 end do
00022 end do
00023
00024
00025 end subroutine calc_potential_minus_rinv_excision