From 9846f0eb161ba9812188f0bd380128ab6d298e3d Mon Sep 17 00:00:00 2001 From: Manuel Klarmann Date: Thu, 4 Jun 2026 13:48:21 +0200 Subject: [PATCH] Fix no-op N/TAN loss-rate clamps: assign min(1.0, ...) result The min(1.0, loss_rate_N_frac) / min(1.0, loss_rate_TAN_frac) calls computed a value that was discarded (no assignment), so the intended clamp ('cannot be >1') had no effect and loss rates could exceed 1.0. Assign the result back. Fixes #2 --- SALCAfield/SALCAfield_field.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/SALCAfield/SALCAfield_field.py b/SALCAfield/SALCAfield_field.py index 9eae6ae..036b5d6 100644 --- a/SALCAfield/SALCAfield_field.py +++ b/SALCAfield/SALCAfield_field.py @@ -858,7 +858,7 @@ def unpack_dc(dc): # calculate loss rate through NH3, N2O (only direct) and NOx loss_rate_N_frac = (e_fert_kg_NH3_N+e_direct_kgN2O_N+e_fert_kgNOx_N) / \ fert_kgN # [kg N/kg N] - min(1.0, loss_rate_N_frac) # cannot be >1 + loss_rate_N_frac = min(1.0, loss_rate_N_frac) # cannot be >1 else: loss_rate_N_frac = 0 # [kg N/kg N] @@ -867,7 +867,7 @@ def unpack_dc(dc): # calculate loss rate through NH3, N2O and NOx loss_rate_TAN_frac = (e_fert_kg_NH3_N+e_direct_kgN2O_N+e_fert_kgNOx_N) / \ fert_kgTAN # [kg TAN/kg TAN] - min(1.0, loss_rate_TAN_frac) # cannot be >1 + loss_rate_TAN_frac = min(1.0, loss_rate_TAN_frac) # cannot be >1 else: loss_rate_TAN_frac = 0 # [kg TAN/kg TAN]