cisst-saw
Loading...
Searching...
No Matches
nmrFminSolver Class Reference

#include <nmrFminSolver.h>

Public Member Functions

 nmrFminSolver (void)
 nmrFminSolver (CISSTNETLIB_INTEGER n, CISSTNETLIB_INTEGER nlin, CISSTNETLIB_INTEGER nnonlin, CISSTNETLIB_INTEGER niter, CISSTNETLIB_INTEGER nstep)
 ~nmrFminSolver ()
void Allocate (CISSTNETLIB_INTEGER n, CISSTNETLIB_INTEGER nlin, CISSTNETLIB_INTEGER nnonlin, CISSTNETLIB_INTEGER niter, CISSTNETLIB_INTEGER nstep)
struct O8USERCONFIG & GetOptions (void)
void SetOptions (struct O8USERCONFIG &userCfg)
void PrintOptions (void)
template<int __instanceLine, class __elementType>
void Solve (nmrCallBackFunctionF1< __instanceLine, __elementType > &callBack, vctDynamicVector< CISSTNETLIB_DOUBLE > &X) throw (std::runtime_error)
template<int __instanceLine, class __elementType>
void Solve (nmrCallBackFunctionF1< __instanceLine, __elementType > &callBack, vctDynamicVector< CISSTNETLIB_DOUBLE > &X, vctDynamicVector< CISSTNETLIB_DOUBLE > &lbound, vctDynamicVector< CISSTNETLIB_DOUBLE > &ubound, vctDynamicMatrix< CISSTNETLIB_DOUBLE > &alin) throw (std::runtime_error)
template<int __instanceLineF, class __elementTypeF, int __instanceLineC, class __elementTypeC>
void Solve (nmrCallBackFunctionF1< __instanceLineF, __elementTypeF > &callBackF, vctDynamicVector< CISSTNETLIB_DOUBLE > &X, nmrCallBackFunctionC< __instanceLineC, __elementTypeC > &callBackC, vctDynamicVector< CISSTNETLIB_DOUBLE > &lbound, vctDynamicVector< CISSTNETLIB_DOUBLE > &ubound) throw (std::runtime_error)
template<int __instanceLineF, class __elementTypeF, int __instanceLineC, class __elementTypeC>
void Solve (nmrCallBackFunctionF1< __instanceLineF, __elementTypeF > &callBackF, vctDynamicVector< CISSTNETLIB_DOUBLE > &X, nmrCallBackFunctionC< __instanceLineC, __elementTypeC > &callBackC, vctDynamicVector< CISSTNETLIB_DOUBLE > &lbound, vctDynamicVector< CISSTNETLIB_DOUBLE > &ubound, vctDynamicMatrix< CISSTNETLIB_DOUBLE > &alin) throw (std::runtime_error)
void Solve (void(*efFunctionPointer)(CISSTNETLIB_INTEGER, CISSTNETLIB_DOUBLE[], CISSTNETLIB_DOUBLE *), vctDynamicVector< CISSTNETLIB_DOUBLE > &X, void(*econFunctionPointer)(CISSTNETLIB_INTEGER, CISSTNETLIB_INTEGER, CISSTNETLIB_INTEGER, CISSTNETLIB_INTEGER[], CISSTNETLIB_DOUBLE[], CISSTNETLIB_DOUBLE[], CISSTNETLIB_INTEGER[]), vctDynamicVector< CISSTNETLIB_DOUBLE > &lbound, vctDynamicVector< CISSTNETLIB_DOUBLE > &ubound, vctDynamicMatrix< CISSTNETLIB_DOUBLE > &alin) throw (std::runtime_error)

Protected Attributes

struct O8USERFUNC UserFn
struct O8USERCONFIG UserCfg
CISSTNETLIB_INTEGER N
CISSTNETLIB_INTEGER NLin
CISSTNETLIB_INTEGER NNonLin
CISSTNETLIB_INTEGER NIter
CISSTNETLIB_INTEGER NStep

Constructor & Destructor Documentation

◆ nmrFminSolver() [1/2]

nmrFminSolver::nmrFminSolver ( void )
inline

Default constructor. This constructor doesn't allocate any memory. If you use this constructor, you will need to use one of the Allocate() methods before you can use the Solve method.

◆ nmrFminSolver() [2/2]

nmrFminSolver::nmrFminSolver ( CISSTNETLIB_INTEGER n,
CISSTNETLIB_INTEGER nlin,
CISSTNETLIB_INTEGER nnonlin,
CISSTNETLIB_INTEGER niter,
CISSTNETLIB_INTEGER nstep )
inline

Constructor with memory allocation. This constructor allocates the memory based on N. It relies on the method Allocate(). The next call to the Solve() method will check that the parameters match the dimension.

