I'm trying to understand the constraints resulting from differentiating an unit normal field $N$ on a surface $S$ in $\mathbb{R}^3$. If I write the unit-length constraint at a point $p \in S$, I have: $$\langle N(p), N(p) \rangle = 1$$

Here, the angle brackets correspond to the standard dot product in $\mathbb{R}^3$. (For notational simplicity, I'll leave out the $p$ from now on.) I can take a directional derivative of this equation in the direction $\vec{v} \in T_p S$ to get:

$$ \langle D_\vec{v} N, N \rangle + \langle N, D_{\vec{v}} N \rangle = 0 $$

This shows that the image of the differential of the Gauss Map lies in $T_p (S)$.

I can continue along this analysis, taking more and more directional derivatives to get constraints on the higher derivatives, e.g if $\vec{u} \in T_p (S)$

$$ \langle D_{\vec{u}} (D_\vec{v} N), N \rangle + \langle D_\vec{v} N, D_\vec{u} N \rangle + \langle D_\vec{u} N, D_\vec{v} N \rangle + \langle N, D_{\vec{u}}(D_{\vec{v}} N)\rangle = 0 $$

I would like to think of this process in tensorial terms -- that is, terms like $D_{\vec{u}} (D_\vec{v} N)$ can be considered as a $(1, 2)$ tensor. So, let me write $D_{\vec{u}} (D_\vec{v} N)$ as $D^2 N$ and so on. For example, if I take $m$ derivatives, I will get terms such as T = $\langle D^i N, D^j N \rangle$ where $i + j = m$. I believe I can think of $T$ as a $(0, m)$ tensor, where I place the first $i$ inputs into the $D^i N$ and the next $j$ inputs into the $D^j N$. To be more precise, I think I need to consider $D^i N$ as a (1, i) tensor and $D^j N$ as a (1, j) tensor and then the dot product forms some kind of contraction.

My question involves how to represent these terms via arrays and computation. How do I represent a single term like $T$ as a m-dimensional array that can take in $m$ vectors? For now, I would just like to verify (via code and a given surface, so I can calculate derivatives of the normal field of any order) that if I sum up the L.H.S of each equation, I will get 0. But how do I express these tensors correctly? I do not want to choose my directions (like $\vec{v}, \vec{u}$) explicitly, but instead write the tensor formulations as arrays of numbers in a tangent plane basis. So, when I sum up all the terms, I should get a m-dimensional array of zeros.

I think I need to be careful, as there is an ordering of inputs that notation like $D^i N$ hides. That is, there will be multiple terms involved of the same order derivatives, but involving different input vectors. For example, if my first three inputs are $\{\vec{v}, \vec{u}, \vec{w}\}$, I don't think I can consider the tensor $\langle D_\vec{u} (D_\vec{v} N), D_\vec{w} N \rangle$ as equal to the tensor $\langle D_\vec{w} (D_\vec{v} N), D_\vec{u} N \rangle$. Thus, I believe I will need to rearrange dimensions of these arrays in a proper fashion. But I don't know what "proper" is.

I apologize if this writeup is unclear; please ask for clarification if needed. And thank you so much for any enlightenment you can give me! Even a suitable reference would be much appreciated!


To be more precise about my confusion: Suppose I take $n$ derivatives. I will have terms like $D^i N$, with $i < n$. Although an individual $D^i N$ is a $2 \times 2 \cdots \times 2 \times 3$ array, with $i + 1$ total dimensions, I need to "embed" it as a $n + 1$ dimensional array in order to dot product it or sum it with the various other terms in the equation. This is because the different $D^i N$ terms are tensors acting on different sets of input vectors. So, to combine these different tensors, I need to place them all in the same space -- the space of $(1, n)$ tensors.

If I know my normal field and surface completely, this should just be a matter of bookkeeping. I believe I just pad certain dimensions (corresponding to the unused inputs) of the arrays with copies of the rows from the dimensions of the used inputs. In this fashion, these tensors will be independent of the set of $n - i$ unused inputs. Is this correct?


It is useful to look at this situation from a more general setting.

Suppose we have a hypersurface $S$ in a $(n+1)$-dimensional Riemannian manifold $M$. (In your case $M = \mathbb{R}^3$ with the standard (Euclidean) metric). By a hypersurface we mean a sumbanifold of codimension $1$, so $\dim S = n$.

The unit normal vector $N$ at each point $p \in S$ is defined (up to the sign!) by the conditions $$ \begin{array}[c]{1} g(N,N)=1\\ g(N,X)=0 \end{array} $$ for any $X \in T_p S$.

(To fix the sign ambiguity you will also need to consider the orientations).

In particular, this means that the unit normal is not well defined off the hypersurface, and in order to be able to differentiate it, using the covariant derivative $D$ available in $M$, we need to take an arbitrary extension $\widetilde{N}$ of $N$ onto a neighborhood of $S$, and then restrict the result of the differentiation back to the (hyper)surface $S$. One then proves that this result is independent of the extensions, when restricted onto $S$.

Technically, this is expressed as the fact that the unit normal is a section of the pullback bundle along the hypersurface, and it is differentiated with respect to the pullback connection. If your hypersurface is embedded, then you can identify the pullback bundle with the restriction $T M|_S$ of the tangent bundle $TM$ onto $S$. Each fiber at point $p \in S$ of the pullback bundle is just $T_p M$, and so its dimension is $n+1$. The pullback connection $\underline{D}$ is a map $$ \underline{D} \colon \Gamma (TM|_S) \to \Gamma (\Lambda^1 (S) \otimes T M|_S) $$ where by $\Gamma(E)$ we denote the space of sections of a vector bundle $E$.

Notice that instead of $D$, which is the Levi-Civita connection associated to the metric $g$ in $M$, we now use the (underlined symbol) $\underline{D}$, which I use to denote the pullback connection. When you differentiate the unit normal, you get a pullback-bundle-valued $1$-form $\underline{D}N$, which is defined along (=at all points) of $S$, but not well defined off $S$ again. To get a vector $\underline{D}_{v}N$ you act on $v$ by $\underline{D}_{v}N := \underline{D}N(v)$.

If we want to differentiate this $\underline{D}N$ again, we now need a connection in the bundle $\Lambda^1 (S) \otimes T M|_S$, which is conventionally understood as the tensor-product connection, and again denoted by $\underline{D}$. Effectively, $\underline{D} \underline{D} N$ is a section of $\Lambda^1(S) \otimes \Lambda^1 (S) \otimes T M|_S$.

If you introduce coordinates (which are already available in your setting as the standard coordinates in $\mathbb{R}^n$), then you can write a $n \times (n+1)$-matrix of components of $\underline{D} N$. The components of $\underline{D} \underline{D} N$ form an array with dimensions $n \times n \times (n+1)$, and so on.

Well, actually, I skipped the fact that you have mentioned in your question, namely, that $\underline{D} N$ can be identified (because $\underline{D}_v N \in T S$) with a section of $\Lambda^1(S) \otimes T S$, but this requires taking the projection with respect to the projection operator $\Pi \colon T M|_S \to T M|_S$, which is defined by $$ \Pi := \mathrm{id}_{TM|_S} - N^{\flat} \otimes N $$ and its image is in $T S$ (Exercise!).

You can say that the normal components of $\underline{D} N$ are zero, but this would be true in some special (adapted) coordinates, but not necessarily in those that you started with (remember, you use the standard coordinates in $\mathbb{R}^3$ in your question).

The point is that $\underline{D} \underline{D} N$ has (in general) normal components!

There is still a lot to say, and I am afraid that my answer could be rather confusing, if you have little experience in differential geometry, but I can provide more explanations upon request.

UPDATE. I should have commented on this earlier, but really there is a bit of confusion with your treatment of tensors. See that $D_{\vec{u}} (D_\vec{v} N)$ is in fact a vector, not a $(1,2)$-tensor. Therefore, I gather that $D^i N$ is your shortcut notation for covariant derivative $D_{v_1}\dots D_{v_i} N$ with some choice of $v_1,\dots,v_j \in T S$ kept in mind. Likewise, your $T = \langle D^i N, D^j N \rangle$ is a scalar, unless you define it as a sort of (partial, when $i \neq j$!) contraction, in which case you have to be more careful. I attempted to answer to the part of your question, where I could make some sense and address the dimensionality issues.

Clearly, in your special situation, there curvature in the ambient space $\mathbb{R}^3$ vanishes, and the covariant derivatives commute, so sections (now thought as tensors!) $D^i N$ are symmetric, but objects like (defined correctly) $\langle D^i N, D^j N \rangle$ are only symmetric in the corresponding groups of indices, and need not to be totally symmetric.

There are relations that you have noticed. The first one is equivalent to $$ \langle D_v N, N \rangle = 0 $$ and the second one can be stated as $$ \langle D_u D_v N, N \rangle = - \langle D_u N, D_v N \rangle $$ which is precisely the statement of the normal component of $D D N$, mentioned above.

Continuing these calculations, we obtain at the nex step $$ \langle D_u D_v D_w N, N \rangle = - \langle D_v D_w N, D_u N \rangle - \langle D_u D_v N, D_w N \rangle - \langle D_w D_u N, D_v N \rangle $$ which suggest a general formula for the normal component of $\langle D^i N, N \rangle$.

WARNING. I must admit that I don't fully understand what you are doing, and the last edit does not help too much. In particular, your process of making $(1,n)$ tensors out of various derivatives $D^i N$, for $1 \le i \le n $, looks completely arbitrary to me and makes no geometrical sense. Although it may be valid from the computational perspective, I don't get it now. As a remedy, I would suggest to you to return to thinking about vectors $D_{v_1} \dots D_{v_i} N$ when you contract and add them in your problem, and to keeping tensors $D \dots D N$ untouched.

  • $\begingroup$ Thank you, Yuri! This is a comprehensive answer and very interesting. I believe I'm in a special case and I'm only interested at this sequence of operators at a single point. My main question is just regarding "summing" the tensors (each of the terms < D^i N, D^j N >) correctly, that is, making sure that the correct dimensions align when I represent them as n x n x ... x (n +1) arrays. (In my case, n = 2). I've edited my post to expand on this a bit! $\endgroup$ – Ben Apr 10 '15 at 13:53
  • $\begingroup$ @Ben I added a few additional points to my answer. BTW, could you please uncover somehow, why would you sum these terms? $\endgroup$ – Yuri Vyatkin Apr 10 '15 at 21:51

After some thinking I decided to add another answer to this question. The reason for doing this is that I want to keep my previous answer for the reference, while adding a comment or expanding the previous answer would make the texts unreadable.

Let us begin with refining the statement of the original problem. Suppose we have an open set $U \subseteq \mathbb{R}^2$ and a smooth function $f \colon U \to \mathbb{R}^3$ such that the Jacobi matrix $\left( \tfrac{\partial f^{a}}{\partial x^{j}} \right)_{1 \le i \le 2}^{1 \le a \le 3}$ has the maximal rank, or, equivalently, vectors $ f_1 := \pmatrix{\tfrac{\partial f^1}{\partial x^1}\\ \tfrac{\partial f^2}{\partial x^1} \\ \tfrac{\partial f^3}{\partial x^1}} \text{ and } f_2 := \pmatrix{\tfrac{\partial f^1}{\partial x^2}\\ \tfrac{\partial f^2}{\partial x^2} \\ \tfrac{\partial f^3}{\partial x^2}} $ are linearly independent at all points $p=(p^1,p^2) \in U$. The image $S := f(U)$ is then called a regular surface in $\mathbb{R}^3$. The unit normal vector $N$ can be then computed by $N = \frac{f_1 \times f_2}{| f_1 \times f_2 |}$.

From the computational perspective, we can store the following data: $$ f = \pmatrix{f^1\\f^2\\f^3}\text{, }f_1 = \pmatrix{f^1_1\\f^2_1\\f^3_1}\text{, }f_2 = \pmatrix{f^1_2\\f^2_2\\f^3_2}\text{, }N = \pmatrix{N^1 \\ N^2 \\N^3} $$

For some reasons we are to compute the operators $T^{(i,j)} \colon \odot^j T S \otimes \odot^j TS \to \mathbb{R}$ defined by the equalities $$ T^{(i,j)}(u_1,\dots,u_j,v_1\dots,v_j) := \langle D_{u_1}\dots D_{u_i} N,\,D_{v_1}\dots D_{v_j} N \rangle $$ for any choice of $u_1,\dots,u_i,v_1,\dots,v_j \in TS$. By $\odot$ here we denote the symmetric tensor product. The symmetries here are due to the fact that the Euclidean metric in $\mathbb{R}^n$ is flat (has the vanishing curvature). In fact $D$ is just the operator of taking partial derivatives of the components (nevertheless, don't forget that we work in the pullback bundle!). Notice that $\langle \cdot, \cdot \rangle$ is the standard dot product in $\mathbb{R}^3$, not a complete contraction!

The operators $T^{(i,j)}$ can be stored in arrays of dimension $\underbrace{2 \times \dots \times 2}_{i+j \text{ times}}$.

Apart from the obvious symmetries, mentioned above, the operators $T^(i,j)$ may have other relations, as one notices by taking successive covariant derivative of the unit normal, and calculating the contractions in the ambient slot. This can be used to optimize the storage requirements, but I would leave work this to the interested readers.

  • $\begingroup$ Hi Yuri! Thanks again -- this is an answer much closer to what I was expecting and I'm very grateful. I plan to edit my post to clarify more later. The reason I'm interested in these terms is because I work in shape reconstruction. In my case, I need the constraints (resulting from a unit normal field) on <N, DjN> for any j, given knowledge of all the previous D_{j-1} N. I believe this will allow me to (with other information) solve for DjN and I can induct to solve for the normal field up to any Taylor approximation. $\endgroup$ – Ben Apr 11 '15 at 15:00
  • $\begingroup$ Ran out of space: To compute the T^(i, j) from the (assumed given arrays of) DjN and DiN, I had convinced myself that I could tensor product the two arrays to get (A = DjN \tensorprod DiN) and then raise an index and contract the correct dimensions (corresponding to the normal vector output, when all the {u_i, v_j} are given). From there, I would need to permute the dimensions to put them in a standard ordering so that I could sum the different T^(i, j) (as they may take in different inputs.) I thus get a 2^{i + j} dim array. What do you mean by "not a complete contraction"? $\endgroup$ – Ben Apr 11 '15 at 15:10
  • $\begingroup$ @Ben I am trying to understand a similar analytical technique but for a hypersurface in an arbitrary Riemannian manifold, an analogue of Taylor theorem, so I am quite interested in this discussion. I have been working in conformal geometry of hypersurfaces for the last few years. It is perhaps too early to announce the results and conjectures publicly, but if you wish we can communicate privately. $\endgroup$ – Yuri Vyatkin Apr 12 '15 at 10:24
  • $\begingroup$ Of course, $T^(i,j)$ is a complete contraction in a sense, but I wanted to say that we take the dot-product of two vectors, whereas the tensors $D^i N$ are not contracted between themselves in the covariant slots. May be, I should have just said that we simply multiply two vectors by the Euclidean dot product in the ambient space, and speaking about "complete contractions" is an overkill. $\endgroup$ – Yuri Vyatkin Apr 12 '15 at 10:28
  • $\begingroup$ @Ben I replied to you via e-mail, you can delete the above comment now to avoid spammers. $\endgroup$ – Yuri Vyatkin Jul 28 '15 at 19:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.