LBMS_SIM/scripts/run_monte_carlo.py
2026-10-21 14:14:51 +02:00

21 lines
816 B
Python

"""Run repeated experiments and save error distributions and metrics."""
from pathlib import Path
import sys
sys.path.insert(0, str(Path(__file__).resolve().parents[1] / "src"))
from mdsmap_sim.experiment import run_monte_carlo
from mdsmap_sim.plots import plot_error_distribution
from mdsmap_sim.utils import ensure_output_dirs, load_config
root = Path(__file__).resolve().parents[1]
config = load_config(root / "config" / "default.yaml")
figures, tables = ensure_output_dirs(root / config["output_dir"])
metrics, errors = run_monte_carlo(config)
metrics.to_csv(tables / "monte_carlo_metrics.csv", index=False)
errors.to_csv(tables / "monte_carlo_errors.csv", index=False)
plot_error_distribution(errors, figures / "error_distribution.png")
print(metrics.groupby("method").mean(numeric_only=True).to_string())