Update src/seismic_hazard_forecasting.py

This commit is contained in:
ftong 2025-06-30 18:40:09 +02:00
parent 152f1cf9c3
commit 4f6aef4359

View File

@ -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 ncp_median = int(result.trend.ncp_median) # No need for np.max if it's scalar
cp_probs = result.trend.cpPr[:ncp_median] cp_probs = result.trend.cpPr[:ncp_median]
cps = result.trend.cp[: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: else:
if not np.isnan(result.trend.ncp_pct90): if not np.isnan(result.trend.ncp_pct90):
ncp_pct90 = int(result.trend.ncp_pct90) ncp_pct90 = int(result.trend.ncp_pct90)
cp_probs = result.trend.cpPr[:ncp_pct90] cp_probs = result.trend.cpPr[:ncp_pct90]
cps = result.trend.cp[: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: else:
# Optional fallback in case both are NaN # Optional fallback in case both are NaN
cp_probs = [] cp_probs = []
@ -54,9 +60,9 @@ def apply_beast(act_rate, **kwargs):
# cps = result.trend.cp[:ncp_pct90] # cps = result.trend.cp[:ncp_pct90]
# Sort the change points and corresponding probabilities # Sort the change points and corresponding probabilities
sorted_indices = np.argsort(cps) #sorted_indices = np.argsort(cps)
sorted_cps = cps[sorted_indices] #sorted_cps = cps[sorted_indices]
sorted_probs = cp_probs[sorted_indices] #sorted_probs = cp_probs[sorted_indices]
# Store the sorted change points and probabilities # Store the sorted change points and probabilities
prob.append(np.column_stack((sorted_probs, sorted_cps))) prob.append(np.column_stack((sorted_probs, sorted_cps)))