Example 1 — Univariate cubic
\(f(x)=x^3-3x\). \(f'(x)=3x^2-3=0\Rightarrow x=\pm1\). \(f''(x)=6x\). At \(x=-1\): \(f''=-6<0\Rightarrow\) local max, \(f(-1)=2\). At \(x=1\): \(f''=6>0\Rightarrow\) local min, \(f(1)=-2\).
Enter f(x,y). We solve ∇f = (fx, fy) = (0,0) with a multi-start Newton method and classify using the Hessian:
D = fxxfyy − (fxy)².
x^2, y^2, sin(x*y), exp(x), log(y).abs) can make derivatives undefined.fx, fy, fxx, fxy, fyy.
Critical points satisfy fx=0 and fy=0.
D>0 and fxx>0 → local minimum;
if D>0 and fxx<0 → local maximum; if D<0 → saddle.
‖∇f(x*,y*)‖. Smaller is better.
A Critical Points Calculator locates and classifies the special points of a function where behavior can change—local maxima, local minima, or saddle points. In one variable, critical points occur where the derivative is zero or undefined (within the domain). In several variables, they occur where the gradient is the zero vector (or where partial derivatives fail to exist while the point remains in the domain). The calculator computes first derivatives, solves for candidate points, and then applies second-derivative or Hessian tests to label each candidate as a max, min, saddle, or inconclusive..
For \(f:\mathbb{R}\to\mathbb{R}\), critical points satisfy \(f'(x)=0\) (or derivative undefined). Classification uses the second-derivative test: \(f''(x^\*)\gt 0\) indicates a local minimum; \(f''(x^\*)\lt 0\) a local maximum; \(f''(x^\*)=0\) is inconclusive. For \(f:\mathbb{R}^n\to\mathbb{R}\), candidates solve \(\nabla f(\mathbf{x})=\mathbf{0}\). The Hessian matrix \(H(\mathbf{x})\) determines type via definiteness: positive definite \(\Rightarrow\) local minimum; negative definite \(\Rightarrow\) local maximum; indefinite \(\Rightarrow\) saddle; singular/inconclusive requires higher-order analysis or direct testing. The tool can also evaluate function values, check constraints (optional), and export a summary table of points and classifications.
1D critical points: \[ \mathcal{C}=\{x\in\mathrm{dom}(f): f'(x)=0 \ \text{or}\ f'(x)\ \text{DNE}\}. \]
1D classification: \[ f''(x^\*)>0 \Rightarrow \text{local min},\quad f''(x^\*)<0 \Rightarrow \text{local max},\quad f''(x^\*)=0 \Rightarrow \text{inconclusive}. \]
Gradient (multi-D): \[ \nabla f(\mathbf{x})=\left(\frac{\partial f}{\partial x_1},\dots,\frac{\partial f}{\partial x_n}\right)^{\!\top},\quad \nabla f(\mathbf{x}^\*)=\mathbf{0}. \]
Hessian and 2D test: \[ H=\big[\partial^2 f/\partial x_i\partial x_j\big],\quad D=f_{xx}f_{yy}-f_{xy}^2. \] \[ D>0,\ f_{xx}>0\Rightarrow \text{min};\quad D>0,\ f_{xx}<0\Rightarrow \text{max};\quad D<0\Rightarrow \text{saddle};\quad D=0\Rightarrow \text{inconclusive}. \]
\(f(x)=x^3-3x\). \(f'(x)=3x^2-3=0\Rightarrow x=\pm1\). \(f''(x)=6x\). At \(x=-1\): \(f''=-6<0\Rightarrow\) local max, \(f(-1)=2\). At \(x=1\): \(f''=6>0\Rightarrow\) local min, \(f(1)=-2\).
\(f(x,y)=x^2+xy+y^2\). \(\nabla f=(2x+y,\ x+2y)=\mathbf{0}\Rightarrow (0,0)\). \(H=\begin{bmatrix}2&1\\1&2\end{bmatrix}\) is positive definite (eigenvalues \(1,3\gt0\)) \(\Rightarrow\) strict local minimum at \((0,0)\).
\(f(x,y)=x^2-y^2\). \(\nabla f=(2x,-2y)=\mathbf{0}\Rightarrow (0,0)\). \(H=\mathrm{diag}(2,-2)\) is indefinite \(\Rightarrow\) saddle at \((0,0)\).
Points where \(f'(x)=0\) or undefined (1D), or \(\nabla f=\mathbf{0}\) (multi-D), indicating potential extrema or saddle behavior.
Use \(f''\) in 1D; use Hessian definiteness (or \(D\) in 2D) in multivariable settings.
Yes—polynomials and nonlinear systems often have several; the calculator lists and classifies each one.
Try higher derivatives, evaluate nearby values, or use eigenvalue analysis/series expansion.
No. Indefinite Hessian implies a saddle; singular cases may need deeper analysis.
Yes—provide bounds or initial guesses to focus numerical solvers in complex landscapes.
It flags derivative failures and can still test one-sided behavior or compare values on piecewise domains.