| 
    VMPS++
    
   | 
 
Base class for all the sweeping stuff. Needs to know PivotMatrixType because sweeps using DMRG::BROOM::RDM and DMRG::BROOM::RICH_SVD involve non-local information, i.e. knowledge of the transfer matrices and the Hamiltonian (given by PivotMatrix1). 
Definition at line 28 of file DmrgJanitor.h.
#include <DmrgJanitor.h>

Public Member Functions | |
| DmrgJanitor () | |
| DmrgJanitor (size_t L_input) | |
| void | set_defaultCutoffs () | 
| void | set_pivot (int pivot_input) | 
| void | sweep (size_t loc, DMRG::BROOM::OPTION TOOL, PivotMatrixType *H=NULL) | 
| void | skim (DMRG::DIRECTION::OPTION DIR, DMRG::BROOM::OPTION TOOL, PivotMatrixType *H=NULL) | 
| void | skim (DMRG::BROOM::OPTION TOOL, PivotMatrixType *H=NULL) | 
| void | entropy_skim () | 
| void | sweepStep (DMRG::DIRECTION::OPTION DIR, size_t loc, DMRG::BROOM::OPTION TOOL, PivotMatrixType *H=NULL, bool DISCARD_U_or_V=false) | 
| virtual void | rightSweepStep (size_t loc, DMRG::BROOM::OPTION TOOL, PivotMatrixType *H=NULL, bool DISCARD_V=false) | 
| virtual void | leftSweepStep (size_t loc, DMRG::BROOM::OPTION TOOL, PivotMatrixType *H=NULL, bool DISCARD_U=false) | 
| size_t | length () const | 
Public Attributes | |
| double | eps_svd | 
| double | eps_truncWeight | 
| double | alpha_rsvd | 
| size_t | max_Nsv | 
| size_t | min_Nsv | 
| int | max_Nrich | 
Protected Attributes | |
| int | pivot = -1 | 
| size_t | N_sites | 
| DmrgJanitor< PivotMatrixType >::DmrgJanitor | 
Definition at line 117 of file DmrgJanitor.h.
| DmrgJanitor< PivotMatrixType >::DmrgJanitor | ( | size_t | L_input | ) | 
Definition at line 124 of file DmrgJanitor.h.
| void DmrgJanitor< PivotMatrixType >::entropy_skim | 
Like skim, but sets eps_svd temporarily to 0.
Definition at line 176 of file DmrgJanitor.h.
      
  | 
  inlinevirtual | 
Core function for a sweep to the left. Just a virtual placeholder in DmrgJanitor, overwritten by Mps with the real code.
| loc | : Sweeps to the left from the site loc, updating the A-matrices at loc and loc-1, shifting the pivot to loc-1.  | 
| TOOL | : with which broom to sweep, see DMRG::BROOM::OPTION | 
| H | : Non-local information for DMRG::BROOM::RDM and DMRG::BROOM::RICH_SVD enters thorugh here. | 
| DISCARD_U | If true, don't multiply the U-matrix onto the next site  | 
Reimplemented in Mps< Symmetry, Scalar >.
Definition at line 87 of file DmrgJanitor.h.
      
  | 
  inline | 
Returns the length of the chain.
Definition at line 92 of file DmrgJanitor.h.
      
  | 
  inlinevirtual | 
Core function for a sweep to the right. Just a virtual placeholder in DmrgJanitor, overwritten by Mps with the real code.
| loc | : Sweeps to the right from the site loc, updating the A-matrices at loc and loc+1, shifting the pivot to loc+1.  | 
| TOOL | : with which broom to sweep, see DMRG::BROOM::OPTION | 
| H | : Non-local information for DMRG::BROOM::RDM and DMRG::BROOM::RICH_SVD enters thorugh here. | 
| DISCARD_V | If true, don't multiply the V-matrix onto the next site  | 
Reimplemented in Mps< Symmetry, Scalar >.
Definition at line 78 of file DmrgJanitor.h.
| void DmrgJanitor< PivotMatrixType >::set_defaultCutoffs | 
Definition at line 132 of file DmrgJanitor.h.
      
  | 
  inline | 
