Skip to content

Commit

Permalink
Avoid divide by 0 when load is zero (#1227)
Browse files Browse the repository at this point in the history
* Avoid divide by 0 when load is zero

* [pre-commit.ci lite] apply automatic fixes

---------

Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
  • Loading branch information
springfall2008 and pre-commit-ci-lite[bot] committed Jun 19, 2024
1 parent dc967e6 commit 6293249
Showing 1 changed file with 7 additions and 2 deletions.
9 changes: 7 additions & 2 deletions apps/predbat/predbat.py
Original file line number Diff line number Diff line change
Expand Up @@ -1911,8 +1911,13 @@ def get_load_divergence(self, minutes_now, load_minutes):
load_diff_total += load_diff

load_std_dev = math.sqrt(load_diff_total / load_count)
load_divergence = load_std_dev / load_mean / 2.0
load_divergence = min(load_divergence, 1.0)
if load_mean > 0:
load_divergence = load_std_dev / load_mean / 2.0
load_divergence = min(load_divergence, 1.0)
else:
self.log("Warn: Load mean is zero, unable to calculate divergence!")
load_divergence = 0

self.log(
"Load divergence over {} hours mean {} W, min {} W, max {} W, std dev {} W, divergence {}%".format(
look_over / 60.0, self.dp2(load_mean), self.dp2(load_min), self.dp2(load_max), self.dp2(load_std_dev), self.dp2(load_divergence * 100.0)
Expand Down

0 comments on commit 6293249

Please sign in to comment.