da_sound.f90

References to this file elsewhere.
1 module da_sound
2 
3    use da_control, only : obs_qc_pointer,max_ob_levels,missing_r, &
4       check_max_iv_print, check_max_iv_unit, v_interp_p, v_interp_h, &
5       check_max_iv, missing, max_error_uv, max_error_t, rootproc, &
6       num_sound_tot, max_error_p,max_error_q, sfc_assi_options, &
7       max_stheight_diff,testing_dm_exact, trace_use, anal_type_verify
8    use da_define_structures, only : maxmin_type, ob_type, y_type, jo_type, &
9       bad_data_type, x_type, sound_type, number_type, bad_data_type, &
10       residual_sound_type,synop_type
11    use module_domain, only : xpose_type, xb_type
12    use da_interpolation, only : da_interp_lin_3d, da_to_zk, &
13       da_interp_lin_3d_adj,da_interp_obs_lin_2d,da_interp_obs_lin_2d_adj, &
14       da_interp_lin_2d, da_interp_lin_2d_adj
15    use da_statistics, only : da_stats_calculate
16    use da_tools, only : da_max_error_qc, da_residual, da_obs_sfc_correction
17    use da_tools1, only : da_get_unit, da_free_unit
18    use da_par_util, only : da_proc_stats_combine, &
19       da_deallocate_global_sound, da_to_global_sound, da_to_global_sonde_sfc, &
20       da_deallocate_global_sonde_sfc
21    use da_par_util1, only : da_proc_sum_int
22    use da_physics, only : da_sfc_pre, da_transform_xtopsfc, &
23       da_transform_xtopsfc_adj
24    use da_tracing, only : da_trace_entry, da_trace_exit
25 
26    ! The "stats_sound_type" is ONLY used locally in da_sound:
27 
28    type residual_sound1_type
29       real          :: u                        ! u-wind.
30       real          :: v                        ! v-wind.
31       real          :: t                        ! temperature
32       real          :: q                        ! specific humidity
33    end type residual_sound1_type
34 
35    type maxmin_sound_stats_type
36       type (maxmin_type)         :: u, v, t, q
37    end type maxmin_sound_stats_type
38 
39    type stats_sound_type
40       type (maxmin_sound_stats_type)  :: maximum, minimum
41       type (residual_sound1_type)     :: average, rms_err
42    end type stats_sound_type
43 
44    ! The "stats_sonde_sfc_type" is ONLY used locally in da_sonde_sfc:
45 
46    type residual_sonde_sfc1_type
47       real          :: u                        ! u-wind.
48       real          :: v                        ! v-wind.
49       real          :: t                        ! temperature
50       real          :: p                        ! pressure
51       real          :: q                        ! specific humidity
52    end type residual_sonde_sfc1_type
53 
54    type maxmin_sonde_sfc_stats_type
55       type (maxmin_type)         :: u, v, t, p, q
56    end type maxmin_sonde_sfc_stats_type
57 
58    type stats_sonde_sfc_type
59       type (maxmin_sonde_sfc_stats_type)  :: maximum, minimum
60       type (residual_sonde_sfc1_type)     :: average, rms_err
61    end type stats_sonde_sfc_type
62 
63 contains
64 
65 #include "da_ao_stats_sound.inc"
66 #include "da_jo_and_grady_sound.inc"
67 #include "da_jo_sound_uvtq.inc"
68 #include "da_residual_sound.inc"
69 #include "da_oi_stats_sound.inc"
70 #include "da_print_stats_sound.inc"
71 #include "da_transform_xtoy_sound.inc"
72 #include "da_transform_xtoy_sound_adj.inc"
73 #include "da_check_max_iv_sound.inc"
74 #include "da_get_innov_vector_sound.inc"
75 #include "da_obs_diagnostics.inc"
76 #include "da_calculate_grady_sound.inc"
77 
78 #include "da_ao_stats_sonde_sfc.inc"
79 #include "da_jo_and_grady_sonde_sfc.inc"
80 #include "da_jo_sonde_sfc_uvtq.inc"
81 #include "da_residual_sonde_sfc.inc"
82 #include "da_oi_stats_sonde_sfc.inc"
83 #include "da_print_stats_sonde_sfc.inc"
84 #include "da_transform_xtoy_sonde_sfc.inc"
85 #include "da_transform_xtoy_sonde_sfc_adj.inc"
86 #include "da_get_innov_vector_sonde_sfc.inc"
87 #include "da_check_max_iv_sonde_sfc.inc"
88 #include "da_calculate_grady_sonde_sfc.inc"
89 
90 end module da_sound
91