![]() |
IPSDK
4_1_0_2
IPSDK : Image Processing Software Development Kit
|
Class implementing a non linear solver based on Levenberg Marquardt algorithm. More...
#include <NonLinearSolver.h>
Public Member Functions | |
| eOptStatus | getStatus () const |
| check whether solve has been done | |
| OptResult | solve (const CostFunctionConstPtr &pCostFunction, const Vector &initParams) |
| solve of optimization process More... | |
| ipUInt32 | getNbIteration () const |
| retrieve number of iterations of optimization process More... | |
| const Vector & | getEstimParams () const |
| retrieve estimated parameters More... | |
| void | clearResults () |
| method allowing to clear previous optimization process results | |
Constructors and destructor | |
| NonLinearSolver () | |
| ~NonLinearSolver () | |
| const ipUInt32 | getNbMaxIteration () const |
| access to maximum number of iteration for optimization process More... | |
| void | setNbMaxIteration (const ipUInt32 nbMaxIteration) |
| access to maximum number of iteration for optimization process More... | |
Static Protected Member Functions | |
| static ipInt32 | minPackProxy (void *pThis, ipInt32 m, ipInt32 n, ipReal64 *x, ipReal64 *fvec, ipReal64 *fjac, ipInt32 ldfjac, ipInt32 iflag) |
| function called by minpack to ensure function computation | |
Protected Attributes | |
| ipUInt32 | _nbMaxIteration |
| maximum number of iteration for optimization process More... | |
| eOptStatus | _optStatus |
| status associated to object | |
| ipUInt32 | _nbIteration |
| number of iterations associated to optimization process | |
| Vector | _estimParams |
| estimated parameters | |
| CostFunctionConstPtr | _pCostFunction |
| cost function used during optimization process | |
| std::string | _errorMsg |
| internal function error reason | |
| Vector | _funValue |
| Vector | _wa2 |
| Vector | _wa4 |
| Matrix | _jacValue |
Class implementing a non linear solver based on Levenberg Marquardt algorithm.
|
inline |
access to maximum number of iteration for optimization process
|
inline |
access to maximum number of iteration for optimization process
| OptResult ipsdk::math::NonLinearSolver::solve | ( | const CostFunctionConstPtr & | pCostFunction, |
| const Vector & | initParams | ||
| ) |
solve of optimization process
| ipsdk::math::IPSDKMathException | if pCostFunction.get() == 0 |
| ipsdk::math::IPSDKMathException | if pCostFunction->getNbParameters() != initParameters.size() |
| ipUInt32 ipsdk::math::NonLinearSolver::getNbIteration | ( | ) | const |
retrieve number of iterations of optimization process
| ipsdk::math::IPSDKMathException | if getStatus() == eOptStatus::eOS_Failed |
| const Vector& ipsdk::math::NonLinearSolver::getEstimParams | ( | ) | const |
retrieve estimated parameters
| ipsdk::math::IPSDKMathException | if getStatus() == eOptStatus::eOS_Failed |
|
protected |
maximum number of iteration for optimization process
|
protected |
internal working arrays
|
protected |
internal working arrays
|
protected |
internal working arrays
|
protected |
internal working arrays
1.8.14