Skip to content

Commit

Permalink
clm4_5_16_r252
Browse files Browse the repository at this point in the history
Bring in a new CLM50 parameter file that updates a few fields for prognostic crop with affect on crop albedo
(rholnir,taulnir,taulvis,xl). Bring in changes to fix urban albedo for nighttime from Keith Oleson. Rather than set
albedo's for the urban canyon all to 1.0, set them to the viewfactors, as that will result in combined albedo of
one, whereas the previous way ended up with albedo's greater than one.

Here's a description from Keith about the change in urban albedo. " For diffuse radiation, which is
independent of solar zenith angle, the road albedos appear to be exactly equal to the road-sky view
factor.  And the wall albedos are equal to the wall-sky view factor. So the albedos are the albedo
of the surface (1.0) times the appropriate view factor.  This makes sense.  All incident radiation
entering the canyon should be reflected to the sky and the contribution of each surface is according
to the view factor of each surface to the sky as determined by the height to width ratio.  The view
factors of the two walls and the road to the sky sums to 1.0.  So setting the diffuse albedos to
these values when the sun is below the horizon results in a scaled diffuse albedo of 1.0.  For direct
radiation, it's more complicated because the solar zenith angle is involved when running the
radiation model.  However, it seems reasonable to assume the same albedos for direct as for diffuse."
  • Loading branch information
ekluzek authored and bjandre committed Dec 20, 2017
1 parent a06252a commit 98d4d67
Show file tree
Hide file tree
Showing 5 changed files with 157 additions and 15 deletions.
8 changes: 4 additions & 4 deletions .ChangeLog_template
Original file line number Diff line number Diff line change
Expand Up @@ -61,19 +61,19 @@ CLM testing:

build-namelist tests:

yellowstone -
cheyenne -

unit-tests (components/clm/src):

yellowstone -
cheyenne -

tools-tests (components/clm/test/tools):

yellowstone -
cheyenne -

PTCLM testing (components/clm/tools/shared/PTCLM/test):

yellowstone -
cheyenne -

regular tests (aux_clm):

Expand Down
2 changes: 1 addition & 1 deletion bld/namelist_files/namelist_defaults_clm4_5.xml
Original file line number Diff line number Diff line change
Expand Up @@ -329,7 +329,7 @@ attributes from the config_cache.xml file (with keys converted to upper-case).
<!-- The default filenames are given relative to the root directory
for the CLM2 data in the CESM distribution -->
<!-- Plant function types (relative to {csmdata}) -->
<paramfile phys="clm5_0">lnd/clm2/paramdata/clm5_params.c170413.nc</paramfile>
<paramfile phys="clm5_0">lnd/clm2/paramdata/clm5_params.c170721.nc</paramfile>
<paramfile phys="clm4_5">lnd/clm2/paramdata/clm_params.c170317.nc</paramfile>

<fates_paramfile>lnd/clm2/paramdata/fates_params.c170331.nc</fates_paramfile>
Expand Down
123 changes: 123 additions & 0 deletions doc/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,4 +1,127 @@
===============================================================
Tag name: clm4_5_16_r252
Originator(s): erik (Erik Kluzek)
Date: Mon Jul 24 16:57:42 MDT 2017
One-line Summary: Update parameter file for some crop albedo issues, and fix a bug in urban albedo for nightime

Purpose of changes
------------------

Bring in a new CLM50 parameter file that updates a few fields for prognostic crop with affect on crop albedo
(rholnir,taulnir,taulvis,xl). Bring in changes to fix urban albedo for nighttime from Keith Oleson. Rather than set
albedo's for the urban canyon all to 1.0, set them to the viewfactors, as that will result in combined albedo of
one, whereas the previous way ended up with albedo's greater than one.

