bt_wide_enter_data_impl Subroutine

private subroutine bt_wide_enter_data_impl(this)

Non-polymorphic enter_data body (avoids class-box GPU descriptor issue).

Arguments

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

Calls

proc~~bt_wide_enter_data_impl~~CallsGraph proc~bt_wide_enter_data_impl bt_wide_enter_data_impl proc~ocean_metrics_enter_data ocean_metrics_t%ocean_metrics_enter_data proc~bt_wide_enter_data_impl->proc~ocean_metrics_enter_data proc~ocean_metrics_enter_data_impl ocean_metrics_enter_data_impl proc~ocean_metrics_enter_data->proc~ocean_metrics_enter_data_impl

Called by

proc~~bt_wide_enter_data_impl~~CalledByGraph proc~bt_wide_enter_data_impl bt_wide_enter_data_impl proc~bt_wide_enter_data bt_wide_t%bt_wide_enter_data proc~bt_wide_enter_data->proc~bt_wide_enter_data_impl proc~ocean_dyn_enable_bt_wide ocean_dyn_enable_bt_wide proc~ocean_dyn_enable_bt_wide->proc~bt_wide_enter_data proc~engine_enter_data engine_enter_data proc~engine_enter_data->proc~ocean_dyn_enable_bt_wide proc~complete_ocean_create complete_ocean_create proc~complete_ocean_create->proc~engine_enter_data proc~driver_run_ocean driver_run_ocean proc~driver_run_ocean->proc~engine_enter_data proc~driver_run driver_run proc~driver_run->proc~driver_run_ocean proc~rdb_ocean_create_finalize rdb_ocean_create_finalize proc~rdb_ocean_create_finalize->proc~complete_ocean_create proc~rdb_ocean_create_from_string rdb_ocean_create_from_string proc~rdb_ocean_create_from_string->proc~complete_ocean_create

Source Code

   subroutine bt_wide_enter_data_impl(this)
      !! Non-polymorphic enter_data body (avoids class-box GPU descriptor issue).
      type(bt_wide_t), intent(inout) :: this
      ! Wide metrics: delegate to the ocean_metrics_t enter_data TBP —
      ! same attach set as the normal metrics, and keeps the acc
      ! directives on one-level names (associate-leaf/ifx rule; the
      ! openmp-portability hook rejects deep struct chains in data
      ! clauses).
      call this%metrics_w%enter_data()
      ! Wide Coriolis.
      !$acc enter data copyin(this%f_corner_w)
      ! Wide shadow arrays.
      !$acc enter data copyin(this%w_eta, this%w_H_ref, this%w_eta_new, this%w_ke)
      !$acc enter data copyin(this%w_eta_sum, this%w_eta_end)
      !$acc enter data copyin(this%w_ubt, this%w_ubt_prev, this%w_rem_u)
      !$acc enter data copyin(this%w_ubt_sum, this%w_uhbt_sum, this%w_uhbt, this%w_ubt_end)
      !$acc enter data copyin(this%w_vbt, this%w_vbt_prev, this%w_rem_v)
      !$acc enter data copyin(this%w_vbt_sum, this%w_vhbt_sum, this%w_vhbt, this%w_vbt_end)
      !$acc enter data copyin(this%w_zeta)
      !$acc enter data copyin(this%w_force_u, this%w_force_v)
   end subroutine bt_wide_enter_data_impl