da_ssmi.f90

References to this file elsewhere.
1 module da_ssmi
2 
3 
4    use module_dm, only : wrf_dm_sum_integer
5    use module_domain, only : xpose_type, xb_type
6    use module_ssmi, only : cal_sigma_v,tb,effht,epsalt,spemiss,tbatmos,&
7       roughem,effang,tbatmos,filter
8 
9    use da_control, only : obs_qc_pointer,max_ob_levels,missing_r, &
10       v_interp_p, v_interp_h, check_max_iv_print, t_roughem, t_kelvin, &
11       missing, max_error_uv, max_error_t, rootproc, pi, &
12       max_error_p,max_error_q, check_max_iv_unit,check_max_iv,  &
13       max_stheight_diff,missing_data,max_error_bq,max_error_slp, &
14       max_error_bt, max_error_buv, max_error_thickness, mkz, &
15       num_ssmt2_tot,num_ssmt1_tot,max_error_rh,max_error_tb, max_error_pw, &
16       trace_use,Testing_WRFVAR,stdout, Use_SsmiRetrievalObs, Use_SsmiTbObs, &
17       num_ssmi_tb_tot,num_ssmi_rv_tot,num_ssmi_tot, global, print_detail_obs
18    use da_define_structures, only : maxmin_type, ob_type, y_type, jo_type, &
19       bad_data_type, x_type, number_type, bad_data_type, &
20       maxmin_type,residual_ssmi_retrieval_type, &
21       residual_ssmi_tb_type, model_loc_type, info_type, field_type, &
22       count_obs_number_type, ssmi_retrieval_type, ssmi_tb_type, ssmt1_type, &
23       ssmt2_type
24    use da_interpolation, only : da_interp_lin_2d, da_interp_lin_2d_adj, &
25       da_interp_lin_3d,da_interp_lin_3d_adj,da_to_zk
26    use da_par_util, only : da_proc_stats_combine
27    use da_par_util1, only : da_proc_sum_int
28    use da_reporting, only : da_warning, message, da_error
29    use da_statistics, only : da_stats_calculate
30    use da_tools, only : da_max_error_qc, da_residual, da_ll_to_xy
31    use da_tools1, only : da_get_unit, da_free_unit
32    use da_tracing, only : da_trace_entry, da_trace_exit
33 
34    ! The "stats_ssmi_rv_type" is ONLY used locally in da_ssmi_rv:
35 
36    type maxmin_ssmi_rv_stats_type
37       type (maxmin_type)         :: tpw      ! Toatl precipitable water cm
38       type (maxmin_type)         :: Speed    ! Wind speed (m/s)
39    end type maxmin_ssmi_rv_stats_type
40 
41    type stats_ssmi_retrieval_type
42       type (maxmin_ssmi_rv_stats_type)      :: maximum, minimum
43       type (residual_ssmi_retrieval_type)   :: average, rms_err
44    end type stats_ssmi_retrieval_type
45 
46    ! The "stats_ssmi_tb_type" is ONLY used locally in da_ssmi_tb:
47 
48    type maxmin_ssmi_tb_stats_type
49       type (maxmin_type)         :: tb19v    ! brightness temperature (K)
50       type (maxmin_type)         :: tb19h    ! brightness temperature (K)
51       type (maxmin_type)         :: tb22v    ! brightness temperature (K)
52       type (maxmin_type)         :: tb37v    ! brightness temperature (K)
53       type (maxmin_type)         :: tb37h    ! brightness temperature (K)
54       type (maxmin_type)         :: tb85v    ! brightness temperature (K)
55       type (maxmin_type)         :: tb85h    ! brightness temperature (K)
56    end type maxmin_ssmi_tb_stats_type
57 
58    type stats_ssmi_tb_type
59       type (maxmin_ssmi_tb_stats_type)  :: maximum, minimum
60       type (residual_ssmi_tb_type)      :: average, rms_err
61    end type stats_ssmi_tb_type
62 
63 
64 contains
65 
66 #include "da_ao_stats_ssmi.inc"
67 #include "da_ao_stats_ssmi_rv.inc"
68 #include "da_ao_stats_ssmi_tb.inc"
69 #include "da_read_ssmi.inc"
70 #include "da_scan_ssmi.inc"
71 #include "da_jo_and_grady_ssmi.inc"
72 #include "da_jo_and_grady_ssmi_rv.inc"
73 #include "da_jo_and_grady_ssmi_tb.inc"
74 #include "da_residual_ssmi.inc"
75 #include "da_residual_ssmi_rv.inc"
76 #include "da_residual_ssmi_tb.inc"
77 #include "da_oi_stats_ssmi.inc"
78 #include "da_oi_stats_ssmi_rv.inc"
79 #include "da_oi_stats_ssmi_tb.inc"
80 #include "da_transform_xtospeed.inc"
81 #include "da_transform_xtospeed_lin.inc"
82 #include "da_transform_xtospeed_adj.inc"
83 #include "da_transform_xtoseasfcwind.inc"
84 #include "da_transform_xtoseasfcwind_lin.inc"
85 #include "da_transform_xtoseasfcwind_adj.inc"
86 #include "da_transform_xtotb.inc"
87 #include "da_transform_xtotb_lin.inc"
88 #include "da_transform_xtotb_adj.inc"
89 #include "da_transform_xtoy_ssmi.inc"
90 #include "da_transform_xtoy_ssmi_adj.inc"
91 #include "da_transform_xtoy_ssmi_rv.inc"
92 #include "da_transform_xtoy_ssmi_rv_adj.inc"
93 #include "da_transform_xtoy_ssmi_tb.inc"
94 #include "da_transform_xtoy_ssmi_tb_adj.inc"
95 #include "da_transform_xtozrhoq.inc"
96 #include "da_transform_xtozrhoq_lin.inc"
97 #include "da_transform_xtozrhoq_adj.inc"
98 #include "da_jo_and_grady_ssmt1.inc"
99 #include "da_jo_and_grady_ssmt2.inc"
100 #include "da_residual_ssmt1.inc"
101 #include "da_residual_ssmt2.inc"
102 #include "da_check_max_iv_ssmi_rv.inc"
103 #include "da_check_max_iv_ssmi_tb.inc"
104 #include "da_check_max_iv_ssmt1.inc"
105 #include "da_check_max_iv_ssmt2.inc"
106 #include "da_get_innov_vector_ssmi.inc"
107 #include "da_get_innov_vector_ssmi_rv.inc"
108 #include "da_get_innov_vector_ssmi_tb.inc"
109 #include "da_get_innov_vector_ssmt1.inc"
110 #include "da_get_innov_vector_ssmt2.inc"
111 #include "da_ao_stats_ssmt1.inc"
112 #include "da_ao_stats_ssmt2.inc"
113 #include "da_oi_stats_ssmt1.inc"
114 #include "da_oi_stats_ssmt2.inc"
115 #include "da_print_stats_ssmt1.inc"
116 #include "da_print_stats_ssmt2.inc"
117 #include "da_transform_xtoy_ssmt1.inc"
118 #include "da_transform_xtoy_ssmt1_adj.inc"
119 #include "da_transform_xtoy_ssmt2.inc"
120 #include "da_transform_xtoy_ssmt2_adj.inc"
121 #include "da_calculate_grady_ssmi.inc"
122 #include "da_calculate_grady_ssmt1.inc"
123 #include "da_calculate_grady_ssmt2.inc"
124 
125 #include "da_tb_adj.inc"
126 #include "da_sigma_v_adj.inc"
127 #include "da_effang_adj.inc"
128 #include "da_effht_adj.inc"
129 #include "da_epsalt_adj.inc"
130 #include "da_roughem_adj.inc"
131 #include "da_spemiss_adj.inc"
132 #include "da_tbatmos_adj.inc"
133 
134 #include "da_tb_tl.inc"
135 #include "da_tbatmos_tl.inc"
136 #include "da_effht_tl.inc"
137 #include "da_roughem_tl.inc"
138 #include "da_spemiss_tl.inc"
139 #include "da_effang_tl.inc"
140 #include "da_epsalt_tl.inc"
141 #include "da_sigma_v_tl.inc"
142    
143 end module da_ssmi
144