da_integrat_dz.inc
References to this file elsewhere.
1 subroutine da_integrat_dz(grid)
2
3 !---------------------------------------------------------------------------
4 ! Non-linear PW forward operator.
5 ! ===============================
6 !
7 ! Purpose: To calculate the IWV from the model QV and PP, TT.
8 !
9 ! Method: IWV = sum {QV * RHO * dZ}
10 !
11 ! Unit: Qv (Kg/Kg), RHO(Kg/M^3), dZ(M)
12 ! PW (cm)
13 !
14 ! input : QV, PP, TT
15 !
16 ! output : PW
17 !
18 !---------------------------------------------------------------------------
19
20 implicit none
21
22 type (domain), intent(inout) :: grid
23
24 integer :: i, j, K
25
26 real :: pw
27
28 if (trace_use) call da_trace_entry("da_integrat_dz")
29
30 ! weighted sum of vertical column
31
32 do j=jts, jte
33 do i=its, ite
34 pw = 0.0
35 do k=kts, kte
36 pw = pw + (grid%xb%hf(i,j,k+1)-grid%xb%hf(i,j,k)) * grid%xb%q(i,j,k)*grid%xb%rho(i,j,k)
37 end do
38
39 grid%xb%tpw(i,j) = 0.1*pw
40 end do
41 end do
42
43 if (trace_use) call da_trace_exit("da_integrat_dz")
44
45 end subroutine da_integrat_dz
46
47