/
bari
/
HPLSE-poster-code
Обзор
Документация
Войти
/
bari
/
HPLSE-poster-code
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
Репозиторий помещен в архив 16 июня 2026. Вся функциональность доступна только для чтения.
main
examples/common.py
42 строки
1 KB
bari
Add time-domain and overdense plasma examples
13 апр 2026, 01:26
13 апр 2026, 01:26
a33d224
Код
Авторство
О чём код?
"""Helpers for runnable examples.""" from __future__ import annotations import json import os import pathlib import sys import tempfile from datetime import datetime os.environ.setdefault("MPLCONFIGDIR", tempfile.gettempdir()) import matplotlib.pyplot as plt ROOT = pathlib.Path(__file__).resolve().parents[1] if str(ROOT) not in sys.path: sys.path.insert(0, str(ROOT)) def create_run_dir(example_dir: pathlib.Path) -> pathlib.Path: """Create a result directory for one example run.""" run_name = datetime.now().strftime("%Y%m%d-%H%M%S") run_dir = example_dir / run_name run_dir.mkdir(parents=True, exist_ok=True) return run_dir def save_figure(fig, output_path: pathlib.Path) -> None: """Save a figure and close it.""" fig.savefig(output_path, bbox_inches="tight") plt.close(fig) def save_metadata(output_path: pathlib.Path, metadata: dict[str, object]) -> None: """Write metadata as JSON.""" output_path.write_text(json.dumps(metadata, indent=2, sort_keys=True), encoding="utf-8") def result_metadata(result, mode_index: int | None = None) -> dict[str, object]: """Return metadata for the pulse or one selected mode.""" return result.export_metadata(mode_index=mode_index)