00001 subroutine sourceterm_trG_drot_SFC_qeos(sou)
00002 use phys_constant, only : long, pi
00003 use grid_parameter, only : nrf, ntf, npf
00004 use def_metric_on_SFC_CF, only : psif, alphf
00005 use def_matter, only : rhof, jomef_int
00006 use def_matter_parameter, only : ber, radi, rhos_qs
00007 use interface_interpo_linear_type0
00008 implicit none
00009 real(long), pointer :: sou(:,:,:)
00010 real(long) :: emdfc, rhofc, prefc, hhfc, rp2s, utfc
00011 real(long) :: psifc, alpfc, ene, jomef_intfc, dummy
00012 integer :: irf, itf, ipf
00013
00014
00015
00016
00017 do ipf = 0, npf
00018 do itf = 0, ntf
00019 do irf = 0, nrf
00020 psifc = psif(irf,itf,ipf)
00021 alpfc = alphf(irf,itf,ipf)
00022 rhofc = rhof(irf,itf,ipf)
00023 jomef_intfc = jomef_int(irf,itf,ipf)
00024 if (irf.eq.nrf) then
00025 rhofc = rhos_qs
00026 end if
00027 call quark_rho2phenedpdrho(rhofc, prefc, hhfc, ene, dummy)
00028 utfc = hhfc/ber*exp(jomef_intfc)
00029 rp2s = 3.0d0*hhfc*rhofc*(alpfc*utfc)**2 &
00030 & - 2.0d0*hhfc*rhofc + 5.0d0*prefc
00031
00032 sou(irf,itf,ipf) = radi**2*2.0d0*pi*alpfc*psifc**5*rp2s
00033 end do
00034 end do
00035 end do
00036 end subroutine sourceterm_trG_drot_SFC_qeos