1 | module fv_m |
---|
2 | |
---|
3 | implicit none |
---|
4 | |
---|
5 | contains |
---|
6 | |
---|
7 | elemental real function fV(z, rain) |
---|
8 | |
---|
9 | ! H. Bellenger 2016 |
---|
10 | |
---|
11 | real, intent(in):: z ! profondeur en m (z < 0) |
---|
12 | real, intent(in):: rain ! rain mass flux, in kg m-2 s-1 |
---|
13 | |
---|
14 | ! Local: |
---|
15 | |
---|
16 | real dfV |
---|
17 | ! fraction of rain volume entering the ocean and deposited within depth "z" |
---|
18 | |
---|
19 | real rc, lbd, f0 |
---|
20 | real z_mm |
---|
21 | |
---|
22 | ! Schlussel et al. 1997, Table 1: |
---|
23 | real, parameter:: zeta(14) = [0.0026091, 0.0022743, 0.0015406, 0.0012281, & |
---|
24 | 0.0008795, 0.00077123, 0.00057451, 0.000438, 6.7228e-5, 6.4955e-5, & |
---|
25 | 4.4234e-5, 3.3906e-5, 2.7433e-6, 4.0283e-7] |
---|
26 | real, parameter:: psi(14) = [0.60107, 0.29968, 0.5563, 1.80858, 0.2175, & |
---|
27 | 0.33961, 0.96368, 0.65081, 0.5967, 2.7661, 2.2812, 2.7674, 2.6095, & |
---|
28 | 6.5308] |
---|
29 | |
---|
30 | !--------------------------------------------------------------------- |
---|
31 | |
---|
32 | if (rain > 0.) then |
---|
33 | rc = 0.4 ! mm |
---|
34 | z_mm = z * 1000. ! mm and <0 |
---|
35 | lbd = 4.1 * (rain * 3600.)**(- 0.21) ! mm-1 |
---|
36 | f0 = (1. + 2. * lbd * rc + 0.5 * (2. * lbd * rc)**2 & |
---|
37 | + 1. / 6. * (2. * lbd * rc)**3) * exp(- 1. * 2. * lbd * rc) |
---|
38 | dfv = sum(zeta * exp(- psi * lbd * abs(z_mm) / 100.)) |
---|
39 | fV = - dfV * abs(z_mm) + f0 |
---|
40 | else |
---|
41 | fV = 0. |
---|
42 | endif |
---|
43 | |
---|
44 | end function fV |
---|
45 | |
---|
46 | end module fv_m |
---|