Jacobian matrix and determinant
In vector calculus, the Jacobian matrix (//, //) is the matrix of all first-order partial derivatives of a vector-valued function. Specifically, suppose is a function (which takes as input real n-tuples and produces as output real m-tuples). Such a function is given by m real-valued component functions, . The partial derivatives of all these functions with respect to the variables (if they exist) can be organized in an m-by-n matrix, the Jacobian matrix of , as follows:
This matrix, whose entries are functions of , is also denoted by and . (Note that some books define the Jacobian as the transpose of the matrix given above.)
The Jacobian matrix is important because if the function F is differentiable at a point (this is a slightly stronger condition than merely requiring that all partial derivatives exist there), then the Jacobian matrix defines a linear map , which is the best linear approximation of the function F near the point p. This linear map is thus the generalization of the usual notion of derivative, and is called the derivative or the differential of F at p.
In the case the Jacobian matrix is a square matrix, and its determinant, a function of , is the Jacobian determinant of F. It carries important information about the local behavior of F. In particular, the function F is locally invertible in the neighborhood of a point p if and only if the Jacobian determinant is nonzero at p (see Jacobian conjecture). The Jacobian determinant occurs also when changing the variables in multi-variable integrals (see substitution rule for multiple variables).
If m = 1, the Jacobian matrix has a single row, and may be identified with a vector, which is the gradient.
A simple example
Consider the function given by
Then we have
and the Jacobian matrix of F is
and the Jacobian determinant is
The Jacobian generalizes the gradient of a scalar-valued function of multiple variables, which itself generalizes the derivative of a scalar-valued function of a single variable. In other words, the Jacobian for a scalar-valued multivariable function is the gradient and that of a scalar-valued function of single variable is simply its derivative. The Jacobian can also be thought of as describing the amount of "stretching", "rotating" or "transforming" that a transformation imposes locally. For example, if is used to transform an image, the Jacobian of , describes how the image in the neighborhood of is transformed.
If a function is differentiable at a point, its derivative is given in coordinates by the Jacobian, but a function doesn't need to be differentiable for the Jacobian to be defined, since only the partial derivatives are required to exist.
If p is a point in Rn and F is differentiable at p, then its derivative is given by JF(p). In this case, the linear map described by JF(p) is the best linear approximation of F near the point p, in the sense that
Compare this to a Taylor series for a scalar function of a scalar argument, truncated to first order:
In a sense, both the gradient and Jacobian are "first derivatives" — the former the first derivative of a scalar function of several variables, the latter the first derivative of a vector function of several variables.
According to the inverse function theorem, the matrix inverse of the Jacobian matrix of an invertible function is the Jacobian matrix of the inverse function. That is, if the Jacobian of the function F : Rn → Rn is continuous and nonsingular at the point p in Rn, then F is invertible when restricted to some neighborhood of p and
Consider a dynamical system of the form x' = F(x), where x' is the (component-wise) time derivative of x, and F : Rn → Rn is continuous and differentiable. If F(x0) = 0, then x0 is a stationary point (also called a critical point, not to be confused with a fixed point). The behavior of the system near a stationary point is related to the eigenvalues of JF(x0), the Jacobian of F at the stationary point. Specifically, if the eigenvalues all have real parts that are less than 0, then the system is stable near the stationary point, if any eigenvalue has a real part that is greater than 0, then the point is unstable. If the largest real part of the eigenvalues is equal to 0, the Jacobian matrix does not allow for an evaluation of the stability.
A system of coupled nonlinear equations can be solved iteratively by Newton's method. This method uses the Jacobian matrix of the system of equations.
The following is the detail code in MATLAB (although there is a built in 'jacobian' command)
function s = newton(f, x, tol) % f is a multivariable function handle, x is a starting point, both given as row vectors % s is solution of f(s)=0 found by Newton's method if nargin == 2 tol = 10^(-5); end while 1 % if x and f(x) are row vectors, we need transpose operations here y = x' - jacob(f, x)\f(x)'; % get the next point if norm(f(y))<tol % check error tolerate s = y'; return; end x = y'; end
function j = jacob(f, x) % approximately calculate Jacobian matrix k = length(x); j = zeros(k, k); x2 = x; dx = 0.001; for m = 1: k x2(m) = x(m)+dx; j(m, :) = (f(x2)-f(x))/dx; % partial derivatives in m-th row x2(m) = x(m); end
If m = n, then F is a function from n-space to n-space and the Jacobian matrix is a square matrix. We can then form its determinant, known as the Jacobian determinant. The Jacobian determinant is sometimes simply called "the Jacobian."
The Jacobian determinant at a given point gives important information about the behavior of F near that point. For instance, the continuously differentiable function F is invertible near a point p ∈ Rn if the Jacobian determinant at p is non-zero. This is the inverse function theorem. Furthermore, if the Jacobian determinant at p is positive, then F preserves orientation near p; if it is negative, F reverses orientation. The absolute value of the Jacobian determinant at p gives us the factor by which the function F expands or shrinks volumes near p; this is why it occurs in the general substitution rule.
The Jacobian determinant is used when making a change of variables when evaluating a multiple integral of a function over a region within its domain. To accommodate for the change of coordinates the magnitude of the Jacobian determinant arises as a multiplicative factor within the integral. This is because the n-dimensional dV element is in general a parallelepiped in the new coordinate system, and the n-volume of a parallelepiped is the determinant of its edge vectors.
The Jacobian matrix for this coordinate change is
The determinant is r2 sin θ. As an example, since dV = dx1 dx2 dx3 this determinant implies that the differential volume element dV = r2 sin θ dr dθ dφ. Nevertheless this determinant varies with coordinates.
Example 2. The Jacobian matrix of the function F : R3 → R4 with components
This example shows that the Jacobian need not be a square matrix.
Example 4. The Jacobian determinant of the function F : R3 → R3 with components
From this we see that F reverses orientation near those points where x1 and x2 have the same sign; the function is locally invertible everywhere except near points where x1 = 0 or x2 = 0. Intuitively, if you start with a tiny object around the point (1,2,3) and apply F to that object, you will get a resulting object with approximately 40×1×2=80 times the volume of the original one.
- D.K. Arrowsmith and C.M. Place, Dynamical Systems, Section 3.3, Chapman & Hall, London, 1992. ISBN 0-412-39080-9.