ocean_data_input_update_all Subroutine

public subroutine ocean_data_input_update_all(this, t)

Driver hook: refresh every registered field’s bracket for model time t (reading + pushing a new slab to the device only when the bracket actually advances). No-op when nfields == 0 — every shipped namelist today. Does NOT write into any consumer array (see module docstring) — call update_2d/_3d afterwards for that.

Arguments

Type IntentOptional Attributes Name
class(ocean_data_input_t), intent(inout) :: this
real(kind=wp), intent(in) :: t

Calls

proc~~ocean_data_input_update_all~~CallsGraph proc~ocean_data_input_update_all ocean_data_input_update_all proc~data_input_refresh_brackets data_input_refresh_brackets proc~ocean_data_input_update_all->proc~data_input_refresh_brackets error error proc~data_input_refresh_brackets->error info info proc~data_input_refresh_brackets->info proc~data_input_locate data_input_locate proc~data_input_refresh_brackets->proc~data_input_locate proc~data_input_read_slab_impl data_input_read_slab_impl proc~data_input_refresh_brackets->proc~data_input_read_slab_impl to_string to_string proc~data_input_refresh_brackets->to_string warning warning proc~data_input_refresh_brackets->warning proc~data_input_workspace_ensure data_input_workspace_ensure proc~data_input_read_slab_impl->proc~data_input_workspace_ensure proc~nc_get_var_slab_3d nc_get_var_slab_3d proc~data_input_read_slab_impl->proc~nc_get_var_slab_3d nf90_get_var nf90_get_var proc~nc_get_var_slab_3d->nf90_get_var proc~nc_check nc_check proc~nc_get_var_slab_3d->proc~nc_check nf90_strerror nf90_strerror proc~nc_check->nf90_strerror proc~fail fail proc~nc_check->proc~fail

Called by

proc~~ocean_data_input_update_all~~CalledByGraph proc~ocean_data_input_update_all ocean_data_input_update_all proc~engine_step engine_step proc~engine_step->proc~ocean_data_input_update_all 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

Variables

Type Visibility Attributes Name Initial
integer, private :: i

Source Code

   subroutine ocean_data_input_update_all(this, t)
      !! Driver hook: refresh every registered field's bracket for model
      !! time `t` (reading + pushing a new slab to the device only when
      !! the bracket actually advances).  No-op when `nfields == 0` —
      !! every shipped namelist today.  Does NOT write into any
      !! consumer array (see module docstring) — call `update_2d/_3d`
      !! afterwards for that.
      class(ocean_data_input_t), intent(inout) :: this
      real(wp), intent(in) :: t
      integer :: i
      if (this%nfields == 0) return
      do i = 1, this%nfields
         call data_input_refresh_brackets(this, i, t)
      end do
   end subroutine ocean_data_input_update_all