00001 subroutine sourceterm_poisson_solver_test(soug)
00002   use phys_constant, only  :   long, pi
00003   use grid_parameter, only  :   nrg, ntg, npg
00004   use coordinate_grav_r, only  : rg
00005   use def_matter, only  :   emdg, rs
00006   use def_matter_parameter, only  :  radi, pinx, ber
00007   use interface_interpo_linear_type0
00008   implicit none
00009   real(long), pointer :: soug(:,:,:)
00010   integer     ::   irg,itg,ipg
00011   real(long)  ::   emdw
00012   real(long)  ::   zfac, small = 1.0d-15
00013 
00014 
00015   do ipg = 1, npg
00016     do itg = 1, ntg
00017       do irg = 1, nrg
00018         call interpo_linear_type0(emdw,emdg,irg,itg,ipg)
00019         zfac = 1.0d0
00020         if (rg(irg).gt.rs(itg,ipg)+small) zfac = 0.0d0
00021         soug(irg,itg,ipg) = emdw*zfac
00022       end do
00023     end do
00024   end do
00025 
00026 
00027 end subroutine sourceterm_poisson_solver_test