wrf svn trunk commit r4103
[wrffire.git] / wrfv2_fire / var / da / da_obs / da_obs.f90
blobc7f248f65db1fdae978ae5d341424e7d2fefdf92
1 module da_obs
3 use da_define_structures, only : multi_level_type, y_type, iv_type, infa_type, &
4 field_type, each_level_type,da_allocate_y, da_random_seed
5 use module_domain, only : domain, x_type
7 use da_airep, only : da_transform_xtoy_airep, da_transform_xtoy_airep_adj
8 use da_airsr, only : da_transform_xtoy_airsr, da_transform_xtoy_airsr_adj
9 use da_bogus, only : da_transform_xtoy_bogus, da_transform_xtoy_bogus_adj
10 use da_buoy, only : da_transform_xtoy_buoy,da_transform_xtoy_buoy_adj
11 use da_control, only : use_shipsobs, use_synopobs, use_ssmt2obs, &
12 use_soundobs,use_mtgirsobs,use_satemobs, use_profilerobs, use_pilotobs, &
13 use_qscatobs,use_metarobs, use_polaramvobs, use_geoamvobs, &
14 use_bogusobs,use_buoyobs, use_airsretobs, use_tamdarobs, trace_use, num_procs, &
15 missing_r, missing, use_airepobs,use_gpspwobs,use_gpsztdobs,use_gpsrefobs, &
16 use_ssmt1obs,filtered_obs_unit,fmt_each,fmt_info,fmt_srfc, ide, jde, &
17 pseudo_x, fg_format, fg_format_kma_global, fg_format_wrf_arw_regional,fg_format_wrf_nmm_regional, &
18 missing_data, pseudo_var, pseudo_val,stdout, num_pseudo, pseudo_y, pseudo_z, &
19 pseudo_err,obs_qc_pointer,myproc,rtm_option,rtm_option_rttov, &
20 rtm_option_crtm,use_rad, base_temp, base_lapse, base_pres, &
21 ob_format,ob_format_ascii,filename_len, trace_use_dull, &
22 sound, mtgirs, synop, profiler, gpsref, gpspw, polaramv, geoamv, ships, metar, &
23 satem, radar, ssmi_rv, ssmi_tb, ssmt1, ssmt2, airsr, pilot, airep, sonde_sfc, &
24 bogus, buoy, qscat, tamdar, pseudo, num_ob_indexes, its,ite,jds,jts,jte,ids, &
25 write_mod_filtered_obs !cys_add
26 ! use_crtm_kmatrix,use_crtm_kmatrix_fast
27 #ifdef CRTM
28 use da_crtm, only : da_transform_xtoy_crtm, da_transform_xtoy_crtm_adj
29 !da_transform_xtoy_crtmk,da_transform_xtoy_crtmk_adj
30 !da_transform_xtoy_crtmk_f, da_transform_xtoy_crtmk_f_adj
31 #endif
32 use da_geoamv, only : da_transform_xtoy_geoamv, da_transform_xtoy_geoamv_adj
33 use da_gpspw, only : da_transform_xtoy_gpspw,da_transform_xtoy_gpspw_adj, &
34 da_transform_xtoy_gpsztd,da_transform_xtoy_gpsztd_adj
35 use da_gpsref, only : da_transform_xtoy_gpsref,da_transform_xtoy_gpsref_adj
36 use da_metar, only : da_transform_xtoy_metar, da_transform_xtoy_metar_adj
37 use da_physics, only : da_tp_to_qs,da_get_q_error
38 use da_pilot, only : da_transform_xtoy_pilot,da_transform_xtoy_pilot_adj
39 use da_polaramv, only : da_transform_xtoy_polaramv, da_transform_xtoy_polaramv_adj
40 use da_profiler, only : da_transform_xtoy_profiler, da_transform_xtoy_profiler_adj
41 use da_pseudo, only : da_transform_xtoy_pseudo, da_transform_xtoy_pseudo_adj
42 use da_qscat, only : da_transform_xtoy_qscat,da_transform_xtoy_qscat_adj
43 use da_radar, only : da_transform_xtoy_radar,da_transform_xtoy_radar_adj
44 use da_reporting, only : da_error, message, da_warning
45 #ifdef RTTOV
46 use da_rttov, only : da_transform_xtoy_rttov,da_transform_xtoy_rttov_adj
47 #endif
48 use da_satem, only : da_transform_xtoy_satem, da_transform_xtoy_satem_adj
49 use da_ships, only : da_transform_xtoy_ships, da_transform_xtoy_ships_adj
50 use da_sound, only : da_transform_xtoy_sound, da_transform_xtoy_sonde_sfc, &
51 da_transform_xtoy_sound_adj, da_transform_xtoy_sonde_sfc_adj
52 use da_mtgirs, only : da_transform_xtoy_mtgirs, da_transform_xtoy_mtgirs_adj
53 use da_tamdar, only : da_transform_xtoy_tamdar, da_transform_xtoy_tamdar_adj, &
54 da_transform_xtoy_tamdar_sfc, da_transform_xtoy_tamdar_sfc_adj
55 use da_ssmi, only : da_transform_xtoy_ssmt1, da_transform_xtoy_ssmt2, &
56 da_transform_xtoy_ssmi_tb, da_transform_xtoy_ssmi_rv, &
57 da_transform_xtoy_ssmi_tb_adj, da_transform_xtoy_ssmi_rv_adj, &
58 da_transform_xtoy_ssmt1_adj, da_transform_xtoy_ssmt2_adj
59 use da_synop, only : da_transform_xtoy_synop,da_transform_xtoy_synop_adj
60 use da_tools_serial, only : da_free_unit, da_get_unit
61 use da_tools, only : da_add_noise, da_add_noise_new,da_random_omb
62 use da_tracing, only : da_trace_entry, da_trace_exit
63 use module_dm, only : wrf_dm_sum_real, wrf_dm_sum_reals
65 implicit none
67 contains
69 #include "da_obs_proc_station.inc"
70 #include "da_transform_xtoy.inc"
71 #include "da_transform_xtoy_adj.inc"
72 #include "da_add_noise_to_ob.inc"
73 #include "da_check_missing.inc"
74 #include "da_fill_obs_structures.inc"
75 #include "da_random_omb_all.inc"
76 #include "da_setup_pseudo_obs.inc"
77 #include "da_store_obs_grid_info.inc"
78 #include "da_store_obs_grid_info_bufr.inc"
79 #include "da_count_filtered_obs.inc"
80 #include "da_obs_sensitivity.inc"
81 #include "da_set_obs_missing.inc"
83 end module da_obs