scratch_3d_buffer_exit_data_impl Subroutine

public subroutine scratch_3d_buffer_exit_data_impl(this)

Release the scratch payload from the device. No copyout — scratch contents are per-step intermediates with no host-side meaning. No-op when never allocated (mirrors scratch_3d_buffer_enter_data_impl’s gate).

Arguments

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

Called by

proc~~scratch_3d_buffer_exit_data_impl~~CalledByGraph proc~scratch_3d_buffer_exit_data_impl scratch_3d_buffer_exit_data_impl proc~continuity_exit_data_impl continuity_exit_data_impl proc~continuity_exit_data_impl->proc~scratch_3d_buffer_exit_data_impl proc~coriolis_adv_exit_data_impl coriolis_adv_exit_data_impl proc~coriolis_adv_exit_data_impl->proc~scratch_3d_buffer_exit_data_impl proc~ocean_bdrag_exit_data_impl ocean_bdrag_exit_data_impl proc~ocean_bdrag_exit_data_impl->proc~scratch_3d_buffer_exit_data_impl proc~ocean_epbl_exit_data_impl ocean_epbl_exit_data_impl proc~ocean_epbl_exit_data_impl->proc~scratch_3d_buffer_exit_data_impl proc~ocean_hdiff_tracer_exit_data_impl ocean_hdiff_tracer_exit_data_impl proc~ocean_hdiff_tracer_exit_data_impl->proc~scratch_3d_buffer_exit_data_impl proc~ocean_hvisc_exit_data_impl ocean_hvisc_exit_data_impl proc~ocean_hvisc_exit_data_impl->proc~scratch_3d_buffer_exit_data_impl proc~ocean_lateral_mix_exit_data_impl ocean_lateral_mix_exit_data_impl proc~ocean_lateral_mix_exit_data_impl->proc~scratch_3d_buffer_exit_data_impl proc~ocean_pressure_force_exit_data_impl ocean_pressure_force_exit_data_impl proc~ocean_pressure_force_exit_data_impl->proc~scratch_3d_buffer_exit_data_impl proc~ocean_surfstress_exit_data_impl ocean_surfstress_exit_data_impl proc~ocean_surfstress_exit_data_impl->proc~scratch_3d_buffer_exit_data_impl proc~ocean_top_drag_exit_data_impl ocean_top_drag_exit_data_impl proc~ocean_top_drag_exit_data_impl->proc~scratch_3d_buffer_exit_data_impl proc~ocean_vdiff_exit_data_impl ocean_vdiff_exit_data_impl proc~ocean_vdiff_exit_data_impl->proc~scratch_3d_buffer_exit_data_impl proc~ocean_vert_adv_exit_data_impl ocean_vert_adv_exit_data_impl proc~ocean_vert_adv_exit_data_impl->proc~scratch_3d_buffer_exit_data_impl proc~scratch_3d_buffer_exit_data scratch_3d_buffer_t%scratch_3d_buffer_exit_data proc~scratch_3d_buffer_exit_data->proc~scratch_3d_buffer_exit_data_impl proc~continuity_exit_data continuity_t%continuity_exit_data proc~continuity_exit_data->proc~continuity_exit_data_impl proc~coriolis_adv_exit_data coriolis_adv_t%coriolis_adv_exit_data proc~coriolis_adv_exit_data->proc~coriolis_adv_exit_data_impl proc~ocean_bdrag_exit_data ocean_bottom_drag_t%ocean_bdrag_exit_data proc~ocean_bdrag_exit_data->proc~ocean_bdrag_exit_data_impl proc~ocean_epbl_exit_data ocean_epbl_t%ocean_epbl_exit_data proc~ocean_epbl_exit_data->proc~ocean_epbl_exit_data_impl proc~ocean_hdiff_tracer_exit_data ocean_hdiff_tracer_t%ocean_hdiff_tracer_exit_data proc~ocean_hdiff_tracer_exit_data->proc~ocean_hdiff_tracer_exit_data_impl proc~ocean_hvisc_exit_data ocean_horizontal_viscosity_t%ocean_hvisc_exit_data proc~ocean_hvisc_exit_data->proc~ocean_hvisc_exit_data_impl proc~ocean_lateral_mix_exit_data ocean_lateral_mix_t%ocean_lateral_mix_exit_data proc~ocean_lateral_mix_exit_data->proc~ocean_lateral_mix_exit_data_impl proc~ocean_pressure_force_exit_data ocean_pressure_force_t%ocean_pressure_force_exit_data proc~ocean_pressure_force_exit_data->proc~ocean_pressure_force_exit_data_impl proc~ocean_surfstress_exit_data ocean_surface_stress_t%ocean_surfstress_exit_data proc~ocean_surfstress_exit_data->proc~ocean_surfstress_exit_data_impl proc~ocean_top_drag_exit_data ocean_top_drag_t%ocean_top_drag_exit_data proc~ocean_top_drag_exit_data->proc~ocean_top_drag_exit_data_impl proc~ocean_vdiff_exit_data ocean_vdiff_t%ocean_vdiff_exit_data proc~ocean_vdiff_exit_data->proc~ocean_vdiff_exit_data_impl proc~ocean_vert_adv_exit_data ocean_vertical_advection_t%ocean_vert_adv_exit_data proc~ocean_vert_adv_exit_data->proc~ocean_vert_adv_exit_data_impl

Source Code

   subroutine scratch_3d_buffer_exit_data_impl(this)
      !! Release the scratch payload from the device.  No `copyout`
      !! — scratch contents are per-step intermediates with no
      !! host-side meaning.  No-op when never allocated (mirrors
      !! `scratch_3d_buffer_enter_data_impl`'s gate).
      type(scratch_3d_buffer_t), intent(inout) :: this
      if (.not. allocated(this%data)) return
      !$acc exit data delete(this%data)
   end subroutine scratch_3d_buffer_exit_data_impl