CheMPS2
CheMPS2::DMRGSCFoptions Class Reference

#include <DMRGSCFoptions.h>

Public Member Functions

 DMRGSCFoptions ()
 Constructor.
 
virtual ~DMRGSCFoptions ()
 Destructor.
 
bool getDoDIIS () const
 Get whether DIIS should be performed. More...
 
double getDIISGradientBranch () const
 Get the threshold for when DIIS should start. More...
 
int getNumDIISVecs () const
 Get the number of DIIS update vectors which should be kept. More...
 
bool getStoreDIIS () const
 Get whether the DIIS checkpoint should be stored to disk. More...
 
string getDIISStorageName () const
 Get the DIIS checkpoint filename. More...
 
int getMaxIterations () const
 Get the maximum number of DMRGSCF iterations. More...
 
double getGradientThreshold () const
 Get the threshold for DMRGSCF convergence. More...
 
bool getStoreUnitary () const
 Get whether the Orbital Rotation checkpoint should be stored to disk. More...
 
string getUnitaryStorageName () const
 Get the Orbital Rotation checkpoint filename. More...
 
bool getStateAveraging () const
 Get whether state-averaging or state-specific DMRGSCF should be performed. More...
 
int getWhichActiveSpace () const
 Get which active space should be considered in the DMRG routine. More...
 
bool getDumpCorrelations () const
 Get whether the correlations and two-orbital mutual information should be printed. More...
 
bool getStartLocRandom () const
 Get whether the localization procedure should start from a random unitary. More...
 
void setDoDIIS (const bool DoDIIS_in)
 Set whether DIIS should be performed. More...
 
void setDIISGradientBranch (const double DIISGradientBranch_in)
 Set the threshold for when DIIS should start. More...
 
void setNumDIISVecs (const int NumDIISVecs_in)
 Set the number of DIIS update vectors which should be kept. More...
 
void setStoreDIIS (const bool StoreDIIS_in)
 Set whether the DIIS checkpoint should be stored to disk. More...
 
void setDIISStorageName (const string DIISStorageName_in)
 Set the DIIS checkpoint filename. More...
 
void setMaxIterations (const int MaxIterations_in)
 Set the maximum number of DMRGSCF iterations. More...
 
void setGradientThreshold (const double GradientThreshold_in)
 Set the threshold for DMRGSCF convergence. More...
 
void setStoreUnitary (const bool StoreUnitary_in)
 Set whether the Orbital Rotation checkpoint should be stored to disk. More...
 
void setUnitaryStorageName (const string UnitaryStorageName_in)
 Set the Orbital Rotation checkpoint filename. More...
 
void setStateAveraging (const bool StateAveraging_in)
 Set whether state-averaging or state-specific DMRGSCF should be performed. More...
 
void setWhichActiveSpace (const int WhichActiveSpace_in)
 Set which active space should be considered in the DMRG routine. More...
 
void setDumpCorrelations (const bool DumpCorrelations_in)
 Set whether the correlations and two-orbital mutual information should be printed. More...
 
void setStartLocRandom (const bool StartLocRandom_in)
 Set whether the localization procedure should start from a random unitary. More...
 

Detailed Description

DMRGSCFoptions class.

Author
Sebastian Wouters sebas.nosp@m.tian.nosp@m.woute.nosp@m.rs@g.nosp@m.mail..nosp@m.com
Date
August 19, 2014

The DMRGSCFoptions class contains the options to control the DMRGSCF iterations. The default values are taken from Options.h.
For DIIS:
(1) DoDIIS (bool) : Whether or not to do DIIS
(2) DIISGradientBranch (double) : Start DIIS when the 2-norm of the update vector (i.e. NOT the gradient vector!) is smaller than this value
(3) NumDIISVecs (int) : Number of previous updates to keep during DIIS
(4) StoreDIIS (bool) : Whether or not to store the DIIS checkpoint file
(5) DIISStorageName (string) : The filename to store the DIIS checkpoint
General DMRGSCF control:
(6) MaxIterations (int) : The maximum number of DMRGSCF iterations
(7) GradientThreshold (double) : Stop the DMRGSCF iterations when the gradient for orbital rotation has a 2-norm smaller than this value
(8) StoreUnitary (bool) : Whether or not to store the Orbital Rotation checkpoint file
(9) UnitaryStorageName (string) : The filename to store the Orbital Rotation checkpoint
(10) StateAveraging (bool) : Whether to do state-averaged or state-specific DMRGSCF
DMRG active space options:
(11) WhichActiveSpace (int) : Determines which active space is used for the DMRG (FCI replacement) calculations. If 1: NO, sorted within each irrep by NOON. If 2: Localized Orbitals (Edmiston-Ruedenberg), sorted within each irrep by the exchange matrix (Fiedler vector). If 3: Not localized, but only sorted within each irrep by the Fiedler vector of the exchange matrix. If other value: No additional active space rotations (the ones from DMRGSCF are of course performed).
(12) DumpCorrelations (bool) : Whether or not to print the correlation functions and two-orbital mutual information of the active space
(13) StartLocRandom (bool) : When localized orbitals are used, it is sometimes beneficial to start the localization procedure from a random unitary. A specific example is the reduction of the d2h point group of graphene nanoribbons to the cs point group, in order to make use of locality in the DMRG calculations. Since molecular orbitals will still belong to the full point group d2h, a random unitary helps in constructing localized orbitals which belong to the cs point group.

