SYNOPSIS
#include <diis.h>
Inherits sc::SelfConsistentExtrapolation.
Public Member Functions
DIIS (int strt=1, int ndi=5, double dmp=0, int ngr=1, int ngrdiis=1)
DIIS (StateIn &)
DIIS (const Ref< KeyVal > &)
The DIIS KeyVal constructor recognizes the following keywords:.
void save_data_state (StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them.
int extrapolate (const Ref< SCExtrapData > &data, const Ref< SCExtrapError > &error)
void start_extrapolation ()
void reinitialize ()
void print (std::ostream &=ExEnv::out0()) const
Override DescribedClass::print.
Protected Member Functions
void init ()
Protected Attributes
int start
int ndiis
int iter
int ngroup
int ngroupdiis
double damping_factor
double * btemp
double ** bold
double ** bmat
Ref< SCExtrapData > dtemp_data
Ref< SCExtrapError > dtemp_error
Ref< SCExtrapData > Ldata
Ref< SCExtrapData > * diism_data
Ref< SCExtrapError > * diism_error
Detailed Description
The DIIS class provides DIIS extrapolation.
Constructor & Destructor Documentation
sc::DIIS::DIIS (const Ref< KeyVal > &)
The DIIS KeyVal constructor recognizes the following keywords:. .IP "n" 1c This integer maximum number of data sets to retain. The default is 5.
- start
- The DIIS extrapolation will begin on the iteration given by this integer. The default is 1.
- damping_factor
- This nonnegative floating point number is used to dampen the DIIS extrapolation. The default is 0.0.
- ngroup
- The number of iterations in a DIIS group. DIIS extrapolation is only used for the first ngroupdiis of these interations. The default is 1. If ngroup is 1 and ngroupdiis is greater than 0, then DIIS will be used on all iterations after and including the start iteration.
- ngroupdiis
- The number of DIIS extrapolations to do at the beginning of an iteration group. See the documentation for ngroup.
Member Function Documentation
void sc::DIIS::save_data_state (StateOut &) [virtual]
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them. This must be implemented by the derived class if the class has data.
Reimplemented from sc::SelfConsistentExtrapolation.
Author
Generated automatically by Doxygen for MPQC from the source code.