00001 subroutine diracterm_midpoint
00002 use grid_parameter, only : nrg, ntg, npg
00003 use def_metric_hij, only : hxxu, hxyu, hxzu, hyyu, hyzu, hzzu
00004 use def_metric_hij_dirac, only : dagmabu
00005 use interface_grgrad1g_midpoint
00006 implicit none
00007
00008 real(8) :: grad1(3), dhd(3,3,3), dhu(3,3,3)
00009 integer :: ipg, itg, irg
00010
00011
00012
00013
00014 do ipg = 1, npg
00015 do itg = 1, ntg
00016 do irg = 1, nrg
00017
00018
00019
00020 call grgrad1g_midpoint(hxxu,grad1,irg,itg,ipg)
00021 dhu(1,1,1:3) = grad1(1:3)
00022 call grgrad1g_midpoint(hxyu,grad1,irg,itg,ipg)
00023 dhu(1,2,1:3) = grad1(1:3)
00024 dhu(2,1,1:3) = grad1(1:3)
00025 call grgrad1g_midpoint(hxzu,grad1,irg,itg,ipg)
00026 dhu(1,3,1:3) = grad1(1:3)
00027 dhu(3,1,1:3) = grad1(1:3)
00028 call grgrad1g_midpoint(hyyu,grad1,irg,itg,ipg)
00029 dhu(2,2,1:3) = grad1(1:3)
00030 call grgrad1g_midpoint(hyzu,grad1,irg,itg,ipg)
00031 dhu(2,3,1:3) = grad1(1:3)
00032 dhu(3,2,1:3) = grad1(1:3)
00033 call grgrad1g_midpoint(hzzu,grad1,irg,itg,ipg)
00034 dhu(3,3,1:3) = grad1(1:3)
00035
00036 dagmabu(irg,itg,ipg,1) = dhu(1,1,1) + dhu(1,2,2) + dhu(1,3,3)
00037 dagmabu(irg,itg,ipg,2) = dhu(2,1,1) + dhu(2,2,2) + dhu(2,3,3)
00038 dagmabu(irg,itg,ipg,3) = dhu(3,1,1) + dhu(3,2,2) + dhu(3,3,3)
00039
00040 end do
00041 end do
00042 end do
00043
00044 end subroutine diracterm_midpoint