summaryrefslogtreecommitdiff
path: root/services
diff options
context:
space:
mode:
authorMarius Peter <dev@marius-peter.com>2025-11-17 12:13:03 +0100
committerMarius Peter <dev@marius-peter.com>2025-11-17 12:13:03 +0100
commit3d4859c18ec3c96f6cbc1c18808d598f0eb45889 (patch)
treea9d32518d83b8912be33e11c34e12c324f130866 /services
parent37327a632ff1584e7442295b1ed2ec788a175e4b (diff)
Fix nnls logic.
If no latest target exists, the deficit is zero (no target, no problem).
Diffstat (limited to 'services')
-rw-r--r--services/nnls.rkt7
1 files changed, 3 insertions, 4 deletions
diff --git a/services/nnls.rkt b/services/nnls.rkt
index 52afbad..649d416 100644
--- a/services/nnls.rkt
+++ b/services/nnls.rkt
@@ -26,17 +26,16 @@
(define latest-target (get-latest-nutrient-target-value n))
(define deficit
(cond
+ [(false? latest-target)
+ 0]
[(or (false? latest-measurement)
(zero? latest-measurement))
latest-target]
- [(false? latest-target)
- 0]
[(and (number? latest-measurement)
(number? latest-target))
(* 100
(/ (- latest-target latest-measurement)
- latest-measurement))]
- [else (error "either the target or measurement are not numbers")]))
+ latest-measurement))]))
deficit)))
(define error-threshold 10e-4)
(lawson-hanson-1974 fertilizer-product-matrix deficits error-threshold))
Copyright 2019--2026 Marius PETER