Skip to content

Add a diagonalization section to the references page, and name the executables - #151

Open
Ooolab wants to merge 1 commit into
ALPSim:mainfrom
Ooolab:docs/add-references
Open

Add a diagonalization section to the references page, and name the executables#151
Ooolab wants to merge 1 commit into
ALPSim:mainfrom
Ooolab:docs/add-references

Conversation

@Ooolab

@Ooolab Ooolab commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Adds the missing diagonalization entry to /documentation/pubs/refs/ and tidies the section headings.

New: Exact and full diagonalization — sparsediag and fulldiag

sparsediag and fulldiag ship in every release and are used throughout the ED tutorials, but had no entry on this page. Added directly after the scheduler, covering applications/diag/:

Implementation papers

B. Bauer, L. D. Carr, H. G. Evertz, A. Feiguin, … and S. Wessel, The ALPS project release 2.0: open source software for strongly correlated systems, J. Stat. Mech. 2011, P05001 (2011).

Algorithm papers

C. Lanczos, An iteration method for the solution of the eigenvalue problem of linear differential and integral operators, J. Res. Natl. Bur. Stand. 45, 255-282 (1950).

The ALPS 2.0 entry reuses the existing bauer2011.bib — the homepage Cite button already points at it — rather than duplicating the record. This is the paper's first appearance on the references page itself. lanczos1950.bib is new; its DOI (10.6028/jres.045.026) was checked against the publisher record before being written.

Button counts follow the existing convention: ALPS 2.0 gets Journal / arXiv / Scholar / BibTeX (it has preprint 1101.2646), Lanczos gets Journal / Scholar / BibTeX (1950, predates arXiv) — same as the Swendsen–Wang and Wolff entries.

Dropped the redundant "ALPS" from two headings

Before After
ALPS Parallel Monte Carlo Scheduler Parallel Monte Carlo Scheduler
ALPS-DMFT: CT-QMC Impurity Solvers and Dynamical Mean-Field Theory DMFT: CT-QMC Impurity Solvers and Dynamical Mean-Field Theory

This is the ALPS site's own references page, so the prefix carried no information.

Named the executables in the remaining sections

Every section that has a binary now follows the X — app pattern the rest of the page already used:

Section Executables
Parallel Monte Carlo Scheduler (library, none)
Exact and full diagonalization sparsediag, fulldiag
Classical Monte Carlo for Spin Models spinmc
Loop Algorithm QMC looper
The Directed Loop code in SSE representation dirloop_sse
Worm code worms
Quantum Wang-Landau Flat-Histogram QMC qwl
DMFT: CT-QMC Impurity Solvers… dmft, interaction, hybridization
DMRG dmrg

Two deliberate omissions:

  • hirschfye is left out of the DMFT heading. It builds from the same applications/dmft/qmc/ directory, but Hirsch-Fye is a discrete-time auxiliary-field method — listing it under a heading that says CT-QMC would be inaccurate. The Source: line still covers it.
  • Post-processing helpers are omitted (dirloop_sse_evaluate, fulldiag_evaluate), matching how spinmc, qwl and looper already read even though their *_evaluate tools also ship.

Executable names were taken from the ALPS CMakeLists.txt files rather than guessed: sse4 builds dirloop_sse (the current solver), sse holds the legacy dirloop_sse_v1, sse2 builds no executable, and the dmft_* targets under applications/dmft/qmc/ are test binaries.

Applied identically to en, zh-cn and ja — the page is in English on all three, so the files stay byte-identical.

Test plan

  • hugo --gc builds clean
  • All 23 /data/*.bib targets referenced by the page resolve in the built output
  • Rendered section verified: citation lines, author lists and button rows all present
  • Lanczos DOI confirmed against the publisher record before writing the BibTeX
  • Confirmed no internal anchor links pointed at the two renamed headings, so nothing breaks
  • Visual check of the page in a browser

Unrelated pre-existing issue noticed while checking: daley2004.bib, dolfi2014.bib, schollwock2011.bib, vidal2004.bib and white2004.bib sit unreferenced in static/data/, orphaned by the TEBD removal in #100. Left alone here as out of scope.

🤖 Generated with Claude Code

…ecutables

The exact and full diagonalization codes had no entry on the references
page even though sparsediag and fulldiag ship in every release and are
used throughout the ED tutorials. New section placed directly after the
scheduler, covering applications/diag/:

  Implementation  Bauer et al., J. Stat. Mech. 2011, P05001 (2011)
  Algorithm       Lanczos, J. Res. Natl. Bur. Stand. 45, 255 (1950)

The ALPS 2.0 paper reuses the existing bauer2011.bib, which the homepage
Cite button already points at; this is its first appearance on the
references page itself. lanczos1950.bib is new, with the DOI checked
against the publisher record before being written.

Also drops the redundant "ALPS" from two headings -- this is the ALPS
site's own references page -- and names the executables in the two
sections that were still missing them, so every section that has a
binary now follows the "X -- `app`" pattern used by the rest:

  ALPS Parallel Monte Carlo Scheduler  ->  Parallel Monte Carlo Scheduler
  ALPS-DMFT: ...                       ->  DMFT: ... -- `dmft`,
                                           `interaction`, `hybridization`
  The Directed Loop code in SSE ...    ->  ... -- `dirloop_sse`

hirschfye is deliberately left out of the DMFT heading: it ships in the
same directory but is a discrete-time auxiliary-field method, so it does
not belong under a CT-QMC label. The Source line still covers it.
Post-processing helpers such as dirloop_sse_evaluate are likewise
omitted, matching how spinmc, qwl and looper already read.

No internal anchor links pointed at the two renamed headings, so no
links break.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@Ooolab
Ooolab requested review from egull and vws100 September 10, 2026 06:23
@Ooolab

Ooolab commented Sep 10, 2026

Copy link
Copy Markdown
Contributor Author

Some section titles were changed so that they look consistent. References were from the overleaf table, as @vws100 suggested. Do they look ok?

@egull egull left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. I think the Lanczos implementation paper is also a good twist, though the fulldiag code really uses a simple dsyev call, rather than the iterative Lanczos. Let's leave it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants