Dear members and developer,
I am trying to close the NOAH_LSM heat budget for quite a while right now and I'm quite puzzled with my results. Any hindsight on where is my reasoning false would be more than appreciated !
Related posts are https://forum.mmm.ucar.edu/phpBB3/viewtopic.php?f=43&t=5674&p=13582&hilit=heat+budget#p13582 and https://forum.mmm.ucar.edu/phpBB3/viewtopic.php?f=57&t=5532&p=16087&hilit=heat+budget#p16087. They provide useful information but did not help me in closing my heat budget.
From the NOAH routines (sf_noahdrv) the surface heat budget is the computed as such:
Having all the corresponding terms as output should bring us to an exact equity. All the variables can be output when specified correctly in the registry following the appropriate mapping (variables in capital letter correspond to output variables in wrfout*):
Finally
should be nothing else than the net radiations (according to my understanding).
I tried to close my heat budget using the three following combinations of variables. All lead to very similar results, but without closing my surface heat flux... Hereafter seb stand for surface energy balance which should be zero according to my understanding of the situation.
Test 1
Test 2 (Kelly Werner proposed system in https://forum.mmm.ucar.edu/phpBB3/viewtopic.php?f=43&t=5674&p=13582&hilit=heat+budget#p13582):
Test 3 (Mimicking equation in NOAH):
The attached figures might help you to understand where is the error in my reasoning. Indeed, the budget is closed most of the time but peaks occur at sunrise and at the beginning of the afternoon.
I have also ran a subset of my simulations with FLX1,2 and 3 as output to check if they were the culprits. Even if they account for discrepancies where there is snow on the ground or when the skin temperature is below zero they do not help to close my energy budget completely... Especially they don't remove the peaks displayed on the attached figure.
Any hints or hindsights regarding a mistake in my reasoning would be much appreciated ! Or even just comments of people that did manage to close their energu budgets when they attempted to
Many thanks in advance,
Enzo
PS : It is suggested in one of the related posts that the error might arise from accumulated and instantaneous variables. However, up to my understanding, all these variables are instantaneous variables.
I am trying to close the NOAH_LSM heat budget for quite a while right now and I'm quite puzzled with my results. Any hindsight on where is my reasoning false would be more than appreciated !
Related posts are https://forum.mmm.ucar.edu/phpBB3/viewtopic.php?f=43&t=5674&p=13582&hilit=heat+budget#p13582 and https://forum.mmm.ucar.edu/phpBB3/viewtopic.php?f=57&t=5532&p=16087&hilit=heat+budget#p16087. They provide useful information but did not help me in closing my heat budget.
From the NOAH routines (sf_noahdrv) the surface heat budget is the computed as such:
Code:
noahres(i,j) = ( solnet + lwdn ) - sheat + ssoil - eta & - ( emissi * STBOLT * (t1**4) ) - flx1 - flx2 - flx3
Having all the corresponding terms as output should bring us to an exact equity. All the variables can be output when specified correctly in the registry following the appropriate mapping (variables in capital letter correspond to output variables in wrfout*):
- noahres -> NOAHRES (change to "rh" instead of "h")
- sheat -> HFX
- ssoil -> GRDFLX
- eta -> LH
- emissi -> EMISS
- t1 -> TSK
- flx1,flx2,flx3 -> Need to add new diagnostic variables to be output
Finally
Code:
( solnet + lwdn ) - ( emissi * STBOLT * (t1**4) )
I tried to close my heat budget using the three following combinations of variables. All lead to very similar results, but without closing my surface heat flux... Hereafter seb stand for surface energy balance which should be zero according to my understanding of the situation.
Test 1
Code:
netshort = SWDNB - SWUPB
netlong = LWDNB - LWUPB
netrad = netshort + netlong
seb = netrad - NOAHRES + GRDFLX - HFX - LH
Test 2 (Kelly Werner proposed system in https://forum.mmm.ucar.edu/phpBB3/viewtopic.php?f=43&t=5674&p=13582&hilit=heat+budget#p13582):
Code:
gsw = (1-ALBEDO) * SWDOWN
glw = GLW
lwupflux = np.power(TSK,4) * STBOLT
netlw = EMISS*(glw-lwupflux)
netrad = gsw + netlw
seb = netrad + GRDFLX -HFX -LH
Test 3 (Mimicking equation in NOAH):
Code:
tskterm = EMISS * STBOLT * np.power(TSK,4)
netrad = (1-ALBEDO) * SWDNB + EMISS * LWDNB - tskterm
seb = netrad - NOAHRES + GRDFLX - HFX - LH
The attached figures might help you to understand where is the error in my reasoning. Indeed, the budget is closed most of the time but peaks occur at sunrise and at the beginning of the afternoon.
I have also ran a subset of my simulations with FLX1,2 and 3 as output to check if they were the culprits. Even if they account for discrepancies where there is snow on the ground or when the skin temperature is below zero they do not help to close my energy budget completely... Especially they don't remove the peaks displayed on the attached figure.
Any hints or hindsights regarding a mistake in my reasoning would be much appreciated ! Or even just comments of people that did manage to close their energu budgets when they attempted to
Many thanks in advance,
Enzo
PS : It is suggested in one of the related posts that the error might arise from accumulated and instantaneous variables. However, up to my understanding, all these variables are instantaneous variables.