Here's a description from Keith about the change in urban albedo. " For diffuse radiation, which is
independent of solar zenith angle, the road albedos appear to be exactly equal to the road-sky view
factor. And the wall albedos are equal to the wall-sky view factor. So the albedos are the albedo
of the surface (1.0) times the appropriate view factor. This makes sense. All incident radiation
entering the canyon should be reflected to the sky and the contribution of each surface is according
to the view factor of each surface to the sky as determined by the height to width ratio. The view
factors of the two walls and the road to the sky sums to 1.0. So setting the diffuse albedos to
these values when the sun is below the horizon results in a scaled diffuse albedo of 1.0. For direct
radiation, it's more complicated because the solar zenith angle is involved when running the
radiation model. However, it seems reasonable to assume the same albedos for direct as for diffuse."

Bugs fixed or introduced
------------------------

Bugs fixed (include bugzilla ID):
2492 -- Urban scalings can lead to albedo values greater than 1

Notes of particular relevance for users
---------------------------------------

Caveats for users (e.g., need to interpolate initial conditions): None

Changes to CLM's user interface (e.g., new/renamed XML or namelist variables): None

Changes made to namelist defaults (e.g., changed parameter values): None

Changes to the datasets (e.g., parameter, surface or initial files):New params file for CLM50
Updates rholnir,taulnir,taulvis,xl for prognostic crop fields

Substantial timing or memory changes: None

Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------

Caveats for developers (e.g., code that is duplicated that requires double maintenance): None

Changes to tests or testing: None

Code reviewed by: self,oleson

Did you follow the steps in .CLMTrunkChecklist: yes

CLM testing: regular

[PASS means all tests PASS and OK means tests PASS other than expected fails.]

build-namelist tests:

cheyenne ---- PASS (60 clm50 tests are different as expected)

unit-tests (components/clm/src):

cheyenne ---- PASS

regular tests (aux_clm): (31 Clm45 tests are different than baseline in cpl hist files for:
l2x_Sl_avsdr ("dr" and "df" and "av" and "an") as expected)

yellowstone_intel - OK
yellowstone_pgi --- OK
yellowstone_gnu --- OK
cheyenne_intel ---- OK
cheyenne_gnu ------ OK
hobart_nag -------- OK
hobart_pgi -------- OK
hobart_intel ------ OK

Tests: ERS_Ld5_Mmpi-serial.1x1_vancouverCAN.I1PtClm45SpGs.cheyenne_intel.clm-default,
ERS_Ld5_Mmpi-serial.1x1_vancouverCAN.I1PtClm45SpGs.yellowstone_intel.clm-default
show: FSR, FSRND, and FSRVD different

CLM tag used for the baseline comparisons: clm4_5_16_r251


Answer changes
--------------

Changes answers relative to baseline: Yes for CLM50, and for CLM45 when coupled to CAM

Summarize any changes to answers, i.e.,
- what code configurations: CLM50 (CLM45 when coupled to CAM and albedos passed to coupler for any case)
- what platforms/compilers: all
- nature of change: similar climate

If this tag changes climate describe the run(s) done to evaluate the new
climate (put details of the simulations in the experiment database)
- casename:
oleson/b.e20.B1850.f09_g17.pi_control.all.186.alb

URL for LMWG diagnostics output used to validate new climate:

http://webext.cgd.ucar.edu/B1850/b.e20.B1850.f09_g17.pi_control.all.186.alb/lnd/b.e20.B1850.f09_g17.pi_control.all.186.alb.17_36-b.e20.B1850.f09_g17.pi_control.all.186.17_36/setsIndex.html


Detailed list of changes
------------------------

List any svn externals directories updated (cime, rtm, mosart, cism, etc.): None

List all files eliminated: None

List all files added and what they do: None

List all existing files that have been modified, and describe the changes:

M components/clm/bld/namelist_files/namelist_defaults_clm4_5.xml - Updated params file for CLM50
M components/clm/src/biogeophys/UrbanAlbedoMod.F90 --------------- Fix bug 2492. Set albedo's of
urban surfaces to view factors, by default and for solar zenith angles below horizon.

