da_allocate_observations.inc
References to this file elsewhere.
1 subroutine da_allocate_observations (ob)
2
3 !---------------------------------------------------------------------------
4 ! Purpose: Allocate components of observation structure.
5 !---------------------------------------------------------------------------
6
7 implicit none
8
9 type (ob_type), intent(inout) :: ob ! Observation structure.
10
11 if (trace_use) call da_trace_entry("da_allocate_observations")
12
13 if (ob%num_sound > 0) then
14 allocate(ob%sound(1:ob%num_sound))
15
16 allocate(ob%sonde_sfc(1:ob%num_sound))
17 end if
18
19 if (ob%num_synop > 0) &
20 allocate(ob%synop(1:ob%num_synop))
21
22 if (ob%num_airep > 0) &
23 allocate(ob%airep(1:ob%num_airep))
24
25 if (ob%num_geoamv> 0) &
26 allocate(ob%geoamv(1:ob%num_geoamv))
27
28 if (ob%num_polaramv> 0) &
29 allocate(ob%polaramv(1:ob%num_polaramv))
30
31 if (ob%num_satem > 0) &
32 allocate(ob%satem(1:ob%num_satem))
33
34 if (ob%num_metar > 0) &
35 allocate(ob%metar(1:ob%num_metar))
36
37 if (ob%num_ships > 0) &
38 allocate(ob%ships(1:ob%num_ships))
39
40 if (ob%num_pilot > 0) &
41 allocate(ob%pilot(1:ob%num_pilot))
42
43 if (ob%num_gpspw > 0) &
44 allocate(ob%gpspw(1:ob%num_gpspw))
45
46 if (ob%num_gpsref > 0) &
47 allocate(ob%gpsref(1:ob%num_gpsref))
48
49 if (ob%num_ssmi_tb > 0) &
50 allocate(ob%ssmi_tb(1:ob%num_ssmi_tb))
51
52 if (ob%num_ssmi_retrieval > 0) &
53 allocate(ob%ssmi_retrieval(1:ob%num_ssmi_retrieval))
54
55 if (ob%num_ssmt1 > 0) &
56 allocate(ob%ssmt1(1:ob%num_ssmt1))
57
58 if (ob%num_ssmt2 > 0) &
59 allocate(ob%ssmt2(1:ob%num_ssmt2))
60
61 if (ob%num_qscat > 0) &
62 allocate(ob%qscat(1:ob%num_qscat))
63
64 if (ob%num_profiler > 0) &
65 allocate(ob%profiler(1:ob%num_profiler))
66
67 if (ob%num_buoy > 0) &
68 allocate(ob%buoy(1:ob%num_buoy))
69
70 if (ob%num_Radar > 0) &
71 allocate(ob%Radar(1:ob%num_Radar))
72
73 if (ob%num_Bogus > 0) &
74 allocate(ob%Bogus(1:ob%num_Bogus))
75
76 if (ob%num_airsr > 0) &
77 allocate(ob%airsr(1:ob%num_airsr))
78
79 if (trace_use) call da_trace_exit("da_allocate_observations")
80
81 end subroutine da_allocate_observations
82
83