Definition at line 104 of file DmrgJanitor.h.
| void DmrgJanitor< PivotMatrixType >::skim | ( | DMRG::BROOM::OPTION | TOOL, | 
| PivotMatrixType * | H = NULL  | 
        ||
| ) | 
Makes a full sweep to the opposite edge. Mainly useful for testing purposes. Asserts that the pivot is = 0 or = N_sites-1. 
| TOOL | : with which broom to sweep, see DMRG::BROOM::OPTION | 
| H | : Non-local information for DMRG::BROOM::RDM and DMRG::BROOM::RICH_SVD enters thorugh here. | 
Definition at line 160 of file DmrgJanitor.h.
| void DmrgJanitor< PivotMatrixType >::skim | ( | DMRG::DIRECTION::OPTION | DIR, | 
| DMRG::BROOM::OPTION | TOOL, | ||
| PivotMatrixType * | H = NULL  | 
        ||
| ) | 
Makes a full sweep to the left or right. Mainly useful for testing purposes. Asserts that the pivot is =-1 or at the opposite edge. 
| DIR | : If DMRG::DIRECTION::LEFT, sweeps to left. If DMRG::DIRECTION::RIGHT, sweeps to right. | 
| TOOL | : with which broom to sweep, see DMRG::BROOM::OPTION | 
| H | : Non-local information for DMRG::BROOM::RDM and DMRG::BROOM::RICH_SVD enters thorugh here. | 
Definition at line 144 of file DmrgJanitor.h.
| void DmrgJanitor< PivotMatrixType >::sweep | ( | size_t | loc, | 
| DMRG::BROOM::OPTION | TOOL, | ||
| PivotMatrixType * | H = NULL  | 
        ||
| ) | 
Sweeps from pivot to a specific site. Mainly useful for testing purposes. 
| loc | : pivot will go here | 
| TOOL | : with which broom to sweep, see DMRG::BROOM::OPTION | 
| H | : Non-local information for DMRG::BROOM::RDM and DMRG::BROOM::RICH_SVD enters thorugh here. | 
Definition at line 197 of file DmrgJanitor.h.
      
  | 
  inline | 
Calls the next sweep step from site loc according to the direction DIR. 
Definition at line 217 of file DmrgJanitor.h.
| double DmrgJanitor< PivotMatrixType >::alpha_rsvd | 
Cutoff criterion for DMRG::BROOM::OPTION.
Definition at line 97 of file DmrgJanitor.h.
| double DmrgJanitor< PivotMatrixType >::eps_svd | 
Cutoff criterion for DMRG::BROOM::OPTION.
Definition at line 97 of file DmrgJanitor.h.
| double DmrgJanitor< PivotMatrixType >::eps_truncWeight | 
Cutoff criterion for DMRG::BROOM::OPTION.
Definition at line 97 of file DmrgJanitor.h.
| int DmrgJanitor< PivotMatrixType >::max_Nrich | 
Cutoff criterion for DMRG::BROOM::OPTION.
Definition at line 99 of file DmrgJanitor.h.
| size_t DmrgJanitor< PivotMatrixType >::max_Nsv | 
Cutoff criterion for DMRG::BROOM::OPTION.
Definition at line 98 of file DmrgJanitor.h.
| size_t DmrgJanitor< PivotMatrixType >::min_Nsv | 
Cutoff criterion for DMRG::BROOM::OPTION.
Definition at line 98 of file DmrgJanitor.h.
      
  | 
  protected | 
Length of the chain.
Definition at line 112 of file DmrgJanitor.h.
      
  | 
  protected | 
The pivot site (also called "orthogonality centre", but "pivot" is so much better). All matrices to the left are left-canonical 

pivot==-1, there is no orthogonality. Can be tested with Mps::test_ortho(). 
Definition at line 110 of file DmrgJanitor.h.