INTERFACE:
subroutine uv_advect(U,V,DU,DV) Note (KK): keep in sync with interface in m2d.F90DESCRIPTION:
Wrapper to prepare and do calls to do_advection (see section 7.4.2 on page ) to calculate the advection terms of the depth-averaged velocities. USES:
use domain, only: imin,imax,jmin,jmax,az,au,av,ax #if defined(SPHERICAL) || defined(CURVILINEAR) use domain, only: dxv,dyu #else use domain, only: dx,dy #endif use m2d, only: dtm,vel2d_adv_split,vel2d_adv_hor use variables_2d, only: UEx,VEx use advection, only: NOADV,UPSTREAM,J7,do_advection use halo_zones, only: update_2d_halo,wait_halo,U_TAG,V_TAG use getm_timers, only: tic,toc,TIM_UVADV,TIM_UVADVH $ use omp_lib IMPLICIT NONEINPUT PARAMETERS:
REALTYPE,dimension(E2DFIELD),intent(in) :: U,V REALTYPE,dimension(E2DFIELD),target,intent(in) :: DU,DVREVISION HISTORY:
Original author(s): Hans Burchard & Karsten BoldingLOCAL VARIABLES:
integer :: i,j REALTYPE,dimension(E2DFIELD) :: fadv,Uadv,Vadv,DUadv,DVadv REALTYPE,dimension(E2DFIELD),target :: Dadv REALTYPE,dimension(:,:),pointer,contiguous :: pDadv