Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sodemann et al. (2008) moisture uptake method #59

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

zhx215
Copy link

@zhx215 zhx215 commented Jun 8, 2019

In Sodemann et al. (2008), they did not discount previous dq at h = 0 (see table 1), but in the current code it did get discounted. If the current code was applied to data shown in table 1 of that publication, then dq values at -18h, -36h, and -48h, would be discounted by precipitation at 0h. Then the dq values will change from 0.3, 1.380, 0.736 to 0.242, 1.115, 0.594. This commit will keep dq discounting procedure strictly as same as Sodemann et al. (2008).

However, the reason why Sodemann did not include precipitation discounting for dq at 0h is unknown. Discounting or not at 0h is not important, and does make too much difference in results.

In Sodemann et al. (2008), they did not discount previous dq at h = 0 (see table 1), but in the current code it did get discounted. If the current code was applied to data shown in table 1 of that publication, then dq values at -18h, -36h, and -48h, would be discounted by precipitation at 0h. Then the dq values will change from 0.3, 1.380, 0.736 to 0.242, 1.115, 0.594. This commit will keep dq discounting procedure strictly as same as Sodemann et al. (2008).

However, the reason why Sodemann did not include precipitation discounting for dq at 0h is unknown. Discounting or not at 0h is not important, and does make too much difference in results.
@mscross
Copy link
Owner

mscross commented Jun 11, 2019

Thanks for bringing this to my attention, I never noticed that Sodemann et al. didn't discount previous dq when t=0. That kind of seems like an oversight to me. If t=0 has dq_initial > evaporation, do Sodemann et al adjust the previous 'above' and 'below' fractions like PySPLIT does in lines 386-390 or do they skip that too?

I think it would be valuable to keep the original behavior as well as allow for following the Sodemann et al procedure exactly. It would be easy to do by introducing a new kwarg, something like adjustdq_iftime0, where True is the original PySPLIT behavior and False is the Sodemann behavior; and adding an or clause to your if statement:

if self.uptake.loc[w, 'Timestep'] != 0 or adjustdq_ift0:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants