81 & LBi, UBi, LBj, UBj, &
82 & IminS, ImaxS, JminS, JmaxS, &
87 & u_stokes, v_stokes, &
88 & tl_u_stokes, tl_v_stokes, &
105 integer,
intent(in) :: ng, tile, model
106 integer,
intent(in) :: LBi, UBi, LBj, UBj
107 integer,
intent(in) :: IminS, ImaxS, JminS, JmaxS
108 integer,
intent(in) :: nrhs
111 real(r8),
intent(in) :: u(LBi:,LBj:,:,:)
112 real(r8),
intent(in) :: v(LBi:,LBj:,:,:)
113 real(r8),
intent(in) :: tl_u(LBi:,LBj:,:,:)
114 real(r8),
intent(in) :: tl_v(LBi:,LBj:,:,:)
116 real(r8),
intent(in) :: u_stokes(LBi:,LBj:,:)
117 real(r8),
intent(in) :: v_stokes(LBi:,LBj:,:)
118 real(r8),
intent(in) :: tl_u_stokes(LBi:,LBj:,:)
119 real(r8),
intent(in) :: tl_v_stokes(LBi:,LBj:,:)
121 real(r8),
intent(in) :: Hz(LBi:,LBj:,:)
122 real(r8),
intent(in) :: tl_Hz(LBi:,LBj:,:)
123 real(r8),
intent(in) :: om_v(LBi:,LBj:)
124 real(r8),
intent(in) :: on_u(LBi:,LBj:)
126 real(r8),
intent(out) :: tl_Huon(LBi:,LBj:,:)
127 real(r8),
intent(out) :: tl_Hvom(LBi:,LBj:,:)
129 real(r8),
intent(in) :: u(LBi:UBi,LBj:UBj,N(ng),2)
130 real(r8),
intent(in) :: v(LBi:UBi,LBj:UBj,N(ng),2)
131 real(r8),
intent(in) :: tl_u(LBi:UBi,LBj:UBj,N(ng),2)
132 real(r8),
intent(in) :: tl_v(LBi:UBi,LBj:UBj,N(ng),2)
134 real(r8),
intent(in) :: u_stokes(LBi:UBi,LBj:UBj,N(ng))
135 real(r8),
intent(in) :: v_stokes(LBi:UBi,LBj:UBj,N(ng))
136 real(r8),
intent(in) :: tl_u_stokes(LBi:UBi,LBj:UBj,N(ng))
137 real(r8),
intent(in) :: tl_v_stokes(LBi:UBi,LBj:UBj,N(ng))
139 real(r8),
intent(in) :: Hz(LBi:UBi,LBj:UBj,N(ng))
140 real(r8),
intent(in) :: tl_Hz(LBi:UBi,LBj:UBj,N(ng))
141 real(r8),
intent(in) :: om_v(LBi:UBi,LBj:UBj)
142 real(r8),
intent(in) :: on_u(LBi:UBi,LBj:UBj)
144 real(r8),
intent(out) :: tl_Huon(LBi:UBi,LBj:UBj,N(ng))
145 real(r8),
intent(out) :: tl_Hvom(LBi:UBi,LBj:UBj,N(ng))
152# include "set_bounds.h"
166 tl_huon(i,j,k)=0.5_r8*on_u(i,j)* &
167 & ((hz(i,j,k)+hz(i-1,j,k))* &
168 & tl_u(i,j,k,nrhs)+ &
169 & (tl_hz(i,j,k)+tl_hz(i-1,j,k))* &
176 tl_huon(i,j,k)=tl_huon(i,j,k)+ &
177 & 0.5_r8*on_u(i,j)* &
178 & ((hz(i,j,k)+hz(i-1,j,k))* &
179 & tl_u_stokes(i,j,k)+ &
180 & (tl_hz(i,j,k)+tl_hz(i-1,j,k))* &
190 tl_hvom(i,j,k)=0.5_r8*om_v(i,j)* &
191 & ((hz(i,j,k)+hz(i,j-1,k))* &
192 & tl_v(i,j,k,nrhs)+ &
193 & (tl_hz(i,j,k)+tl_hz(i,j-1,k))* &
200 tl_hvom(i,j,k)=tl_hvom(i,j,k)+ &
201 & 0.5_r8*om_v(i,j)* &
202 & ((hz(i,j,k)+hz(i,j-1,k))* &
203 & tl_v_stokes(i,j,k)+ &
204 & (tl_hz(i,j,k)+tl_hz(i,j-1,k))* &
219 & lbi, ubi, lbj, ubj, 1, n(ng), &
226 & lbi, ubi, lbj, ubj, 1, n(ng), &
238 & lbi, ubi, lbj, ubj, 1, n(ng), &
subroutine tl_set_massflux_tile(ng, tile, model, lbi, ubi, lbj, ubj, imins, imaxs, jmins, jmaxs, nrhs, u, v, tl_u, tl_v, hz, tl_hz, om_v, on_u, tl_huon, tl_hvom)