1 | subroutine load_hydrometeor_classes(Nprmts_max,dist_prmts_hydro,hp,nhclass) |
---|
2 | use radar_simulator_types |
---|
3 | implicit none |
---|
4 | |
---|
5 | ! Purpose: |
---|
6 | ! Loads the hydrometeor classes to be used in calculations |
---|
7 | ! Part of QuickBeam v1.03 by John Haynes |
---|
8 | ! http://reef.atmos.colostate.edu/haynes/radarsim |
---|
9 | ! |
---|
10 | ! Inputs: |
---|
11 | ! [dist_prmts_hydro] from data in hydrometeor class input |
---|
12 | ! |
---|
13 | ! Outputs: |
---|
14 | ! [hp] structure that define hydrometeor types |
---|
15 | ! |
---|
16 | ! Modified: |
---|
17 | ! 08/23/2006 placed into subroutine form (Roger Marchand) |
---|
18 | |
---|
19 | ! ----- INPUT ----- |
---|
20 | integer, intent(in) :: nhclass,Nprmts_max |
---|
21 | real,dimension(Nprmts_max,nhclass), intent(in) :: dist_prmts_hydro |
---|
22 | ! ----- OUTPUTS ----- |
---|
23 | type(class_param), intent(out) :: hp |
---|
24 | |
---|
25 | ! ----- INTERNAL ----- |
---|
26 | integer :: i |
---|
27 | |
---|
28 | hp%rho(:) = -1 |
---|
29 | |
---|
30 | do i = 1,nhclass,1 |
---|
31 | hp%dtype(i) = dist_prmts_hydro(1,i) |
---|
32 | hp%col(i) = dist_prmts_hydro(2,i) |
---|
33 | hp%phase(i) = dist_prmts_hydro(3,i) |
---|
34 | hp%cp(i) = dist_prmts_hydro(4,i) |
---|
35 | hp%dmin(i) = dist_prmts_hydro(5,i) |
---|
36 | hp%dmax(i) = dist_prmts_hydro(6,i) |
---|
37 | hp%apm(i) = dist_prmts_hydro(7,i) |
---|
38 | hp%bpm(i) = dist_prmts_hydro(8,i) |
---|
39 | hp%rho(i) = dist_prmts_hydro(9,i) |
---|
40 | hp%p1(i) = dist_prmts_hydro(10,i) |
---|
41 | hp%p2(i) = dist_prmts_hydro(11,i) |
---|
42 | hp%p3(i) = dist_prmts_hydro(12,i) |
---|
43 | enddo |
---|
44 | |
---|
45 | ! // setup scaling arrays |
---|
46 | hp%fc = -999. |
---|
47 | hp%scaled = .false. |
---|
48 | hp%z_flag = .false. |
---|
49 | hp%rho_eff = -999. |
---|
50 | hp%ifc = -9 |
---|
51 | hp%idd = -9 |
---|
52 | |
---|
53 | |
---|
54 | end subroutine load_hydrometeor_classes |
---|