3 #include <vnl/vnl_matrix.h> 6 #include <itkSingleValuedCostFunction.h> 7 #include "AnimaOptimizersExport.h" 17 public itk::SingleValuedCostFunction
36 virtual MeasureType GetValue(const ParametersType ¶meters) const ITK_OVERRIDE;
37 virtual
void GetDerivative(const ParametersType ¶meters, DerivativeType &derivative) const ITK_OVERRIDE;
39 virtual
unsigned int GetNumberOfParameters() const ITK_OVERRIDE {
return 1;}
41 itkSetMacro(JRank,
unsigned int)
42 itkSetMacro(DeltaParameter,
double)
43 itkGetMacro(SolutionInBounds,
bool)
52 void SetInputWorkMatricesAndVectorsFromQRDerivative(vnl_matrix <double> &qrDerivative,
64 bool CheckSolutionIsInBounds(
ParametersType &solutionVector)
const;
72 std::vector <unsigned int> m_InversePivotVector, m_PivotVector;
75 vnl_matrix <double> m_InputWorkMatrix;
76 mutable vnl_matrix <double> m_RAlphaTranspose;
77 mutable vnl_matrix <double> m_WorkMatrix;
78 mutable vnl_matrix <double> m_ZeroWorkMatrix;
80 mutable bool m_SolutionInBounds;
81 double m_DeltaParameter;
itk::SingleValuedCostFunction Superclass
Superclass::MeasureType MeasureType
void SetLowerBoundsPermutted(ParametersType &lb)
itk::SmartPointer< const Self > ConstPointer
void SetInversePivotVector(std::vector< unsigned int > &invPiv)
Superclass::DerivativeType DerivativeType
virtual ~BLMLambdaCostFunction() ITK_OVERRIDE
Levenberg-Marquardt lambda update cost function (phi) used for bounded levenberg marquardt optimizer ...
ParametersType & GetSolutionVector()
void SetPreviousParametersPermutted(ParametersType &val)
Superclass::ParametersType ParametersType
itk::SmartPointer< Self > Pointer
void SetUpperBoundsPermutted(ParametersType &ub)
void SetPivotVector(std::vector< unsigned int > &piv)
BLMLambdaCostFunction Self