da_convert_zk.inc

References to this file elsewhere.
1 subroutine da_convert_zk (info)
2 
3    !-----------------------------------------------------------------------
4    ! Purpose: Transfer obs. x to grid i and calculate its
5    ! distance to grid i and i+1
6    !-----------------------------------------------------------------------
7 
8    implicit none
9 
10    type(infa_type), intent(inout) :: info
11 
12    if (trace_use) call da_trace_entry("da_convert_zk")
13 
14    where ( info%zk(:,info%n1:info%n2) > 0.0) 
15       info%k(:,info%n1:info%n2) = int ( info%zk(:,info%n1:info%n2))
16 
17       where(info%k(:,info%n1:info%n2) < kts)  info%k(:,info%n1:info%n2) = kts
18       where(info%k(:,info%n1:info%n2) >= kte) info%k(:,info%n1:info%n2) = kte-1
19 
20       info%dz(:,info%n1:info%n2) = info%zk(:,info%n1:info%n2) - real(info%k(:,info%n1:info%n2))
21       info%dzm(:,info%n1:info%n2)= 1.0 - info%dz(:,info%n1:info%n2)
22    elsewhere 
23       info%k(:,info%n1:info%n2) = 0
24       info%dz(:,info%n1:info%n2) = 0.0
25       info%dzm(:,info%n1:info%n2) = 0.0
26    end where
27 
28    if (trace_use) call da_trace_exit("da_convert_zk")
29 
30 end subroutine da_convert_zk
31 
32