Principal curvatures of fourth order polynomial: eigenvectors are wrong. What am I doing wrong

differential-geometrylinear algebra

This is a follow-up to my previous question., trying to calculate principal curvatures on a fourth order polynomial surface.

This is what I did exactly:

  1. After calculating the unit normal vectors at any point on the surface, I had a 3 x 1 matrix for the normal vector where each component is a function of x,y,and z.
  2. I then calculated the gradient of the unit normal vector, which is a 3 x 3 matrix. The first column, for instance, is: derivative of first component of unit normal vector wrt x, derivative of second component of unit normal vector wrt x, derivative of third component of unit normal vector wrt x.
    The second and third columns were derivatives of all components wrt y and z respectively. Hence the 3 x 3 matrix. Let's call this matrix $u$
  3. From the kind replies I received on my previous question, I understood that the next step was to express this "gradient" in terms of a new basis on the surface, and had to find two orthogonal tangent vectors on the surface to do so.

I tried to do this. I used the following procedure:

  1. Found two orthogonal unit tangent vectors on the surface. Together with the original normal vector (I needed a square matrix in order to take an inverse), I wrote these together in columns as a 3 x 3 matrix. [normal vector, tangent 1, tangent 2] = matrix "A"

  2. I took $A^{-1}u$ (change of basis), where u is the 3 x 3 matrix I calculated by taking the gradient of the normal vector in terms of x, y, and z, and then I found the eigenvalues and eigenvectors of $u$ in the new basis. The eigenvector matrix, let's call $v$

  3. I then multiplied $Av$ to change the eigenvectors back to the original basis.

The eigenvalues are reasonable – one is zero, one is small, and one is larger, but the eigenvectors are completely wrong. I expected to get the meridional and circumferential directions as two of the three eigenvectors.
Instead, I get this abomination below (two out of three eigenvectors plotted):

top view

side view

What am I doing wrong? I thought I just had to convert the vector (well, matrix) representing the gradient of the normal to the new basis, get the eigenvectors in that new basis, and then convert them back to the original basis.

Best Answer

One key point that doesn't seem to be taken into account is that the normal vector $N$ is not defined on all of $\mathbb{R}^3$; but only on the surface. You can of course extend $N$ to a function of all of $\mathbb{R}^3$, but introduces superfluous information. Instead, it's more straightforward to interpret the grandient of $N$ as a 3x2 matrix; here's one way of ammending your process. Let $g(x,y)=\sqrt{1+f^2_x(x,y)+f^2_y(x,y)}$ (with the shorthand $f_x:=\frac{\partial f}{\partial_x}$). Using the parameterization $(x,y)\mapsto(x,y,f(x,y))$, we can define three vectors on each point of the surface $$ N(x,y)=\frac{1}{g(x,y)} \begin{bmatrix} -f_x(x,y) \\ -f_x(x,y) \\ 1 \end{bmatrix} \ \ \ \ \ \ \ X(x,y)= \begin{bmatrix} 1 \\ 0 \\ f_x(x,y) \end{bmatrix} \ \ \ \ \ \ \ Y(x,y)= \begin{bmatrix} 0 \\ 1 \\ f_y(x,y) \end{bmatrix} $$ Where $N$ is the unit normal and $X,Y$ are tangent to the surface. This chocie of $X,Y$ is not arbitrary; they are the standard basis vectors associated with the parameterization. Let $\nabla N$ be the 3x2 derivitave matrix of $N$. The first column of $\nabla N$ is exaclty $\nabla_X N$, and the second column is $\nabla_Y N$ (both are well defined since $X,Y$ are tangent to the surface).

To obtain the shape operator $s$ (specifically, its representation in the $X,Y$ basis), we need to interpret $-\nabla N$ as a map from $\operatorname{span}(X,Y)$ to $\operatorname{span}(X,Y)$ (which we can do since the image of $\nabla N$ is contained in that subspace). To do this, we can compose $-\nabla N$ with any 2x3 matrix $A$ such that $AX=\begin{bmatrix}1\\0\end{bmatrix}$ and $AY=\begin{bmatrix}0\\1\end{bmatrix}$. One particularly simple choice is $$ A=\begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \end{bmatrix} $$ One can then explicitly compute the form of $s$ in this basis $$ s=-A\nabla N=\frac{1}{g} \begin{bmatrix} f_{xx} & f_{xy} \\ f_{xy} & f_{yy} \end{bmatrix} -\frac{1}{g^3} \begin{bmatrix} f_xf_x & f_xf_y \\ f_xf_y & f_yf_y \end{bmatrix} \begin{bmatrix} f_{xx} & f_{xy} \\ f_{xy} & f_{yy} \end{bmatrix} $$