geoprior.scripts.plot_sm3_bounds_ridge_summary#

Plot bounds vs ridge summary.

Summarize two failure modes in SM3 synthetic runs: - “clipped to bounds” (inferred from observed extrema) - “ridge non-identifiability” (ridge_resid_q50 > threshold)

Panels#

  1. Bound hits (counts + %)

  2. Ridge residual distribution (with threshold)

  3. 2×2 matrix: clipped vs ridge (counts + %)

  4. Category fractions (overall or by lithology)

Outputs#

  • Figure: scripts/figs/<out>.png and <out>.svg

  • JSON summary: scripts/out/<out-json>

  • CSV category table: scripts/out/<out-csv>

Notes

Bounds are inferred from run extrema:

K_min/max = min/max(K_est_med_mps) tau_min/max = min/max(tau_est_med_sec) Hd_min/max = min/max(Hd_est_med)

Clipped modes:

Functions

build_category_table(df, flags)

compute_flags(df, bounds, *, rtol, ridge_thr)

infer_bounds(df)

main([argv, prog])

plot_sm3_bounds_ridge_summary(df, *, flags, ...)

plot_sm3_bounds_ridge_summary_main([argv, prog])

summarize_counts(flags, *, use)

Classes

BoundInfo(K_min, K_max, tau_min, tau_max, ...)

class geoprior.scripts.plot_sm3_bounds_ridge_summary.BoundInfo(K_min: 'float', K_max: 'float', tau_min: 'float', tau_max: 'float', Hd_min: 'float', Hd_max: 'float')[source]#

Bases: object

Parameters:
K_min: float#
K_max: float#
tau_min: float#
tau_max: float#
Hd_min: float#
Hd_max: float#
__init__(K_min, K_max, tau_min, tau_max, Hd_min, Hd_max)#
Parameters:
Return type:

None

geoprior.scripts.plot_sm3_bounds_ridge_summary.infer_bounds(df)[source]#
Parameters:

df (DataFrame)

Return type:

BoundInfo

geoprior.scripts.plot_sm3_bounds_ridge_summary.compute_flags(df, bounds, *, rtol, ridge_thr)[source]#
Parameters:
Return type:

dict[str, ndarray]

geoprior.scripts.plot_sm3_bounds_ridge_summary.summarize_counts(flags, *, use)[source]#
Parameters:
Return type:

dict[str, float]

geoprior.scripts.plot_sm3_bounds_ridge_summary.build_category_table(df, flags)[source]#
Parameters:
Return type:

DataFrame

geoprior.scripts.plot_sm3_bounds_ridge_summary.plot_sm3_bounds_ridge_summary(df, *, flags, bounds, ridge_thr, use, out, out_json, out_csv, dpi, font, show_legend, show_labels, show_ticklabels, show_title, show_panel_titles, show_panel_labels, paper_format, title)[source]#
Parameters:
Return type:

None

geoprior.scripts.plot_sm3_bounds_ridge_summary.plot_sm3_bounds_ridge_summary_main(argv=None, *, prog=None)[source]#
Parameters:
Return type:

None

geoprior.scripts.plot_sm3_bounds_ridge_summary.main(argv=None, *, prog=None)[source]#
Parameters:
Return type:

None