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