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