# Finding principal curvatures at points on a surface without parametrization

I have some points in 3D space. I can fit the equation of a surface z = f(x,y) to them either globally or locally. However:

1. The surface does not pass through the origin
2. I can't parametrize it.

How can I find principal curvatures at any point on this surface?

I am finding this to be very difficult. All the examples I've seen so far parametrize the surface.

I've tried a "shortcut" method of finding the normal at each point and looking at how much the angle of the normal changes from a point to its neighbor, and estimating arc length ~ distance between the two points. This didn't work too well because the points aren't evenly spaced and I don't have neighbors in all directions around each point.

Online resources point me to the shape operator, which requires the first and second fundamental forms -- which I have no clue how to get from an equation like the one I showed above. I don't have a curvilinear coordinate system - do I have to have one?

Thank you

• Why can't you parameterize it? If you can write the surface as the graph of a function $z=f(x,y)$ then $f$ is a parameterization. Also, are you are looking for the principal curvatures of a particular fitting surface? The curvatures will depend on the choice of fit. Aug 21, 2020 at 1:48
• Thank you for the response! I'm sorry if this is a silly question, I don't have a background in math -- so if I have, say, a surface of the form x = ax^2 + by^2 + cxy + dy + ex + f -- then how do I go from here to the principal curvatures? Aug 21, 2020 at 2:41

If surface $$M$$ defined by the graph of a function $$z=f(x,y)$$, then the function $$(x,y)\mapsto (x,y,f(x,y))$$ is a global parameterization $$\mathbb{R}^2\to M$$. In this parameterization, the shape operator $$s$$ (w.r.t. the positive $$z$$ direction) takes a particularly simple form $$s=\left(I-\frac{\operatorname{grad}f(\operatorname{grad}f)^T}{1+\|\operatorname{grad}f\|^2}\right)\frac{\operatorname{Hess}(f)}{\sqrt{1+\|\operatorname{grad}(f)\|^2}}$$ Where $$\operatorname{Hess}(f)$$ is the matrix of second partial derivatives of $$f$$ and $$\operatorname{grad}(f)$$ is the vector of first partials of $$f$$. In index notation, this is $$s^i{}_j=C(\partial_i\partial_j f)-C^3(\partial_i f)(\partial_k f)(\partial_k\partial_j f),\ \ \ \ \ C=[1+\partial_i f\partial_i f]^{-1/2}$$ The principal curvatures of $$M$$ are the eigenvalues of $$s$$.
• The shape operator $s:TM\to TM$ is defined by $sX=-\nabla_XN$, where $X$ is a vector tangent to $M$, and $N$ is the normal vector field. This is one object which one might call the "curvature tensor", but there are others, such as the second fundamental form, Riemann tensor, or the Ricci tensor. In the case of surfaces in $\mathbb{R}^3$, these are all closely related, but contain different information about the surface. Aug 21, 2020 at 19:27
• The shape operator at a point $p$ is a map $T_pM\to T_pM$, where $T_pM$ is the 2D subspace of vectors tangent to $M$ at $p$. It assigns to each $v\in T_pM$ the negative directional derivative of the normal vector $s_p(v)=-\nabla_v N(p)$, which is also tangent to $M$ at $p$. Roughly speaking $-s_p(\epsilon v)$ gives the infinitesimal displacement of the normal vector after an infinitesimal displacement $\epsilon v$ along $M$ from $p$. Aug 22, 2020 at 1:08
• On an unrelated note, the formula that was written was for the $-z$ pointing normal; It's been corrected to be consistent with my choice of $+z$ pointing normal. Aug 22, 2020 at 1:09