# Curvature of the image of a curve projected onto a surface

(Adding a bounty since I need more details than I have so far)

Given a point $$s_{0}=S(u_{0},v_{0}) \;\;\;\; (S:\mathbb{R}^{2}\to\mathbb{R}^{3})$$ and a point $$c_{0}=C(t_{0}) \;\;\;\; (C:\mathbb{R}\to\mathbb{R}^{3})$$ where C and S are both twice differentiable, let $s_0$ be one of possibly many normal projections of $c_0$ onto S. Further, assume for simplicity that $c_0$ is the only point on C that projects to $s_0$. Then, assuming C'(t0) is not orthogonal to S at $s_0$, $s_0$ is a point on a normal projection curve $$C_{S}(t_{0}) \;\;\;\; (C_{S}:\mathbb{R}\to\mathbb{R}^{3}).$$

(EDITED to avoid mentioning derivatives, since there is freedom in choosing the parametrization of CS)

What is the curvature of $C_S$ at $s_0$?

I have no trouble coming up with an expression for the directed unit tangent of CS as a projection of C'(t0) onto the tangent space of S at $s_0$, but curvature is harder and I suppose involves some differential geometry--which I'm weak on.

-
Would you mind showing how you proved that $C_S'(t_0)$ is the projection of $C'(t_0)$? Also, where is this question from (or what is your motivation for asking)? –  Jesse Madnick Aug 18 '11 at 6:02
@Jesse: Actually I was a bit sloppy on my wording. <em>C<sub>S</sub></em>'(<em>t<sub>0</sub></em>) is proportional to <em>C<sub>S</sub></em>'(<em>t<sub>0</sub></em>), which is all I need in my case. This problem comes from my desire to walk along the surface tracing out the projection from an initial point. I intend to do this by estimating a step with derivative information, and then correcting by iteration. The approach of walking along the curve projecting points is flawed because the projection is one-to-many. –  Codie CodeMonkey Aug 18 '11 at 9:35
@Jesse: Hmmm, that didn't come out very nice, did it. I guess you can't use html in comments? How did you get your subscripts? –  Codie CodeMonkey Aug 18 '11 at 9:36
@Deep: we use $\LaTeX$ for subscripts. For instance, $a_n$ becomes $a_n$... –  Ｊ. Ｍ. Aug 18 '11 at 9:54
I modified the question to avoid references to derivatives in $C_S$. –  Codie CodeMonkey Aug 18 '11 at 10:15

Here's my attempt. This gets very messy midway through, so please read it with an eye for catching mistakes (big or little).

Let $$\tilde{S}(u,v)=(\tilde{x}(u,v),\tilde{y}(u,v),\tilde{z}(u,v))$$ be your original surface with $\tilde{S}(u_0,v_0)=\tilde{s}_0$. The first goal is to translate and rotate so that the surface at $(u_0,v_0)$ has some nicer features.

We'd like to find two nonparallel tangent vectors to $\tilde{S}$ at $\tilde{s}_0$. We could try using $\tilde{S}_u(u_0,v_0)$ and $\tilde{S}_v(u_0,v_0)$, but I'm not sure that these vectors are guaranteed to be nonparallel. Besides, the approach we are about to go with will be useful for the rest of the problem.

Locally around $\tilde{s_0}$, view $\tilde{z}$ as a function of $\tilde{x}$ and $\tilde{y}$. Unless we are very unlucky and the tangent plane to $\tilde{S}$ at $s_0$ is parallel to the $z$-axis, we can do this. Now we compute partial derivatives using the Chain Rule for multivariate functions:

\begin{align*}\frac{\partial\tilde{z}}{\partial\tilde{x}}&=\frac{\partial\tilde{z}}{\partial\tilde{u}}\frac{\partial\tilde{u}}{\partial\tilde{x}}+\frac{\partial\tilde{z}}{\partial\tilde{v}}\frac{\partial\tilde{v}}{\partial\tilde{x}}\\ \Rightarrow\tilde{z}_{\tilde{x}}& =\frac{\tilde{z}_u}{\tilde{x}_u}+\frac{\tilde{z}_v}{\tilde{x}_v}\end{align*}

Similarly, \begin{align*}\tilde{z}_{\tilde{y}}& =\frac{\tilde{z}_u}{\tilde{y}_u}+\frac{\tilde{z}_v}{\tilde{y}_v}\end{align*}

Both of these derivatives can be evaluated at $(u_0,v_0)$ (assuming that we do not have to divide by $0$). This allows us to write down two nonparallel tangent vectors to $\tilde{S}$ at $\tilde{s}_0$:

