From 9a8ddf53285ca2f1542a3a0331ceff313946f243 Mon Sep 17 00:00:00 2001 From: Mireya Cueto Garrido Date: Tue, 24 Mar 2026 10:55:06 +0100 Subject: [PATCH] =?UTF-8?q?A=C3=B1adida=20explicaci=C3=B3n=20de=20pertenen?= =?UTF-8?q?cia=20en=20enpoint=203?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/api/routes.py | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/backend/api/routes.py b/backend/api/routes.py index 2a50ae9..10544bc 100644 --- a/backend/api/routes.py +++ b/backend/api/routes.py @@ -146,18 +146,35 @@ def evaluate_doc_mf(request: EvaluationRequest): c, d = request.support if x < c or x > d: - return {"membership": 0.0} + return { + "membership": 0.0, + "explanation": "El valor está fuera del soporte, por eso la pertenencia es 0." + } if a <= x <= b: - return {"membership": 1.0} + return { + "membership": 1.0, + "explanation": "El valor está dentro del núcleo, por eso la pertenencia es 1." + } if c <= x < a: - return {"membership": linear_interpolation(x, request.left_nodes)} + mu = linear_interpolation(x, request.left_nodes) + return { + "membership": mu, + "explanation": "El valor está en el lado izquierdo y se interpola entre nodos." + } if b < x <= d: - return {"membership": linear_interpolation(x, request.right_nodes)} + mu = linear_interpolation(x, request.right_nodes) + return { + "membership": mu, + "explanation": "El valor está en el lado derecho y se interpola entre nodos." + } - return {"membership": 0.0} + return { + "membership": 0.0, + "explanation": "No se pudo determinar la pertenencia." + } # -----------------------------