/[lmdze]/trunk/phylmd/Interface_surf/albsno.f
ViewVC logotype

Annotation of /trunk/phylmd/Interface_surf/albsno.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 116 - (hide annotations)
Thu Dec 4 16:35:03 2014 UTC (9 years, 5 months ago) by guez
Original Path: trunk/phylmd/albsno.f
File size: 1217 byte(s)
In test_disvert, write output files before testing order of pressure
values, so we have more information if there is a problem.

1 guez 3 module albsno_m
2    
3 guez 116 ! From phylmd/interface_surf.F90, version 1.8 2005/05/25 13:10:09
4 guez 3
5     IMPLICIT none
6    
7     contains
8    
9 guez 116 SUBROUTINE albsno(klon, knon, dtime, agesno, alb_neig_grid, precip_snow)
10 guez 3
11 guez 116 INTEGER klon, knon
12     REAL dtime
13     REAL, DIMENSION(klon):: alb_neig_grid, agesno, precip_snow
14    
15     ! Local:
16    
17 guez 3 INTEGER, PARAMETER :: nvm = 8
18 guez 116 REAL veget(klon, nvm)
19 guez 3
20 guez 116 INTEGER i, nv
21 guez 3
22 guez 116 REAL init(nvm), decay(nvm)
23     REAL as
24 guez 3 DATA init /0.55, 0.14, 0.18, 0.29, 0.15, 0.15, 0.14, 0./
25 guez 116 DATA decay /0.30, 0.67, 0.63, 0.45, 0.40, 0.14, 0.06, 1./
26 guez 3
27 guez 116 !------------------------------------------------------------------------
28    
29 guez 3 veget = 0.
30 guez 116 veget(:, 1) = 1. ! desert partout
31 guez 3 DO i = 1, knon
32     alb_neig_grid(i) = 0.0
33     ENDDO
34     DO nv = 1, nvm
35     DO i = 1, knon
36     as = init(nv)+decay(nv)*EXP(-agesno(i)/5.)
37 guez 116 alb_neig_grid(i) = alb_neig_grid(i) + veget(i, nv)*as
38 guez 3 ENDDO
39     ENDDO
40 guez 116
41 guez 3 !! modilation en fonction de l'age de la neige
42 guez 116
43 guez 3 DO i = 1, knon
44 guez 116 agesno(i) = (agesno(i) + (1.-agesno(i)/50.)*dtime/86400.)&
45     & * EXP(-1.*MAX(0.0, precip_snow(i))*dtime/0.3)
46     agesno(i) = MAX(agesno(i), 0.0)
47 guez 3 ENDDO
48    
49     END SUBROUTINE albsno
50    
51     end module albsno_m

  ViewVC Help
Powered by ViewVC 1.1.21