ivutils
Loading...
Searching...
No Matches
md_grad_optimizer< term_t > Class Template Reference

Gradient descent with parabolic minima search. More...

#include <gradopt.h>

Inheritance diagram for md_grad_optimizer< term_t >:
Collaboration diagram for md_grad_optimizer< term_t >:

Public Member Functions

virtual int SetAccuracy (double max_dE, double max_dx, int maxconvit=2, double max_force=-1.)
 Set convergence creiteria:
max_dE – maximal energy variance at convergence OR;
maximal position variance at convergence, max_dx is normalized by total variable number OR
maximal force norm max_force at convergence.
 

Protected Member Functions

int tFunc (double &val, double t)
 function to calcualte value
 
int ParabolicMin (FILE *f, int vout=1)
 makes linear search using tFunc, grdval
 

Detailed Description

template<class term_t>
class md_grad_optimizer< term_t >

Gradient descent with parabolic minima search.

Member Function Documentation

◆ ParabolicMin()

template<class term_t >
int md_grad_optimizer< term_t >::ParabolicMin ( FILE *  f,
int  vout = 1 
)
protected

makes linear search using tFunc, grdval

Returns

◆ SetAccuracy()

template<class term_t >
virtual int md_grad_optimizer< term_t >::SetAccuracy ( double  max_dE,
double  max_dx,
int  maxconvit = 2,
double  max_force = -1. 
)
inlinevirtual

Set convergence creiteria:
max_dE – maximal energy variance at convergence OR;
maximal position variance at convergence, max_dx is normalized by total variable number OR
maximal force norm max_force at convergence.


Negative parameters mean that the corresponding criteria are not checked. These conditions have to be repeated for at least maxconvit consecutive iterations.

Reimplemented from base_optimizer.


The documentation for this class was generated from the following file: