# ITensor Library Classes and Methods # Detailed information about every method and function in the ITensor library. The documentation may omit minor details that do not change how you use a method, like describing a particular function as `f(ITensor T)` even though its actual signature is `f(ITensor const& T)`. ## Utilities * [[Reading and Writing Objects to Disk|classes/readwrite]] * [[Support for MPI (Message Passing Interface) Parallelism|classes/parallel]] * Support for working with lattices: - [[LatticeBond Objects|classes/latticebond]] - [[Functions for Making Lattices|classes/lattice_functions]] * [[BondGate|classes/bondgate]] - type for making quantum circuits or time-evolution gates ## Index * [[Index|classes/index]]. Tensor index. * Special Index modes: - [[QN Index|classes/index_qn]]. Index carrying QN block information. * [[IndexVal|classes/indexval]]. Index-value pair. * [[IndexSet|classes/indexset]]. Container for storing indices. * [[QN|classes/qn]]. Abelian quantum numbers. ## ITensor * [[ITensor|classes/itensor]]. The elementary tensor type.
* Sparse ITensors: - [[QN ITensor|classes/qnitensor]] - [[Single Element ITensor|classes/single_itensor]] - [[Combiner|classes/combiner]] - [[Delta and Diagonal ITensor|classes/diag_itensor]] * [[Tensor Decompositions|classes/decomp]]. Singular value decomposition, density matrix diagonalization, etc. ## Matrix product states (MPS) and matrix product operators (MPO) * [[SiteSet|classes/siteset]]. Collection of site objects, defining a Hilbert space and local operators.
- [[SpinHalf and SpinHalfSite|classes/spinhalf]]. S=1/2 spin sites.
- [[SpinOne and SpinOneSite|classes/spinone]]. S=1 spin sites.
- [[Boson and BosonSite|classes/boson]]. Spinless boson sites with adjustable max occupancy.
- [[Fermion and FermionSite|classes/fermion]]. Spinless fermion sites.
- [[Electron and ElectronSite|classes/electron]]. Spinful fermion sites.
- [[tJ and tJSite|classes/tj]]. t-J model sites.
- [[CustomSpin and CustomSpinSite|classes/customspin]]. Spin sites with custom spin S size.
* [[InitState|classes/initstate]]. Helper object for initializing product-state MPS.
* [[MPS|classes/mps]]. Matrix product state class.
* [[MPO|classes/mpo]]. Matrix product operator class.
* [[Algorithms for MPS and MPO|classes/mps_mpo_algs]].
* [[AutoMPO|classes/autompo]]. System for making MPOs from sums of local operators.
* [[Time Evolution of MPS|classes/tevol]]. Methods for time evolving MPS. ## Density matrix renormalization group (DMRG) * [[Sweeps|classes/sweeps]]. Class for specifying DMRG accuracy parameters. * [[DMRG|classes/dmrg]]. Interface for running DMRG calculations.