00001 subroutine IO_input_initial_vrot_NS_mpt(impt)
00002 use phys_constant, only : long, pi
00003 use grid_parameter
00004 use coordinate_grav_r
00005 use trigonometry_grav_theta, only : sinthg, costhg
00006 use trigonometry_grav_phi, only : sinphig, cosphig
00007 use def_binary_parameter, only : sepa, dis
00008 use def_metric
00009 use def_velocity_rot
00010 implicit none
00011 real(long) :: st, ct, sp, cp, xa,ya,za, rcm2, xycm2, rcm, xycm, tcm, pcm, xcm,ycm,zcm
00012 real(long) :: rr, work_shift, pari
00013 integer :: irf, itf, ipf, impt, npf_l, npf_r
00014 character(30) :: char1, char2, char3, char4, char5
00015
00016
00017
00018 do irf = 0, nrf
00019 do ipf = 0, npf
00020 do itf = 0, ntf
00021 st = sinthg(itf)
00022 ct = costhg(itf)
00023 sp = sinphig(ipf)
00024 cp = cosphig(ipf)
00025 rr = rg(irf)
00026
00027 xa = rr*st*cp
00028 ya = rr*st*sp
00029 za = rr*ct
00030
00031 rcm2 = (xa-0.5d0*sepa)**2 + ya**2 + za**2
00032 xycm2= (xa-0.5d0*sepa)**2 + ya**2
00033 rcm = dsqrt(rcm2)
00034 xycm= dsqrt(xycm2)
00035
00036
00037
00038
00039
00040 wxspf(irf,itf,ipf) = 0.0046d0*(-ya)
00041 wyspf(irf,itf,ipf) = 0.0046d0*xa
00042 wzspf(irf,itf,ipf) = 0.0d0
00043 end do
00044 end do
00045 end do
00046
00047 end subroutine IO_input_initial_vrot_NS_mpt