Ok, déjame ver si puedo hacerlo bien. Usted está interesado en un método de cálculo que se encuentra la línea geodésica que une dos puntos. Más exactamente, usted está buscando un razonable método de discretización, no necesariamente buscando el diferencial geométricos explicación.
Hay varios diferentes, pero equivalentes (es decir, conduce al mismo resultado) caracterizaciones de geodesics sobre una superficie bidimensional incrustado (inmersión) en el espacio tres. Así que lo que voy a decir es de ninguna manera exhaustiva en la materia.
En lo que sigue utilizaré $ u = (u_1,u_2)$ en lugar de $(u,v)$ y un punto en el espacio tres se $x = (x_1,x_2,x_3)$. Así que usted tiene su superficie $S : (u_1,u_2) \mapsto (x_1,x_2,x_3)$. Que en su mayoría trabajan en $(u_1,u_2)$ coordenadas y luego, cuando tenemos la solución, tenemos un mapa en 3D a través de $S$.
En primer lugar, calcular el tensor métrico $g_{ij}(u)$ que es un 2 en 2, de la matriz de la función $G(u) = \big( g_{ij}(u)\big)$ con los componentes: $$g_{ij}(u) = \left(\frac{\partial S}{\partial u_i} \cdot \frac{\partial S}{\partial u_j}\right)$$
donde $( \, \cdot \, )$ es el producto escalar en el espacio tres. En una superficie en tres espacios, así como en cualquier liso colector, la longitud de una curva suave $u : [a,b] \to \mathbb{R}^2$ (curva dada con respecto a $u = (u_1,u_2)$ coordenadas y parametrizadas como $u=u(t)$) con vector tangente (primera derivados con respecto al parámetro $t$) $\dot{u} = (\dot{u}_1, \dot{u}_2)^T$ es
$$\mathcal{L}[u] = \int_{a}^{b} \sqrt{\dot{u}(t)^TG\big( u(t)\big)\dot{u}(t)} \,\, dt = \int_{a}^{b} \sqrt{\dot{u}^TG\big( u\big)\dot{u}} \,\, dt$$
La distancia entre los puntos de $u(a)$ $u(b)$ es el mínimo de $L[u]$ sobre todas las curvas suaves de conectar $u(a)$$u(b)$. Geodesics son curvas que (a nivel local) minimizar $\mathcal{L}[u]$. Ahora, junto con la longitud funcional, definir la (cinética) en energía funcional
$$E[u] =\frac{1}{2} \int_{a}^{b} \dot{u}(t)^TG\big( u(t)\big)\dot{u}(t) \,\, dt = \frac{1}{2}\int_{a}^{b} \dot{u}^TG\big( u\big)\dot{u} \,\, dt$$
Debido a la de Cauchy-Schwarz desigualdad, $(\mathcal{L}[u])^2 \leq 2(b-a) E[u]$ para cualquier curva de $u(t)$ con igualdad si y sólo si $\dot{u}^TG\big( u\big)\dot{u} \equiv const$, lo que sucede cuando tanto funcionales están optimizados, lo que significa que $\mathcal{L}[u]$ está optimizado exactamente al $E[u]$ está optimizado y ambos son optimizados por la misma curva (geodésica). Línea de fondo, los optimizadores de $E[u]$ son los geodesics por lo que simplemente puede sustituir a $\mathcal{L}[u]$$E[u]$.
Si uno se denota por a $L(u,\dot{u}) =\frac{1}{2} \dot{u}^TG\big( u\big)\dot{u}$, también conocido como el Lagriangian o el de Lagrange,
entonces la energía se convierte en funcional
$$E[u] = \frac{1}{2} \int_{a}^{b} \dot{u}^TG\big( u\big)\dot{u} \,\, dt = \int_{a}^{b} L(u, \dot{u}) \, dt = \int_{a}^{b} L\Big(u(t), \dot{u}(t)\Big) \, dt .$$
Entonces, de acuerdo con el cálculo de variaciones, la optimización de las curvas de la funcional $E$ ( que son los geodesics ) son las soluciones de Euler-Lagrange las ecuaciones de $$\frac{d}{dt}\Big(\, \frac{\partial L}{\partial \dot{u}}(u,\dot{u}) \, \Big) = \frac{\partial L}{\partial u}(u,\dot{u}).$$ Después de la reorganización de los términos de la última de las ecuaciones, se obtienen las ecuaciones
\begin{align}
&\ddot{u}_1 + \sum_{ij} \Gamma^1_{ij}(u) \, \dot{u}_i\dot{u}_j =0\\
&\ddot{u}_2 + \sum_{ij} \Gamma^2_{ij}(u) \, \dot{u}_i\dot{u}_j =0
\end{align}
que son exactamente la ecuación geodésica escrito en términos de los símbolos de Christoffel $\Gamma^k_{ij}(u)$ de la de Levi-Civita de conexión de la métrica de Riemann $G(u)$. Geométricamente, expresan el hecho, escrito en $(u_1,u_2)$-coordenadas, que el vector curvatura de la curva de $S\big(u(t)\big)$ en espacio de tres cero, con una proyección sobre el plano tangente a la superficie de la $S$ en cada punto de la curva de $S\big(u(t)\big)$ (es decir, el vector normal de la línea geodésica está alineado con el vector normal a la superficie). La última proyección del vector normal a una curva en el plano tangente, es, de hecho, la curvatura geodésica vector, por lo que estas ecuaciones decir, de la línea geodésica curvatura es cero.
Ahora, vamos a ir de nuevo a la funcional $E[u]$ porque me sugieren una recta de avance de discretización del método que he descrito de la siguiente manera: reemplazar el derivado $\dot{u}$ diferencia $(u^1 - u)/\varepsilon$ (o algo aún mejor si usted lo desea) y considerar el discretos de Lagrange $$L_{\varepsilon}(u,u^1) := L\left(\, u, \, \frac{u^1-u}{\varepsilon} \, \right) = \frac{1}{2\varepsilon^2} (u^1 - u)^T G\big( u\big)(u^1 - u).$$ By analogy with the continuous case, where the action is $E[u] = \int_{a}^{b} L(u,\dot{u})dt$, in the discrete case the energy is $$E_{\varepsilon}[u] = \sum_{k=0}^{N} L_{\varepsilon}\big(u^k,u^{k+1} \big)$$ where $u^0$ is your initial point and $u^{N+1}$ is your final point. Then, the critical discrete geodesic should simply be the solution to the algebraic equations $\nabla E_{\varepsilon}[u] = 0$ which componentwise leads basically to the discrete version of the Euler-Lagrange equations $$\frac{\partial L_{\varepsilon}}{\partial u^k}\big(u^{k-1}, u^k\big) + \frac{\partial L_{\varepsilon}}{\partial u^k} \big(u^{k}, u^{k+1}\big) = 0 \,\,\, \text{ for } \,\,\, k=1,...,N$$
$$u^0 = \text{ initial point, } \,\, u^{N+1} = \text{ finial point. }$$
El último es un sistema de ecuaciones algebraicas, algo como $2 N$ ecuaciones y variables. La solución es una secuencia de puntos de $\,\, u^0, \, u^1, \, u^2, \, ... \, , \, u^{N+1} \,$ que debe aproximarse a la línea geodésica entre el$u^0$$u^{N+1}$. Cuando usted mapa en la superficie en 3D a través del mapa de $S$ usted obtiene una secuencia de puntos de $\,\, S\big(u^0\big), \, S\big(u^1\big), \, S\big(u^2\big), \, ... \, , \, S\big(u^{N+1}\big) \,$
que se encuentran en su superficie y debe ser una buena aproximación para el buen geodésica. Usted puede interpolar entre puntos consecutivos (el $u$'s o $S(u)$'s) si desea obtener una curva real.
Ahora, usted tiene dos parámetros necesarios para ajustar. Estas son las $\varepsilon$$N$. Tal vez un vínculo entre ellos no tiene sentido, algo como $\varepsilon = \frac{1}{N}$ o algo más sofisticado. Aún no lo he pensado demasiado. El menor $\varepsilon$ y el más grande de la $N$, mejor será la aproximación (espero :) ).
Ahora, para encontrar discretos geodesics con un afirmando punto y un vector de dirección, se puede observar a nivel local en el discretos de Euler-Lagrange las ecuaciones y se escriben usando un sencillo superíndice notación $$\frac{\partial L_{\varepsilon}}{\partial u}\big(u^{(-1)}, u\big) + \frac{\partial L_{\varepsilon}}{\partial u}\big(u, u^{1}\big) = 0$$ Introduce the variable $p = \frac{\partial L_{\varepsilon}}{\partial u}\big(u, u^{1}\big)$. Then the discrete Euler-Lagrange equations become $$\frac{\partial L_{\varepsilon}}{\partial u}\big(u^{(-1)}, u\big) +p= 0$$ which shifted by one subscript turn into $\frac{\partial L_{\varepsilon}}{\partial u^1}\big(u, u^1\big) + p^1= 0$. Thus we obtain the equations $$p = \frac{\partial L_{\varepsilon}}{\partial u}\big(u, u^{1}\big)$$
$$p^1 = -\frac{\partial L_{\varepsilon}}{\partial u^1}\big(u, u^1\big).$$ If one can express $u^1$ as a function of $(u,p)$ from the first equation, then the second equation also gives us $p^1$ as a function of $(u,p)$. Thus we have obtained a map $\Phi : (u,p) \mapsto (u^1,p^1)$. Observe that this is a map $\Phi : T^*\mathbb{R}^2 \T^*\mathbb{R}^2$, which turns out to be symplectic, because the Lagrangian $L_{\varepsilon}$ is in fact a generating function of the symplectomorphism $\Phi$. Then, given an initial point $u^0$ and a direction vector $v_0$, take let's say $u^1 =u_0 + \varepsilon \, v^0 $ and obtain $p^0$. Then starting with $u = u^0$ and $p=p^0$, start iterating the map $\Phi$ getting $\big(u^{k+1}, p^{k+1}\big) = \Phi\big(u^{k}, p^{k}\big)$ obtaining again a sequence $\,\, u^0, \, u^1, \, u^2, \, ... \, , \, u^{k}, \,\, .... \,$ which approximates your geodesic (here you have another sequence $\,\, p^0, \, p^1, \, p^2, \, ... \, , \, p^{k}, \,\, .... \,$ que es una secuencia relacionada de algún modo con el doble de vectores de la tangente vectores para su geodésica, pero tal vez eso no es importante para usted).
Comentario: Como se explicó anteriormente, el discreto de Euler-Lagrange las ecuaciones se $\nabla E[u] = \nabla E( u^1, u^2, ..., u^k, ... u^n) = 0$, es decir, el multi-punto de $( u^1, u^2, ..., u^k, ... u^n)$ para que el gradiente de $E( u^1, u^2, ..., u^k, ... u^n)$ es cero. Por lo tanto, en el caso de inicial y el punto final de la línea geodésica, en una primera aproximación computacional puede ser un método de gradiente de la pendiente (o una versión del método de Newton). En el caso de un punto inicial y un vector de dirección, simplemente recorrer el mapa de la $\Phi$. Incluso si el mapa no es explícita, el problema es todavía un poco más sencillo porque uno va paso por paso, cada vez que la resolución de sólo el sistema de participación de las variables de $u, u^1, p, p^1$.
Comentario: Para hacer que el gradiente de la pendiente método un poco más eficiente, se puede elegir una smart estimación inicial para el discretos geodésica $u^0,\, u^1, \, ..., \, u^{N+1}$. Tenemos $u^0$ $u^{N+1}$ fijo. Estos son el punto inicial y el punto final. Denotar por $\bar{u}(m) = \big(u^0, \, u^1(m),\, u^2(m), \, ...,\, u^{N}(m), \, u^{N+1} \big)$ una secuencia de $N+2$ puntos en la iteración $m$. Luego dicen que el uso de algún tipo de gradiente de descenso $$\bar{u}(m+1) = \bar{u}(m) + \alpha_m \, \nabla E \big[\bar{u}(m)\big]$$ with starting point $\bar{u}(0) = \big(u^0, \, u^1(0),\, u^2(0), \, ...,\, u^{N}(0), \, u^{N+1}\big)$. If $\bar{u}(0)$ is picked carefully, then the gradient descent could make less iterations before arriving at a very good approximate solution to the problem $\nabla \, E[u] = 0$.
Sugerencia 1: Por ejemplo (especialmente si su métrica no es demasiado curva o sus puntos no muy distantes entre sí) simplemente tomar el segmento entre los $u^0$ $u^{N+1}$ y elija $N$ puntos equidistantes en el medio como un punto de partida $\bar{u}(0)$.
Sugerencia 2: Si usted tiene alguna información adicional, usted puede utilizar inteligentemente $u^0$ como punto de partida y un segundo punto de $u^1$, a continuación, ejecute el valor inicial de la iteración para crear un discreto geodésica puede utilizar como una estimación inicial de su gradiente de la pendiente (algoritmo o método de Newton o lo que sea esquema numérico que utiliza para resolver la discreta variación problema). Es por eso que también he discutido el valor inicial del problema porque se puede usar como una herramienta auxiliar.
Por ejemplo,$S(u^0)$$S(u^{N+1})$, las imágenes de $u^0$ $u^{N+1}$ sobre la superficie de la $S$$\mathbb{R}^3$, y forma el vector $\overrightarrow{u^{0}u^{N+1}}$, entonces el proyecto es en el plano tangente a la superficie de la $S$ en el punto de $S(u^0)$. Escribir como $$\text{proj}\Big( \overrightarrow{u^{0}u^{N+1}} \Big) = v_1 \, \frac{\partial S}{\partial u_1}(u^0) + v_2 \, \frac{\partial S}{\partial u_2}(u^0).$$ Form the vector $v=(v_1, v_2)^T$ (a tangent vector with respect to $(u_1, u_2)$-coordinates), rescale it to become small enough, and then use it as an intial value problem to generate a discrete geodesic that comes close to $u^{N+1}$. You can even get to a reasonable choice for $N$. Then use this geodesic as a starting point for your gradient descent method in order to get a much more accurate approximation of the geodesic connecting $u^0$ to $u^{N+1}$.