block2 can be used via many different interfaces.
Like many quantum chemistry packages,
block2 can be used by reading parameters and instrutions from a formatted input file.
This interface is
See Input File: Basic Usage, Input File: Advanced Usage, and Input File: Keywords.
Interfaces for DMRGSCF
Python Interface (high level)
Python Interface (low level)
Test Ground-State DMRG (need pyscf module):
python3 -m pyblock2.gsdmrg
Test Finite-Temperature (FT)-DMRG (need pyscf module):
python3 -m pyblock2.ftdmrg
Test Low-Temperature (LT)-DMRG (need pyscf module):
python3 -m pyblock2.ltdmrg
Test Green’s-Function (GF)-DMRG (DDMRG++) (need pyscf module):
python3 -m pyblock2.gfdmrg
Test State-Interaction (SI)-DMRG (need pyscf module):
python3 -m pyblock2.sidmrg
Input File (C++ Executable)
Example input file for binary executable
rand_seed = 1000 memory = 4E9 scratch = ./scratch pg = c1 fcidump = data/HUBBARD-L16.FCIDUMP n_threads = 4 qc_type = conventional # print_mpo print_mpo_dims print_fci_dims print_mps_dims bond_dims = 500 noises = 1E-6 1E-6 0.0 center = 0 dot = 2 n_sweeps = 10 tol = 1E-7 forward = 1 noise_type = perturbative trunc_type = physical
To run this example:
block2 is designed as a header-only C++ library, it can be conveniently executed
using C++ interpreter [cling](https://github.com/root-project/cling)
(which can be installed via [anaconda](https://anaconda.org/conda-forge/cling))
without any compilation. This can be useful for testing small changes in the C++ code.
Example C++ code for
cling can be found at