Jacobian Calculator
Use this Jacobian Calculator to enter values, adjust options, and review results in a compact responsive workspace.
Results are calculated automatically as you enter data.
▼ See explanations and tips below ▼
Related Calculators
What Is a Jacobian?
A Jacobian is a matrix that organizes partial derivatives for a multivariable function. It is used when a function has several input variables and one or more output functions.
For a vector-valued function such as
the Jacobian matrix contains every first-order partial derivative:
Each row describes one output function. Each column describes one input variable. A single entry tells you how one output changes when one input changes while the other inputs are held fixed.
The Jacobian is especially useful because it describes the best local linear approximation of a differentiable multivariable function near a chosen point. In plain language, it tells you how the function behaves very close to that point.
Why Jacobians Matter
Jacobian matrices appear throughout multivariable calculus, engineering, physics, economics, optimization, robotics, machine learning, and coordinate transformations. They help answer questions such as:
- How sensitive is each output to each input?
- What is the local linear approximation of a nonlinear function?
- Does a coordinate transformation stretch or shrink area or volume?
- Does a transformation preserve or reverse orientation near a point?
- Is a square transformation locally singular or potentially invertible?
For example, when converting polar coordinates to Cartesian coordinates, the Jacobian determinant explains why the area element changes by a factor of \(r\). In numerical methods, Jacobians are also used to linearize nonlinear systems so that they can be approximated or solved more efficiently.
Key Terms to Know
- Partial derivative: The rate of change of a function with respect to one variable while the other variables are held fixed.
- Vector-valued function: A function with more than one output, such as \(F(x,y)=(u(x,y),v(x,y))\).
- Jacobian matrix: A matrix of first-order partial derivatives.
- Jacobian determinant: The determinant of a square Jacobian matrix.
- Local linearization: A linear approximation that describes a differentiable function near a specific point.
- Scale factor: For a square Jacobian, the absolute value of the determinant, \(|\det(J)|\), which gives the magnitude of local area or volume scaling.
- Singular matrix: A square matrix with determinant \(0\). For a transformation, this often indicates local collapse or loss of dimension.
- Central difference: A numerical derivative estimate that compares function values on both sides of the evaluation point.
How Jacobians Work
A Jacobian is built by differentiating each output function with respect to each input variable.
For a function
the Jacobian is
At a point \((a,b)\), the Jacobian gives the local linear approximation
This means that near \((a,b)\), the nonlinear function behaves approximately like a matrix transformation.
Numerical Central-Difference Estimates
Most entries are numerical estimates. For an entry without a supported direct rule, the calculator uses a centered finite difference:
Where:
- \(f_i\) is the selected output function.
- \(x_j\) is the selected input variable.
- \(\mathbf{a}\) is the point of evaluation.
- \(\mathbf{e}_j\) changes only the \(j\)-th variable.
- \(h\) is the small step size used for the numerical estimate.
For each variable, the initial step size is
where \(\varepsilon\) is JavaScript's floating-point machine epsilon and \(a_j\) is the coordinate value of the selected variable at the evaluation point. The calculator compares estimates using \(h\), \(h/2\), and \(h/4\) and reports the entry as unavailable when they do not agree within the stated relative tolerance. It also compares left- and right-sided slopes to reject obvious corners. This is a numerical check, not a proof that a derivative exists. For simple affine expressions and forms such as \(\sin(kx)\) or \(\cos(kx)\) with a numeric coefficient \(k\), the calculator uses the corresponding direct derivative rule. This avoids finite-difference aliasing for very rapid oscillations and sample-point collapse next to a very large offset.
Determinant and Scale
If the Jacobian is square, meaning the number of output functions equals the number of input variables, its determinant can be computed.
For a two-variable transformation,
the determinant is
The sign of \(\det(J)\) gives orientation information. A positive determinant preserves orientation locally, while a negative determinant reverses it. The absolute value,
is the local scale factor. In two dimensions it describes local area scaling, and in three dimensions it describes local volume scaling.
Examples of Jacobians in Practice
Example 1: A Simple Two-Output Function
Suppose
The Jacobian is
At the point \((1,1)\),
The determinant is
A zero determinant means the local linear transformation is singular. In this example, nearby changes are locally collapsed into a lower-dimensional direction.
Example 2: Polar Coordinates
The polar-to-Cartesian transformation is
The Jacobian with respect to \(r\) and \(\theta\) is
Its determinant is
So at \(r=2\), the local area scale factor is
This is why polar-coordinate area calculations include a factor of \(r\). The transformation stretches a tiny rectangle in the \((r,\theta)\) plane into a tiny region in the \((u,v)\) plane with area approximately multiplied by \(r\).
Example 3: A Rectangular Jacobian
Suppose
There are two output functions and three input variables, so the Jacobian has two rows and three columns:
This matrix is still meaningful: each entry is a partial derivative. However, because it is not square, it does not have a determinant in the usual square-matrix sense. A determinant-based scale factor is therefore not available.
How to Interpret the Result
A Jacobian matrix should be read row by row and column by column.
- A row corresponds to one output function.
- A column corresponds to one input variable.
- A matrix entry is the partial derivative of that output with respect to that input at the entered point.
- A positive entry means the output increases locally as that input increases, assuming the other inputs stay fixed.
- A negative entry means the output decreases locally as that input increases, assuming the other inputs stay fixed.
- An entry near zero means that output has little local sensitivity to that input at the selected point.
For a square matrix, the determinant adds extra interpretation:
- \(\det(J)>0\) suggests local orientation is preserved.
- \(\det(J)<0\) suggests local orientation is reversed.
- \(\det(J)=0\) suggests local singular behavior, such as local collapse.
- \(|\det(J)|\) gives the magnitude of local scaling.
The result is local. It describes behavior near the entered point, not across an entire interval or region.
Common Mistakes and Misconceptions
Mixing Up Rows and Columns
Rows follow the order of the output functions. Columns follow the order of the variables. If the variables are entered as \(r,\theta\), the first column is for \(r\) and the second column is for \(\theta\).
Entering the Point in the Wrong Order
Point coordinates must match the variable order. For variables \(x,y,z\), the point 1, 2, 3 means \(x=1\), \(y=2\), and \(z=3\).
Expecting a Determinant for a Rectangular Jacobian
A determinant is available only for square matrices. Rectangular Jacobians still contain useful partial derivatives, but a standard determinant and determinant-based scale factor are not computed.
Using Degrees Instead of Radians
Trigonometric functions such as sin, cos, and tan use radians. For example, \(45^\circ\) should be entered as approximately \(0.785398\), not as \(45\).
Treating the Numeric Estimate as Exact
Central differences are approximations. They are often accurate for smooth functions near ordinary points, but they can be unreliable near discontinuities, sharp corners, singularities, or highly oscillatory behavior.
Treating a Numerical Estimate as a Symbolic Derivative
The calculator applies limited direct analytic rules to simple affine expressions and sin(k*x)/cos(k*x) forms with numeric k. All other supported entries are convergence-checked numerical central-difference estimates, and the selected-entry label reports which method produced that entry.
Ignoring Missing or Invalid Point Values
Enter exactly one finite point coordinate for every variable, in the same order. Missing, extra, or non-finite coordinates are rejected rather than replaced with a default.
When to Use a Jacobian
Use a Jacobian when you need to understand how several outputs change with respect to several inputs.
Common uses include:
- Studying multivariable functions in calculus.
- Linearizing nonlinear systems near a point.
- Analyzing coordinate transformations such as polar, cylindrical, or spherical coordinates.
- Computing local area or volume scale factors for square transformations.
- Checking whether a transformation may be locally singular.
- Comparing sensitivity of outputs to different variables.
- Supporting numerical methods that approximate nonlinear behavior with linear algebra.
Limitations and Things to Keep in Mind
A Jacobian is a local tool. It describes behavior near a selected point, not necessarily the function’s global behavior.
The calculator estimates derivatives numerically, so results depend on the function, the point, and the step size. Smooth functions usually behave better under central differences than functions with corners, jumps, vertical asymptotes, undefined values, or rapid oscillations.
Numeric formatting also matters. Finite results are displayed with up to 12 significant digits. Only a value that is numerically zero is displayed as \(0\); a nonzero value is not deliberately rounded to zero for display. The displayed digits are still rounded, so use the entered formula and point to independently verify important results.
The determinant and scale factor are meaningful only for square Jacobian matrices. If the matrix is rectangular, the partial derivatives still matter, but determinant and scale outputs are intentionally unavailable.
The calculator works with real finite numeric values. It does not support complex numbers, arbitrary programming syntax, property access, piecewise conditionals, arrays, or objects. Variable names should be simple names such as \(x\), \(y\), \(z\), \(r\), or \(\theta\), and should not duplicate built-in math names such as pi, sin, or sqrt.
For important academic, engineering, scientific, financial, safety, or official work, double-check the result with the original function, the expected derivative rules, and an appropriate professional or instructor when needed.
How to Use This Calculator
- Enter one function per line, or separate functions with semicolons.
-
Use
name = expressionwhen you want to name an output function, such asu = r*cos(theta). -
Enter the variables in the order they should appear as Jacobian columns, such as
r, thetaorx, y, z. - Enter the point coordinates in the same order as the variables.
-
Use supported math functions such as
sin,cos,tan,abs,exp,log,ln,sqrt,min,max, andpowwhen needed. - Use example presets such as polar, surface, or custom inputs to see common Jacobian setups.
- Read the Jacobian matrix by matching each row to a function and each column to a variable.
- Click a matrix entry to inspect the selected partial derivative and its numeric value at the point.
- For square matrices, review the determinant and scale factor.
- Use the preview graph for two-function, two-variable transformations, and download the graph if you need a PNG image.
Frequently Asked Questions
What does each Jacobian entry mean?
Each entry is a partial derivative. It tells you how one output function changes with respect to one input variable at the selected point while the other variables are held fixed.
Why does the calculator ask for a point?
For most nonlinear functions, partial derivatives change from point to point. The point tells the calculator where to evaluate the local derivative estimates.
Why is there no determinant for my result?
The determinant is only defined for square matrices. If you enter a different number of functions and variables, the Jacobian is rectangular, so the matrix entries are shown but determinant and scale are unavailable.
What does a zero determinant mean?
A zero determinant means the square Jacobian is singular at that point. Geometrically, this can indicate local collapse or loss of area or volume, but numerical rounding and tolerance can also make a very small determinant display as zero.
Are trigonometric inputs in degrees or radians?
They are in radians. To use degrees, convert first. For example, \(45^\circ\) is \(\frac{\pi}{4}\), which is approximately \(0.785398\).
Is the result exact or numerical?
The matrix values, determinant, and scale factor are numerical outputs. The calculator labels the partial derivative being estimated but does not claim an exact symbolic derivative.
Can the calculator handle complex numbers?
No. The calculator is designed for real-valued, finite expressions. Complex-valued functions and variables are not supported.
Sources and References
Books and Textbooks
- Gilbert Strang and Edwin “Jed” Herman. Calculus Volume 3. OpenStax, 2016. Sections 4.3 “Partial Derivatives,” 4.4 “Tangent Planes and Linear Approximations,” and 5.7 “Change of Variables in Multiple Integrals.” https://openstax.org/books/calculus-volume-3/pages/4-3-partial-derivatives, https://openstax.org/books/calculus-volume-3/pages/4-4-tangent-planes-and-linear-approximations, https://openstax.org/books/calculus-volume-3/pages/5-7-change-of-variables-in-multiple-integrals
- Gregory Hartman, Sean Fitzpatrick, Alex Jordan, and Carly Vollet. APEX Calculus for University of Lethbridge. Section 14.6 “The Derivative as a Linear Transformation.” https://opentext.uleth.ca/apex-standard/secderivmatrix.html
- Qingkai Kong, Timmy Siauw, and Alexandre Bayen. Python Programming and Numerical Methods: A Guide for Engineers and Scientists. 1st edition, Elsevier, 2020. Chapter 20, especially “Finite Difference Approximating Derivatives.” https://pythonnumericalmethods.studentorg.berkeley.edu/notebooks/chapter20.02-Finite-Difference-Approximating-Derivatives.html
Online and Official Sources
- Elsevier. “Python Programming and Numerical Methods: A Guide for Engineers and Scientists.” Publisher page, accessed June 28, 2026. https://shop.elsevier.com/books/python-programming-and-numerical-methods/kong/978-0-12-819549-9