70 integer,
intent(in) :: ka, ks, ke
71 integer,
intent(in) :: ia, is, ie
72 integer,
intent(in) :: ja, js, je
74 real(
rp),
intent(in) :: dens(ka,ia,ja)
75 real(
rp),
intent(in) :: momz(ka,ia,ja)
76 real(
rp),
intent(in) :: momx(ka,ia,ja)
77 real(
rp),
intent(in) :: momy(ka,ia,ja)
79 real(
rp),
intent(out) :: w (ka,ia,ja)
80 real(
rp),
intent(out) :: u (ka,ia,ja)
81 real(
rp),
intent(out) :: v (ka,ia,ja)
97 w(k,i,j) = 0.5_rp * ( momz(k-1,i,j)+momz(k,i,j) ) / dens(k,i,j)
109 momws = momz(ks,is,j) &
110 + j23g(ks,is,j,
i_xyw) * ( momy(ks,is,j) + momy(ks,is,j-1) + momy(ks+1,is,j) + momy(ks+1,is,j-1) ) &
111 * 0.25_rp / gsqrt(ks,is,j,
i_xyw)
114 w(ks,is,j) = ( momws * 0.5_rp &
115 - j23g(ks,is,j,
i_xyz) * ( momy(ks,is,j) + momy(ks,is,j-1) ) &
116 * 0.5_rp / gsqrt(ks,is,j,
i_xyz) &
128 momws = momz(ks,i,j) &
129 + ( j13g(ks,i,j,
i_xyw) * ( momx(ks,i,j) + momx(ks,i-1,j) + momx(ks+1,i,j) + momx(ks+1,i-1,j) ) &
130 + j23g(ks,i,j,
i_xyw) * ( momy(ks,i,j) + momy(ks,i,j-1) + momy(ks+1,i,j) + momy(ks+1,i,j-1) ) ) &
131 * 0.25_rp / gsqrt(ks,i,j,
i_xyw)
134 w(ks,i,j) = ( momws * 0.5_rp &
135 - ( j13g(ks,i,j,
i_xyz) * ( momx(ks,i,j) + momx(ks,i-1,j) ) &
136 + j23g(ks,i,j,
i_xyz) * ( momy(ks,i,j) + momy(ks,i,j-1) ) ) &
137 * 0.5_rp / gsqrt(ks,i,j,
i_xyz) &
148 w(ke,i,j) = 0.5_rp * ( momz(ke-1,i,j) ) / dens(ke,i,j)
159 u(k,is,j) = momx(k,is,j) / dens(k,is,j)
170 u(k,i,j) = 0.5_rp * ( momx(k,i-1,j)+momx(k,i,j) ) / dens(k,i,j)
180 u(k,1,j) = momx(k,1,j) / dens(k,1,j)
192 v(k,i,j) = 0.5_rp * ( momy(k,i,j-1)+momy(k,i,j) ) / dens(k,i,j)
202 v(k,i,1) = momy(k,i,1) / dens(k,i,1)
227 call comm_vars8( w(:,:,:), 1 )
228 call comm_vars8( u(:,:,:), 2 )
229 call comm_vars8( v(:,:,:), 3 )
230 call comm_wait ( w(:,:,:), 1, .false. )
231 call comm_wait ( u(:,:,:), 2, .false. )
232 call comm_wait ( v(:,:,:), 3, .false. )