continuity_enter_data_impl Subroutine

private subroutine continuity_enter_data_impl(this)

Arguments

Type IntentOptional Attributes Name
type(continuity_t), intent(inout) :: this

Calls

proc~~continuity_enter_data_impl~~CallsGraph proc~continuity_enter_data_impl continuity_enter_data_impl proc~scratch_3d_buffer_enter_data_impl scratch_3d_buffer_enter_data_impl proc~continuity_enter_data_impl->proc~scratch_3d_buffer_enter_data_impl

Called by

proc~~continuity_enter_data_impl~~CalledByGraph proc~continuity_enter_data_impl continuity_enter_data_impl proc~continuity_enter_data continuity_t%continuity_enter_data proc~continuity_enter_data->proc~continuity_enter_data_impl

Source Code

   subroutine continuity_enter_data_impl(this)
      type(continuity_t), intent(inout) :: this
      call scratch_3d_buffer_enter_data_impl(this%h_face_left_x)
      call scratch_3d_buffer_enter_data_impl(this%h_face_right_x)
      call scratch_3d_buffer_enter_data_impl(this%h_face_left_y)
      call scratch_3d_buffer_enter_data_impl(this%h_face_right_y)
      call scratch_3d_buffer_enter_data_impl(this%mt_h_new)
      call scratch_3d_buffer_enter_data_impl(this%mt_grounded)
      call scratch_3d_buffer_enter_data_impl(this%pd_theta)
      ! Phase 2 flux accumulators (allocated-but-unused at ratio=1; the
      ! windowed drain in Phase 6b reads/writes them on the device).
      if (allocated(this%uhtr)) then
         !$acc enter data copyin(this%uhtr, this%vhtr)
      end if
      ! Phase 2 (6b) windowed-drain workspace.
      if (allocated(this%hprev_work)) then
         !$acc enter data copyin(this%h_win_start)
         !$acc enter data copyin(this%hprev_work, this%uhr_x, this%uhr_y, &
         !$acc                   this%uhh_x, this%uhh_y, this%tr_flux_x, &
         !$acc                   this%tr_flux_y, this%tr_work, this%pal, &
         !$acc                   this%par, this%pa6)
      end if
   end subroutine continuity_enter_data_impl