1 | module radar_simulator_types |
---|
2 | |
---|
3 | ! Collection of common variables and types |
---|
4 | ! Part of QuickBeam v1.03 by John Haynes |
---|
5 | ! Updated by Roj Marchand June 2010 |
---|
6 | implicit none |
---|
7 | integer, parameter :: & |
---|
8 | maxhclass = 20 ,& ! max number of hydrometeor classes |
---|
9 | nRe_types = 550 ! max number or Re size bins allowed in N and Z_scaled look up table |
---|
10 | |
---|
11 | ! These variables define discrete diameters used to represent the DSDs. |
---|
12 | integer, parameter :: & |
---|
13 | nd = 85 ! number of discrete particles used in construction DSDs |
---|
14 | real*8, parameter :: & |
---|
15 | dmin = 0.1 ,& ! min size of discrete particle |
---|
16 | dmax = 10000. ! max size of discrete particle |
---|
17 | |
---|
18 | integer, parameter :: & ! These parameters used to define temperature intervals in mie LUTs |
---|
19 | mt_nfreq = 5 , & |
---|
20 | mt_ntt = 39 , & ! num temperatures in table |
---|
21 | mt_nf = 14 , & ! number of ice fractions in table |
---|
22 | mt_nd = 85 ! num discrete mode-p drop sizes in table |
---|
23 | |
---|
24 | integer, parameter :: & ! These parameters used to defines Re intervals in scale LUTs |
---|
25 | Re_BIN_LENGTH=10, & |
---|
26 | Re_MAX_BIN=250 |
---|
27 | |
---|
28 | integer, parameter :: & ! These parameters used to define Temperature invervals in scale LUTs |
---|
29 | cnt_liq = 19, & ! liquid temperature count |
---|
30 | cnt_ice = 20 ! ice temperature count |
---|
31 | |
---|
32 | |
---|
33 | ! ---- hydrometeor class type ----- |
---|
34 | |
---|
35 | type class_param |
---|
36 | |
---|
37 | ! variables used to store hydrometeor "default" properties |
---|
38 | real*8, dimension(maxhclass) :: p1,p2,p3,dmin,dmax,apm,bpm,rho |
---|
39 | integer, dimension(maxhclass) :: dtype,col,cp,phase |
---|
40 | |
---|
41 | ! Radar properties |
---|
42 | real*8 :: freq,k2 |
---|
43 | integer :: nhclass ! number of hydrometeor classes in use |
---|
44 | integer :: use_gas_abs, do_ray |
---|
45 | |
---|
46 | ! defines location of radar relative to hgt_matrix. |
---|
47 | logical :: radar_at_layer_one ! if true radar is assume to be at the edge |
---|
48 | ! of the first layer, if the first layer is the |
---|
49 | ! surface than a ground-based radar. If the |
---|
50 | ! first layer is the top-of-atmosphere, then |
---|
51 | ! a space borne radar. |
---|
52 | |
---|
53 | ! variables used to store Z scale factors |
---|
54 | character*240 :: scale_LUT_file_name |
---|
55 | logical :: load_scale_LUTs, update_scale_LUTs |
---|
56 | logical, dimension(maxhclass,nRe_types) :: N_scale_flag |
---|
57 | logical, dimension(maxhclass,mt_ntt,nRe_types) :: Z_scale_flag,Z_scale_added_flag |
---|
58 | real*8, dimension(maxhclass,mt_ntt,nRe_types) :: Ze_scaled,Zr_scaled,kr_scaled |
---|
59 | real*8, dimension(maxhclass,nd,nRe_types) :: fc, rho_eff |
---|
60 | |
---|
61 | ! used to determine Re index |
---|
62 | real*8 :: step_list(Re_MAX_BIN),base_list(Re_MAX_BIN) |
---|
63 | |
---|
64 | ! used to determine temperature index |
---|
65 | real*8 :: & |
---|
66 | mt_ttl(cnt_liq), & ! liquid temperatures (K) |
---|
67 | mt_tti(cnt_ice) ! ice temperatures (K) |
---|
68 | |
---|
69 | real*8 :: D(nd) ! set of discrete diameters used to represent DSDs |
---|
70 | |
---|
71 | end type class_param |
---|
72 | |
---|
73 | |
---|
74 | end module radar_simulator_types |
---|