bt_wide_copy_out Subroutine

private subroutine bt_wide_copy_out(this, grid, bt_eta, bt_ubt, bt_vbt, bt_uhbt, bt_vhbt, bt_eta_end, bt_ubt_end, bt_vbt_end)

Offset-copy wide output arrays back to the normal-width arrays. Dispatches to the non-polymorphic _impl body.

Type Bound

bt_wide_t

Arguments

Type IntentOptional Attributes Name
class(bt_wide_t), intent(in) :: this
type(hgrid_t), intent(in) :: grid
real(kind=wp), intent(out) :: bt_eta(grid%nx_total,grid%ny_total)
real(kind=wp), intent(out) :: bt_ubt(grid%nx_total+1,grid%ny_total)
real(kind=wp), intent(out) :: bt_vbt(grid%nx_total,grid%ny_total+1)
real(kind=wp), intent(out) :: bt_uhbt(grid%nx_total+1,grid%ny_total)
real(kind=wp), intent(out) :: bt_vhbt(grid%nx_total,grid%ny_total+1)
real(kind=wp), intent(out) :: bt_eta_end(grid%nx_total,grid%ny_total)
real(kind=wp), intent(out) :: bt_ubt_end(grid%nx_total+1,grid%ny_total)
real(kind=wp), intent(out) :: bt_vbt_end(grid%nx_total,grid%ny_total+1)

Calls

proc~~bt_wide_copy_out~~CallsGraph proc~bt_wide_copy_out bt_wide_t%bt_wide_copy_out proc~bt_wide_copy_out_impl bt_wide_copy_out_impl proc~bt_wide_copy_out->proc~bt_wide_copy_out_impl

Called by

proc~~bt_wide_copy_out~~CalledByGraph proc~bt_wide_copy_out bt_wide_t%bt_wide_copy_out proc~run_stage_split run_stage_split proc~run_stage_split->proc~bt_wide_copy_out proc~ocean_dyn_step_split ocean_dyn_step_split proc~ocean_dyn_step_split->proc~run_stage_split proc~engine_step engine_step proc~engine_step->proc~ocean_dyn_step_split proc~driver_run_ocean driver_run_ocean proc~driver_run_ocean->proc~engine_step proc~rdb_ocean_step rdb_ocean_step proc~rdb_ocean_step->proc~engine_step proc~driver_run driver_run proc~driver_run->proc~driver_run_ocean

Source Code

   subroutine bt_wide_copy_out(this, grid, &
                               bt_eta, bt_ubt, bt_vbt, &
                               bt_uhbt, bt_vhbt, &
                               bt_eta_end, bt_ubt_end, bt_vbt_end)
      !! Offset-copy wide output arrays back to the normal-width arrays.
      !! Dispatches to the non-polymorphic `_impl` body.
      class(bt_wide_t), intent(in) :: this
      type(hgrid_t), intent(in) :: grid
      real(wp), intent(out) :: bt_eta(grid%nx_total, grid%ny_total)
      real(wp), intent(out) :: bt_ubt(grid%nx_total + 1, grid%ny_total)
      real(wp), intent(out) :: bt_vbt(grid%nx_total, grid%ny_total + 1)
      real(wp), intent(out) :: bt_uhbt(grid%nx_total + 1, grid%ny_total)
      real(wp), intent(out) :: bt_vhbt(grid%nx_total, grid%ny_total + 1)
      real(wp), intent(out) :: bt_eta_end(grid%nx_total, grid%ny_total)
      real(wp), intent(out) :: bt_ubt_end(grid%nx_total + 1, grid%ny_total)
      real(wp), intent(out) :: bt_vbt_end(grid%nx_total, grid%ny_total + 1)
      select type (this)
      type is (bt_wide_t)
         call bt_wide_copy_out_impl(this, grid, &
                                    bt_eta, bt_ubt, bt_vbt, &
                                    bt_uhbt, bt_vhbt, &
                                    bt_eta_end, bt_ubt_end, bt_vbt_end)
      end select
   end subroutine bt_wide_copy_out