Parameters
nNumber of variables
nlinNumber of linear constraints
nnonlinNumber of non linear constraints
niterMax number of iterations
nstep(typ. 20) This order will be used for the output as well.

◆ ~nmrFminSolver()

nmrFminSolver::~nmrFminSolver ( )
inline

Member Function Documentation

◆ Allocate()

void nmrFminSolver::Allocate ( CISSTNETLIB_INTEGER n,
CISSTNETLIB_INTEGER nlin,
CISSTNETLIB_INTEGER nnonlin,
CISSTNETLIB_INTEGER niter,
CISSTNETLIB_INTEGER nstep )
inline

This method allocates the memory based on N. The next call to the Solve() method will check that the parameters match the dimension.

Parameters
nNumber of variables

◆ GetOptions()

struct O8USERCONFIG & nmrFminSolver::GetOptions ( void )
inline

◆ PrintOptions()

void nmrFminSolver::PrintOptions ( void )
inline

◆ SetOptions()

void nmrFminSolver::SetOptions ( struct O8USERCONFIG & userCfg)
inline

◆ Solve() [1/5]

template<int __instanceLine, class __elementType>
void nmrFminSolver::Solve ( nmrCallBackFunctionF1< __instanceLine, __elementType > & callBack,
vctDynamicVector< CISSTNETLIB_DOUBLE > & X )
throw (std::runtime_error )
inline

◆ Solve() [2/5]

template<int __instanceLine, class __elementType>
void nmrFminSolver::Solve ( nmrCallBackFunctionF1< __instanceLine, __elementType > & callBack,
vctDynamicVector< CISSTNETLIB_DOUBLE > & X,
vctDynamicVector< CISSTNETLIB_DOUBLE > & lbound,
vctDynamicVector< CISSTNETLIB_DOUBLE > & ubound,
vctDynamicMatrix< CISSTNETLIB_DOUBLE > & alin )
throw (std::runtime_error )
inline

◆ Solve() [3/5]

template<int __instanceLineF, class __elementTypeF, int __instanceLineC, class __elementTypeC>
void nmrFminSolver::Solve ( nmrCallBackFunctionF1< __instanceLineF, __elementTypeF > & callBackF,
vctDynamicVector< CISSTNETLIB_DOUBLE > & X,
nmrCallBackFunctionC< __instanceLineC, __elementTypeC > & callBackC,
vctDynamicVector< CISSTNETLIB_DOUBLE > & lbound,
vctDynamicVector< CISSTNETLIB_DOUBLE > & ubound )
throw (std::runtime_error )
inline

◆ Solve() [4/5]

template<int __instanceLineF, class __elementTypeF, int __instanceLineC, class __elementTypeC>
void nmrFminSolver::Solve ( nmrCallBackFunctionF1< __instanceLineF, __elementTypeF > & callBackF,
vctDynamicVector< CISSTNETLIB_DOUBLE > & X,
nmrCallBackFunctionC< __instanceLineC, __elementTypeC > & callBackC,
vctDynamicVector< CISSTNETLIB_DOUBLE > & lbound,
vctDynamicVector< CISSTNETLIB_DOUBLE > & ubound,
vctDynamicMatrix< CISSTNETLIB_DOUBLE > & alin )
throw (std::runtime_error )
inline

◆ Solve() [5/5]

void nmrFminSolver::Solve ( void(* efFunctionPointer )(CISSTNETLIB_INTEGER, CISSTNETLIB_DOUBLE[], CISSTNETLIB_DOUBLE *),
vctDynamicVector< CISSTNETLIB_DOUBLE > & X,
void(* econFunctionPointer )(CISSTNETLIB_INTEGER, CISSTNETLIB_INTEGER, CISSTNETLIB_INTEGER, CISSTNETLIB_INTEGER[], CISSTNETLIB_DOUBLE[], CISSTNETLIB_DOUBLE[], CISSTNETLIB_INTEGER[]),
vctDynamicVector< CISSTNETLIB_DOUBLE > & lbound,
vctDynamicVector< CISSTNETLIB_DOUBLE > & ubound,
vctDynamicMatrix< CISSTNETLIB_DOUBLE > & alin )
throw (std::runtime_error )
inline

Member Data Documentation

◆ N

CISSTNETLIB_INTEGER nmrFminSolver::N
protected

◆ NIter

CISSTNETLIB_INTEGER nmrFminSolver::NIter
protected

◆ NLin

CISSTNETLIB_INTEGER nmrFminSolver::NLin
protected

◆ NNonLin

CISSTNETLIB_INTEGER nmrFminSolver::NNonLin
protected

◆ NStep

CISSTNETLIB_INTEGER nmrFminSolver::NStep
protected

◆ UserCfg

struct O8USERCONFIG nmrFminSolver::UserCfg
protected

◆ UserFn

struct O8USERFUNC nmrFminSolver::UserFn
protected

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