From 4f6aef43592503714066cb9687908da6734bdbc6 Mon Sep 17 00:00:00 2001 From: ftong Date: Mon, 30 Jun 2025 18:40:09 +0200 Subject: [PATCH] Update src/seismic_hazard_forecasting.py --- src/seismic_hazard_forecasting.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/seismic_hazard_forecasting.py b/src/seismic_hazard_forecasting.py index e4a9679..be6721f 100644 --- a/src/seismic_hazard_forecasting.py +++ b/src/seismic_hazard_forecasting.py @@ -33,11 +33,17 @@ def apply_beast(act_rate, **kwargs): ncp_median = int(result.trend.ncp_median) # No need for np.max if it's scalar cp_probs = result.trend.cpPr[:ncp_median] cps = result.trend.cp[:ncp_median] + sorted_indices = np.argsort(cps) + sorted_cps = cps[sorted_indices] + sorted_probs = cp_probs[sorted_indices] else: if not np.isnan(result.trend.ncp_pct90): ncp_pct90 = int(result.trend.ncp_pct90) cp_probs = result.trend.cpPr[:ncp_pct90] cps = result.trend.cp[:ncp_pct90] + sorted_indices = np.argsort(cps) + sorted_cps = cps[sorted_indices] + sorted_probs = cp_probs[sorted_indices] else: # Optional fallback in case both are NaN cp_probs = [] @@ -54,9 +60,9 @@ def apply_beast(act_rate, **kwargs): # cps = result.trend.cp[:ncp_pct90] # Sort the change points and corresponding probabilities - sorted_indices = np.argsort(cps) - sorted_cps = cps[sorted_indices] - sorted_probs = cp_probs[sorted_indices] + #sorted_indices = np.argsort(cps) + #sorted_cps = cps[sorted_indices] + #sorted_probs = cp_probs[sorted_indices] # Store the sorted change points and probabilities prob.append(np.column_stack((sorted_probs, sorted_cps)))