RDKit
Open-source cheminformatics and machine learning.
Loading...
Searching...
No Matches
BFGSOpt.h File Reference
#include <RDGeneral/export.h>
#include <cmath>
#include <RDGeneral/Invariant.h>
#include <GraphMol/Trajectory/Snapshot.h>
#include <cstring>
#include <vector>
#include <algorithm>

Go to the source code of this file.

Namespaces

namespace  BFGSOpt
 

Macros

#define CLEANUP()
 

Functions

template<typename EnergyFunctor >
void BFGSOpt::linearSearch (unsigned int dim, double *oldPt, double oldVal, double *grad, double *dir, double *newPt, double &newVal, EnergyFunctor func, double maxStep, int &resCode)
 Do a Quasi-Newton minimization along a line.
 
template<typename EnergyFunctor , typename GradientFunctor >
int BFGSOpt::minimize (unsigned int dim, double *pos, double gradTol, unsigned int &numIters, double &funcVal, EnergyFunctor func, GradientFunctor gradFunc, unsigned int snapshotFreq, RDKit::SnapshotVect *snapshotVect, double funcTol=TOLX, unsigned int maxIts=MAXITS)
 Do a BFGS minimization of a function.
 
template<typename EnergyFunctor , typename GradientFunctor >
int BFGSOpt::minimize (unsigned int dim, double *pos, double gradTol, unsigned int &numIters, double &funcVal, EnergyFunctor func, GradientFunctor gradFunc, double funcTol=TOLX, unsigned int maxIts=MAXITS)
 Do a BFGS minimization of a function.
 

Variables

RDKIT_OPTIMIZER_EXPORT int BFGSOpt::HEAD_ONLY_LIBRARY
 
RDKIT_OPTIMIZER_EXPORT int BFGSOpt::REALLY_A_HEADER_ONLY_LIBRARY
 
const double BFGSOpt::FUNCTOL
 Default tolerance for function convergence in the minimizer.
 
const double BFGSOpt::MOVETOL
 Default tolerance for x changes in the minimizer.
 
const int BFGSOpt::MAXITS = 200
 Default maximum number of iterations.
 
const double BFGSOpt::EPS = 3e-8
 Default gradient tolerance in the minimizer.
 
const double BFGSOpt::TOLX
 Default direction vector tolerance in the minimizer.
 
const double BFGSOpt::MAXSTEP = 100.0
 Default maximum step size in the minimizer.
 

Macro Definition Documentation

◆ CLEANUP

#define CLEANUP ( )
Value:
{ \
delete[] grad; \
delete[] dGrad; \
delete[] hessDGrad; \
delete[] newPos; \
delete[] xi; \
delete[] invHessian; \
}

Definition at line 158 of file BFGSOpt.h.

Referenced by BFGSOpt::minimize().