===============================================================
===============================================================
Tag name: clm4_5_16_r251
Originator(s): erik (Erik Kluzek)
Date: Fri Jul 14 01:38:38 MDT 2017
Expand Down
1 change: 1 addition & 0 deletions doc/ChangeSum
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Tag Who Date Summary
============================================================================================================================
clm4_5_16_r252 erik 07/24/2017 Update parameter file for some crop albedo issues, and fix a bug in urban albedo for nightime
clm4_5_16_r251 erik 07/14/2017 Update mksurfdata_map for soil depth/color, add new mapping files
clm4_5_16_r250 erik 07/13/2017 Update finundation dataset, new fsurdat files with updated soil color and soil depth,
update mosart areas, fix cheyenne_gnu
Expand Down
38 changes: 28 additions & 10 deletions src/biogeophys/UrbanAlbedoMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,8 @@ subroutine UrbanAlbedo (bounds, num_urbanl, filter_urbanl, &
albi => surfalb_inst%albi_patch , & ! Output: [real(r8) (:,:) ] urban pft surface albedo (diffuse)

begl => bounds%begl , &
vf_sr => urbanparams_inst%vf_sr , & ! Input: [real(r8) (:) ] view factor of sky for road
vf_sw => urbanparams_inst%vf_sw , & ! Input: [real(r8) (:) ] view factor of sky for one wall
endl => bounds%endl &
)

Expand Down Expand Up @@ -183,8 +185,22 @@ subroutine UrbanAlbedo (bounds, num_urbanl, filter_urbanl, &
do fp = 1,num_urbanp
p = filter_urbanp(fp)
l = patch%landunit(p)
albd(p,ib) = 1._r8
albi(p,ib) = 1._r8
! Setting albedos to wall and road view factors ensures that urban
! albedo will scale up to 1.0
c = patch%column(p)
if (col%itype(c) == icol_sunwall) then
albd(p,ib) = vf_sw(l)
albi(p,ib) = vf_sw(l)
else if (col%itype(c) == icol_shadewall) then
albd(p,ib) = vf_sw(l)
albi(p,ib) = vf_sw(l)
else if (col%itype(c) == icol_road_perv .or. col%itype(c) == icol_road_imperv) then
albd(p,ib) = vf_sr(l)
albi(p,ib) = vf_sr(l)
else if (col%itype(c) == icol_roof) then
albd(p,ib) = 1._r8
albi(p,ib) = 1._r8
endif
fabd(p,ib) = 0._r8
fabd_sun(p,ib) = 0._r8
fabd_sha(p,ib) = 0._r8
Expand Down Expand Up @@ -230,14 +246,16 @@ subroutine UrbanAlbedo (bounds, num_urbanl, filter_urbanl, &
sabs_perroad_dif(l,ib) = 0._r8
sref_roof_dir(l,ib) = 1._r8
sref_roof_dif(l,ib) = 1._r8
sref_sunwall_dir(l,ib) = 1._r8
sref_sunwall_dif(l,ib) = 1._r8
sref_shadewall_dir(l,ib) = 1._r8
sref_shadewall_dif(l,ib) = 1._r8
sref_improad_dir(l,ib) = 1._r8
sref_improad_dif(l,ib) = 1._r8
sref_perroad_dir(l,ib) = 1._r8
sref_perroad_dif(l,ib) = 1._r8
! Setting sref to wall and road view factors ensures that urban
! albedo will scale up to 1.0
sref_sunwall_dir(l,ib) = vf_sw(l)
sref_sunwall_dif(l,ib) = vf_sw(l)
sref_shadewall_dir(l,ib) = vf_sw(l)
sref_shadewall_dif(l,ib) = vf_sw(l)
sref_improad_dir(l,ib) = vf_sr(l)
sref_improad_dif(l,ib) = vf_sr(l)
sref_perroad_dir(l,ib) = vf_sr(l)
sref_perroad_dif(l,ib) = vf_sr(l)
end do
end do

Expand Down

0 comments on commit 98d4d67

Please sign in to comment.