This is a clean scaffold of your repo with:
- Papers I–X as standalone LaTeX (each has a self-contained
.bib, robust figure handling, references last). - A workflow that runs your pipeline (
make bench,make phase,make figs) and generates the exact paper figures the TeX expects, committing them back intopaperN/figs/. - A starter
scripts/generate_paper_figs.pythat readsrun_report.jsonand writes the expected filenames for Papers I–III now (extend similarly for IV–X as their data exist).
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
# Your pipeline (replace with your real steps)
make bench
make phase
make figs
# Generate paper figures from run_report.json
python scripts/generate_paper_figs.py
# Compile a paper (needs LaTeX on your system)
cd paper1 && pdflatex paper_I.tex && bibtex paper_I && pdflatex paper_I.tex && pdflatex paper_I.texOn any push, the workflow .github/workflows/fig-autobuild.yml will:
- Set up Python and install deps from
requirements.txt. - Run
make bench && make phase && make figs(replace with your real pipeline). - Run
python scripts/generate_paper_figs.pyto overwrite placeholder images with real ones. - Commit updated
paper1/figs/*.png,paper2/figs/*.png,paper3/figs/*.pngback to the repo.
Extend
scripts/generate_paper_figs.pywith your outputs for Papers IV–X, then add those paths to the workflow's commit step.
- Put your actual simulation/analysis code under
bench/,src/,figs/, and write numeric summaries torun_report.json. - The figure generator expects keys as shown in the example
run_report.jsonin repo root (edit to match your outputs).
- Figures currently include placeholders generated from
run_report.json. Once your real pipeline writes that file (and/or additional CSVs), rerun the workflow and the figures will be replaced automatically.