Your first calculation¶
Build and install · Supported models · Plotted tutorials
This walkthrough connects a small calculation to the quantities in its report.
Use installed commands on PATH, or run them with ./ from your build directory.
No Python is needed. First inspect the available arithmetic and providers:
bethe-info
Ground-state energy and conventions¶
bethe-xxx-pbc 4
This is the periodic spin-\(1/2\) Heisenberg chain, with four sites and \(H=\sum_j\mathbf S_j\cdot\mathbf S_{j+1}\), \(J=1\). Its ground-state total energy is \(-2\), and its energy per site is \(-1/2\). These use spin operators, not Pauli matrices; replacing each spin by a Pauli matrix multiplies the exchange energy by four.
Read the energy together with the convergence status, equation residual and iteration count. The residual measures how well the Bethe equations are satisfied; it is not a bound on the energy error. The report also gives CPU time. See convergence diagnostics for timing, budgets and exit statuses.
Change the boundaries or model¶
bethe-xxx-obc 4
bethe-xxz-pbc 4 --delta 0.5
The first command opens the chain, removing the bond between sites four and one. Open-chain standing waves do not carry a lattice momentum. The second keeps periodic boundaries but changes the anisotropy: the longitudinal \(S^zS^z\) coupling is half the transverse exchange.
Commands usually follow bethe-<model>-<boundary>: pbc is periodic and
obc is open. Open boundaries mean the specific boundaries in that model's
guide; for example, the quantum-group XXZ frontend has imaginary end fields,
whereas bethe-xxz-obc has free ends. Thermodynamic -dispersion tools solve
a different problem from finite-chain energies.
Select a sector or excitation family¶
bethe-xxx-pbc 16 --sz 1
bethe-xxx-pbc 16 --excitations 10 --spin 1
The first command finds the minimum in a specified magnetization sector.
The second enumerates a supported real-root excitation family with total
spin one, including its minimum, and reports gaps relative to the global
ground state. It does not enumerate the whole spectrum. In a scan,
--excitations all means all states in the documented family or window.
For XXZ, magnetization --sz remains a good quantum number, while total spin
generally does not. XXX states and excitations explains the
labels and restrictions before larger scans.
Inspect roots and save results¶
bethe-xxx-pbc 4 --roots
bethe-xxx-pbc 4 --csv-table states=xxx-four-site.csv
--roots shows rapidities and quantum numbers on screen. A table export writes
that table independently of screen output. Table names belong to the frontend;
its --help lists the valid choices. CSV/TSV carry provenance comments before
the header, and JSON carries structured metadata. The output guide
shows how to read them in plotting programs.
Use --help for options and --references for the literature used by a tool.
Commands run without numerical arguments show help rather than guessing a
system size.
Increase precision deliberately¶
The default is binary64. In suitable configured builds:
bethe-xxx-pbc 4 --precision long-double
bethe-xxx-pbc 4 --precision fp128
bethe-xxx-pbc 4 --precision digits-100
The last command requests explicit MPFR arithmetic. Its availability depends
on the build configuration.
bits-128 means 128 significand bits; it is different from fp128, which has
113. More bits do not repair a missing state family, an insufficient quadrature
mesh or an iteration limit. Compare converged calculations with suitable work
budgets, and consult the precision tutorial.
Next steps¶
Choose a supported model, or start a plotted tutorial on XXZ spinons, Hubbard spin and charge excitations, or XXX spectral weights. For MPS comparisons, match the Hamiltonian normalization, momentum convention, energy reference and operator normalization before comparing curves.