hessian

Hessian matrix of scalar function

Syntax

Description

example

hessian(f,v) finds the Hessian matrix of the scalar function f with respect to vector v in Cartesian coordinates.

If you do not specify v, then hessian(f) finds the Hessian matrix of the scalar function f with respect to a vector constructed from all symbolic variables found in f. The order of variables in this vector is defined by symvar.

Examples

Find Hessian Matrix of a Scalar Function

Find the Hessian matrix of a function by using hessian. Then find the Hessian matrix of the same function as the Jacobian of the gradient of the function.

Find the Hessian matrix of this function of three variables:

syms x y z
f = x*y + 2*z*x;
hessian(f,[x,y,z])
ans =
[ 0, 1, 2]
[ 1, 0, 0]
[ 2, 0, 0]

Alternatively, compute the Hessian matrix of this function as the Jacobian of the gradient of that function:

jacobian(gradient(f))
ans =
[ 0, 1, 2]
[ 1, 0, 0]
[ 2, 0, 0]

Input Arguments

expand all

f — Scalar functionsymbolic expression | symbolic function

Scalar function, specified as symbolic expression or symbolic function.

v — Vector with respect to which you find Hessian matrixsymbolic vector

Vector with respect to which you find Hessian matrix, specified as a symbolic vector. By default, v is a vector constructed from all symbolic variables found in f. The order of variables in this vector is defined by symvar.

If v is an empty symbolic object, such as sym([]), then hessian returns an empty symbolic object.

More About

expand all

Hessian Matrix

The Hessian matrix of f(x) is the square matrix of the second partial derivatives of f(x).

H(f)=[2fx122fx1x22fx1xn2fx2x12fx222fx2xn2fxnx12fxnx22fxn2]

Was this topic helpful?