updated top-level README and version_decl for V4.5 (#1847)
[WRF.git] / var / da / da_tools / da_tools.f90
blobced8aa918b8c922b9702a769f683c9f7db8d3e95
1 module da_tools
3 !---------------------------------------------------------------------------
4 ! Purpose: Contains general tools.
5 !---------------------------------------------------------------------------
7 use module_bc, only : bdyzone
8 use module_dm, only : wrf_dm_sum_real
9 use module_domain, only : xb_type, domain
11 use da_control, only : pi, gravity, gas_constant, ims, ime, jms,jme, &
12 kms,kme,its,ite,jts,jte,kts,kte,ids,ide,stdout, &
13 trace_use_dull, trace_use, fg_format_kma_global, coarse_ds, coarse_ix, &
14 coarse_jy, fg_format, c2, cone_factor, earth_radius, dsm, &
15 map_projection, psi1, pole, start_x, phic, start_y, xlonc, ycntr, &
16 obs_qc_pointer, anal_type_verify, fg_format_wrf_arw_regional, &
17 fg_format_wrf_nmm_regional, fg_format_wrf_arw_global, fg_format_kma_global, &
18 set_omb_rand_fac, fails_error_max, fails_buddy_check, no_buddies, &
19 missing_r, x_start_sub_domain, global, myproc, comm, &
20 x_end_sub_domain, y_end_sub_domain, def_sub_domain, &
21 y_start_sub_domain, start_lat, delt_lat, delt_lon, start_lon, cp, &
22 missing_data, surface_correction,print_detail_map, use_rad, stderr, &
23 t_kelvin, trace_use_frequent, jds, jde, pptop,ppbot,npres_print, &
24 rad_to_deg, deg_to_rad, num_procs, print_detail_obs, psfc_from_slp
26 #ifdef DM_PARALLEL
27 ! use mpi, only : mpi_integer
28 #endif
30 use da_define_structures, only : info_type, field_type, x_type, &
31 model_loc_type, synop_type, bad_info_type, da_gauss_noise, &
32 iv_type, y_type, da_random_seed, infa_type
33 use da_tools_serial, only : da_array_print
34 use da_tracing, only : da_trace_entry, da_trace_exit
35 use da_reporting, only : da_error, message, da_warning, da_message
36 use da_lapack, only : dsyev
38 implicit none
40 #ifdef DM_PARALLEL
41 include 'mpif.h'
42 #endif
44 ! Code copied from SI, see header below
45 #include "da_map_utils_defines.inc"
47 contains
49 #include "da_llxy.inc"
50 #include "da_llxy_new.inc"
51 #include "da_llxy_default.inc"
52 #include "da_llxy_default_new.inc"
53 #include "da_llxy_kma_global.inc"
54 #include "da_llxy_kma_global_new.inc"
55 #include "da_llxy_global.inc"
56 #include "da_llxy_global_new.inc"
57 #include "da_llxy_rotated_latlon.inc"
58 #include "da_llxy_latlon.inc"
59 #include "da_llxy_latlon_new.inc"
60 #include "da_llxy_lc.inc"
61 #include "da_llxy_lc_new.inc"
62 #include "da_llxy_merc.inc"
63 #include "da_llxy_merc_new.inc"
64 #include "da_llxy_ps.inc"
65 #include "da_llxy_ps_new.inc"
66 #include "da_llxy_wrf.inc"
67 #include "da_llxy_wrf_new.inc"
68 #include "da_xyll.inc"
69 #include "da_xyll_default.inc"
70 #include "da_xyll_latlon.inc"
71 #include "da_xyll_lc.inc"
72 #include "da_xyll_merc.inc"
73 #include "da_xyll_ps.inc"
74 #include "da_set_lc.inc"
75 #include "da_set_ps.inc"
76 #include "da_map_init.inc"
77 #include "da_map_set.inc"
78 #include "da_set_merc.inc"
79 #include "da_lc_cone.inc"
80 #include "da_convert_zk.inc"
82 #include "da_1d_eigendecomposition.inc"
83 #include "da_obs_sfc_correction.inc"
84 #include "da_sfcprs.inc"
85 #include "da_intpsfc_prs.inc"
86 #include "da_intpsfc_tem.inc"
87 #include "da_mo_correction.inc"
88 #include "da_diff_seconds.inc"
89 #include "da_residual.inc"
90 #include "da_residual_new.inc"
91 #include "da_add_noise.inc"
92 #include "da_add_noise_new.inc"
93 #include "da_max_error_qc.inc"
94 #include "da_random_omb.inc"
95 #include "da_set_randomcv.inc"
96 #include "da_gaus_noise.inc"
97 #include "da_openfile.inc"
98 #include "da_smooth_anl.inc"
99 #include "da_togrid_new.inc"
100 #include "da_togrid.inc"
101 #include "da_unifva.inc"
102 #include "da_buddy_qc.inc"
104 #include "da_eof_decomposition_test.inc"
105 #include "da_eof_decomposition.inc"
106 #include "da_lubksb.inc"
107 #include "da_ludcmp.inc"
108 #include "da_set_boundary_xa.inc"
109 #include "da_set_boundary_xb.inc"
110 #include "da_set_boundary_3d.inc"
112 #include "da_get_2d_sum.inc"
113 #include "da_get_3d_sum.inc"
114 #include "da_get_print_lvl.inc"
116 #include "da_get_julian_time.inc"
117 #include "da_get_time_slots.inc"
119 #include "da_msl2geo1.inc"
120 #include "da_geo2msl1.inc"
122 #include "da_sfc_hori_interp_weights.inc"
124 end module da_tools