GroundStateSearch

class ttnopt.GroundStateSearch(psi: TreeTensorNetwork, hamiltonian: Hamiltonian, init_bond_dim: int = 4, max_bond_dim: int = 16, energy_degeneracy_threshold: float = 1e-13, entanglement_degeneracy_threshold: float = 0.1)[source]

Bases: PhysicsEngine

A class for ground state search algorithm based on DMRG. :param psi: The quantum state. :type psi: TreeTensorNetwork :param hamiltonians: Hamiltonian which is list of Observable. :type hamiltonians: Hamiltonian :param init_bond_dim: Initial bond dimension. Defaults to 4. :type init_bond_dim: int, optional :param max_bond_dim: Maximum bond dimension. Defaults to 16. :type max_bond_dim: int, optional

__init__(psi: TreeTensorNetwork, hamiltonian: Hamiltonian, init_bond_dim: int = 4, max_bond_dim: int = 16, energy_degeneracy_threshold: float = 1e-13, entanglement_degeneracy_threshold: float = 0.1)[source]

Initialize a DMRG object.

Parameters:
  • psi – The quantum state.

  • hamiltonians – The Hamiltonian.

  • init_bond_dim – Initial bond dimension.

  • max_bond_dim – Maximum bond dimension.

  • truncation_error – Maximum truncation error.

run(opt_structure: int = 0, energy_convergence_threshold: float = 1e-08, entanglement_convergence_threshold: float = 1e-08, max_num_sweep: int = 10, converged_count: int = 2, eval_onesite_expval: bool = False, eval_twosite_expval: bool = False, temperature: float = 0.0, tau: int = 0)[source]

Run DMRG algorithm.

Parameters:
  • opt_structure (bool, optional) – If optimize the tree structure or not. Defaults to False.

  • energy_convergence_threshold (float, optional) – Energy threshold for convergence. Defaults to 1e-8.

  • entanglement_convergence_threshold (float, optional) – Entanglement entropy threshold for automatic optimization. Defaults to 1e-8.

  • converged_count (int, optional) – Converged count. Defaults to 1.

  • eval_onesite_expval (bool) – If evaluate one-site expectation value or not.

  • eval_twosite_expval (bool) – If evaluate two-site expectation value or not.