From 3d4859c18ec3c96f6cbc1c18808d598f0eb45889 Mon Sep 17 00:00:00 2001 From: Marius Peter Date: Mon, 17 Nov 2025 12:13:03 +0100 Subject: Fix nnls logic. If no latest target exists, the deficit is zero (no target, no problem). --- services/nnls.rkt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'services') 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)) -- cgit v1.2.3