00001 subroutine bh_boundary_dh_alph_test(sou_surf)
00002 use phys_constant, only : long
00003 use grid_parameter, only : nrg, ntg, npg, rgin
00004 use trigonometry_grav_theta, only : hsinthg
00005 use trigonometry_grav_phi, only : hcosphig
00006 use def_binary_parameter, only : sepa
00007 implicit none
00008
00009
00010 real(long), pointer :: sou_surf(:,:)
00011 real(long) :: st, cp, rad1, rad2, dr2dr1, bhmass
00012 real(long) :: psisurf, alphsurf, dpsidr1surf
00013 integer :: itg, ipg
00014
00015
00016 bhmass = 2.0d0*rgin*0.8d0
00017
00018
00019 do ipg = 1, npg
00020 do itg = 1, ntg
00021 st = hsinthg(itg)
00022 cp = hcosphig(ipg)
00023 rad1 = rgin
00024 rad2 = sqrt(rad1**2 - 2.0d0*rad1*sepa*st*cp + sepa**2)
00025
00026
00027 psisurf = 1.0d0 + 0.5d0*bhmass/rad1 + 0.5d0*bhmass/rad2
00028
00029
00030 sou_surf(itg,ipg) = (1.0d0-0.5d0*bhmass/rad1-0.5d0*bhmass/rad2)/psisurf
00031 end do
00032 end do
00033
00034 end subroutine bh_boundary_dh_alph_test