EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FitNewton::NewtonMinimizerGradHessian Class Reference

#include <fun4all_coresoftware/blob/master/offline/packages/HelixHough/FitNewton/NewtonMinimizerGradHessian.h>

+ Collaboration diagram for FitNewton::NewtonMinimizerGradHessian:

Public Member Functions

 NewtonMinimizerGradHessian ()
 
 ~NewtonMinimizerGradHessian ()
 
void setFunction (FunctionGradHessian *func)
 
bool minimize (const Eigen::VectorXd &start_point, Eigen::VectorXd &min_point, double tol=0x1.0p-30, unsigned int max_iter=1024, double abs_tol=0.)
 
bool findSaddlePoint (const Eigen::VectorXd &start_point, Eigen::VectorXd &min_point, double tol=0x1.0p-30, unsigned int max_iter=1024, double abs_tol=0.)
 
void fixParameter (unsigned int par)
 
void unfixParameter (unsigned int par)
 

Private Member Functions

bool zoom (const double &wolfe1, const double &wolfe2, double &lo, double &hi, Eigen::VectorXd &try_grad, Eigen::VectorXd &direction, double &grad0_dir, double &val0, double &val_lo, Eigen::VectorXd &init_params, Eigen::VectorXd &try_params, unsigned int max_iter, double &result)
 
bool lineSearch (double &alpha, const double &wolfe1, const double &wolfe2, Eigen::VectorXd &try_grad, Eigen::VectorXd &direction, double &grad0_dir, double &val0, Eigen::VectorXd &init_params, Eigen::VectorXd &try_params, const double &precision, const double &accuracy, unsigned int max_iter, double &result)
 

Private Attributes

FunctionGradHessianfunction
 
std::vector< int > fixparameter
 

Detailed Description

Definition at line 11 of file NewtonMinimizerGradHessian.h.

View newest version in sPHENIX GitHub at line 11 of file NewtonMinimizerGradHessian.h

Constructor & Destructor Documentation

FitNewton::NewtonMinimizerGradHessian::NewtonMinimizerGradHessian ( )

Definition at line 18 of file NewtonMinimizerGradHessian.cpp.

View newest version in sPHENIX GitHub at line 18 of file NewtonMinimizerGradHessian.cpp

FitNewton::NewtonMinimizerGradHessian::~NewtonMinimizerGradHessian ( )

Definition at line 24 of file NewtonMinimizerGradHessian.cpp.

View newest version in sPHENIX GitHub at line 24 of file NewtonMinimizerGradHessian.cpp

Member Function Documentation

bool FitNewton::NewtonMinimizerGradHessian::findSaddlePoint ( const Eigen::VectorXd &  start_point,
Eigen::VectorXd &  min_point,
double  tol = 0x1.0p-30,
unsigned int  max_iter = 1024,
double  abs_tol = 0. 
)

Definition at line 215 of file NewtonMinimizerGradHessian.cpp.

View newest version in sPHENIX GitHub at line 215 of file NewtonMinimizerGradHessian.cpp

References c1, c2, FitNewton::SquareGradient::calcValGrad(), FitNewton::FunctionGradHessian::calcValGradHessian(), FitNewton::FunctionGradHessian::computeCovariance(), FitNewton::FunctionGradHessian::rescaleMove(), boost::swap(), and value.

+ Here is the call graph for this function:

void FitNewton::NewtonMinimizerGradHessian::fixParameter ( unsigned int  par)

Definition at line 38 of file NewtonMinimizerGradHessian.cpp.

View newest version in sPHENIX GitHub at line 38 of file NewtonMinimizerGradHessian.cpp

bool FitNewton::NewtonMinimizerGradHessian::lineSearch ( double &  alpha,
const double &  wolfe1,
const double &  wolfe2,
Eigen::VectorXd &  try_grad,
Eigen::VectorXd &  direction,
double &  grad0_dir,
double &  val0,
Eigen::VectorXd &  init_params,
Eigen::VectorXd &  try_params,
const double &  precision,
const double &  accuracy,
unsigned int  max_iter,
double &  result 
)
private

Definition at line 117 of file NewtonMinimizerGradHessian.cpp.

View newest version in sPHENIX GitHub at line 117 of file NewtonMinimizerGradHessian.cpp

References starlightConstants::alpha, temp1, and temp2.

bool FitNewton::NewtonMinimizerGradHessian::minimize ( const Eigen::VectorXd &  start_point,
Eigen::VectorXd &  min_point,
double  tol = 0x1.0p-30,
unsigned int  max_iter = 1024,
double  abs_tol = 0. 
)

Definition at line 345 of file NewtonMinimizerGradHessian.cpp.

View newest version in sPHENIX GitHub at line 345 of file NewtonMinimizerGradHessian.cpp

References c1, c2, FitNewton::FunctionGradHessian::nPars(), boost::swap(), and value.

Referenced by VertexFitFunc::calcValGradHessian(), and main().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void FitNewton::NewtonMinimizerGradHessian::setFunction ( FunctionGradHessian func)

Definition at line 30 of file NewtonMinimizerGradHessian.cpp.

View newest version in sPHENIX GitHub at line 30 of file NewtonMinimizerGradHessian.cpp

References func, and FitNewton::FunctionGradHessian::nPars().

Referenced by VertexFitFunc::calcValGradHessian(), and main().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void FitNewton::NewtonMinimizerGradHessian::unfixParameter ( unsigned int  par)

Definition at line 47 of file NewtonMinimizerGradHessian.cpp.

View newest version in sPHENIX GitHub at line 47 of file NewtonMinimizerGradHessian.cpp

bool FitNewton::NewtonMinimizerGradHessian::zoom ( const double &  wolfe1,
const double &  wolfe2,
double &  lo,
double &  hi,
Eigen::VectorXd &  try_grad,
Eigen::VectorXd &  direction,
double &  grad0_dir,
double &  val0,
double &  val_lo,
Eigen::VectorXd &  init_params,
Eigen::VectorXd &  try_params,
unsigned int  max_iter,
double &  result 
)
private

Definition at line 56 of file NewtonMinimizerGradHessian.cpp.

View newest version in sPHENIX GitHub at line 56 of file NewtonMinimizerGradHessian.cpp

References starlightConstants::alpha, temp1, and temp2.

Member Data Documentation

std::vector<int> FitNewton::NewtonMinimizerGradHessian::fixparameter
private

Definition at line 30 of file NewtonMinimizerGradHessian.h.

View newest version in sPHENIX GitHub at line 30 of file NewtonMinimizerGradHessian.h

FunctionGradHessian* FitNewton::NewtonMinimizerGradHessian::function
private

Definition at line 26 of file NewtonMinimizerGradHessian.h.

View newest version in sPHENIX GitHub at line 26 of file NewtonMinimizerGradHessian.h


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