CPCFGalg implements the FG-Algorithm which finds a common orthogonal transformation matrix in order to simultaneously diagonalize several positive definite symmetric matrices.
computes the hessian matrix of a function func at a point x0 using the difference with a step h: d_(xy) f(x,y) = [f(x+h,y+h) - f(x+h,y-h) - f(x-h,y+h) + f(x-h,y-h)] / (4*h^2)
modified Newton-Raphson method for solving system func(x)=0 with backtracking (guarantees to decrease value of func in every iteration); compared with original Newton-Raphson method, it is less problematic to deal with highly oscillating functions
Inverse parabolic interpolation: finds the point x that is minimum/maximum of a parabola through three points (a,fa), (b,fb), (c,fc). INF is returned, if the three points are linear dependent (i.e. lying on the same line).