DISPATCH
cooling_Casiana.f90
1 ! cooling_Casiana.f90 $Id: ecbdecb02d740e1d7dcdb7b1c7574c0aaa25ab19 $
2 !***********************************************************************
3 FUNCTION cooling_casiana (self, temp)
4  implicit none
5  class(cooling_t):: self
6  real(kind=dp) cooling_casiana, temp, qq
7  real(kind=dp), parameter:: &
8  tem=1e1, &
9  te0=1e3, &
10  te1=10964.781e0, &
11  te2=19952.632e0, &
12  te3=29512.078e0, &
13  te4=39810.708e0, &
14  te5=69183.121e0, &
15  te6=125892.51e0, &
16  te7=251188.7e0, &
17  te8=501187.01e0, &
18  te9=891250.55e0, &
19  te10=1.412537e6, &
20  te11=2.511887e6, &
21  te12=6.309576e6, &
22  te13=1.e7, &
23  te14=1.5848925e7, &
24  te15=1.e9, &
25 
26  cm=2., &
27  c0=2.596, &
28  c1=3.846, &
29  c2=-0.1764, &
30  c3=1.00001, &
31  c4=1.6666, &
32  c5=1.15384, &
33  c6=0.1, &
34  c7= -3.933, &
35  c8= 0.72, &
36  c9= -0.65, &
37  c10= 0.4, &
38  c11= -1.25, &
39  c12= 0., &
40  c13= -0.4, &
41  c14= 0.43333, &
42 
43  hm=4.98282e-05*4e-28, &
44  h0=3.2473989e-34, &
45  h2=5.739e-22, &
46  h3=3.1620277e-27, &
47  h4=2.7123742e-30, &
48  h5=8.2298862e-28, &
49  h6=1.9497e-22, &
50  h7=1.1749e+0*4e-28, &
51  h8=3.5155e-27, &
52  h9=4.982757e-19, &
53  h10=1.7379e-25, &
54  h11=6.309e-15, &
55  h12=1.99525e-22, &
56  h13=1.2589e-20, &
57  h14=1.2589e-26
58 
59  real(kind=8), parameter:: &
60  h1=2.894d-39
61 
62  if (temp .le. t_mc) then
63  qq = 0.
64  else if (temp .le. te0) then
65  qq = hm*temp**cm
66  else if (temp .le. te1) then
67  qq = h0*temp**c0
68  else if (temp .le. te2) then
69  qq = h1*temp**c1
70  else if (temp .le. te3) then
71  qq = h2*temp**c2
72  else if (temp .le. te4) then
73  qq = h3*temp**c3
74  else if (temp .le. te5) then
75  qq = h4*temp**c4
76  else if (temp .le. te6) then
77  qq = h5*temp**c5
78  else if (temp .le. te7) then
79  qq = h6*temp**c6
80  else if (temp .le. te8) then
81  qq = (h7*temp**c7)*2.5e27
82  else if (temp .le. te9) then
83  qq = h8*temp**c8
84  else if (temp .le. te10) then
85  qq = h9*temp**c9
86  else if (temp .le. te11) then
87  qq = h10*temp**c10
88  else if (temp .le. te12) then
89  qq = h11*temp**c11
90  else if (temp .le. te13) then
91  qq = h12*temp**c12
92  else if (temp .le. te14) then
93  qq = h13*temp**c13
94  else
95  qq = h14*temp**c14
96  end if
97  cooling_casiana=qq
98 END FUNCTION