Skip to content

Commit 2a50ccc

Browse files
authored
Merge pull request NCAR#219 from HelinWei-NOAA/land_upgrade_hr4
Land surface upgrades for HR4
2 parents 46df080 + 002e029 commit 2a50ccc

File tree

6 files changed

+52
-66
lines changed

6 files changed

+52
-66
lines changed

physics/Interstitials/UFS_SCM_NEPTUNE/GFS_phys_time_vary.fv3.F90

+3-1
Original file line numberDiff line numberDiff line change
@@ -593,8 +593,10 @@ subroutine GFS_phys_time_vary_init (
593593

594594
isnow = nint(snowxy(ix))+1 ! snowxy <=0.0, dzsno >= 0.0
595595

596+
! using stc and tgxy to linearly interpolate the snow temp for each layer
597+
596598
do is = isnow,0
597-
tsnoxy(ix,is) = tgxy(ix)
599+
tsnoxy(ix,is) = tgxy(ix) + (( sum(dzsno(isnow:is)) -0.5*dzsno(is) )/snd)*(stc(ix,1)-tgxy(ix))
598600
snliqxy(ix,is) = zero
599601
snicexy(ix,is) = one * dzsno(is) * weasd(ix)/snd
600602
enddo

physics/SFC_Layer/UFS/sfc_diag_post.F90

+1-13
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,14 @@ module sfc_diag_post
1414
!!
1515
#endif
1616
subroutine sfc_diag_post_run (im, lsm, lsm_noahmp, opt_diag, dry, lssav, dtf, con_eps, con_epsm1, pgr,&
17-
vegtype,t2mmp,q2mp, t2m, q2m, u10m, v10m, tmpmin, tmpmax, spfhmin, spfhmax, &
17+
t2mmp,q2mp, t2m, q2m, u10m, v10m, tmpmin, tmpmax, spfhmin, spfhmax, &
1818
wind10mmax, u10mmax, v10mmax, dpt2m, errmsg, errflg)
1919

2020
use machine, only: kind_phys, kind_dbl_prec
2121

2222
implicit none
2323

2424
integer, intent(in) :: im, lsm, lsm_noahmp,opt_diag
25-
integer, dimension(:), intent(in) :: vegtype ! vegetation type (integer index)
2625
logical, intent(in) :: lssav
2726
real(kind=kind_phys), intent(in) :: dtf, con_eps, con_epsm1
2827
logical , dimension(:), intent(in) :: dry
@@ -42,17 +41,6 @@ subroutine sfc_diag_post_run (im, lsm, lsm_noahmp, opt_diag, dry, lssav, dtf, co
4241
errflg = 0
4342

4443
if (lsm == lsm_noahmp) then
45-
! over shrublands use opt_diag=2
46-
do i=1, im
47-
if(dry(i)) then
48-
if (vegtype(i) == 6 .or. vegtype(i) == 7 &
49-
.or. vegtype(i) == 16) then
50-
t2m(i) = t2mmp(i)
51-
q2m(i) = q2mp(i)
52-
endif
53-
endif
54-
enddo
55-
5644
if (opt_diag == 2 .or. opt_diag == 3) then
5745
do i=1,im
5846
if(dry(i)) then

physics/SFC_Layer/UFS/sfc_diag_post.meta

-7
Original file line numberDiff line numberDiff line change
@@ -82,13 +82,6 @@
8282
type = real
8383
kind = kind_phys
8484
intent = in
85-
[vegtype]
86-
standard_name = vegetation_type_classification
87-
long_name = vegetation type at each grid cell
88-
units = index
89-
dimensions = (horizontal_loop_extent)
90-
type = integer
91-
intent= in
9285
[t2mmp]
9386
standard_name = temperature_at_2m_from_noahmp
9487
long_name = 2 meter temperature from noahmp

physics/SFC_Models/Land/Noahmp/module_sf_noahmplsm.F90

+24-26
Original file line numberDiff line numberDiff line change
@@ -1989,7 +1989,7 @@ subroutine energy (parameters,ice ,vegtyp ,ist ,nsnow ,nsoil , & !in
19891989

19901990
real (kind=kind_phys), parameter :: mpe = 1.e-6
19911991
real (kind=kind_phys), parameter :: psiwlt = -150. !metric potential for wilting point (m)
1992-
real (kind=kind_phys), parameter :: z0 = 0.002 ! bare-soil roughness length (m) (i.e., under the canopy)
1992+
real (kind=kind_phys), parameter :: z0 = 0.015 ! bare-soil roughness length (m) (i.e., under the canopy)
19931993

19941994
! ---------------------------------------------------------------------------------------------------
19951995
! initialize fluxes from veg. fraction
@@ -2629,10 +2629,10 @@ subroutine csnow (parameters,isnow ,nsnow ,nsoil ,snice ,snliq ,dzsnso
26292629
! thermal conductivity of snow
26302630

26312631
do iz = isnow+1, 0
2632-
! tksno(iz) = 3.2217e-6*bdsnoi(iz)**2. ! stieglitz(yen,1965)
2632+
! tksno(iz) = 3.2217e-6*bdsnoi(iz)**2. ! stieglitz(yen,1965)
26332633
! tksno(iz) = 2e-2+2.5e-6*bdsnoi(iz)*bdsnoi(iz) ! anderson, 1976
2634-
! tksno(iz) = 0.35 ! constant
2635-
tksno(iz) = 2.576e-6*bdsnoi(iz)**2. + 0.074 ! verseghy (1991)
2634+
tksno(iz) = 0.35 ! constant
2635+
! tksno(iz) = 2.576e-6*bdsnoi(iz)**2. + 0.074 ! verseghy (1991)
26362636
! tksno(iz) = 2.22*(bdsnoi(iz)/1000.)**1.88 ! douvill(yen, 1981)
26372637
enddo
26382638

@@ -4056,11 +4056,6 @@ subroutine vege_flux(parameters,nsnow ,nsoil ,isnow ,vegtyp ,veg , &
40564056

40574057
end if
40584058

4059-
! prepare for longwave rad.
4060-
4061-
air = -emv*(1.+(1.-emv)*(1.-emg))*lwdn - emv*emg*sb*tg**4
4062-
cir = (2.-emv*(1.-emg))*emv*sb
4063-
!
40644059
if(opt_sfc == 4) then
40654060

40664061
gdx = sqrt(garea1)
@@ -4207,6 +4202,11 @@ subroutine vege_flux(parameters,nsnow ,nsoil ,isnow ,vegtyp ,veg , &
42074202
end if
42084203
end if
42094204

4205+
! prepare for longwave rad.
4206+
4207+
air = -emv*(1.+(1.-emv)*(1.-emg))*lwdn - emv*emg*sb*tg**4
4208+
cir = (2.-emv*(1.-emg))*emv*sb
4209+
42104210
! prepare for sensible heat flux above veg.
42114211

42124212
cah = 1./rahc
@@ -4269,7 +4269,7 @@ subroutine vege_flux(parameters,nsnow ,nsoil ,isnow ,vegtyp ,veg , &
42694269

42704270
! update vegetation surface temperature
42714271
tv = tv + dtv
4272-
! tah = ata + bta*tv ! canopy air t; update here for consistency
4272+
tah = ata + bta*tv ! canopy air t; update here for consistency
42734273

42744274
! for computing m-o length in the next iteration
42754275
h = rhoair*cpair*(tah - sfctmp) /rahc
@@ -4282,15 +4282,7 @@ subroutine vege_flux(parameters,nsnow ,nsoil ,isnow ,vegtyp ,veg , &
42824282
qfx = (qsfc-qair)*rhoair*caw
42834283
endif
42844284

4285-
4286-
if (liter == 1) then
4287-
exit loop1
4288-
endif
4289-
if (iter >= 5 .and. abs(dtv) <= 0.01 .and. liter == 0) then
4290-
liter = 1
4291-
endif
4292-
4293-
end do loop1 ! end stability iteration
4285+
! after canopy balance, do the under-canopy ground balance
42944286

42954287
! under-canopy fluxes and tg
42964288

@@ -4300,8 +4292,6 @@ subroutine vege_flux(parameters,nsnow ,nsoil ,isnow ,vegtyp ,veg , &
43004292
cev = rhoair*cpair / (gammag*(rawg+rsurf)) ! barlage: change to ground v3.6
43014293
cgh = 2.*df(isnow+1)/dzsnso(isnow+1)
43024294

4303-
loop2: do iter = 1, niterg
4304-
43054295
t = tdc(tg)
43064296
call esat(t, esatw, esati, dsatw, dsati)
43074297
if (t .gt. 0.) then
@@ -4327,7 +4317,14 @@ subroutine vege_flux(parameters,nsnow ,nsoil ,isnow ,vegtyp ,veg , &
43274317
gh = gh + cgh*dtg
43284318
tg = tg + dtg
43294319

4330-
end do loop2
4320+
if (liter == 1) then
4321+
exit loop1
4322+
endif
4323+
if (iter >= 5 .and. abs(dtv) <= 0.01 .and. abs(dtg) <= 0.01 .and. liter == 0) then
4324+
liter = 1 ! if conditions are met, then do one final loop
4325+
endif
4326+
4327+
end do loop1
43314328

43324329
! tah = (cah*sfctmp + cvh*tv + cgh*tg)/(cah + cvh + cgh)
43334330

@@ -5824,7 +5821,8 @@ subroutine thermalz0(parameters, fveg, z0m, z0mg, zlvl,
58245821

58255822
if (opt_trs == z0heqz0m) then
58265823

5827-
z0m_out = exp(fveg * log(z0m) + (1.0 - fveg) * log(z0mg))
5824+
! z0m_out = exp(fveg * log(z0m) + (1.0 - fveg) * log(z0mg))
5825+
z0m_out = fveg * z0m + (1.0 - fveg) * z0mg
58285826
z0h_out = z0m_out
58295827

58305828
elseif (opt_trs == chen09) then
@@ -5841,7 +5839,7 @@ subroutine thermalz0(parameters, fveg, z0m, z0mg, zlvl,
58415839
endif
58425840

58435841
z0h_out = exp( fveg * log(z0m * exp(-czil*0.4*258.2*sqrt(ustarx*z0m))) + &
5844-
(1.0 - fveg) * log(max(z0m/exp(kb_sigma_f0),1.0e-6)) )
5842+
(1.0 - fveg) * log(max(z0mg/exp(kb_sigma_f0),1.0e-6)) )
58455843

58465844
elseif (opt_trs == tessel) then
58475845

@@ -5880,15 +5878,15 @@ subroutine thermalz0(parameters, fveg, z0m, z0mg, zlvl,
58805878

58815879
z0h_out = z0m_out
58825880

5883-
elseif (opt_trs == chen09 .or. opt_trs == tessel) then
5881+
elseif (opt_trs == tessel) then
58845882

58855883
if (vegtyp <= 5) then
58865884
z0h_out = z0m_out
58875885
else
58885886
z0h_out = z0m_out * 0.01
58895887
endif
58905888

5891-
elseif (opt_trs == blumel99) then
5889+
elseif (opt_trs == chen09 .or. opt_trs == blumel99) then
58925890

58935891
reyn = ustarx*z0m_out/viscosity ! Blumel99 eqn 36c
58945892
if (reyn > 2.0) then

physics/SFC_Models/Land/Noahmp/noahmpdrv.F90

+7-4
Original file line numberDiff line numberDiff line change
@@ -663,6 +663,7 @@ subroutine noahmpdrv_run &
663663
real (kind=kind_phys) :: precip_freeze_frac_in ! used for penman calculation
664664

665665
real (kind=kind_phys) :: virtfac1 ! virtual factor
666+
real (kind=kind_phys) :: tflux ! surface flux temp
666667
real (kind=kind_phys) :: tvs1 ! surface virtual temp
667668
real (kind=kind_phys) :: vptemp ! virtual potential temp
668669

@@ -944,7 +945,8 @@ subroutine noahmpdrv_run &
944945
t2mmp(i) = temperature_bare_2m
945946
q2mp(i) = spec_humidity_bare_2m
946947

947-
tskin(i) = temperature_ground
948+
tskin(i) = temperature_radiative
949+
tflux = temperature_ground
948950
surface_temperature = temperature_ground
949951
vegetation_fraction = vegetation_frac
950952
ch_vegetated = 0.0
@@ -1038,7 +1040,8 @@ subroutine noahmpdrv_run &
10381040
q2mp(i) = spec_humidity_veg_2m * vegetation_fraction + &
10391041
spec_humidity_bare_2m * (1-vegetation_fraction)
10401042

1041-
tskin(i) = surface_temperature
1043+
tskin(i) = temperature_radiative
1044+
tflux = surface_temperature
10421045

10431046
endif ! glacial split ends
10441047

@@ -1194,9 +1197,9 @@ subroutine noahmpdrv_run &
11941197
endif
11951198

11961199
if(thsfc_loc) then ! Use local potential temperature
1197-
tvs1 = tskin(i) * virtfac1
1200+
tvs1 = tflux * virtfac1
11981201
else ! Use potential temperature referenced to 1000 hPa
1199-
tvs1 = tskin(i)/prsik1(i) * virtfac1
1202+
tvs1 = tflux/prsik1(i) * virtfac1
12001203
endif
12011204

12021205
z0_total = max(min(z0_total,forcing_height),1.0e-6)

physics/SFC_Models/Land/Noahmp/noahmptable.tbl

+17-15
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@
217217
!---------------------------------------------------------------------------------------------------------------------------------------------------------------------
218218
ch2op = 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1,
219219
dleaf = 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04,
220-
z0mvt = 1.09, 1.10, 0.85, 0.80, 0.80, 0.20, 0.06, 0.60, 0.50, 0.12, 0.30, 0.15, 1.00, 0.14, 0.00, 0.00, 0.00, 0.30, 0.20, 0.03,
220+
z0mvt = 1.00, 1.50, 0.75, 0.90, 0.85, 0.20, 0.10, 0.90, 0.60, 0.20, 0.30, 0.25, 1.00, 0.25, 0.00, 0.015, 0.00, 0.30, 0.10, 0.05,
221221
hvt = 20.0, 20.0, 18.0, 16.0, 16.0, 1.10, 1.10, 13.0, 10.0, 1.00, 5.00, 2.00, 15.0, 1.50, 0.00, 0.00, 0.00, 4.00, 2.00, 0.50,
222222
hvb = 8.50, 8.00, 7.00, 11.5, 10.0, 0.10, 0.10, 0.10, 0.10, 0.05, 0.10, 0.10, 1.00, 0.10, 0.00, 0.00, 0.00, 0.30, 0.20, 0.10,
223223
z0mhvt= 0.0545, 0.055, 0.047, 0.050, 0.050, 0.182, 0.0545, 0.046, 0.050, 0.120, 0.060, 0.075, 0.067, 0.093, 0.000, 0.000, 0.000, 0.075, 0.100, 0.060,
@@ -226,32 +226,34 @@
226226
!mfsno = 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50,
227227
! c. he 12/17/2020: optimized mfsno values dependent on land type based on evaluation with snotel swe and modis scf, surface albedo
228228
mfsno = 1.00, 1.00, 1.00, 1.00, 1.00, 2.00, 2.00, 2.00, 2.00, 2.00, 3.00, 3.00, 4.00, 4.00, 2.50, 3.00, 3.00, 3.50, 3.50, 3.50,
229+
!mfsno = 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97,
229230
! c. he 12/17/2020: optimized snow cover factor (m) in scf formulation to replace original constant 2.5*z0,z0=0.002m, based on evaluation with snotel swe and modis scf, surface albedo
230231
! scffac = 0.008, 0.008, 0.008, 0.008, 0.008, 0.016, 0.016, 0.020, 0.020, 0.020, 0.020, 0.014, 0.042, 0.026, 0.030, 0.016, 0.030, 0.030, 0.030, 0.030,
231-
scffac = 0.005, 0.005, 0.005, 0.005, 0.005, 0.008, 0.008, 0.010, 0.010, 0.010, 0.010, 0.007, 0.021, 0.013, 0.015, 0.008, 0.015, 0.015, 0.015, 0.015,
232+
scffac = 0.005, 0.005, 0.005, 0.005, 0.005, 0.008, 0.008, 0.010, 0.010, 0.010, 0.010, 0.007, 0.021, 0.013, 0.015, 0.008, 0.015, 0.015, 0.015, 0.015,
233+
! scffac = 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059,
232234
cbiom = 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02,
233235

234236
! row 1: vis
235237
! row 2: near ir
236238
rhol_vis=0.07, 0.10, 0.07, 0.10, 0.10, 0.07, 0.07, 0.07, 0.10, 0.11, 0.105, 0.11, 0.00, 0.11, 0.00, 0.00, 0.00, 0.10, 0.10, 0.10,
237-
rhol_nir=0.35, 0.45, 0.35, 0.45, 0.45, 0.35, 0.35, 0.35, 0.45, 0.58, 0.515, 0.58, 0.00, 0.58, 0.00, 0.00, 0.00, 0.45, 0.45, 0.45,
239+
rhol_nir=0.35, 0.45, 0.35, 0.45, 0.45, 0.35, 0.35, 0.35, 0.45, 0.35, 0.515, 0.35, 0.00, 0.35, 0.00, 0.00, 0.00, 0.45, 0.45, 0.45,
238240

239241
! row 1: vis
240242
! row 2: near ir
241-
rhos_vis=0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.36, 0.26, 0.36, 0.00, 0.36, 0.00, 0.00, 0.00, 0.16, 0.16, 0.16,
242-
rhos_nir=0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.58, 0.485, 0.58, 0.00, 0.58, 0.00, 0.00, 0.00, 0.39, 0.39, 0.39,
243+
rhos_vis=0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.31, 0.26, 0.31, 0.00, 0.31, 0.00, 0.00, 0.00, 0.16, 0.16, 0.16,
244+
rhos_nir=0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.53, 0.485, 0.53, 0.00, 0.53, 0.00, 0.00, 0.00, 0.39, 0.39, 0.39,
243245

244246
! row 1: vis
245247
! row 2: near ir
246-
taul_vis=0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.07, 0.06, 0.07, 0.00, 0.07, 0.00, 0.00, 0.00, 0.05, 0.05, 0.05,
247-
taul_nir=0.10, 0.25, 0.10, 0.25, 0.25, 0.10, 0.10, 0.10, 0.25, 0.25, 0.25, 0.25, 0.00, 0.25, 0.00, 0.00, 0.00, 0.25, 0.25, 0.25,
248+
taul_vis=0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.06, 0.05, 0.00, 0.05, 0.00, 0.00, 0.00, 0.05, 0.05, 0.05,
249+
taul_nir=0.10, 0.25, 0.10, 0.25, 0.25, 0.10, 0.10, 0.10, 0.25, 0.34, 0.25, 0.34, 0.00, 0.34, 0.00, 0.00, 0.00, 0.25, 0.25, 0.25,
248250

249251
! row 1: vis
250252
! row 2: near ir
251-
taus_vis=0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.220, 0.1105, 0.220, 0.000, 0.220, 0.000, 0.000, 0.000, 0.001, 0.001, 0.001,
252-
taus_nir=0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.380, 0.1905, 0.380, 0.000, 0.380, 0.000, 0.000, 0.000, 0.001, 0.001, 0.001,
253+
taus_vis=0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.120, 0.1105, 0.120, 0.000, 0.120, 0.000, 0.000, 0.000, 0.001, 0.001, 0.001,
254+
taus_nir=0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.250, 0.1905, 0.250, 0.000, 0.250, 0.000, 0.000, 0.000, 0.001, 0.001, 0.001,
253255

254-
xl = 0.010, 0.010, 0.010, 0.250, 0.250, 0.010, 0.010, 0.010, 0.010, -0.30, -0.025, -0.30, 0.000, -0.30, 0.000, 0.000, 0.000, 0.250, 0.250, 0.250,
256+
xl = 0.010, 0.10, 0.010, 0.250, 0.250, 0.010, 0.010, 0.010, 0.010, -0.30, -0.025, -0.30, 0.000, -0.30, 0.000, 0.000, 0.000, 0.250, 0.250, 0.250,
255257
! make cwpvt vegetation dependent according to j. goudriaan, crop micrometeorology: a simulation study (simulation monographs), 1977). c. he, 12/17/2020
256258
! cwpvt = 0.18, 0.67, 0.18, 0.67, 0.29, 1.0, 2.0, 1.3, 1.0, 5.0, 1.17, 1.67, 1.67, 1.67, 0.18, 0.18, 0.18, 0.67, 1.0, 0.18,
257259
cwpvt = 0.09, 0.335, 0.09, 0.335, 0.145, 0.5, 1.0, 0.65, 0.5, 2.5, 0.585, 0.835, 0.835, 0.835, 0.09, 0.09, 0.09, 0.335, 0.5, 0.09,
@@ -335,10 +337,10 @@
335337
!--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
336338
! 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 soil color index for soil albedo
337339
!--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
338-
albsat_vis = 0.25, 0.23, 0.21, 0.20, 0.19, 0.18, 0.17, 0.16, 0.15, 0.14, 0.13, 0.12, 0.11, 0.10, 0.09, 0.08, 0.07, 0.06, 0.05, 0.04 ! saturated soil albedos
339-
albsat_nir = 0.50, 0.46, 0.42, 0.40, 0.38, 0.36, 0.34, 0.32, 0.30, 0.28, 0.26, 0.24, 0.22, 0.20, 0.18, 0.16, 0.14, 0.12, 0.10, 0.08 ! saturated soil albedos
340-
albdry_vis = 0.36, 0.34, 0.32, 0.31, 0.30, 0.29, 0.28, 0.27, 0.26, 0.25, 0.24, 0.23, 0.22, 0.20, 0.18, 0.16, 0.14, 0.12, 0.10, 0.08 ! dry soil albedos
341-
albdry_nir = 0.61, 0.57, 0.53, 0.51, 0.49, 0.48, 0.45, 0.43, 0.41, 0.39, 0.37, 0.35, 0.33, 0.31, 0.29, 0.27, 0.25, 0.23, 0.21, 0.16 ! dry soil albedos
340+
albsat_vis = 0.21, 0.20, 0.18, 0.17, 0.16, 0.15, 0.14, 0.13, 0.13, 0.12, 0.11, 0.10, 0.10, 0.09, 0.08, 0.08, 0.08, 0.07, 0.07, 0.06 ! saturated soil albedos
341+
albsat_nir = 0.42, 0.40, 0.36, 0.34, 0.32, 0.30, 0.28, 0.26, 0.26, 0.24, 0.22, 0.20, 0.20, 0.18, 0.16, 0.16, 0.16, 0.14, 0.14, 0.13 ! saturated soil albedos
342+
albdry_vis = 0.31, 0.30, 0.28, 0.27, 0.26, 0.24, 0.23, 0.22, 0.22, 0.22, 0.20, 0.19, 0.20, 0.18, 0.16, 0.16, 0.16, 0.14, 0.14, 0.13 ! dry soil albedos
343+
albdry_nir = 0.52, 0.50, 0.46, 0.44, 0.42, 0.40, 0.38, 0.37, 0.36, 0.34, 0.32, 0.30, 0.30, 0.28, 0.27, 0.27, 0.27, 0.26, 0.25, 0.25 ! dry soil albedos
342344
albice = 0.80, 0.55 ! albedo land ice: 1=vis, 2=nir
343345
alblak = 0.60, 0.40 ! albedo frozen lakes: 1=vis, 2=nir
344346
omegas = 0.8 , 0.4 ! two-stream parameter omega for snow
@@ -397,7 +399,7 @@
397399
class_sno_age = 3600.0 ! snow aging e-folding time (s) in class albedo scheme
398400
class_alb_new = 0.84 ! fresh snow albedo in class scheme
399401
psiwlt = -150.0 !metric potential for wilting point (m)
400-
z0soil = 0.002 ! bare-soil roughness length (m) (i.e., under the canopy)
402+
z0soil = 0.015 ! bare-soil roughness length (m) (i.e., under the canopy)
401403
z0lake = 0.01 ! lake surface roughness length (m)
402404
/
403405

0 commit comments

Comments
 (0)