Fix: Correct grass albedo LAI-albedo relationship#1135
Conversation
Grass has a reversed LAI-albedo relationship compared to trees: increasing LAI should decrease albedo (bright soil/litter background replaced by absorbing canopy). The Fortran code was incorrectly using the same formula for all vegetation types. This fix reverses the sign in the grass albedo update formula to correctly model the physics. Updated reference test output reflects the corrected energy balance. Fixes #1134 Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
|
@sunt05 Is this ready for review? We are interested to get this grass albedo behavior into some of the current model runs. |
|
@MatthewPaskin yes, please go ahead with further testing and then merge it. Note the sample output will be changed, so it’s good you can pick this up with more meticulous checking. Thank you! |
|
@MatthewPaskin any follow-up here? |
|
@sunt05 I have done some more testing as well as (on a separate branch) worked on alternate LAI methods for each vegetation type, to view the behavior as a whole. Things are looking good but I am not sure if we are ready to commit this merge yet. Perhaps we shall discuss this further. Also before this is merged @dayantur, a limit will need to be put into the validator as can be seen @sunt05 in your plots that the initial albedo values do not agree with the final values. Given the swap in albedo response to LAI, the initial albedo value will need to be flipped to the max in winter rather than the min. |
As discussed - we do not have at the moment anything that updates alb_id rather than the automatic initialisation set up by @sunt05 IF alb_id is missing. But I can create a PR to assign alb_max (alb_min) to alb_id grass if winter (summer), and replicate something similar (but swapped) for deciduous and evergreen. This (IMO) should go in phase B as other physics updates, under the seasonal adjustment we have there. if we agree on this @MatthewPaskin @sunt05 , I can work on this tomorrow with the other veg stuff I’m improving on the SPARTACUS side. :) |



Summary
Corrects the grass albedo update formula in the daily state module. Grass has a reversed LAI-albedo relationship compared to trees: increasing LAI should decrease albedo, not increase it.
Problem
The Fortran code (
suews_phys_dailystate.f95, line 502) was using the same albedo update formula for all vegetation types:This incorrectly increases grass albedo during the growing season, contradicting the physics (dense grass canopy absorbs more light than sparse grass over bright soil/litter).
Solution
Reversed the formula for grass to correctly model the negative LAI-albedo relationship:
Impact
Annual sample simulation (1-year, 2012 London/Swindon):
See issue #1134 for detailed impact analysis and plots.
Closes #1134