.TH "sc::EFCOpt" 3 "Sun Oct 4 2020" "Version 2.3.1" "MPQC" \" -*- nroff -*- .ad l .nh .SH NAME sc::EFCOpt \- The \fBEFCOpt\fP class implements eigenvector following as described by Baker in J\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .PP Inherits \fBsc::Optimize\fP\&. .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBEFCOpt\fP (const \fBRef\fP< \fBKeyVal\fP > &)" .br .RI "The \fBKeyVal\fP constructor reads the following keywords: " .ti -1c .RI "\fBEFCOpt\fP (\fBStateIn\fP &)" .br .ti -1c .RI "void \fBsave_data_state\fP (\fBStateOut\fP &)" .br .RI "Save the base classes (with save_data_state) and the members in the same order that the \fBStateIn\fP CTOR initializes them\&. " .ti -1c .RI "void \fBapply_transform\fP (const \fBRef\fP< \fBNonlinearTransform\fP > &)" .br .ti -1c .RI "void \fBinit\fP ()" .br .RI "Initialize the optimizer\&. " .ti -1c .RI "int \fBupdate\fP ()" .br .RI "Take a step\&. " .in -1c .SS "Protected Attributes" .in +1c .ti -1c .RI "int \fBtstate\fP" .br .ti -1c .RI "int \fBmodef\fP" .br .ti -1c .RI "double \fBmaxabs_gradient\fP" .br .ti -1c .RI "double \fBconvergence_\fP" .br .ti -1c .RI "double \fBaccuracy_\fP" .br .ti -1c .RI "\fBRefSymmSCMatrix\fP \fBhessian_\fP" .br .ti -1c .RI "\fBRef\fP< \fBHessianUpdate\fP > \fBupdate_\fP" .br .ti -1c .RI "\fBRefSCVector\fP \fBlast_mode_\fP" .br .in -1c .SS "Additional Inherited Members" .SH "Detailed Description" .PP The \fBEFCOpt\fP class implements eigenvector following as described by Baker in J\&. Comput\&. Chem\&., Vol 7, No 4, 385-395, 1986\&. .SH "Constructor & Destructor Documentation" .PP .SS "sc::EFCOpt::EFCOpt (const \fBRef\fP< \fBKeyVal\fP > &)" .PP The \fBKeyVal\fP constructor reads the following keywords: .IP "\fB\fCupdate\fP\fP" 1c This gives an \fBHessianUpdate\fP object\&. The default is to not update the hessian\&. .PP .IP "\fB\fCtransition_state\fP\fP" 1c If this is true than a transition state search will be performed\&. The default is false\&. .PP .IP "\fB\fCmode_following\fP\fP" 1c If this is true, then the initial search direction for a transition state search will be choosen to similar to the first coordinate of the \fBFunction\fP\&. The default is false\&. .PP .IP "\fB\fChessian\fP\fP" 1c By default, the guess hessian is obtained from the \fBFunction\fP object\&. This keyword specifies an lower triangle array (the second index must be less than or equal to than the first) that replaces the guess hessian\&. If some of the elements are not given, elements from the guess hessian will be used\&. .PP .IP "\fB\fCaccuracy\fP\fP" 1c The accuracy with which the first gradient will be computed\&. If this is too large, it may be necessary to evaluate the first gradient point twice\&. If it is too small, it may take longer to evaluate the first point\&. The default is 0\&.0001\&. .PP .PP .SH "Member Function Documentation" .PP .SS "void sc::EFCOpt::save_data_state (\fBStateOut\fP &)\fC [virtual]\fP" .PP Save the base classes (with save_data_state) and the members in the same order that the \fBStateIn\fP CTOR initializes them\&. This must be implemented by the derived class if the class has data\&. .PP Reimplemented from \fBsc::SavableState\fP\&. .SS "int sc::EFCOpt::update ()\fC [virtual]\fP" .PP Take a step\&. Returns 1 if the optimization has converged, otherwise 0\&. .PP Implements \fBsc::Optimize\fP\&. .SH "Author" .PP Generated automatically by Doxygen for MPQC from the source code\&.