# Numerical derivative calculator

> The first or second derivative of any function f(x) at a point, to about 20 significant digits by Richardson extrapolation, with the tangent line drawn.

Interactive version: https://www.calcopenly.com/math/derivative-calculator
Subject: Math calculators

The derivative f′(x₀) is the slope of f at x₀, the limit of the central difference quotient [f(x₀ + h) − f(x₀ − h)]/2h as h shrinks to 0. The calculator evaluates that quotient for h = 0.1 × max(1, |x₀|) and repeated halvings, then combines the results by Richardson extrapolation (Ridders' method, Numerical Recipes §5.7), which cancels the h², h⁴, … error terms one at a time and reaches about 20 significant digits. The second derivative uses [f(x₀ + h) − 2f(x₀) + f(x₀ − h)]/h² the same way.

Use it to check a derivative worked out by hand, to find a rate of change where no formula is convenient, or to get a tangent line. The default, x² sin x at x = 1, has derivative 2 sin 1 + cos 1 ≈ 2.2232443 and tangent line y = 2.223244x − 1.381773.

Trig functions use radians. When the slopes from the left and right disagree, f has a corner there and the calculator reports that instead of a number.

## Inputs

- **Function f(x)**: Use x as the variable, e.g. x^3 - 2x, exp(x), ln(x). Trig functions use radians here.
- **At x =**
- **Derivative** (options: First f′(x), Second f″(x))
- **Chart half-width**: The chart shows x₀ ± this much

## Results

- Derivative — main result
- f(x₀)
- Tangent line
- Estimated error

## Formula

$$
\begin{gathered} f'(x) = \lim_{h \to 0}\frac{f(x+h) - f(x-h)}{2h} \\[10pt] f''(x) = \lim_{h \to 0}\frac{\delta^2 f}{h^2} \\[4pt] \delta^2 f = f(x+h) - 2f(x) + f(x-h) \end{gathered}
$$

## Worked examples

### d/dx x³ at x = 2

- Function f(x): x^3
- At x =: 2
- Derivative: First f′(x)
- **Derivative: 12**
- **f(x₀): 8**
- **Tangent line: y = 12x − 16**
- Checked against: 3x² = 12 at x = 2; tangent 8 + 12(x − 2)

### d/dx sin x at 0 (radians)

- Function f(x): sin(x)
- At x =: 0
- Derivative: First f′(x)
- **Derivative: 1**
- Checked against: cos 0 = 1

### d/dx x²·sin x at 1

- Function f(x): x^2 * sin(x)
- At x =: 1
- Derivative: First f′(x)
- **Derivative: 2.223244275484**
- Checked against: 2 sin 1 + cos 1 with sin/cos by Taylor series in Python decimal at 70 digits (hp.py)

### d/dx eˣ at 1

- Function f(x): exp(x)
- At x =: 1
- Derivative: First f′(x)
- **Derivative: 2.718281828459**
- Checked against: e (Python Decimal(1).exp())

### Second derivative of ln x at 2

- Function f(x): ln(x)
- At x =: 2
- Derivative: Second f″(x)
- **Derivative: -0.25**
- Checked against: −1/x² = −1/4 at x = 2

### Flat point: d/dx (x − 1)³ at 1

- Function f(x): (x-1)^3
- At x =: 1
- Derivative: First f′(x)
- **Derivative: 0**
- **f(x₀): 0**
- Checked against: 3(x − 1)² = 0 at x = 1

## Questions

### What is a derivative?

The derivative of f at x₀ is the slope of its graph there: the limit of [f(x₀ + h) − f(x₀)]/h as h approaches 0. For f(x) = x³ at x = 2 the slope is 3 × 2² = 12, so near x = 2 the function rises about 12 units for each unit of x. The line y = 12x − 16, which touches the curve at (2, 8), is the tangent there.

### How do you find a derivative numerically?

Evaluate a difference quotient with a small step h. The central quotient [f(x + h) − f(x − h)]/2h beats the one-sided [f(x + h) − f(x)]/h because its error shrinks like h² rather than h: for sin x at 0 with h = 0.1 it gives 0.998334 against the exact 1. A tiny h eventually fails through rounding error, so this calculator extrapolates from moderate steps instead.

### What does the second derivative tell you?

The second derivative f″(x) is the rate of change of the slope, so it measures curvature: positive where the graph bends upward, negative where it bends downward. For ln x, f″(x) = −1/x², so f″(2) = −0.25. Numerically it comes from [f(x + h) − 2f(x) + f(x − h)]/h². Where f″ changes sign the graph has an inflection point.

### How do you find the equation of a tangent line?

Use y = f(x₀) + f′(x₀)(x − x₀). For f(x) = x³ at x₀ = 2, f(2) = 8 and f′(2) = 12, so y = 8 + 12(x − 2) = 12x − 16. The tangent is also the best straight-line approximation to f near x₀: it estimates 2.1³ as 8 + 12 × 0.1 = 9.2, against the exact 9.261.

### Why does a function have no derivative at some points?

The slopes from the left and the right must agree. |x| at 0 has slope −1 from the left and +1 from the right, a corner, so it has no derivative there, even though the central quotient averages to 0. A jump, or a vertical tangent such as the cube root of x at 0, also rules one out. The calculator compares one-sided quotients and reports the corner.

### How accurate is the numerical derivative calculator?

Accuracy depends on your inputs and the method's assumptions. Decimal arithmetic uses 50 significant digits, but estimates, numerical methods and source data can be less precise; the displayed rounding does not remove those limits. It is checked against 6 worked examples whose answers come from independent sources; for example, “d/dx x³ at x = 2” is checked against 3x² = 12 at x = 2; tangent 8 + 12(x − 2).

### Where does the method come from?

Press et al., Numerical Recipes (3rd ed.) §5.7 — numerical derivatives (Ridders' method); Wolfram MathWorld — Richardson Extrapolation.

## Sources

- Press et al., Numerical Recipes (3rd ed.) §5.7 — numerical derivatives (Ridders' method)
- [Wolfram MathWorld — Richardson Extrapolation](https://mathworld.wolfram.com/RichardsonExtrapolation.html)
