Dense keywords
About this backend
The dense backend uses NumPy
ndarray objects.
build_op and get_ops return labeled factories; the matrices are built
when a factory is called explicitly or by the dense backend at the start of
each calculation. Each argument is called independently, including repeated
references. Backend-specific solvers also require factories.
It uses SciPy’s dense Hermitian eigensolver for ED. XAS explicitly sums over all intermediate eigenstates, while RIXS explicitly sums over all intermediate and final eigenstates. These are the same exact spectral-decomposition formulas used by the legacy dense Python workflow.
The dense backend is useful for small problems, reference calculations, and pedagogy. It stores every matrix element and diagonalizes the intermediate Hamiltonian during each XAS or RIXS call; RIXS also diagonalizes the final Hamiltonian. The sparse and matrix-free SciPy representations avoid that storage cost and use iterative solvers for larger calculations.
Options are specific to the stage where they are supplied.
build_op and get_ops
Option |
Default |
Description |
|---|---|---|
|
|
Discard operator coefficients whose magnitude does not exceed this threshold. |
Here tol controls operator truncation.
ed
No backend-specific options.
xas
No backend-specific options.
rixs
No backend-specific options.