Definition at line 51 of file DMRGSCFoptions.h.

Member Function Documentation

double CheMPS2::DMRGSCFoptions::getDIISGradientBranch ( ) const

Get the threshold for when DIIS should start.

Returns
The threshold for the 2-norm of the update vector (NOT the gradient vector) for starting DIIS

Definition at line 45 of file DMRGSCFoptions.cpp.

string CheMPS2::DMRGSCFoptions::getDIISStorageName ( ) const

Get the DIIS checkpoint filename.

Returns
The filename for the DIIS checkpoint

Definition at line 48 of file DMRGSCFoptions.cpp.

+ Here is the caller graph for this function:

bool CheMPS2::DMRGSCFoptions::getDoDIIS ( ) const

Get whether DIIS should be performed.

Returns
Whether DIIS should be performed

Definition at line 44 of file DMRGSCFoptions.cpp.

+ Here is the caller graph for this function:

bool CheMPS2::DMRGSCFoptions::getDumpCorrelations ( ) const

Get whether the correlations and two-orbital mutual information should be printed.

Returns
Whether the correlations and two-orbital mutual information should be printed

Definition at line 55 of file DMRGSCFoptions.cpp.

+ Here is the caller graph for this function:

double CheMPS2::DMRGSCFoptions::getGradientThreshold ( ) const

Get the threshold for DMRGSCF convergence.

Returns
The threshold for the 2-norm of the gradient vector for DMRGSCF convergence

Definition at line 50 of file DMRGSCFoptions.cpp.

+ Here is the caller graph for this function:

int CheMPS2::DMRGSCFoptions::getMaxIterations ( ) const

Get the maximum number of DMRGSCF iterations.

Returns
The maximum number of DMRGSCF iterations

Definition at line 49 of file DMRGSCFoptions.cpp.

+ Here is the caller graph for this function:

int CheMPS2::DMRGSCFoptions::getNumDIISVecs ( ) const

Get the number of DIIS update vectors which should be kept.

Returns
The number of DIIS update vectors which should be kept

Definition at line 46 of file DMRGSCFoptions.cpp.

+ Here is the caller graph for this function:

bool CheMPS2::DMRGSCFoptions::getStartLocRandom ( ) const

Get whether the localization procedure should start from a random unitary.

Returns
Whether the localization procedure should start from a random unitary

Definition at line 56 of file DMRGSCFoptions.cpp.

+ Here is the caller graph for this function:

bool CheMPS2::DMRGSCFoptions::getStateAveraging ( ) const

Get whether state-averaging or state-specific DMRGSCF should be performed.

Returns
Whether state-averaging DMRGSCF should be performed

Definition at line 53 of file DMRGSCFoptions.cpp.

+ Here is the caller graph for this function:

bool CheMPS2::DMRGSCFoptions::getStoreDIIS ( ) const

Get whether the DIIS checkpoint should be stored to disk.

Returns
Whether the DIIS checkpoint should be stored to disk

Definition at line 47 of file DMRGSCFoptions.cpp.

+ Here is the caller graph for this function:

bool CheMPS2::DMRGSCFoptions::getStoreUnitary ( ) const

Get whether the Orbital Rotation checkpoint should be stored to disk.

Returns
Whether the Orbital Rotation checkpoint should be stored to disk

Definition at line 51 of file DMRGSCFoptions.cpp.

+ Here is the caller graph for this function:

string CheMPS2::DMRGSCFoptions::getUnitaryStorageName ( ) const

Get the Orbital Rotation checkpoint filename.

Returns
The filename for the Orbital Rotation checkpoint

Definition at line 52 of file DMRGSCFoptions.cpp.

+ Here is the caller graph for this function:

int CheMPS2::DMRGSCFoptions::getWhichActiveSpace ( ) const

Get which active space should be considered in the DMRG routine.