\begin{align*}\langle 1, 0, {\tilde{z}}_{\tilde{x}}\rangle\end{align*} \begin{align*}\langle 0, 1, {\tilde{z}}_{\tilde{y}}\rangle\end{align*}

These vectors are not orthonormal, but we can use the Gram-Schmidt process to replace them with orthonormal vectors $\vec{p}$ and $\vec{q}$ that span the tangent plane to $\tilde{S}$ at $\tilde{s}_0$. Further, we can find a third orthonormal basis vector for $\mathbb{R}^3$: $\vec{r}=\vec{p}\times\vec{q}$. Using these vectors, we can construct the rotation matrix $M$ that takes the tangent plane to $\tilde{S}$ at $\tilde{s}_0$ to the $xy$-plane. Specifically, $M=\left[\vec{p}\;\vec{q}\;\vec{r}\right]^{-1}$.

Okay, now the whole system can be translated and rotated so that the surface at $(u_0,v_0)$ has tangent plane equal to the $xy$-plane, and so that $\tilde{s_0}$ gets moved to the origin. Let $$S(u,v) = M\cdot\left(\tilde{S}(u,v)-\tilde{s}_0\right)$$ Note that $S$ is as described.

Similarly, we need to move the original curve. If that was given by $\tilde{C}(t)=(\tilde{i}(t),\tilde{j(t)},\tilde{k}(t))$, let $$C(t)=M\cdot\left(\tilde{C}(t)-\tilde{s_0}\right)$$

Now comes the hard part. To repeat, we now have a surface $S(u,v)$ with $S(u_0,v_0)$ at the origin and the tangent plane at the origin equal to the $xy$-plane. As a consequence, $c_0$ is somewhere along the $z$-axis. If $$S(u,v)=(x(u,v),y(u,v),z(u,v))$$ we will again view $z$ as a function of $x$ and $y$. If we can find the three second derivatives of $z$ ($z_{xx}, z_{xy}, z_{yy}$) we can approximate the surface $S$ with the graph of a second degree polynomial.

These second derivatives are not immediately available to us, but they can be found using the Chain Rule for multivariate functions:

\begin{align*}z_{xx} & = \frac{\partial}{\partial x}\left(\frac{\partial z}{\partial x}\right)\\ & = \frac{\partial}{\partial x}\left(\frac{\partial z}{\partial u}\frac{\partial u}{\partial x}+\frac{\partial z}{\partial v}\frac{\partial v}{\partial x}\right)\\ & = \frac{\partial z}{\partial u}\frac{\partial^2 u}{\partial x^2}+\frac{\partial^2 z}{\partial x\partial u}\frac{\partial u}{\partial x}+\frac{\partial z}{\partial v}\frac{\partial^2 v}{\partial x^2}+\frac{\partial^2 z}{\partial x\partial v}\frac{\partial v}{\partial x}\\ & = z_u\frac{\partial}{\partial x}\left(\frac{1}{x_u}\right)+\frac{\partial z_u}{\partial x}\frac{1}{x_u}+z_v\frac{\partial}{\partial x}\left(\frac{1}{x_v}\right)+\frac{\partial z_v}{\partial x}\frac{1}{x_v}\\ & = -\frac{z_u}{x_u^2}\frac{\partial x_u}{\partial x}+\frac{1}{x_u}\frac{\partial z_u}{\partial x}-\frac{z_v}{x_v^2}\frac{\partial x_v}{\partial x}+\frac{1}{x_v}\frac{\partial z_v}{\partial x}\\ & = -\frac{z_u}{x_u^2}\left(x_{uu}u_x+x_{uv}v_x\right)+\frac{1}{x_u}\left(z_{uu}u_x+z_{uv}v_x\right)\\&-\frac{z_v}{x_v^2}\left(x_{uv}u_x+x_{vv}v_x\right)+\frac{1}{x_v}\left(z_{uv}u_x+z_{vv}v_x\right)\\ & = -\frac{z_u}{x_u^2}\left(\frac{x_{uu}}{x_u}+\frac{x_{uv}}{x_v}\right)+\frac{1}{x_u}\left(\frac{z_{uu}}{x_u}+\frac{z_{uv}}{x_v}\right)\\&-\frac{z_v}{x_v^2}\left(\frac{x_{uv}}{x_u}+\frac{x_{vv}}{x_v}\right)+\frac{1}{x_v}\left(\frac{z_{uv}}{x_u}+\frac{z_{vv}}{x_v}\right)\\ \end{align*}

I wouldn't be surprised if this can be reqrouped and simplified. The other two derivatives $z_{yy}$ and $z_{xy}$ can be found similarly. For obvious reasons, I don't want to type them out here.

