da_rttov.f90
References to this file elsewhere.
1 module da_rttov
2
3 use da_reporting, only : da_warning
4
5 !---------------------------------------------------------------------------
6 ! Purpose: module for radiance data assimilation.
7 !---------------------------------------------------------------------------
8
9 use module_domain, only : xpose_type, xb_type
10 use module_radiance, only : satinfo, coefs_scatt_instname, &
11 time_slots, i_kind,r_kind, r_double, &
12 one, zero, three,deg2rad, n_scatt_coef,q2ppmv, gsi_emiss
13 #ifdef RTTOV
14 use module_radiance, only : coefs,coefs_scatt,profile_type,radiance_type, &
15 rttov_coef,platform_name,inst_name,transmission_type, &
16 errorstatus_success,gas_id_watervapour,errorstatus_fatal
17 #endif
18
19 #ifdef DM_PARALLEL
20 use mpi, only : mpi_integer, mpi_status_size
21 #endif
22
23 use da_control, only : max_ob_levels,missing_r, &
24 v_interp_p, v_interp_h, tovs_batch, gravity, &
25 missing, max_error_uv, max_error_t, max_error_p,max_error_q, &
26 max_stheight_diff,missing_data,max_error_bq,max_error_slp, &
27 max_error_bt, max_error_buv, rtminit_platform,rtminit_satid, &
28 rtminit_nsensor,rtminit_sensor,filename_len,read_biascoef,analysis_date, &
29 time_window_max,time_window_min, &
30 rtm_option_rttov,rtm_option_crtm, &
31 print_detail_rad,stderr, mw_emis_sea, &
32 rtminit_print, rttov_scatt,comm,ierr,biasprep, qc_rad, &
33 num_fgat_time,stdout,trace_use, use_error_factor_rad, &
34 qc_good, qc_bad,myproc,biascorr, global
35 use da_define_structures, only : ob_type, y_type, x_type
36 use da_interpolation, only : da_to_zk_new,da_interp_lin_2d_new, &
37 da_interp_lin_3d_new,da_interp_lin_2d,da_interp_lin_3d_adj_new, &
38 da_interp_lin_2d_adj_new
39 use da_tools1, only : da_get_unit, da_free_unit
40 #ifdef DM_PARALLEL
41 use da_par_util, only : true_mpi_real
42 #endif
43 use da_radiance1, only : num_tovs_after,tovs_copy_count, &
44 tovs_send_pe, tovs_recv_pe, tovs_send_start, tovs_send_count, &
45 tovs_recv_start,con_vars_type,aux_vars_type, &
46 da_biascorr, da_detsurtyp,da_biasprep,da_get_time_slots, &
47 da_qc_rad, da_read_biascoef
48 use da_reporting, only : da_message, message, da_error, da_warning
49 use da_tools, only : da_togrid_new
50 use da_tracing, only : da_trace_entry, da_trace_exit, da_trace
51 use da_wrf_interfaces, only : wrf_dm_bcast_integer
52
53 implicit none
54
55 #ifdef RTTOV
56 #include "rttov_setupchan.interface"
57 #include "rttov_setupindex.interface"
58 #endif
59
60 contains
61
62 #include "da_get_innov_vector_rttov.inc"
63 #include "da_transform_xtoy_rttov.inc"
64 #include "da_transform_xtoy_rttov_adj.inc"
65
66 #include "da_rttov_init.inc"
67 #include "da_rttov_direct.inc"
68 #include "da_rttov_tl.inc"
69 #include "da_rttov_ad.inc"
70
71 end module da_rttov
72