cyclicmj Subroutine

private subroutine cyclicmj()

Uses

  • proc~~cyclicmj~~UsesGraph proc~cyclicmj modboundary::cyclicmj module~modfields modfields proc~cyclicmj->module~modfields module~modglobal modglobal proc~cyclicmj->module~modglobal module~modmpi modmpi proc~cyclicmj->module~modmpi module~modsubgriddata modsubgriddata proc~cyclicmj->module~modsubgriddata mpi mpi module~modmpi->mpi

Arguments

None

Calls

proc~~cyclicmj~~CallsGraph proc~cyclicmj modboundary::cyclicmj proc~excjs modmpi::excjs proc~cyclicmj->proc~excjs mpi_sendrecv mpi_sendrecv proc~excjs->mpi_sendrecv

Called by

proc~~cyclicmj~~CalledByGraph proc~cyclicmj modboundary::cyclicmj proc~boundary modboundary::boundary proc~boundary->proc~cyclicmj proc~readinitfiles modstartup::readinitfiles proc~readinitfiles->proc~boundary program~dalesurban DALESURBAN program~dalesurban->proc~boundary proc~startup modstartup::startup program~dalesurban->proc~startup proc~startup->proc~readinitfiles

Contents

Source Code


Source Code

   subroutine cyclicmj

      use modglobal, only:ib, ie, jb, je, ih, jh, kb, ke, kh, jmax
      use modfields, only:u0, um, v0, vm, w0, wm, e120, e12m, shear
      use modsubgriddata, only:loneeqn, lsmagorinsky
      use modmpi, only:excjs

      integer n, m

      call excjs(u0, ib, ie, jb, je, kb, ke + kh, ih, jh)
      call excjs(v0, ib, ie, jb, je, kb, ke + kh, ih, jh)
      call excjs(w0, ib, ie, jb, je, kb, ke + kh, ih, jh)
      call excjs(um, ib, ie, jb, je, kb, ke + kh, ih, jh)
      call excjs(vm, ib, ie, jb, je, kb, ke + kh, ih, jh)
      call excjs(wm, ib, ie, jb, je, kb, ke + kh, ih, jh)

      if (loneeqn) then
         call excjs(e120, ib, ie, jb, je, kb, ke + kh, ih, jh)
         call excjs(e12m, ib, ie, jb, je, kb, ke + kh, ih, jh)
         ! exchange shear components between processors
         do n = 1, 12 ! for all 12 components
            call excjs(shear(:, :, :, n), ib, ie, jb, je, kb, ke, 0, 1)
         end do
      end if

      if (lsmagorinsky) then
         ! exchange shear components between processors
         do n = 1, 12 ! for all 12 components
            call excjs(shear(:, :, :, n), ib, ie, jb, je, kb, ke, 0, 1)
         end do
      end if

      return
   end subroutine cyclicmj