source: trunk/LMDZ.GENERIC/libf/phystd/albedo_snow_calc.F90 @ 2613

Last change on this file since 2613 was 1498, checked in by mturbet, 9 years ago

spectral snow albedo added

File size: 1.6 KB
Line 
1      subroutine albedo_snow_calc(lambda,albedo,A_sw)
2
3      real lambda_sw
4      real lambda_lw
5      real A_sw
6      real A_lw
7      real albedo
8      real lambda
9     
10      !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
11      !!!!! Routine written by Martin TURBET (July 2015)
12      !!!!!
13      !!!!! Albedo expression derived from Yoshi et al. and Warren et al. articles.
14      !!!!!
15      !!
16      !! Short Wave Snow Albedo 'A_sw' (at 0.5 microns) must be chosen in callphys.def file.
17      !!
18      !!!!!
19      !!!!!
20      !! Some Calibration Informations :
21      !!!!!
22      !!!!!
23      !!
24      !! 1. For Pure Snow, A_sw (at 0.5 microns) should be equal to ~0.95
25      !!    -> This gives an equivalent integrated snow albedo of ~0.73 for the Sun.
26      !!
27      !! 2. For Dusty Snow, A_sw (at 0.5 microns) should be equal to ~0.50.
28      !!    -> This gives an equivalent integrated snow albedo of ~0.39 for the Sun.
29      !!
30      !! 3. For 'Realistic' Snow, A_sw (at 0.5 microns) should be equal to ~0.645.
31      !!    -> This gives an equivalent integrated snow albedo of ~0.50 for the Sun.
32      !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
33
34      A_lw=5.0D-2
35      lambda_sw=9.0D-1
36      lambda_lw=1.4
37     
38      if (lambda .le. lambda_sw) then
39         albedo=A_sw
40      else if (lambda .ge. lambda_lw) then
41         albedo=A_lw
42      else if ( (lambda .gt. lambda_sw) .and. &
43             (lambda .lt. lambda_lw) ) then
44         albedo=A_sw-(lambda-lambda_sw)*(A_sw-A_lw) &
45           /(lambda_lw-lambda_sw) 
46      end if
47
48      return
49      end
Note: See TracBrowser for help on using the repository browser.