Implements a Gauss-Newton approximation with block BFGS updates as second-order derivatives within NLPsolvers. More...
#include <gauss_newton_approximation_bfgs.hpp>
Public Member Functions | |
virtual returnValue | apply (BlockMatrix &B, const BlockMatrix &x, const BlockMatrix &y) |
virtual NLPderivativeApproximation * | clone () const |
GaussNewtonApproximationWithBFGS () | |
GaussNewtonApproximationWithBFGS (UserInteraction *_userInteraction, uint _nBlocks=0) | |
GaussNewtonApproximationWithBFGS (const GaussNewtonApproximationWithBFGS &rhs) | |
virtual returnValue | initHessian (BlockMatrix &B, uint N, const OCPiterate &iter) |
virtual returnValue | initScaling (BlockMatrix &B, const BlockMatrix &x, const BlockMatrix &y) |
GaussNewtonApproximationWithBFGS & | operator= (const GaussNewtonApproximationWithBFGS &rhs) |
virtual | ~GaussNewtonApproximationWithBFGS () |
Protected Attributes | |
BFGSupdate * | bfgsUpdate |
Implements a Gauss-Newton approximation with block BFGS updates as second-order derivatives within NLPsolvers.
The class GaussNewtonApproximationBFGS implements a Gauss-Newton approximation combined with block BFGS updates as approximation of second-order derivative information within iterative NLPsolvers.
Definition at line 59 of file gauss_newton_approximation_bfgs.hpp.
Default constructor.
Definition at line 45 of file gauss_newton_approximation_bfgs.cpp.
GaussNewtonApproximationWithBFGS::GaussNewtonApproximationWithBFGS | ( | UserInteraction * | _userInteraction, |
uint | _nBlocks = 0 |
||
) |
Constructor that takes the number of blocks for matrix block updates.
Definition at line 51 of file gauss_newton_approximation_bfgs.cpp.
GaussNewtonApproximationWithBFGS::GaussNewtonApproximationWithBFGS | ( | const GaussNewtonApproximationWithBFGS & | rhs | ) |
Copy constructor (deep copy).
Definition at line 59 of file gauss_newton_approximation_bfgs.cpp.
Destructor.
Definition at line 68 of file gauss_newton_approximation_bfgs.cpp.
returnValue GaussNewtonApproximationWithBFGS::apply | ( | BlockMatrix & | B, |
const BlockMatrix & | x, | ||
const BlockMatrix & | y | ||
) | [virtual] |
B | matrix to be updated |
x | direction x |
y | residuum |
Reimplemented from GaussNewtonApproximation.
Definition at line 125 of file gauss_newton_approximation_bfgs.cpp.
NLPderivativeApproximation * GaussNewtonApproximationWithBFGS::clone | ( | ) | const [virtual] |
Reimplemented from GaussNewtonApproximation.
Definition at line 94 of file gauss_newton_approximation_bfgs.cpp.
returnValue GaussNewtonApproximationWithBFGS::initHessian | ( | BlockMatrix & | B, |
uint | N, | ||
const OCPiterate & | iter | ||
) | [virtual] |
B | matrix to be initialised |
N | number of intervals |
iter | current iterate |
Reimplemented from GaussNewtonApproximation.
Definition at line 101 of file gauss_newton_approximation_bfgs.cpp.
returnValue GaussNewtonApproximationWithBFGS::initScaling | ( | BlockMatrix & | B, |
const BlockMatrix & | x, | ||
const BlockMatrix & | y | ||
) | [virtual] |
B | matrix to be updated |
x | direction x |
y | residuum |
Reimplemented from GaussNewtonApproximation.
Definition at line 110 of file gauss_newton_approximation_bfgs.cpp.
GaussNewtonApproximationWithBFGS & GaussNewtonApproximationWithBFGS::operator= | ( | const GaussNewtonApproximationWithBFGS & | rhs | ) |
Assignment operator (deep copy).
Definition at line 75 of file gauss_newton_approximation_bfgs.cpp.
BFGSupdate* GaussNewtonApproximationWithBFGS::bfgsUpdate [protected] |
Definition at line 116 of file gauss_newton_approximation_bfgs.hpp.