@@ -785,8 +785,8 @@ subroutine csnow_glacier (isnow ,nsnow ,nsoil ,snice ,snliq ,dzsnso ,
785785 do iz = isnow+1 , 0
786786! tksno(iz) = 3.2217e-6*bdsnoi(iz)**2. ! stieglitz(yen,1965)
787787! tksno(iz) = 2e-2+2.5e-6*bdsnoi(iz)*bdsnoi(iz) ! anderson, 1976
788- ! tksno(iz) = 0.35 ! constant
789- tksno(iz) = 2.576e-6 * bdsnoi(iz)** 2 . + 0.074 ! verseghy (1991)
788+ tksno(iz) = 0.35 ! constant
789+ ! tksno(iz) = 2.576e-6*bdsnoi(iz)**2. + 0.074 ! verseghy (1991)
790790! tksno(iz) = 2.22*(bdsnoi(iz)/1000.)**1.88 ! douvill(yen, 1981)
791791 enddo
792792
@@ -982,8 +982,8 @@ subroutine snowalb_bats_glacier (nband,cosz,fage,albsnd,albsni)
982982 cf1= ((1 .+ sl1)/ (1 .+ sl2* cosz)- sl1)
983983 fzen= amax1(cf1,0 .)
984984
985- albsni(1 )= 0.95 * (1 .- c1* fage)
986- albsni(2 )= 0.65 * (1 .- c2* fage)
985+ albsni(1 )= 0.95 ! *(1.-c1*fage) ! remove aging over glaciers
986+ albsni(2 )= 0.65 ! *(1.-c2*fage) ! remove aging over glaciers
987987
988988 albsnd(1 )= albsni(1 )+ 0.4 * fzen* (1 .- albsni(1 )) ! vis direct
989989 albsnd(2 )= albsni(2 )+ 0.4 * fzen* (1 .- albsni(2 )) ! nir direct
@@ -2616,7 +2616,7 @@ subroutine snowwater_glacier (nsnow ,nsoil ,imelt ,dt ,sfctmp , & !in
26162616! local
26172617 integer :: iz
26182618 real (kind= kind_phys) :: bdsnow ! < bulk density of snow (kg/m3)
2619- real (kind= kind_phys),parameter :: mwd = 100 . ! < maximum water depth (mm)
2619+ real (kind= kind_phys),parameter :: mwd = 600 . ! < maximum water depth (mm)
26202620! ----------------------------------------------------------------------
26212621 snoflow = 0.0
26222622 ponding1 = 0.0
@@ -2650,6 +2650,23 @@ subroutine snowwater_glacier (nsnow ,nsoil ,imelt ,dt ,sfctmp , & !in
26502650 ponding1 ,ponding2 ,fsh , & ! inout
26512651 qsnbot ) ! out
26522652
2653+ ! reset the glacier to 2m depth with 600mm SWE
2654+
2655+ isnow = - 3
2656+ snice(- 2 ) = 15.0
2657+ snice(- 1 ) = 60.0
2658+ snice( 0 ) = 525.0
2659+ snliq(- 2 ) = 0.0
2660+ snliq(- 1 ) = 0.0
2661+ snliq( 0 ) = 0.0
2662+ if (stc( 0 ) < 100.0 ) stc( 0 ) = stc( 1 ) ! if the temperature is missing,
2663+ if (stc(- 1 ) < 100.0 ) stc(- 1 ) = stc( 0 ) ! set to layer below
2664+ if (stc(- 2 ) < 100.0 ) stc(- 2 ) = stc(- 1 ) ! should not be necessary
2665+ dzsnso(- 2 )= 0.05
2666+ dzsnso(- 1 )= 0.20
2667+ dzsnso( 0 )= 1.75
2668+ sneqv = 600.0
2669+
26532670! set empty snow layers to zero
26542671
26552672 do iz = - nsnow+1 , isnow
@@ -2662,7 +2679,7 @@ subroutine snowwater_glacier (nsnow ,nsoil ,imelt ,dt ,sfctmp , & !in
26622679
26632680! to obtain equilibrium state of snow in glacier region
26642681
2665- if (sneqv > mwd) then ! 100 mm -> maximum water depth
2682+ if (sneqv > mwd) then ! 600 mm -> maximum water depth
26662683 bdsnow = snice(0 ) / dzsnso(0 )
26672684 snoflow = (sneqv - mwd)
26682685 snice(0 ) = snice(0 ) - snoflow
0 commit comments