data_input_blend_3d_impl Subroutine

private pure subroutine data_input_blend_3d_impl(nxs, nys, nzs, dn1, dn2, dn3, i0, j0, f0, f1, w, dest)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nxs
integer, intent(in) :: nys
integer, intent(in) :: nzs
integer, intent(in) :: dn1
integer, intent(in) :: dn2
integer, intent(in) :: dn3
integer, intent(in) :: i0
integer, intent(in) :: j0
real(kind=wp), intent(in) :: f0(nxs,nys,nzs)
real(kind=wp), intent(in) :: f1(nxs,nys,nzs)
real(kind=wp), intent(in) :: w
real(kind=wp), intent(inout) :: dest(dn1,dn2,dn3)

Called by

proc~~data_input_blend_3d_impl~~CalledByGraph proc~data_input_blend_3d_impl data_input_blend_3d_impl proc~ocean_data_input_update_3d ocean_data_input_update_3d proc~ocean_data_input_update_3d->proc~data_input_blend_3d_impl

Variables

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

Source Code

   pure subroutine data_input_blend_3d_impl(nxs, nys, nzs, dn1, dn2, dn3, i0, j0, f0, f1, w, dest)
      integer, intent(in) :: nxs, nys, nzs, dn1, dn2, dn3, i0, j0
      real(wp), intent(in) :: f0(nxs, nys, nzs), f1(nxs, nys, nzs)
      real(wp), intent(in) :: w
      real(wp), intent(inout) :: dest(dn1, dn2, dn3)
      integer :: i, j, k
      do concurrent(k=1:nzs, j=1:nys, i=1:nxs)
         dest(i0 + i - 1, j0 + j - 1, k) = (1.0_wp - w)*f0(i, j, k) + w*f1(i, j, k)
      end do
   end subroutine data_input_blend_3d_impl