CheMPS2
DMRGSCFoptions.cpp
1 /*
2  CheMPS2: a spin-adapted implementation of DMRG for ab initio quantum chemistry
3  Copyright (C) 2013-2016 Sebastian Wouters
4 
5  This program is free software; you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation; either version 2 of the License, or
8  (at your option) any later version.
9 
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License along
16  with this program; if not, write to the Free Software Foundation, Inc.,
17  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18 */
19 
20 #include "DMRGSCFoptions.h"
21 
23 
24  DoDIIS = CheMPS2::DMRGSCF_doDIIS;
25  DIISGradientBranch = CheMPS2::DMRGSCF_DIISgradientBranch;
26  NumDIISVecs = CheMPS2::DMRGSCF_numDIISvecs;
27  StoreDIIS = CheMPS2::DMRGSCF_storeDIIS;
28  DIISStorageName = CheMPS2::DMRGSCF_diis_storage_name;
29 
30  MaxIterations = CheMPS2::DMRGSCF_maxIterations;
31  GradientThreshold = CheMPS2::DMRGSCF_gradientNormThreshold;
32  StoreUnitary = CheMPS2::DMRGSCF_storeUnitary;
33  UnitaryStorageName = CheMPS2::DMRGSCF_unitary_storage_name;
34  StateAveraging = CheMPS2::DMRGSCF_stateAveraged;
35 
36  WhichActiveSpace = CheMPS2::DMRGSCF_whichActiveSpace;
37  DumpCorrelations = CheMPS2::DMRGSCF_dumpCorrelations;
38  StartLocRandom = CheMPS2::DMRGSCF_startLocRandom;
39 
40 }
41 
43 
44 bool CheMPS2::DMRGSCFoptions::getDoDIIS() const{ return DoDIIS; }
45 double CheMPS2::DMRGSCFoptions::getDIISGradientBranch() const{ return DIISGradientBranch; }
46 int CheMPS2::DMRGSCFoptions::getNumDIISVecs() const{ return NumDIISVecs; }
47 bool CheMPS2::DMRGSCFoptions::getStoreDIIS() const{ return StoreDIIS; }
48 string CheMPS2::DMRGSCFoptions::getDIISStorageName() const{ return DIISStorageName; }
49 int CheMPS2::DMRGSCFoptions::getMaxIterations() const{ return MaxIterations; }
50 double CheMPS2::DMRGSCFoptions::getGradientThreshold() const{ return GradientThreshold; }
51 bool CheMPS2::DMRGSCFoptions::getStoreUnitary() const{ return StoreUnitary; }
52 string CheMPS2::DMRGSCFoptions::getUnitaryStorageName() const{ return UnitaryStorageName; }
53 bool CheMPS2::DMRGSCFoptions::getStateAveraging() const{ return StateAveraging; }
54 int CheMPS2::DMRGSCFoptions::getWhichActiveSpace() const{ return WhichActiveSpace; }
55 bool CheMPS2::DMRGSCFoptions::getDumpCorrelations() const{ return DumpCorrelations; }
56 bool CheMPS2::DMRGSCFoptions::getStartLocRandom() const{ return StartLocRandom; }
57 
58 void CheMPS2::DMRGSCFoptions::setDoDIIS(const bool DoDIIS_in){ DoDIIS = DoDIIS_in; }
59 void CheMPS2::DMRGSCFoptions::setDIISGradientBranch(const double DIISGradientBranch_in){ DIISGradientBranch = DIISGradientBranch_in; }
60 void CheMPS2::DMRGSCFoptions::setNumDIISVecs(const int NumDIISVecs_in){ NumDIISVecs = NumDIISVecs_in; }
61 void CheMPS2::DMRGSCFoptions::setStoreDIIS(const bool StoreDIIS_in){ StoreDIIS = StoreDIIS_in; }
62 void CheMPS2::DMRGSCFoptions::setDIISStorageName(const string DIISStorageName_in){ DIISStorageName = DIISStorageName_in; }
63 void CheMPS2::DMRGSCFoptions::setMaxIterations(const int MaxIterations_in){ MaxIterations = MaxIterations_in; }
64 void CheMPS2::DMRGSCFoptions::setGradientThreshold(const double GradientThreshold_in){ GradientThreshold = GradientThreshold_in; }
65 void CheMPS2::DMRGSCFoptions::setStoreUnitary(const bool StoreUnitary_in){ StoreUnitary = StoreUnitary_in; }
66 void CheMPS2::DMRGSCFoptions::setUnitaryStorageName(const string UnitaryStorageName_in){ UnitaryStorageName = UnitaryStorageName_in; }
67 void CheMPS2::DMRGSCFoptions::setStateAveraging(const bool StateAveraging_in){ StateAveraging = StateAveraging_in; }
68 void CheMPS2::DMRGSCFoptions::setWhichActiveSpace(const int WhichActiveSpace_in){ WhichActiveSpace = WhichActiveSpace_in; }
69 void CheMPS2::DMRGSCFoptions::setDumpCorrelations(const bool DumpCorrelations_in){ DumpCorrelations = DumpCorrelations_in; }
70 void CheMPS2::DMRGSCFoptions::setStartLocRandom(const bool StartLocRandom_in){ StartLocRandom = StartLocRandom_in; }
71 
72 
73 
void setDumpCorrelations(const bool DumpCorrelations_in)
Set whether the correlations and two-orbital mutual information should be printed.
int getMaxIterations() const
Get the maximum number of DMRGSCF iterations.
void setDoDIIS(const bool DoDIIS_in)
Set whether DIIS should be performed.
DMRGSCFoptions()
Constructor.
void setStartLocRandom(const bool StartLocRandom_in)
Set whether the localization procedure should start from a random unitary.
void setGradientThreshold(const double GradientThreshold_in)
Set the threshold for DMRGSCF convergence.
void setWhichActiveSpace(const int WhichActiveSpace_in)
Set which active space should be considered in the DMRG routine.
double getDIISGradientBranch() const
Get the threshold for when DIIS should start.
bool getDumpCorrelations() const
Get whether the correlations and two-orbital mutual information should be printed.
void setDIISStorageName(const string DIISStorageName_in)
Set the DIIS checkpoint filename.
int getWhichActiveSpace() const
Get which active space should be considered in the DMRG routine.
int getNumDIISVecs() const
Get the number of DIIS update vectors which should be kept.
void setUnitaryStorageName(const string UnitaryStorageName_in)
Set the Orbital Rotation checkpoint filename.
string getDIISStorageName() const
Get the DIIS checkpoint filename.
bool getDoDIIS() const
Get whether DIIS should be performed.
bool getStartLocRandom() const
Get whether the localization procedure should start from a random unitary.
void setStoreDIIS(const bool StoreDIIS_in)
Set whether the DIIS checkpoint should be stored to disk.
void setMaxIterations(const int MaxIterations_in)
Set the maximum number of DMRGSCF iterations.
bool getStoreDIIS() const
Get whether the DIIS checkpoint should be stored to disk.
bool getStoreUnitary() const
Get whether the Orbital Rotation checkpoint should be stored to disk.
void setNumDIISVecs(const int NumDIISVecs_in)
Set the number of DIIS update vectors which should be kept.
bool getStateAveraging() const
Get whether state-averaging or state-specific DMRGSCF should be performed.
virtual ~DMRGSCFoptions()
Destructor.
void setStoreUnitary(const bool StoreUnitary_in)
Set whether the Orbital Rotation checkpoint should be stored to disk.
double getGradientThreshold() const
Get the threshold for DMRGSCF convergence.
void setDIISGradientBranch(const double DIISGradientBranch_in)
Set the threshold for when DIIS should start.
string getUnitaryStorageName() const
Get the Orbital Rotation checkpoint filename.
void setStateAveraging(const bool StateAveraging_in)
Set whether state-averaging or state-specific DMRGSCF should be performed.