4cfa946315e9ba6f111df4bd0d82102ff44a2454
The model already gave every coil its own sensor, its own sensor->coil distance, and searched inter-coil gaps (all of which set when each later coil fires) -- confirmed on a 3-stage run. Two refinements from user feedback: - Each stage's sensor must sit in the gap BEFORE its coil, not overlap the previous coil: repair() now clamps sensor_to_coil_distance < gap for stages > 0. sample_genome now also routes through repair() (it didn't before, so freshly sampled genomes skipped every physical constraint). Verified: 161/780 previously-overlapping sensors -> 0. - build_detail now records each sensor's absolute position along the tube (sensor_position_m), not just the relative distance, so it's clear where every stage's sensor physically sits. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
gausse
Симулятор и оптимизатор многоступенчатого электромагнитного ускорителя (coilgun) на реальных, доступных в рознице компонентах.
Полный план и чек-лист этапов — в PLAN.md.
Установка (Docker — основной способ)
docker compose build
docker compose run --rm --entrypoint pytest gausse -q # тесты
docker compose run --rm gausse sweep --n 1000 # CLI (после реализации Этапа 6)
Результаты (SQLite, отчёты) должны сохраняться в ./results, примонтированный
в контейнер как /app/results (см. docker-compose.yml), чтобы переживать
пересборку образа.
Установка без Docker (локальная разработка)
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
pytest
Description
v0.1.0
Latest
Languages
Python
98.9%
Shell
0.9%
Dockerfile
0.2%