<HTML> <BODY BGCOLOR=#ccccdd LINK=#0000aa VLINK=#0000ff ALINK=#ff0000 ><BASE TARGET="bottom_target"><PRE>
<A NAME='DA_OBS'><A href='../../html_code/obs/da_obs.f90.html#DA_OBS' TARGET='top_target'><IMG SRC="../../gif/bar_purple.gif" border=0></A>

module da_obs 6,30

   use da_define_structures, only : multi_level_type, y_type, iv_type, infa_type, &amp;
      field_type, each_level_type,da_allocate_y, da_random_seed,da_allocate_y_rain, &amp;
      da_allocate_y_radar
   use module_domain, only : domain, x_type

   use da_airep, only : da_transform_xtoy_airep, da_transform_xtoy_airep_adj 
   use da_airsr, only : da_transform_xtoy_airsr, da_transform_xtoy_airsr_adj 
   use da_bogus, only : da_transform_xtoy_bogus, da_transform_xtoy_bogus_adj
   use da_buoy, only : da_transform_xtoy_buoy,da_transform_xtoy_buoy_adj
   use da_control, only : use_shipsobs, use_synopobs, use_ssmt2obs, &amp;
      use_soundobs,use_mtgirsobs,use_satemobs, use_profilerobs, use_pilotobs, &amp;
      use_qscatobs,use_metarobs, use_polaramvobs, use_geoamvobs, &amp;
      use_bogusobs,use_buoyobs, use_airsretobs, use_tamdarobs, trace_use, num_procs, &amp;
      xmiss, missing_r, missing, use_airepobs,use_gpspwobs,use_gpsztdobs,use_gpsrefobs, &amp;
      use_ssmt1obs,filtered_obs_unit,fmt_each,fmt_info,fmt_srfc, ide, jde, &amp;
      pseudo_x, fg_format, fg_format_kma_global, fg_format_wrf_arw_regional,fg_format_wrf_nmm_regional, &amp;
      missing_data, pseudo_var, pseudo_val,stdout, num_pseudo, pseudo_y, pseudo_z, &amp;
      pseudo_err,obs_qc_pointer,myproc,rtm_option,rtm_option_rttov, &amp;
      rtm_option_crtm,use_rad, base_temp, base_lapse, base_pres, &amp;
      ob_format,ob_format_ascii,filename_len, trace_use_dull, &amp;
      sound, mtgirs, synop, profiler, gpsref, gpspw, polaramv, geoamv, ships, metar, &amp;
      satem, radar, ssmi_rv, ssmi_tb, ssmt1, ssmt2, airsr, pilot, airep, sonde_sfc,rain, &amp;
      bogus, buoy, qscat, tamdar, tamdar_sfc, pseudo, num_ob_indexes, its,ite,jds,jts,jte,ids, &amp;
      write_mod_filtered_obs, radiance, use_varbc, obs_names
   ! use_crtm_kmatrix,use_crtm_kmatrix_fast
#ifdef CRTM
   use da_crtm, only : da_transform_xtoy_crtm, da_transform_xtoy_crtm_adj
      !da_transform_xtoy_crtmk,da_transform_xtoy_crtmk_adj
      !da_transform_xtoy_crtmk_f, da_transform_xtoy_crtmk_f_adj
#endif
   use da_geoamv,    only : da_transform_xtoy_geoamv, da_transform_xtoy_geoamv_adj
   use da_gpspw,     only : da_transform_xtoy_gpspw,da_transform_xtoy_gpspw_adj, &amp;
                            da_transform_xtoy_gpsztd,da_transform_xtoy_gpsztd_adj
   use da_gpsref,    only : da_transform_xtoy_gpsref,da_transform_xtoy_gpsref_adj
   use da_metar,     only : da_transform_xtoy_metar, da_transform_xtoy_metar_adj
   use da_physics,   only : da_tp_to_qs,da_get_q_error
   use da_pilot,     only : da_transform_xtoy_pilot,da_transform_xtoy_pilot_adj
   use da_polaramv,  only : da_transform_xtoy_polaramv, da_transform_xtoy_polaramv_adj
   use da_profiler,  only : da_transform_xtoy_profiler, da_transform_xtoy_profiler_adj
   use da_pseudo,    only : da_transform_xtoy_pseudo, da_transform_xtoy_pseudo_adj
   use da_qscat,     only : da_transform_xtoy_qscat,da_transform_xtoy_qscat_adj
   use da_radar,     only : da_transform_xtoy_radar,da_transform_xtoy_radar_adj
   use da_rain,      only : da_transform_xtoy_rain,da_transform_xtoy_rain_adj
   use da_reporting, only : da_error, message, da_warning, da_message
#ifdef RTTOV
   use da_rttov,     only : da_transform_xtoy_rttov,da_transform_xtoy_rttov_adj
#endif
   use da_satem,     only : da_transform_xtoy_satem, da_transform_xtoy_satem_adj
   use da_ships,     only : da_transform_xtoy_ships, da_transform_xtoy_ships_adj
   use da_sound,     only : da_transform_xtoy_sound, da_transform_xtoy_sonde_sfc, &amp;
      da_transform_xtoy_sound_adj, da_transform_xtoy_sonde_sfc_adj
   use da_mtgirs,    only : da_transform_xtoy_mtgirs, da_transform_xtoy_mtgirs_adj
  use da_tamdar,    only : da_transform_xtoy_tamdar, da_transform_xtoy_tamdar_adj, &amp;
                            da_transform_xtoy_tamdar_sfc, da_transform_xtoy_tamdar_sfc_adj
   use da_ssmi,      only : da_transform_xtoy_ssmt1, da_transform_xtoy_ssmt2, &amp;
      da_transform_xtoy_ssmi_tb, da_transform_xtoy_ssmi_rv, &amp;
      da_transform_xtoy_ssmi_tb_adj, da_transform_xtoy_ssmi_rv_adj, &amp;
      da_transform_xtoy_ssmt1_adj, da_transform_xtoy_ssmt2_adj
   use da_synop,     only : da_transform_xtoy_synop,da_transform_xtoy_synop_adj
   use da_tools_serial,    only : da_free_unit, da_get_unit
   use da_tools,     only : da_add_noise, da_add_noise_new,da_random_omb, &amp;
                            da_geo2msl1, da_msl2geo1
   use da_tracing,   only : da_trace_entry, da_trace_exit 
   use module_dm,    only : wrf_dm_sum_real, wrf_dm_sum_reals

   implicit none

contains

#include "da_obs_proc_station.inc"
#include "da_transform_xtoy.inc"
#include "da_transform_xtoy_adj.inc"
#include "da_add_noise_to_ob.inc"
#include "da_check_missing.inc"
#include "da_fill_obs_structures.inc"
#include "da_fill_obs_structures_radar.inc"
#include "da_fill_obs_structures_rain.inc"
#include "da_random_omb_all.inc"
#include "da_setup_pseudo_obs.inc"
#include "da_store_obs_grid_info.inc"
#include "da_store_obs_grid_info_rad.inc"
#include "da_count_filtered_obs.inc"
#include "da_obs_sensitivity.inc"
#include "da_set_obs_missing.inc"
#include "da_set_3d_obs_missing.inc"

end module da_obs