ice_atm_forcing_restoring_impl Subroutine

private pure subroutine ice_atm_forcing_restoring_impl(sf0, dsfdt, sw, fpr, air_temp, restore_lambda, sw_down, snowfall, nx, ny)

Full-array fill (incl. ghosts). Explicit-shape + decl-order (dims first). Runs on device-resident seam arrays (mapped by ice%enter_data).

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(inout) :: sf0(nx,ny)
real(kind=wp), intent(inout) :: dsfdt(nx,ny)
real(kind=wp), intent(inout) :: sw(nx,ny)
real(kind=wp), intent(inout) :: fpr(nx,ny)
real(kind=wp), intent(in) :: air_temp
real(kind=wp), intent(in) :: restore_lambda
real(kind=wp), intent(in) :: sw_down
real(kind=wp), intent(in) :: snowfall
integer, intent(in) :: nx
integer, intent(in) :: ny

Called by

proc~~ice_atm_forcing_restoring_impl~~CalledByGraph proc~ice_atm_forcing_restoring_impl ice_atm_forcing_restoring_impl proc~ice_atm_forcing_restoring ice_atm_forcing_restoring proc~ice_atm_forcing_restoring->proc~ice_atm_forcing_restoring_impl proc~engine_step_ice engine_step_ice proc~engine_step_ice->proc~ice_atm_forcing_restoring proc~driver_run_ocean driver_run_ocean proc~driver_run_ocean->proc~engine_step_ice proc~rdb_ocean_step rdb_ocean_step proc~rdb_ocean_step->proc~engine_step_ice proc~driver_run driver_run proc~driver_run->proc~driver_run_ocean

Variables

Type Visibility Attributes Name Initial
integer, private :: i
integer, private :: j

Source Code

   pure subroutine ice_atm_forcing_restoring_impl(sf0, dsfdt, sw, fpr, air_temp, &
                                                  restore_lambda, sw_down, snowfall, nx, ny)
      !! Full-array fill (incl. ghosts). Explicit-shape + decl-order (dims first).
      !! Runs on device-resident seam arrays (mapped by ice%enter_data).
      integer, intent(in) :: nx, ny
      real(wp), intent(inout) :: sf0(nx, ny), dsfdt(nx, ny), sw(nx, ny), fpr(nx, ny)
      real(wp), intent(in) :: air_temp, restore_lambda, sw_down, snowfall
      integer :: i, j
      do concurrent(j=1:ny, i=1:nx)
         sf0(i, j) = -restore_lambda*air_temp
         dsfdt(i, j) = restore_lambda
         sw(i, j) = sw_down
         fpr(i, j) = snowfall
      end do
   end subroutine ice_atm_forcing_restoring_impl