da_couple_uv.inc

References to this file elsewhere.
1 subroutine da_couple_uv (u,  v,  mu, mub,  msfu, msfv, ids, ide, jds, jde, kds, kde)
2 
3    implicit none
4 
5    integer, intent(in)    :: ids, ide, jds, jde, kds, kde
6    real,    intent(inout) :: u(ids:ide+1,jds:jde,kds:kde)
7    real,    intent(inout) :: v(ids:ide,jds:jde+1,kds:kde)
8    real,    intent(in)    :: msfu(ids:ide+1,jds:jde)
9    real,    intent(in)    :: msfv(ids:ide,jds:jde+1)
10    real,    intent(in)    :: mu(ids:ide,jds:jde)
11    real,    intent(in)    :: mub(ids:ide,jds:jde)
12 
13    real, allocatable :: muu(:,:), muv(:,:)
14 
15    ! update_bc
16    ! if (trace_use) call da_trace_entry("da_couple_uv")  
17 
18    allocate(muu(ids:ide+1, jds:jde ))
19    allocate(muv(ids:ide  , jds:jde+1))
20 
21    ! couple variables u, v
22 
23    call da_calc_mu_uv (mu, mub, muu, muv, ids, ide, jds, jde)
24 
25    call da_couple (muu, u, msfu, ids, ide+1, jds, jde, kds, kde)
26 
27    call da_couple (muv, v, msfv, ids, ide, jds, jde+1, kds, kde)
28 
29    deallocate(muu)
30    deallocate(muv)
31 
32    ! if (trace_use) call da_trace_exit("da_couple_uv")  
33 
34 end subroutine da_couple_uv
35 
36