Classes | Public Types | Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
Eigen::HybridNonLinearSolver< FunctorType, Scalar > Class Template Reference

Finds a zero of a system of n nonlinear functions in n variables by a modification of the Powell hybrid method ("dogleg"). More...

#include <HybridNonLinearSolver.h>

Classes

struct  Parameters
 

Public Types

typedef Matrix< Scalar, Dynamic, 1 > FVectorType
 
typedef DenseIndex Index
 
typedef Matrix< Scalar, Dynamic, DynamicJacobianType
 
typedef Matrix< Scalar, Dynamic, DynamicUpperTriangularType
 

Public Member Functions

HybridNonLinearSolverSpace::Status hybrd1 (FVectorType &x, const Scalar tol=std::sqrt(NumTraits< Scalar >::epsilon()))
 
 HybridNonLinearSolver (FunctorType &_functor)
 
HybridNonLinearSolverSpace::Status hybrj1 (FVectorType &x, const Scalar tol=std::sqrt(NumTraits< Scalar >::epsilon()))
 
void resetParameters (void)
 
HybridNonLinearSolverSpace::Status solve (FVectorType &x)
 
HybridNonLinearSolverSpace::Status solveInit (FVectorType &x)
 
HybridNonLinearSolverSpace::Status solveNumericalDiff (FVectorType &x)
 
HybridNonLinearSolverSpace::Status solveNumericalDiffInit (FVectorType &x)
 
HybridNonLinearSolverSpace::Status solveNumericalDiffOneStep (FVectorType &x)
 
HybridNonLinearSolverSpace::Status solveOneStep (FVectorType &x)
 

Public Attributes

FVectorType diag
 
JacobianType fjac
 
Scalar fnorm
 
FVectorType fvec
 
Index iter
 
Index nfev
 
Index njev
 
Parameters parameters
 
FVectorType qtf
 
UpperTriangularType R
 
bool useExternalScaling
 

Private Member Functions

HybridNonLinearSolveroperator= (const HybridNonLinearSolver &)
 

Private Attributes

Scalar actred
 
Scalar delta
 
Scalar fnorm1
 
FunctorType & functor
 
bool jeval
 
Index n
 
Index ncfail
 
Index ncsuc
 
Index nslow1
 
Index nslow2
 
Scalar pnorm
 
Scalar prered
 
Scalar ratio
 
bool sing
 
Scalar sum
 
Scalar temp
 
FVectorType wa1
 
FVectorType wa2
 
FVectorType wa3
 
FVectorType wa4
 
Scalar xnorm
 

Detailed Description

template<typename FunctorType, typename Scalar = double>
class Eigen::HybridNonLinearSolver< FunctorType, Scalar >

Finds a zero of a system of n nonlinear functions in n variables by a modification of the Powell hybrid method ("dogleg").

The user must provide a subroutine which calculates the functions. The Jacobian is either provided by the user, or approximated using a forward-difference method.

Definition at line 43 of file HybridNonLinearSolver.h.

Member Typedef Documentation

template<typename FunctorType , typename Scalar = double>
typedef Matrix< Scalar, Dynamic, 1 > Eigen::HybridNonLinearSolver< FunctorType, Scalar >::FVectorType

Definition at line 66 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
typedef DenseIndex Eigen::HybridNonLinearSolver< FunctorType, Scalar >::Index

Definition at line 46 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
typedef Matrix< Scalar, Dynamic, Dynamic > Eigen::HybridNonLinearSolver< FunctorType, Scalar >::JacobianType

Definition at line 67 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
typedef Matrix< Scalar, Dynamic, Dynamic > Eigen::HybridNonLinearSolver< FunctorType, Scalar >::UpperTriangularType

Definition at line 69 of file HybridNonLinearSolver.h.

Constructor & Destructor Documentation

template<typename FunctorType , typename Scalar = double>
Eigen::HybridNonLinearSolver< FunctorType, Scalar >::HybridNonLinearSolver ( FunctorType &  _functor)
inline

Definition at line 48 of file HybridNonLinearSolver.h.

Member Function Documentation

template<typename FunctorType , typename Scalar >
HybridNonLinearSolverSpace::Status Eigen::HybridNonLinearSolver< FunctorType, Scalar >::hybrd1 ( FVectorType x,
const Scalar  tol = std::sqrt(NumTraits<Scalar>::epsilon()) 
)

Definition at line 358 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar >
HybridNonLinearSolverSpace::Status Eigen::HybridNonLinearSolver< FunctorType, Scalar >::hybrj1 ( FVectorType x,
const Scalar  tol = std::sqrt(NumTraits<Scalar>::epsilon()) 
)

Definition at line 122 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
HybridNonLinearSolver& Eigen::HybridNonLinearSolver< FunctorType, Scalar >::operator= ( const HybridNonLinearSolver< FunctorType, Scalar > &  )
private
template<typename FunctorType , typename Scalar = double>
void Eigen::HybridNonLinearSolver< FunctorType, Scalar >::resetParameters ( void  )
inline

Definition at line 89 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar >
HybridNonLinearSolverSpace::Status Eigen::HybridNonLinearSolver< FunctorType, Scalar >::solve ( FVectorType x)

