# 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 invalid input: '&' \frac{\partial g}{\partial x_1} invalid input: '&' \frac{\partial g}{\partial x_2} invalid input: '&' \cdots invalid input: '&' \frac{\partial g}{\partial x_n} \\ \\ \frac{\partial g}{\partial x_1} invalid input: '&' \frac{\partial^2 f}{\partial x_1^2} invalid input: '&' \frac{\partial^2 f}{\partial x_1\,\partial x_2} invalid input: '&' \cdots invalid input: '&' \frac{\partial^2 f}{\partial x_1\,\partial x_n} \\ \\ \frac{\partial g}{\partial x_2} invalid input: '&' \frac{\partial^2 f}{\partial x_2\,\partial x_1} invalid input: '&' \frac{\partial^2 f}{\partial x_2^2} invalid input: '&' \cdots invalid input: '&' \frac{\partial^2 f}{\partial x_2\,\partial x_n} \\ \\ \vdots invalid input: '&' \vdots invalid input: '&' \vdots invalid input: '&' \ddots invalid input: '&' \vdots \\ \\ \frac{\partial g}{\partial x_n} invalid input: '&' \frac{\partial^2 f}{\partial x_n\,\partial x_1} invalid input: '&' \frac{\partial^2 f}{\partial x_n\,\partial x_2} invalid input: '&' \cdots invalid input: '&' \frac{\partial^2 f}{\partial x_n^2} \end{bmatrix}$

This implementation computes the bordered Hessian matrix numerically using the finite difference method.

• ## 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

### Methods inherited from class java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait

### Methods inherited from interface dev.nm.algebra.linear.matrix.doubles.Matrix

toCSV
• ## Constructor Details

• ### BorderedHessian

public BorderedHessian
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 function
g - a multivariate function, usually a constraint function
x - the point to evaluate the bordered Hessian at