00001 subroutine source_virial_matter_qeos(sou_Tkin,sou_Pint)
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, utf
00006 use make_array_3d
00007 use make_array_4d
00008 implicit none
00009 integer :: irf, itf, ipf
00010 real(long) :: psifc, psifc6, alpfc, pi4inv
00011 real(long) :: hhfc, prefc, rhofc, enefc, utfc, dummy
00012 real(long), pointer :: sou_Tkin(:,:,:), sou_Pint(:,:,:)
00013
00014
00015
00016
00017 do ipf = 0, npf
00018 do itf = 0, ntf
00019 do irf = 0, nrf
00020
00021 rhofc = rhof(irf,itf,ipf)
00022 call quark_rho2phenedpdrho(rhofc, prefc, hhfc, enefc, dummy)
00023 utfc = utf(irf,itf,ipf)
00024 psifc = psif(irf,itf,ipf)
00025 alpfc = alphf(irf,itf,ipf)
00026 psifc6 = psifc**6
00027
00028 sou_Tkin(irf,itf,ipf)= 0.5d0*hhfc*rhofc*((alpfc*utfc)**2-1.0d0)*psifc6
00029 sou_Pint(irf,itf,ipf)= prefc*psifc6
00030
00031 end do
00032 end do
00033 end do
00034
00035 end subroutine source_virial_matter_qeos