00001 subroutine calc_gradvep_export(potf,potxf,potyf,potzf,rs)
00002 use phys_constant, only : long
00003 use grid_parameter
00004
00005
00006
00007 use interface_flgrad_4th_gridpoint
00008 use interface_flgrad_2nd_gridpoint_export
00009 implicit none
00010 real(long), pointer :: potf(:,:,:), potxf(:,:,:), potyf(:,:,:), potzf(:,:,:), rs(:,:)
00011 real(long) :: dxvep, dyvep, dzvep
00012 integer :: irf, itf, ipf
00013
00014 do ipf = 0, npf
00015 do itf = 0, ntf
00016 do irf = 0, nrf-1
00017 call flgrad_2nd_gridpoint_export(potf,dxvep,dyvep,dzvep,irf,itf,ipf,rs)
00018 potxf(irf,itf,ipf) = dxvep
00019 potyf(irf,itf,ipf) = dyvep
00020 potzf(irf,itf,ipf) = dzvep
00021 end do
00022 end do
00023 end do
00024
00025 do ipf = 0, npf
00026 do itf = 0, ntf
00027 potxf(nrf,itf,ipf) = 2.0d0*potxf(nrf-1,itf,ipf) - potxf(nrf-2,itf,ipf)
00028 potyf(nrf,itf,ipf) = 2.0d0*potyf(nrf-1,itf,ipf) - potyf(nrf-2,itf,ipf)
00029 potzf(nrf,itf,ipf) = 2.0d0*potzf(nrf-1,itf,ipf) - potzf(nrf-2,itf,ipf)
00030 end do
00031 end do
00032
00033
00034
00035
00036
00037 end subroutine calc_gradvep_export