NAME
sc::DIIS -
The DIIS class provides DIIS extrapolation.
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.