Why The Tangent Plane Keeps Catching People Out
You're working with a multivariable function, trying to approximate a surface near a specific point, and suddenly you need the Equation Of Tangent Plane. Most textbooks present this as a straightforward plug-and-chug exercise, but the reality is messier than the examples in Chapter 14 suggest. I've seen this topic come up repeatedly in engineering meetings where someone needs a local linearization and goes from zero to the right answer in about three minutes, or spends twenty minutes second-guessing their partials. Start with the direct form, since that's what you'll actually use on a whiteboard or in code. If your surface is given explicitly as z = f(x, y), then the tangent plane at (x, y, z) is z z = f(x, y)(x x) + f(x, y)(y y). The variables f and f are the partial derivatives with respect to x and y, evaluated at the point of tangency. You compute them once, plug in the coordinates, and you have your plane. Nothing requires memorizing more than that single expression. The implicit case comes up later, and it trips people up for no real reason. If your surface is defined as F(x, y, z) = c, the normal vector to the surface at any point is simply the gradient F = F, F, F_z. The tangent plane equation becomes F(x,y,z)(x x) + F(x,y,z)(y y) + F_z(x,y,z)(z z) = 0. This form is particularly useful when you're dealing with level sets or surfaces that can't be solved for z easily.
Here's a concrete worked example that covers the standard case. Take f(x, y) = x²y + sin(xy) and find the tangent plane at (1, 0, 1). First, verify the point is on the surface: f(1, 0) = 1²·0 + sin(0) = 0, so z should be 0, not 1. Common error right there. At (1, 0, 0), compute f = 2xy + ycos(xy). At (1, 0): f = 0 + 0 = 0. Compute f = x² + xcos(xy). At (1, 0): f = 1 + 1 = 2. The tangent plane is z 0 = 0(x 1) + 2(y 0), which simplifies to z = 2y. Check it: the plane passes through (1, 0, 0), the slope in the y-direction matches the partial, and the x-slope is zero because f vanishes there. I once spent about forty-five minutes debugging a simulation where the tangent plane approximation was producing wildly incorrect results near a critical point. The function involved was a ratio of polynomials, and at the evaluation point both partial derivatives happened to be zero. The tangent plane collapsed to a flat horizontal plane z = f(x, y), which is technically correct but completely useless for any kind of local approximation or optimization step. In that situation, the linear model provides no directional information at all. I switched to a second-order Taylor approximation using the Hessian matrix, which took roughly five additional minutes to set up and gave accurate predictions within a radius of about 0.1 units from the point. If you're ever at a critical point where both partials vanish, don't bother with the tangent plane for approximation purposes. Use the quadratic form instead. There's a subtlety with parametric surfaces that doesn't get enough attention. When your surface is given as r(u, v) = x(u,v), y(u,v), z(u,v), you can't just take partials of z with respect to x and y because x and y aren't independent variables anymore. Instead, compute r = x, y, z and r = x, y, z, then take the cross product r × r to get the normal vector. For example, r(u,v) = u, v, u² + v² at (1, 1, 2). Here r = 1, 0, 2u = 1, 0, 2 and r = 0, 1, 2v = 0, 1, 2 at the point. The cross product is 2, 2, 1. The plane equation is 2(x 1) 2(y 1) + 1(z 2) = 0, which simplifies to 2x + 2y z = 2.
A few practical pitfalls worth noting. First, differentiability matters. The existence of partial derivatives at a point does not guarantee the surface is differentiable there, and without differentiability the tangent plane may not exist even though the partials do. The classic counterexample is f(x, y) = xy/(x² + y²) for (x,y) (0,0) and f(0,0) = 0. Both partials at the origin equal zero, but the function isn't continuous there, so there is no tangent plane. Second, when the denominator of an implicit surface's gradient vanishes, the normal vector becomes undefined. This happens at singular points like the apex of a cone or along edges where the surface folds back on itself. At those locations the tangent plane simply doesn't exist, and any attempt to compute it will give you garbage or a division by zero. If you're doing this work repeatedly—say, for a numerical method or a rendering pipeline—writing a small symbolic script saves more time than practicing the algebra. Use SymPy in Python. Define your function, call diff() for each variable, evaluate at your point, and construct the plane equation. A typical calculation that takes eight to twelve minutes by hand runs in about thirty seconds with a script, and you eliminate the arithmetic errors that show up in roughly one out of every three manual attempts. The tangent plane is fundamentally a first-order approximation. It tells you the behavior of the surface along the coordinate directions at a single point. Beyond that point, the error grows roughly with the square of the distance from (x, y). For rough estimates close to the point, it's adequate. For anything requiring precision more than a few percent away from the tangency point, move to second-order terms or use a numerical solver directly on the original surface.
Get the Full Details
