Concave up vs concave down
A graph is concave up where it bends upward like a cup (∪): its slope is increasing. It's concave down where it bends downward like a cap (∩): its slope is decreasing. A point of inflection is a point where f is continuous and the concavity changes from one to the other.
f″(x) < 0 on an interval → concave down
Inflection point at x = c: f is continuous at c and f″ changes sign there
How it's calculated
- Differentiate twice symbolically to get f″(x).
- Find every x in your range where f″(x) = 0 or f″ is undefined, by scanning 3,000 subintervals for sign changes and refining each one.
- Test the sign of f″ inside each interval between those points.
- Report an inflection point only where the sign really changes and f itself is defined.
Worked example
Take f(x) = x³ − 6x² + 9x + 1.
- f′(x) = 3x² − 12x + 9 and f″(x) = 6x − 12.
- f″(x) = 0 at x = 2.
- f″(0) = −12 < 0, so f is concave down on (−∞, 2). f″(3) = 6 > 0, so f is concave up on (2, ∞).
- The sign changes and f(2) = 3, so (2, 3) is an inflection point.
f″ = 0 isn't enough
| f(x) | f″(x) | At x = 0 | Inflection point? |
|---|---|---|---|
| x³ | 6x | changes sign | Yes, at (0, 0) |
| x⁴ | 12x² | positive on both sides | No: concave up everywhere |
| x^(1/3) | −2/(9x^(5/3)) | undefined, changes sign | Yes: f is continuous at 0 |
| 1/x | 2/x³ | undefined, changes sign | No: f isn't defined at 0 |
Limitations
- The search covers only the interval you enter, −10 to 10 by default. Periodic functions like sin x have infinitely many inflection points.
- Roots are found numerically to about 10 significant digits. Simple fractions, square roots and multiples of π are confirmed exactly.
- If f″ is zero on a whole stretch, as for a piecewise function made with |x|, the concavity there is reported as not defined.