| MADNESS
    version 0.9
    | 
Optimization via quasi-Newton (BFGS or SR1 update) More...
#include <solvers.h>


| Public Member Functions | |
| QuasiNewton (const std::shared_ptr< OptimizationTargetInterface > &tar, int maxiter=20, double tol=1e-6, double value_precision=1e-12, double gradient_precision=1e-12) | |
| void | set_update (const std::string &method) | 
| Choose update method (currently only "BFGS" or "SR1")  More... | |
| void | set_test (const bool &test_level) | 
| Choose update method (currently only "BFGS" or "SR1")  More... | |
| bool | optimize (Tensor< double > &x) | 
| Runs the optimizer.  More... | |
| bool | converged () const | 
| After running the optimizer returns true if converged.  More... | |
| double | value () const | 
| Value of objective function.  More... | |
| void | reset_hessian () | 
| Resets Hessian to default guess.  More... | |
| void | set_hessian (const Tensor< double > &matrix) | 
| Sets Hessian to given matrix.  More... | |
| double | gradient_norm () const | 
| Value of gradient norm.  More... | |
| virtual | ~QuasiNewton () | 
|  Public Member Functions inherited from madness::OptimizerInterface | |
| virtual | ~OptimizerInterface () | 
Optimization via quasi-Newton (BFGS or SR1 update)
This is presently not a low memory algorithm ... we really need one!
| QuasiNewton::QuasiNewton | ( | const std::shared_ptr< OptimizationTargetInterface > & | tar, | 
| int | maxiter = 20, | ||
| double | tol = 1e-6, | ||
| double | value_precision = 1e-12, | ||
| double | gradient_precision = 1e-12 | ||
| ) | 
| 
 | inlinevirtual | 
| 
 | virtual | 
After running the optimizer returns true if converged.
Implements madness::OptimizerInterface.
Referenced by optimize().
| 
 | virtual | 
Value of gradient norm.
Implements madness::OptimizerInterface.
| 
 | virtual | 
Runs the optimizer.
Implements madness::OptimizerInterface.
References converged(), madness::g, madness::print(), madness::OptimizationTargetInterface::test_gradient(), and madness::OptimizationTargetInterface::value_and_gradient().
Referenced by main().
| 
 | inline | 
Resets Hessian to default guess.
Referenced by main().
| 
 | inline | 
| void QuasiNewton::set_test | ( | const bool & | test_level | ) | 
Choose update method (currently only "BFGS" or "SR1")
Referenced by main().
| void QuasiNewton::set_update | ( | const std::string & | method | ) | 
Choose update method (currently only "BFGS" or "SR1")
Referenced by main().
| 
 | virtual | 
Value of objective function.
Implements madness::OptimizerInterface.
 1.8.8
 1.8.8