DMRGConfig#

class cuquantum.densitymat.DMRGConfig(
num_sites: int | None = None,
svd_config: SVDConfig | None = None,
max_sweeps: int | None = None,
energy_tolerance: float | None = None,
max_power_iterations: int | None = None,
)[source]#

Configuration shared by the DMRG split decompositions.

Parameters:
  • num_sites – Number of sites swept per local update. 1 for 1-site DMRG, 2 for 2-site DMRG. Defaults to 1 when None. Shift-invert supports both values, but its 2-site path currently requires at least three MPS tensors; 1-site remains supported for a two-tensor MPS.

  • svd_config – SVD truncation policy for the 2-site sweep (SVDConfig).

  • max_sweeps – Maximum number of full L-R-L sweeps. For shift-invert, this is the fitting-sweep cap for each inverse application. Defaults to 20 when None.

  • energy_tolerance – Convergence threshold on the change in variational energy between consecutive sweeps for ground-state DMRG, or between consecutive outer Rayleigh quotients for shift-invert. Defaults to 1e-10 when None.

  • max_power_iterations – Maximum number of outer power iterations on (H - sigma)^{-1} for the shift-invert DMRG split kind; ignored by the ground-state DMRG split kind. Defaults to 10 when None.