The ITensor Software Library for Tensor Network Calculations
Matthew Fishman, Steven R. White, E. Miles Stoudenmire
SciPost Phys. Codebases 4 (2022) · published 23 August 2022
- doi: 10.21468/SciPostPhysCodeb.4
- live repo (external)
- Submissions/Reports
-
This Publication is part of a bundle
When citing, cite all relevant items (e.g. for a Codebase, cite both the article and the release you used).
DOI | Type | |
---|---|---|
10.21468/SciPostPhysCodeb.4 | Article | |
10.21468/SciPostPhysCodeb.4-r0.3 | Codebase release |
Abstract
ITensor is a system for programming tensor network calculations with an interface modeled on tensor diagram notation, which allows users to focus on the connectivity of a tensor network without manually bookkeeping tensor indices. The ITensor interface rules out common programming errors and enables rapid prototyping of tensor network algorithms. After discussing the philosophy behind the ITensor approach, we show examples of each part of the interface including Index objects, the ITensor product operator, tensor factorizations, tensor storage types, algorithms for matrix product state (MPS) and matrix product operator (MPO) tensor networks, quantum number conserving block-sparse tensors, and the NDTensors library. We also review publications that have used ITensor for quantum many-body physics and for other areas where tensor networks are increasingly applied. To conclude we discuss promising features and optimizations to be added in the future.
Cited by 62

Authors / Affiliations: mappings to Contributors and Organizations
See all Organizations.- 1 Matthew Fishman,
- 2 Steven White,
- 1 Edwin Stoudenmire