00001 subroutine copy_Aij_pBH_to_tfkij
00002 use phys_constant, only : long
00003 use grid_parameter, only : nrg, ntg, npg
00004 use def_metric, only : psi, tfkij, tfkijkij
00005 use def_metric_excurve_grid, only : tfkij_grid, tfkijkij_grid
00006 use def_metric_pBH, only : aij_trpBH, aijaij_trpBH, &
00007 & aij_trpBH_grid, aijaij_trpBH_grid
00008 use interface_interpo_linear_type0
00009 implicit none
00010 real(long) :: psim6, psim12, psigc
00011 integer :: irg, itg, ipg
00012
00013
00014
00015
00016 do ipg = 0, npg
00017 do itg = 0, ntg
00018 do irg = 0, nrg
00019 psim6 = 1.0d0/psi(irg,itg,ipg)**6
00020 psim12 = 1.0d0/psi(irg,itg,ipg)**12
00021
00022 tfkij_grid(irg,itg,ipg,1:3,1:3) = psim6 &
00023 & * aij_trpBH_grid(irg,itg,ipg,1:3,1:3)
00024 tfkijkij_grid(irg,itg,ipg) = psim12*aijaij_trpBH_grid(irg,itg,ipg)
00025
00026 if (irg.eq.0.or.itg.eq.0.or.ipg.eq.0) cycle
00027
00028 call interpo_linear_type0(psigc,psi,irg,itg,ipg)
00029 psim6 = 1.0d0/psigc**6
00030 psim12 = 1.0d0/psigc**12
00031 tfkij(irg,itg,ipg,1:3,1:3) = psim6*aij_trpBH(irg,itg,ipg,1:3,1:3)
00032 tfkijkij(irg,itg,ipg) = psim12*aijaij_trpBH(irg,itg,ipg)
00033 end do
00034 end do
00035 end do
00036
00037 end subroutine copy_Aij_pBH_to_tfkij