Package org.ddogleg.optimization.math
Interface HessianSchurComplement<S extends DMatrix>
- All Superinterfaces:
HessianMath
- All Known Implementing Classes:
HessianSchurComplement_Base
,HessianSchurComplement_DDRM
,HessianSchurComplement_DSCC
Given the already computed Jacobian (broken up into a left and right side) compute the decomposed approximate Hessian matrix, i.e. [A B, B D]
A=L'*L B=L'*R D=R*R
Where L and R are the left and right hand side of the Jacobian, respectively
-
Method Summary
Modifier and TypeMethodDescriptionvoid
computeGradient
(S jacLeft, S jacRight, DMatrixRMaj residuals, DMatrixRMaj gradient) Computes the gradient given the Jacobian and the residuals.void
computeHessian
(S jacLeft, S jacRight) Given the left and right hand side of the Jacobian compute the Hessian.Creates a matrix of the same type that this interface can processMethods inherited from interface org.ddogleg.optimization.math.HessianMath
divideRowsCols, extractDiagonals, init, initializeSolver, innerVectorHessian, setDiagonals, solve
-
Method Details
-
computeHessian
Given the left and right hand side of the Jacobian compute the Hessian.- Parameters:
jacLeft
- (input) Jacobian left sidejacRight
- (input) Jacobian right side
-
computeGradient
Computes the gradient given the Jacobian and the residuals.- Parameters:
jacLeft
- (input) Jacobian left sidejacRight
- (input) Jacobian right sideresiduals
- (Input) residualsgradient
- (Output) gradient
-
createMatrix
S createMatrix()Creates a matrix of the same type that this interface can process- Returns:
- matrx
-