(The other questions about this were not helpful).

Given a point $p\in S^2=\{(x,y,z)\in\mathbb{R}^3:x^2+y^2+z^2=a^2\}$ and a vector $v\in T_pS^2$, I want to find a curve $\sigma$ of the great circle which goes through $p$ with velocity $v$.

My idea was to start with the curve $\alpha(t)=(\cos t,\sin t,0)$ and then apply rotations to it so that the plane defined by the resulting great circle has normal vector equal to $p\times v$. Hence, if we write $p\times v = N(\sin \theta_N \cos \phi_N), \sin \theta_N \sin \phi_N, \cos \theta_N$, we had the curve $\gamma(t)=R_z(\phi_N)R_y(\theta_N)\alpha(t)$.

I am not sure that this is correct, and the computations are tiresome. IS there other way to do it?

(Context: I want to know the parametric geodesic $\gamma$ that goes through $p$ with velocity $v$ so that I can determine the exponential map $\exp_p(v)=\gamma(1)$ )


I will consider the unit sphere ($a=1$).

Let $w:=\tfrac{v}{\|v\|}$.

As $p \perp w$, the curve defined by


  • goes, at $t=0$, through point $p$ ($s(0)=\cos(0)p+\sin(0)w=p$).

  • belongs to the sphere and describes a great circle on it (consider the orthonormal basis $\{p,w,p \times w\}$; this curve is the unit circle in the "XOY" plane of this basis).

  • has the following velocity at $t=0$: $s'(t)|_{t=0}=-\underbrace{\sin(t)p|_{t=0}}_{=0}+\underbrace{\cos(t)w|_{t=0}}_{=1w}=w$, instead of $v$.

We will obtain an initial speed vector equal to $v$ by replacing (1) by:


(proof: differentiation of (2) gives $\sigma'(t)|_{t=0}=-\underbrace{\sin(t\|v\|)\|v\|p|_{t=0}}_{=0}+\underbrace{\cos(t\|v\|)\|v\|w|_{t=0}}_{=1v \ \text{by def. of w}}$)

  • $\begingroup$ Ok. You're using the unit-radius sphere, right? So that $p^2=1$. Also: your reparametrization was linear, but it need not be linear, did it? (the trace of the curve would be the same no matter what type of parametrization...) $\endgroup$
    – Soap
    May 17 '17 at 23:16
  • $\begingroup$ Also: you said "clearly describes a great circle": I would say that this is "clear" because the points of the type $s(t)$ are a linear combination of $v$ and $p$ (and are therefore in the plane spanned by these vectors) and $\vert s(t) \vert ^2=1$, meaning that these points are both in that plane and in $S^2$, and the intersection of these sets is precisely the great circle of interest. Right? $\endgroup$
    – Soap
    May 17 '17 at 23:22
  • 1
    $\begingroup$ I come back (6:00 am o'clock CET). Your 1st comment: a) yes, I took $a=1$ with your notations, but I should have mentionned it. b) If you want to be compliant with a given speed vector, you need to reparametrize. If only the trajectory is important, no need for reparameterization. For your 2nd comment : yes, that's it ; nevertheless, I will add some explanation to my text. $\endgroup$
    – Jean Marie
    May 18 '17 at 4:14
  • $\begingroup$ Explanations added to the text. $\endgroup$
    – Jean Marie
    May 18 '17 at 4:34
  • $\begingroup$ Just one more thing: was it relevant that the reparametrization is linear? $\endgroup$
    – Soap
    May 18 '17 at 8:49

You need two points to define a line. 2 (non-antipodal) points define a great circle.

lets call them $p_1, p_2.$

$u = p_2 - (\frac {p_1\cdot p_2}{a^2} )p_1$ is a vector in the plane containing $p_1, p_2$ that is orthogonal to $p_1.$

$\frac {p_1}{a}, \frac {u}{\|u\|}$ unitizes these vectors.

$p_1 \cos t + a\frac {u}{\|u\|} \sin t$ will give your parametric equations for your great circle.

$p_1 \cos \frac va t + a\frac {u}{\|u\|} \sin \frac va t$ will give your parametric with velocity v.

  • $\begingroup$ What about two antipolar points? $\endgroup$
    – Martin
    May 17 '17 at 18:57
  • $\begingroup$ I was just thinking about this after I posted as I was going of to lunch. As Riemann defined spherical geometry, each point includes its antipodes. if $p_1$ and $p_2$ are antipodes they are not distinct points $\endgroup$
    – Doug M
    May 17 '17 at 21:00

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.