Definition at line 344 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar >
HybridNonLinearSolverSpace::Status Eigen::HybridNonLinearSolver< FunctorType, Scalar >::solveInit ( FVectorType x)

Definition at line 143 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar >
HybridNonLinearSolverSpace::Status Eigen::HybridNonLinearSolver< FunctorType, Scalar >::solveNumericalDiff ( FVectorType x)

Definition at line 587 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar >
HybridNonLinearSolverSpace::Status Eigen::HybridNonLinearSolver< FunctorType, Scalar >::solveNumericalDiffInit ( FVectorType x)

Definition at line 380 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar >
HybridNonLinearSolverSpace::Status Eigen::HybridNonLinearSolver< FunctorType, Scalar >::solveNumericalDiffOneStep ( FVectorType x)

Definition at line 426 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar >
HybridNonLinearSolverSpace::Status Eigen::HybridNonLinearSolver< FunctorType, Scalar >::solveOneStep ( FVectorType x)

Definition at line 186 of file HybridNonLinearSolver.h.

Member Data Documentation

template<typename FunctorType , typename Scalar = double>
Scalar Eigen::HybridNonLinearSolver< FunctorType, Scalar >::actred
private

Definition at line 112 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Scalar Eigen::HybridNonLinearSolver< FunctorType, Scalar >::delta
private

Definition at line 105 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
FVectorType Eigen::HybridNonLinearSolver< FunctorType, Scalar >::diag

Definition at line 91 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
JacobianType Eigen::HybridNonLinearSolver< FunctorType, Scalar >::fjac

Definition at line 92 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Scalar Eigen::HybridNonLinearSolver< FunctorType, Scalar >::fnorm

Definition at line 97 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Scalar Eigen::HybridNonLinearSolver< FunctorType, Scalar >::fnorm1
private

Definition at line 109 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
FunctorType& Eigen::HybridNonLinearSolver< FunctorType, Scalar >::functor
private

Definition at line 100 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
FVectorType Eigen::HybridNonLinearSolver< FunctorType, Scalar >::fvec

Definition at line 91 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Index Eigen::HybridNonLinearSolver< FunctorType, Scalar >::iter

Definition at line 96 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
bool Eigen::HybridNonLinearSolver< FunctorType, Scalar >::jeval
private

Definition at line 106 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Index Eigen::HybridNonLinearSolver< FunctorType, Scalar >::n
private

Definition at line 101 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Index Eigen::HybridNonLinearSolver< FunctorType, Scalar >::ncfail
private

Definition at line 111 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Index Eigen::HybridNonLinearSolver< FunctorType, Scalar >::ncsuc
private

Definition at line 107 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Index Eigen::HybridNonLinearSolver< FunctorType, Scalar >::nfev

Definition at line 94 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Index Eigen::HybridNonLinearSolver< FunctorType, Scalar >::njev

Definition at line 95 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Index Eigen::HybridNonLinearSolver< FunctorType, Scalar >::nslow1
private

Definition at line 110 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Index Eigen::HybridNonLinearSolver< FunctorType, Scalar >::nslow2
private

Definition at line 110 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Parameters Eigen::HybridNonLinearSolver< FunctorType, Scalar >::parameters

Definition at line 90 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Scalar Eigen::HybridNonLinearSolver< FunctorType, Scalar >::pnorm
private

Definition at line 109 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Scalar Eigen::HybridNonLinearSolver< FunctorType, Scalar >::prered
private

Definition at line 112 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
FVectorType Eigen::HybridNonLinearSolver< FunctorType, Scalar >::qtf

Definition at line 91 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
UpperTriangularType Eigen::HybridNonLinearSolver< FunctorType, Scalar >::R

Definition at line 93 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Scalar Eigen::HybridNonLinearSolver< FunctorType, Scalar >::ratio
private

Definition at line 108 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
bool Eigen::HybridNonLinearSolver< FunctorType, Scalar >::sing
private

Definition at line 103 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Scalar Eigen::HybridNonLinearSolver< FunctorType, Scalar >::sum
private

Definition at line 102 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Scalar Eigen::HybridNonLinearSolver< FunctorType, Scalar >::temp
private

Definition at line 104 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
bool Eigen::HybridNonLinearSolver< FunctorType, Scalar >::useExternalScaling

Definition at line 98 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
FVectorType Eigen::HybridNonLinearSolver< FunctorType, Scalar >::wa1
private

Definition at line 113 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
FVectorType Eigen::HybridNonLinearSolver< FunctorType, Scalar >::wa2
private

Definition at line 113 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
FVectorType Eigen::HybridNonLinearSolver< FunctorType, Scalar >::wa3
private

Definition at line 113 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
FVectorType Eigen::HybridNonLinearSolver< FunctorType, Scalar >::wa4
private

Definition at line 113 of file HybridNonLinearSolver.h.

template<typename FunctorType , typename Scalar = double>
Scalar Eigen::HybridNonLinearSolver< FunctorType, Scalar >::xnorm
private

Definition at line 109 of file HybridNonLinearSolver.h.


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


hebiros
Author(s): Xavier Artache , Matthew Tesch
autogenerated on Thu Sep 3 2020 04:10:05