drain_copy_3d Subroutine

private pure subroutine drain_copy_3d(n1, n2, n3, src, dst)

dst = src (explicit-shape device copy).

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: n1
integer, intent(in) :: n2
integer, intent(in) :: n3
real(kind=wp), intent(in) :: src(n1,n2,n3)
real(kind=wp), intent(inout) :: dst(n1,n2,n3)

Called by

proc~~drain_copy_3d~~CalledByGraph proc~drain_copy_3d drain_copy_3d proc~continuity_gm_apply continuity_gm_apply proc~continuity_gm_apply->proc~drain_copy_3d proc~continuity_tracer_drain continuity_tracer_drain proc~continuity_tracer_drain->proc~drain_copy_3d proc~continuity_tracer_step_split continuity_tracer_step_split proc~continuity_tracer_step_split->proc~drain_copy_3d proc~ocean_dyn_flush_tracer_window ocean_dyn_flush_tracer_window proc~ocean_dyn_flush_tracer_window->proc~continuity_tracer_drain proc~ocean_dyn_step ocean_dyn_step proc~ocean_dyn_step->proc~continuity_tracer_drain proc~run_stage run_stage proc~ocean_dyn_step->proc~run_stage proc~ocean_dyn_step_split ocean_dyn_step_split proc~ocean_dyn_step_split->proc~continuity_tracer_drain proc~run_gm_step run_gm_step proc~ocean_dyn_step_split->proc~run_gm_step proc~run_stage_split run_stage_split proc~ocean_dyn_step_split->proc~run_stage_split proc~run_continuity_chain run_continuity_chain proc~run_continuity_chain->proc~continuity_tracer_step_split proc~run_gm_step->proc~continuity_gm_apply proc~run_stage->proc~continuity_tracer_step_split proc~driver_run_ocean driver_run_ocean proc~driver_run_ocean->proc~ocean_dyn_flush_tracer_window proc~engine_step engine_step proc~driver_run_ocean->proc~engine_step proc~engine_step->proc~ocean_dyn_step proc~engine_step->proc~ocean_dyn_step_split proc~rdb_ocean_set_tracer rdb_ocean_set_tracer proc~rdb_ocean_set_tracer->proc~ocean_dyn_flush_tracer_window proc~run_stage_split->proc~run_continuity_chain proc~driver_run driver_run proc~driver_run->proc~driver_run_ocean proc~rdb_ocean_step rdb_ocean_step proc~rdb_ocean_step->proc~engine_step

Variables

Type Visibility Attributes Name Initial
integer, private :: i
integer, private :: j
integer, private :: k

Source Code

   pure subroutine drain_copy_3d(n1, n2, n3, src, dst)
      !! dst = src (explicit-shape device copy).
      integer, intent(in) :: n1, n2, n3
      real(wp), intent(in) :: src(n1, n2, n3)
      real(wp), intent(inout) :: dst(n1, n2, n3)
      integer :: i, j, k
      do concurrent(k=1:n3, j=1:n2, i=1:n1)
         dst(i, j, k) = src(i, j, k)
      end do
   end subroutine drain_copy_3d