da_setup_obs_interp_wts.inc

References to this file elsewhere.
1 subroutine da_setup_obs_interp_wts (xp, iv)
2 
3    !-----------------------------------------------------------------------
4    ! Purpose: TBD
5    !-----------------------------------------------------------------------
6 
7    implicit none
8 
9    type (xpose_type), intent(in)  :: xp         ! Domain decomposition vars.
10    type (ob_type), intent(inout)  :: iv         ! Innovation vector (O-B).
11 
12    integer                        :: i, n          ! Loop counter.
13 
14    if (trace_use) call da_trace_entry("da_setup_obs_interp_wts")
15 
16    do n=1, iv % num_sound
17       call da_store_obs_grid_info (xp, iv%sound(n)%loc)
18       call da_store_obs_grid_info (xp, iv%sonde_sfc(n)%loc)
19    end do
20 
21    do n=1, iv % num_synop
22       call da_store_obs_grid_info (xp, iv%synop(n)%loc)
23    end do
24 
25    do n=1, iv % num_geoamv
26       call da_store_obs_grid_info (xp, iv%geoamv(n)%loc)
27    end do
28 
29    do n=1, iv % num_polaramv
30       call da_store_obs_grid_info (xp, iv%polaramv(n)%loc)
31    end do
32 
33    do n=1, iv % num_airep
34       call da_store_obs_grid_info (xp, iv%airep(n)%loc)
35    end do
36 
37    do n=1, iv % num_metar
38       call da_store_obs_grid_info (xp, iv%metar(n)%loc)
39    end do
40 
41    do n=1, iv % num_ships
42       call da_store_obs_grid_info (xp, iv%ships(n)%loc)
43    end do
44 
45    do n=1, iv % num_gpspw
46       call da_store_obs_grid_info (xp, iv%gpspw(n)%loc)
47    end do
48 
49    do n=1, iv % num_gpsref
50       call da_store_obs_grid_info (xp, iv%gpsref(n)%loc)
51    end do
52 
53    do n=1, iv % num_ssmi_tb
54       call da_store_obs_grid_info (xp, iv%ssmi_tb(n)%loc)
55    end do
56 
57    do n=1, iv % num_ssmi_retrieval
58       call da_store_obs_grid_info (xp, iv%ssmi_retrieval(n)%loc)
59    end do
60 
61    do n=1, iv % num_pilot
62       call da_store_obs_grid_info (xp, iv%pilot(n)%loc)
63    end do
64 
65    do n=1, iv % num_Radar
66       call da_store_obs_grid_info (xp, iv%Radar(n)%loc)
67    end do
68 
69    do n=1, iv % num_pseudo
70       call da_store_obs_grid_info (xp, iv%pseudo(n)%loc)
71    end do
72 
73    do n=1, iv % num_satem
74       call da_store_obs_grid_info (xp, iv%satem(n)%loc)
75    end do
76 
77    do n=1, iv % num_ssmt1
78       call da_store_obs_grid_info (xp, iv%ssmt1(n)%loc)
79    end do
80 
81    do n=1, iv % num_ssmt2
82       call da_store_obs_grid_info (xp, iv%ssmt2(n)%loc)
83    end do
84    
85    do n=1, iv % num_qscat
86       call da_store_obs_grid_info (xp, iv%qscat(n)%loc)
87    end do
88 
89    do n=1, iv % num_profiler
90       call da_store_obs_grid_info (xp, iv%profiler(n)%loc)
91    end do
92 
93    do n=1, iv % num_buoy
94       call da_store_obs_grid_info (xp, iv%buoy(n)%loc)
95    end do
96 
97    do n=1, iv % num_bogus
98       call da_store_obs_grid_info (xp, iv%bogus(n)%loc)
99    end do
100 
101    do n=1, iv % num_airsr
102       call da_store_obs_grid_info (xp, iv%airsr(n)%loc)
103    end do
104 
105    do i = 1, iv % num_inst
106       if (iv % instid(i) % num_rad < 1) cycle
107       call da_store_obs_grid_info_new (xp, iv % instid(i) % loc_i(:), &
108          iv % instid(i) % loc_j(:), iv%instid(i)%proc_domain(:))
109    end do
110 
111    if (trace_use) call da_trace_exit("da_setup_obs_interp_wts")
112 
113 end subroutine da_setup_obs_interp_wts
114 
115