00001 subroutine surf_source_komar_mass(surf_sou_kom,irg)
00002 use phys_constant, only : long, pi
00003 use grid_parameter, only : ntg, npg
00004 use def_metric, only : tfkijkij, psi, alph
00005 use make_array_2d
00006 use interface_interpo_linear_type0_2Dsurf
00007 use interface_grdr_gridpoint_type0_nosym
00008 implicit none
00009 real(long), pointer :: dalph_surf(:,:), surf_sou_kom(:,:)
00010 integer :: irg,itg,ipg
00011 real(long) :: deriv, val
00012
00013 call alloc_array2d(dalph_surf, 0, ntg, 0, npg)
00014
00015 do ipg = 0, npg
00016 do itg = 0, ntg
00017 call grdr_gridpoint_type0_nosym(alph,deriv,irg,itg,ipg)
00018 dalph_surf(itg,ipg) = deriv
00019 end do
00020 end do
00021
00022 do ipg = 1, npg
00023 do itg = 1, ntg
00024 call interpo_linear_type0_2Dsurf(val,dalph_surf,itg,ipg)
00025 surf_sou_kom(itg,ipg) = val
00026 end do
00027 end do
00028
00029 deallocate(dalph_surf)
00030 end subroutine surf_source_komar_mass
00031
00032
00033