Remove the generated n-body terms PDF and its make_pdf.py script

Open
#265 0 comments 0 reactions 1 assignee View on GitHub

Maintainers usually reply within 3 days

@Ooolab is already working on this.

Since Oct 28, 2026.

Assessment

This issue has not been assessed yet.

Description

area:dmrg area:ed documentation

src/alps/model/docs/n_body_terms/ contains a committed PDF (ALPS_n_body_terms.pdf) and the script that generates it (pdf_source/make_pdf.py, a 615-line reportlab script). Both came in with #223. They should be removed.

Most of the PDF's text is hard-coded prose in the script, not something read from the code. Examples on master:

  • make_pdf.py:506: "Full ctest: 936/936 pass."
  • make_pdf.py:537: "Only exact diagonalization supports n-site terms for now; DMRG and the QMC codes refuse them."
  • make_pdf.py:516-525: a hand-written table of changed source files.

Any later change makes this text wrong, and nothing catches it. #263 already shows this: it adds n-site terms to dmrg and edits make_pdf.py to match, but it does not regenerate ALPS_n_body_terms.pdf. After that merge, the committed PDF still says dmrg refuses n-site terms. The generator also needs reportlab and fonts that ALPS does not otherwise use.

The benchmarks under benchmarks/ (scripts and results/) and the syntax reference nsite_terms.md stay. They check the feature and are useful. Only the PDF and its tooling go.

To remove:

  • src/alps/model/docs/n_body_terms/ALPS_n_body_terms.pdf
  • src/alps/model/docs/n_body_terms/pdf_source/make_pdf.py
  • src/alps/model/docs/n_body_terms/pdf_source/data/fulldiag_runs.txt: read only by make_pdf.py.
  • The ALPS_n_body_terms.pdf and pdf_source/ entries in src/alps/model/docs/n_body_terms/README.md.

To decide: the worked example in pdf_source/ (lattice.xml, model.xml, parm), dump_nsite_group.cpp and data/alps_dump_K*.txt. They are only used by make_pdf.py. Either delete them too, or keep the example input as a plain example next to nsite_terms.md.

The same rule should apply going forward: no scripts that render results into PDFs with hard-coded text. Results go in benchmarks/results/ as plain text produced by the scripts that compute them.

Dominant language
C++
Stars
32
Forks
10
Avg merge
4d 6h
Merged PRs (30d)
51

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from ALPSim/ALPS

All issues in ALPSim/ALPS

Similar issues

More C++ issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.