4 |
|
|
5 |
contains |
contains |
6 |
|
|
7 |
SUBROUTINE calbeta(indice, snow, qsol, vbeta, vcal, vdif) |
SUBROUTINE calbeta(indice, snow, qsol, beta, vcal, vdif) |
8 |
|
|
9 |
! Author: Z. X. Li (LMD/CNRS) |
! Author: Z. X. Li (LMD/CNRS) |
10 |
! Date: April 14th, 1994 |
! Date: April 14th, 1994 |
14 |
USE indicesol, ONLY: is_lic, is_oce, is_sic, is_ter |
USE indicesol, ONLY: is_lic, is_oce, is_sic, is_ter |
15 |
|
|
16 |
INTEGER, intent(in):: indice |
INTEGER, intent(in):: indice |
17 |
REAL, intent(in):: snow(:), qsol(:) ! (knon) |
REAL, intent(in):: snow(:) |
18 |
REAL, intent(out):: vbeta(:), vcal(:), vdif(:) ! (knon) |
|
19 |
|
REAL, intent(in):: qsol(:) ! (knon) |
20 |
|
! column-density of water in soil, in kg m-2 |
21 |
|
|
22 |
|
REAL, intent(out):: beta(:), vcal(:), vdif(:) ! (knon) |
23 |
|
|
24 |
! Local: |
! Local: |
25 |
|
|
37 |
|
|
38 |
select case (indice) |
select case (indice) |
39 |
case(is_oce) |
case(is_oce) |
40 |
vbeta = 1. |
beta = 1. |
41 |
vcal = 0. |
vcal = 0. |
42 |
vdif = 0. |
vdif = 0. |
43 |
|
|
44 |
case (is_sic) |
case (is_sic) |
45 |
vbeta = 1. |
beta = 1. |
46 |
vcal = merge(calsno, calice, snow > 0.) |
vcal = merge(calsno, calice, snow > 0.) |
47 |
vdif = 1. / tau_gl |
vdif = 1. / tau_gl |
48 |
|
|
49 |
case (is_ter) |
case (is_ter) |
50 |
vbeta = min(2. * qsol / max_eau_sol, 1.) |
beta = min(2. * qsol / max_eau_sol, 1.) |
51 |
vcal = merge(calsno, calsol, snow > 0.) |
vcal = merge(calsno, calsol, snow > 0.) |
52 |
vdif = 0. |
vdif = 0. |
53 |
|
|
54 |
case (is_lic) |
case (is_lic) |
55 |
vbeta = 1. |
beta = 1. |
56 |
vcal = merge(calsno, calice, snow > 0.) |
vcal = merge(calsno, calice, snow > 0.) |
57 |
vdif = 0. |
vdif = 0. |
58 |
END select |
END select |