So...after evaluating at $(u_0,v_0)$, we have the ability to replace $S$ with a second degree approximation $$S(x,y)\approx \left\langle x,y,\frac{1}{2}z_{xx}(u_0,v_0)x^2 +z_{xy}(u_0,v_0)xy+\frac{1}{2}z_{yy}(u_0,v_0)y^2\right\rangle$$

Lastly, if $C(t)=(i(t),j(t),k(t))$, its projection onto the second degree approximation is $$P(t)=\left\langle i(t),j(t),\frac{1}{2}z_{xx}(u_0,v_0)i(t)^2 +z_{xy}(u_0,v_0)i(t)j(t)+\frac{1}{2}z_{yy}(u_0,v_0)j(t)^2\right\rangle$$

At this point we have an explicit second degree approximation for the projection of the curve onto the surface in terms of $t$. We can find the curvature for this spacecurve in the standard way.

-
Thanks, I appreciate the effort you put into this. I really like the idea of creating an orthogonal basis in the tangent space. I can make this work. –  Codie CodeMonkey Sep 20 '11 at 20:50
@DeepYellow Did it work? Looking back, I should have explained more why $u_x=\frac{1}{x_u}$. And also how the Chain Rule for multivariate functions is being used - sometimes on $z(u,v)$ and sometimes on $z(x,y)$. But I think this will work if enough gets written down or entered into your CAS. –  alex.jordan Sep 21 '11 at 4:03
I haven't tried yet, but will sometime in the next week (or two). I don't see why it wouldn't though. I'll post the Mathematica results here when I do. –  Codie CodeMonkey Sep 21 '11 at 4:41

Here's some possible details which could help solve the problem:

1. The normal projection is likely to be $p:\mathbb{R}^3\to\mathbb{R}^3$.
2. To choose a curve from the surface, you'll need $k :\mathbb{R}\to\mathbb{R}^2$
3. there is now two paths which results in the same point: $$kS : \mathbb{R}\to\mathbb{R}^2\to\mathbb{R}^3$$ and $$C p : \mathbb{R}\to\mathbb{R}^3\to\mathbb{R}^3$$
4. Then you'll need distance function $d : \mathbb{R}^3\times\mathbb{R}^3\to\mathbb{R}$
5. This results in an equation $d(kS(m),Cp(m)) = 0$ (figuring out how to solve this equation is slightly difficult)
6. solving this equation you can find values for $u_0, v_0, s_0$, these all can be derived from single $m : \mathbb{R}$ value.
7. Next going to the tangent, you can use either Cp or kS for the definition, by using (Cp(m))' and the equation y=f(a)-f'(a)(x-a) for every component x,y,z of Cp(m).
8. Now curvature is $dT/ds$, where T is the tangent as a vector, and s=m. So it just need a vector $[f_x'(a),f_y'(a),f_z'(a)]$.

All in all, it seems like the problem was slightly difficult. They forgot to mention existence of p, k, d and the equation(s). They forgot to mention it's a pullback. (this would be slightly necessary information.) There were big problems while trying to solve it(and the solution might still be broken somehow):

1. the problem's functions all ended in $\mathbb{R}^3$ and it's impossible or at least very difficult to solve if you don't use d, finding $s_0$ would be impossible without d.
2. For the tangent and curvature, the missing functions p and k were critical. Finding either of them would solve the problem.(the solution is incorrect if you don't find those functions)
-
Thanks for this. I'm not clear why you say that I forgot to mention p, k, and d, (as k and d are of your own construction) and I don't know what you mean "it's a pullback". I'm not I can I turn this into a finished solution for d given that S is unknown in advance (we are only guaranteed that we can inquire it's derivatives). –  Codie CodeMonkey Sep 20 '11 at 20:43

An idea: Instead of projecting each $C(t)$ down to $S$, project each $S(u,v)$ up to the plane $P$ through $C(t_0)$ that contains $C$'s first and second derivatives. Find the coefficients of a second-degree parameterized curve in $S$ such that the first and second derivatives of its image in $P$ matches those of $C$.

If you represent $S$ as its Taylor development around $S(u_0,v_0)$, this procedure ought to give the coordinate curvature of the image of $C$ in $S$, as rational expressions in the various (first and higher) partial derivatives at $u_0$, $v_0$, $t_0$. If you want the metric curvature of the embedding, you can convert it at your leisure using the properties of $S$ only.

-
It's not clear to me that the construction as you describe it gives the correct curve. Can you justify the idea that there is a locally aligned parametrization that has the second derivative projection properties? Unfortunately I have to award the bounty soon, so please answer quickly. I'll give it some further thought myself. –  Codie CodeMonkey Sep 20 '11 at 20:26