Class BorderedHessian
- java.lang.Object
-
- dev.nm.algebra.linear.matrix.doubles.matrixtype.dense.triangle.SymmetricMatrix
-
- dev.nm.analysis.differentiation.multivariate.BorderedHessian
-
- All Implemented Interfaces:
Matrix
,MatrixAccess
,MatrixRing
,MatrixTable
,Densifiable
,AbelianGroup<Matrix>
,Monoid<Matrix>
,Ring<Matrix>
,Table
,DeepCopyable
public class BorderedHessian extends SymmetricMatrix
A bordered Hessian matrix consists of the Hessian of a multivariate function f, and the gradient of a multivariate function g. We assume that the function f is continuous so that the bordered Hessian matrix is square and symmetric. For scalar functions f and g, we have \[ H(f,g) = \begin{bmatrix} 0 & \frac{\partial g}{\partial x_1} & \frac{\partial g}{\partial x_2} & \cdots & \frac{\partial g}{\partial x_n} \\ \\ \frac{\partial g}{\partial x_1} & \frac{\partial^2 f}{\partial x_1^2} & \frac{\partial^2 f}{\partial x_1\,\partial x_2} & \cdots & \frac{\partial^2 f}{\partial x_1\,\partial x_n} \\ \\ \frac{\partial g}{\partial x_2} & \frac{\partial^2 f}{\partial x_2\,\partial x_1} & \frac{\partial^2 f}{\partial x_2^2} & \cdots & \frac{\partial^2 f}{\partial x_2\,\partial x_n} \\ \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ \\ \frac{\partial g}{\partial x_n} & \frac{\partial^2 f}{\partial x_n\,\partial x_1} & \frac{\partial^2 f}{\partial x_n\,\partial x_2} & \cdots & \frac{\partial^2 f}{\partial x_n^2} \end{bmatrix} \] This implementation computes the bordered Hessian matrix numerically using the finite difference method.- See Also:
- Wikipedia: Bordered Hessian
-
-
Constructor Summary
Constructors Constructor Description BorderedHessian(RealScalarFunction f, RealScalarFunction g, Vector x)
Construct the bordered Hessian matrix for multivariate functions f and g at point x.
-
Method Summary
-
Methods inherited from class dev.nm.algebra.linear.matrix.doubles.matrixtype.dense.triangle.SymmetricMatrix
add, deepCopy, equals, get, getColumn, getRow, hashCode, minus, multiply, multiply, nCols, nRows, ONE, opposite, scaled, set, t, toDense, toString, ZERO
-
-
-
-
Constructor Detail
-
BorderedHessian
public BorderedHessian(RealScalarFunction f, RealScalarFunction g, Vector x)
Construct the bordered Hessian matrix for multivariate functions f and g at point x. The dimension is \((n+1) \times (n+1)\), where n is the domain dimension of both f and g.- Parameters:
f
- a multivariate function, usually an objective functiong
- a multivariate function, usually a constraint functionx
- the point to evaluate the bordered Hessian at
-
-