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
[ Info: Saving diagnostics to HDF5 file on day 1510 second 0
[ Info: Saving diagnostics to HDF5 file on day 1520 second 0
[ Info: Saving diagnostics to HDF5 file on day 1530 second 0
[ Info: Saving diagnostics to HDF5 file on day 1540 second 0
[ Info: Saving diagnostics to HDF5 file on day 1550 second 0
[ Info: Saving diagnostics to HDF5 file on day 1560 second 256
[ Info: Saving diagnostics to HDF5 file on day 1570 second 224
i.e. after 194 days, we can no longer represent exact seconds.
Some options:
Always use Float64 for time
Use integer multiples of some small unit (e.g. milliseconds)
Use Julia DateTime objects (which internally are stored in milliseconds): the advantage of this is that it would make a log of the day/month/year logic we use elsewhere easier.
All 3 would probably some changes to ClimaTimeSteppers
The text was updated successfully, but these errors were encountered:
I found another occurrence of this issue: the diagnostic module computes how often to compute a given diagnostic by taking the ratio of period / dt and checking that this is is an integer. With Float32, this ends up failing often when period is >3-4 orders of magnitude larger than dt (because the ratio doesn't return an integer even if it should).
If we
Float32
, we can easily go past the point at which the type can no longer accurately keep track of time, e.g. https://buildkite.com/clima/climaatmos-longruns/builds/1171#018a7855-5fa2-42e2-b8b2-1989c0b397ca/143-366The problem is that
i.e. after 194 days, we can no longer represent exact seconds.
Some options:
Float64
for timeDateTime
objects (which internally are stored in milliseconds): the advantage of this is that it would make a log of the day/month/year logic we use elsewhere easier.All 3 would probably some changes to ClimaTimeSteppers
The text was updated successfully, but these errors were encountered: