You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When running in DEBUG mode, PHS's plc function generates a floating point exception in some circumstances. I'm not sure what happens in non-DEBUG mode.
General bug information
CTSM version you are using: release-clm5.0.26
Does this bug cause significantly incorrect results in the model's science? No
Configurations affected: Potentially all configurations with PHS (Clm50 default)? Observed in compset IHistClm50Sp with a start year of 1969 (I'm not sure if we'd observe this if we started from 1850).
This ran for 5 months, but died on June 1 (model date 19690601) with error, 638:MPT ERROR: Rank 638(g:638) received signal SIGFPE(8). and the following stack trace:
It looks like the issue may be that x is positive in the call to plc, so (x/psi50) is negative, and we get a floating point exception when trying to raise this negative value to a real power. Here x appears to be the root water potential.
This bug was originally found by @Ivanderkelen ; I have reproduced it.
The text was updated successfully, but these errors were encountered:
Given that we haven't seen problems in a production run, we're not going to make this super-high priority. @djk2120 we'll plan to talk to you about this once you're here - though, of course, feel free to look at it before then if you have time.
Indeed, you've diagnosed the issue correctly, in that the input to plc needs to be negative. The simplest fix would be to handle any negative inputs and call them zero. However I can't immediately conceive of how root water potential came to be negative, so it is probably worth me duplicating this error and figuring out how that came to be. That way I can either solve the bug upstream (which seems more robust) or at least convince myself that enforcing a negative input is indeed suitable.
Brief summary of bug
When running in DEBUG mode, PHS's plc function generates a floating point exception in some circumstances. I'm not sure what happens in non-DEBUG mode.
General bug information
CTSM version you are using: release-clm5.0.26
Does this bug cause significantly incorrect results in the model's science? No
Configurations affected: Potentially all configurations with PHS (Clm50 default)? Observed in compset IHistClm50Sp with a start year of 1969 (I'm not sure if we'd observe this if we started from 1850).
Details of bug
I set up a case as follows:
This ran for 5 months, but died on June 1 (model date 19690601) with error,
638:MPT ERROR: Rank 638(g:638) received signal SIGFPE(8).
and the following stack trace:It looks like the issue may be that x is positive in the call to plc, so (x/psi50) is negative, and we get a floating point exception when trying to raise this negative value to a real power. Here x appears to be the root water potential.
This bug was originally found by @Ivanderkelen ; I have reproduced it.
The text was updated successfully, but these errors were encountered: