Skip to content

ITensor/ITensorMPOConstruction.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

94 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ITensorMPOConstruction

Stable Dev Build Status Coverage Code Style: Blue DOI

A fast algorithm for constructing a Matrix Product Operator (MPO) from a sum of local operators. This is a replacement for ITensorMPS.MPO(os::OpSum, sites::Vector{<:Index}). If julia is started with multiple threads, they are used to transparently speed up the construction.

The three goals of this library are

  1. Produce exact MPOs (up to floating point error) of the smallest possible bond dimension.
  2. Maximize the block sparsity of the resulting MPOs.
  3. Accomplish these goals as fast as possible.

ITensorMPOConstruction is not designed to construct approximate compressed MPOs. If this is your workflow, construct the exact MPO then call ITensorMPS.truncate!.

Installation

The package is currently not registered. Please install with the commands:

julia> using Pkg; Pkg.add(url="https://github.com/ITensor/ITensorMPOConstruction.jl.git")

Citing

If you use this library in your research, please cite the following article https://doi.org/10.1103/nzrt-l2j1

Questions or Issues

In addition to GitHub issues, you can ask question on the ITensors discourse.

About

Alternative backends for constructing MPOs from sums of operators.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages