da_transform_xtozrhoq_lin.inc

References to this file elsewhere.
1 subroutine da_transform_xtozrhoq_lin(xb, xa, i, j, zh, zf, tgl_zrhom)
2 
3    !-----------------------------------------------------------------------
4    ! Purpose: TBD
5    !-----------------------------------------------------------------------
6 
7    implicit none
8    
9    integer,        intent(in)      :: i, j
10    type (xb_type), intent(in)      :: xb         ! first guess state.
11    type (x_type) , intent(in)      :: xa         ! increment
12    real,           intent(out)     :: TGL_zrhom  ! gridded height weighted moisture
13    real,           intent(in),  &
14                    dimension(mkz)  :: zh
15    real,           intent(in),  &
16                    dimension(mkz+1):: zf
17    integer                         :: k
18 
19    if (trace_use) call da_trace_entry("da_transform_xtozrhoq_lin")
20 
21    TGL_zrhom = 0.
22 
23    do k = 1,mkz
24       TGL_zrhom = (zf(k)-zf(k+1))*zh(k)*(xb%q(i,j,k)*xa%rho(i,j,k) + &
25                                          xa%q(i,j,k)*xb%rho(i,j,k)   &
26                                        ) + TGL_zrhom
27    end do
28 
29    if (trace_use) call da_trace_exit("da_transform_xtozrhoq_lin")
30  
31 end subroutine da_transform_xtozrhoq_lin
32 
33