Skip to content

Contains code for tackling 1 dimensional (quantum) problems using tensor network algorithms.

License

Notifications You must be signed in to change notification settings

DaanMaertens/MPSKit.jl

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MPSKit.jl

docs codecov CI

Contains code for tackling 1 dimensional quantum (and 2d classical) problems using tensor network algorithms. While it is still in beta, exported algorithms should just work. If you encounter an issue, feel free to open a bug report.

We implemented different algorithms for finding the groundstate (both finite and infinite systems), performing time evolution, finding excitations and much more. Check out the tutorials or examples (the documentation itself is still quite terse).

Installation

First, install this package by opening julia and pressing "]". Then type

pkg> add MPSKit

MPSKit works on Tensormap objects, which are defined in another package. You will have to add this pacakge as well to create the basic building blocks.

pkg> add TensorKit

Last but not least, we have already implemented a few hamiltonians in MPSKitModels.jl. It is recommended to install this package too.

pkg> add MPSKitModels

Quickstart

After following the installation process, you should now be able to call

julia> using MPSKit,MPSKitModels,TensorKit

You can create a random 1 site periodic infinite mps (bond dimension 10) by calling

julia> state = InfiniteMPS([ℂ^2],[ℂ^10]);

We can use a pre-defined hamiltonian from MPSKitModels

julia> hamiltonian = nonsym_ising_ham();

And find the groundstate

julia> (groundstate,_) = find_groundstate(state,hamiltonian,VUMPS());

About

Contains code for tackling 1 dimensional (quantum) problems using tensor network algorithms.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Julia 100.0%