Structure

The tree structure of the code is shown as follow. The corresponding utilities would be explained soon.

gcmps
├── build                # Makefile 
│   ├── CMakeFiles
│   ├── mps
│   └── test
├── gtensor              # gtensor Library
│   ├── numeric
│   ├── parallel
│   ├── util
│   └── varray
├── gtensor_blas_lapack  # gtensor Library 
│   ├── blas
│   └── lapack
├── gtensor_operation    # gtensor Library 
│   ├── generic
│   └── ndtensor
├── hdf5                 # hdf5 
│   └── hdf5
├── mps                  # MPS/MPO Core 
│   ├── generic
│   ├── mpsbase
│   └── split
├── mpslearn            
├── qtensor              # qtensor Library 
│   ├── numeric
│   └── util
├── qtensor_operation    # qtensor Library 
│   └── ndqtensor
├── test                 # Realization interface
└── testmpslearn
    └── data

30 directories

Realization interface

The realization of your program is done here where you write up your implementation of your Hamiltonian or dissipator, and proceed for DMRG, tMPS, or TEBD.

MPS/MPS Core

Implementation of

  • MPS and MPO class
  • Time evolution scheme
    • tMPS
    • TEBD
  • DMRG scheme

gTensor dense tensor library

supports dense tensor operations

  • tensor arithmetic
  • contract
  • directSum
  • fusion
  • svdCompress
  • qrCompress
  • deparallise
  • permute

qTensor dense tensor library (with quantum numbers)

supports dense tensor operations with quantum numbers. The quantum numbers are used for symmetry matrix product state.

  • tensor arithmetic
  • contract
  • directSum
  • fusion
  • tieIndex
  • svdCompress
  • qrCompress
  • deparallise
  • permute