VMPS++
|
Choice of tool to perfom the sweeping.
Definition at line 259 of file DmrgTypedefs.h.
#include <DmrgTypedefs.h>
Public Types | |
enum | OPTION { QR , SVD , BRUTAL_SVD , RDM , RICH_SVD , QR_NULL } |
enum DMRG::BROOM::OPTION |
Enumerator | |
---|---|
QR | Uses the QR decomposition. It is the fastest of all options, but preserves the matrix sizes, so that neither truncation nor growth can occur. Since the singular values are not computed, no entropy can be calculated and is therefore set to |
SVD | Uses the singular value decomposition. All singular values below eps_truncWeight are cut off.
|
BRUTAL_SVD | Uses the singular value decomposition, but imposes a limit on the matrix sizes. Only the first DmrgJanitor::N_sv singular values per symmetry block are kept. This option can be useful to generate starting points for variational procedures.
|
RDM | Uses diagonalization of the reduced density matrix. Adds a noise term multiplied by DmrgJanitor::eps_noise. All eigenvalues smaller than DmrgJanitor::eps_rdm are cut off. (Note that the eigenvalues are the singular values squared, so DmrgJanitor::eps_noise must be chosen accordingly). |
RICH_SVD | Uses an enrichment scheme, a.k.a. the "Strictly Single-Site (SSS) algorithm" according to Hubig et al. (2015). The matrices are enlarged with non-local information times DmrgJanitor::eps_rsvd, then the usual SVD is performed (using DmrgJanitor::eps_truncWeight as a cutoff parameter). Note that DmrgJanitor::eps_rsvd is a much less sensitive parameter than DmrgJanitor::eps_rdm and can be even kept equal to 1 (but this will result in larger than optimal matrix sizes).
|
QR_NULL | Computes the null space only using full QR decomposition. |
Definition at line 261 of file DmrgTypedefs.h.