Returns
Which active space should be considered in the DMRG routine. If 1: NO, sorted within each irrep by NOON. If 2: Localized Orbitals (Edmiston-Ruedenberg), sorted within each irrep by the exchange matrix (Fiedler vector). If other value: No additional active space rotations (the ones from DMRGSCF are of course performed).

Definition at line 54 of file DMRGSCFoptions.cpp.

+ Here is the caller graph for this function:

void CheMPS2::DMRGSCFoptions::setDIISGradientBranch ( const double  DIISGradientBranch_in)

Set the threshold for when DIIS should start.

Parameters
DIISGradientBranch_inThe threshold for the 2-norm of the update vector (NOT the gradient vector) for starting DIIS

Definition at line 59 of file DMRGSCFoptions.cpp.

void CheMPS2::DMRGSCFoptions::setDIISStorageName ( const string  DIISStorageName_in)

Set the DIIS checkpoint filename.

Parameters
DIISStorageName_inThe filename for the DIIS checkpoint

Definition at line 62 of file DMRGSCFoptions.cpp.

void CheMPS2::DMRGSCFoptions::setDoDIIS ( const bool  DoDIIS_in)

Set whether DIIS should be performed.

Parameters
DoDIIS_inWhether DIIS should be performed

Definition at line 58 of file DMRGSCFoptions.cpp.

void CheMPS2::DMRGSCFoptions::setDumpCorrelations ( const bool  DumpCorrelations_in)

Set whether the correlations and two-orbital mutual information should be printed.

Parameters
DumpCorrelations_inWhether the correlations and two-orbital mutual information should be printed

Definition at line 69 of file DMRGSCFoptions.cpp.

void CheMPS2::DMRGSCFoptions::setGradientThreshold ( const double  GradientThreshold_in)

Set the threshold for DMRGSCF convergence.

Parameters
GradientThreshold_inThe threshold for the 2-norm of the gradient vector for DMRGSCF convergence

Definition at line 64 of file DMRGSCFoptions.cpp.

void CheMPS2::DMRGSCFoptions::setMaxIterations ( const int  MaxIterations_in)

Set the maximum number of DMRGSCF iterations.

Parameters
MaxIterations_inThe maximum number of DMRGSCF iterations

Definition at line 63 of file DMRGSCFoptions.cpp.

void CheMPS2::DMRGSCFoptions::setNumDIISVecs ( const int  NumDIISVecs_in)

Set the number of DIIS update vectors which should be kept.

Parameters
NumDIISVecs_inThe number of DIIS update vectors which should be kept

Definition at line 60 of file DMRGSCFoptions.cpp.

void CheMPS2::DMRGSCFoptions::setStartLocRandom ( const bool  StartLocRandom_in)

Set whether the localization procedure should start from a random unitary.

Parameters
StartLocRandom_inWhether the localization procedure should start from a random unitary

Definition at line 70 of file DMRGSCFoptions.cpp.

void CheMPS2::DMRGSCFoptions::setStateAveraging ( const bool  StateAveraging_in)

Set whether state-averaging or state-specific DMRGSCF should be performed.

Parameters
StateAveraging_inWhether state-averaging DMRGSCF should be performed

Definition at line 67 of file DMRGSCFoptions.cpp.

void CheMPS2::DMRGSCFoptions::setStoreDIIS ( const bool  StoreDIIS_in)

Set whether the DIIS checkpoint should be stored to disk.

Parameters
StoreDIIS_inWhether the DIIS checkpoint should be stored to disk

Definition at line 61 of file DMRGSCFoptions.cpp.

void CheMPS2::DMRGSCFoptions::setStoreUnitary ( const bool  StoreUnitary_in)

Set whether the Orbital Rotation checkpoint should be stored to disk.

Parameters
StoreUnitary_inWhether the Orbital Rotation checkpoint should be stored to disk

Definition at line 65 of file DMRGSCFoptions.cpp.

void CheMPS2::DMRGSCFoptions::setUnitaryStorageName ( const string  UnitaryStorageName_in)

Set the Orbital Rotation checkpoint filename.

Parameters
UnitaryStorageName_inThe filename for the Orbital Rotation checkpoint

Definition at line 66 of file DMRGSCFoptions.cpp.

void CheMPS2::DMRGSCFoptions::setWhichActiveSpace ( const int  WhichActiveSpace_in)

Set which active space should be considered in the DMRG routine.

Parameters
WhichActiveSpace_inWhich active space should be considered in the DMRG routine. If 1: NO, sorted within each irrep by NOON. If 2: Localized Orbitals (Edmiston-Ruedenberg), sorted within each irrep by the exchange matrix (Fiedler vector). If other value: No additional active space rotations (the ones from DMRGSCF are of course performed).

Definition at line 68 of file DMRGSCFoptions.cpp.


The documentation for this class was generated from the following files: