Jean-Paul CIPRIA


Navigation 13 – Spherical Position and Local Plan – Spherical Trajectories ?

Written By: Jean-Paul Cipria - Août• 11•17
Spherical Trajectory - ©Jean-Paul Cipria 2017

Spherical Trajectory – Matlab Personal Algorithms – ©Jean-Paul Cipria 2017

How do we set a Position on Earth and how we determine Local Coordinates and Perpendicular Plan ?

And then how do we find trajectories point by point on Earth ? With and … without Latitude and Longitude, only with an Absolute Rotation Angle ?

Done ... Un Café ?

Done … Un Café ?

Complicated but Not Difficult - Bachelord Level

Complicated but Not Difficult – Bachelord Level

Created :2017-08-11 16:09:53. – Modified : 2018-04-01 17:35:45.

We want to « navigate » on earth with direct trajectory from P point to B point but merely (simplement ?) use latitude and longitude ? When we are in local coordinates we use for a small instant an absolute directionnal vector. When all coordinates are aligned on a known axes meridian for exemple we can « trace » trajectory easily but … if we turn our spherical earth or our route as we can see on following pictures then problems begin.

Some web sites and bachelord courses describe local plan as we do on the first paragraph but how do we navigate without use d\varphi and d\theta like changes of tack on sailboat (virements de bord d’un voilier) ?

The same applies for telescopes, radars, robotic arms [CIPRIA-Robotics-2015], or satellites trajectories. We can’t do some thousands small iterations on elevation and azimut motors ! Did you see the NASA trajectories panels at TV when they launched spatial engines ? Here are the beginning of understanding how to … think and, as an arrow indicate direction and sens, how to do …

Local Plan

Is Local Plan Perpendicular to Point Position ?

We can see a projected point P from position (0,0,0) to latitude and longitude at radius R. We calculate for this position e_\varphi and e_\theta local Plan perpendicular to the P Point.

Sphère et Plan Local 2 - ©Jean-Paul Cipria 2017

Sphère et Plan Local 2 – ©Jean-Paul Cipria 2017

e_\varphi and e_\theta vectors define the local plan by definition. Then Local plan is perpendicular to \vec{OP} vector.

Do Local Plan display Real Measurements ?

Vectors e_\varphi and e_\theta are like our LOCAL North-South and Est-West directions. Generaly they don’t match with latitude and longitude metrics. On the following example e_\varphi seems to follow the Greenwitch meridian. It is right only on the P Point.

Sphère et Plan Local 2 - ©Jean-Paul Cipria 2017

Sphère et Plan Local 2 – ©Jean-Paul Cipria 2017

Local plan don’t display correctly real metrics measurements except in P point.

Matlab : How do we plot a so beautiful blue Earth ?

Matlab Begin.

pas = max/50;
% A so beautiful blue earth !
% --------------------------
figure  % Don't forget it otherwise plot, plot  ... nothing !
hold on % Don't forget it otherwise you got only one point ... the last !
for lat=-pi:pas:+pi
for long=0:pas:max
x = R*cos(lat)*cos(long); % Don't use colat and colong but change sin(colat) to cos(lat) !!!
y = R*cos(lat)*sin(long);
z = R*sin(lat);
plot3(x,y,z,'.','color',[0.4 0.6 1],'markersize',12);

Matlab End.

Sorry for the missing of indentation on program writing but the object langage used to « concept » the php display « absorb », eliminate, « sont phagocytés » as said frenches, the blank or tabulation characters. We do some script in … 1990 to « remediate » those little bugs. But C++ managers forgot them for thirty years ? These are the invisible part of the object langage iceberg inconsistencies.

Do we use Quaternions Concepts to Solve Trajectories ?

Yes we did – 3D View ?

Quaternion Trajectory - ©Jean-Paul Cipria 2017

Quaternion Trajectory – ©Jean-Paul Cipria 2017

As we can see \vec{N} is perpendicular for \overrightarrow{OP} and \overrightarrow{OB} plan.

We can consider the green arrow under earth trajectory is a bad one (Not confuse with the green dots Greewitch referential). Is it like neutrino famous experiment from France to Italy [CIPRIA-Light Speed-2011] ?

Quaternion Trajectory - ©Jean-Paul Cipria 2017

Quaternion Trajectory – ©Jean-Paul Cipria 2017


How do we do ?

The Famous Trigonometrical Formula ?

First : We determine the angle sin(\alpha) (or distance in radian) between P and B on the Spherical Distance like all web sites and french courses displayed it and ? … work is finish for them …

Matlab Begin

% Cosinus angle_distance entre OP et OB
% --------------------------------------
cosinus_angle = sin(latP)*sin(latB)+cos(latP)*cos(latB)*cos(longB-longP);
% Distance en Radian.
% --------------------------------
angle_distance = acos(cosinus_angle);

Matlab End.

Here below we determinate the TRAJECTORY and it is more difficult as :

Perpendicular Vector from Plan Trajectory ?

Second : We determinate perpendicular plan vector \vec{N} for \overrightarrow{OP} and \overrightarrow{OB} by crossing this two vectors.

  • \vec{N}=\overrightarrow{OP}\wedge\overrightarrow{OB}=|\vec{N}|.\vec{e}_N . With \vec{e}_N is unitary vector perpendicular to OP and OB plan.

We know also that we can write this vector as :

  • \vec{N}=|\overrightarrow{OP}|\wedge|\overrightarrow{OB}|=R.R.sin(\alpha).\vec{e}_N

We divide vector \vec{N} by R because the two vectors \overrightarrow{OP} and \overrightarrow{OB} have R length. To avoid \vec{N} vector to have R^2 lenght and also by sin(\alpha) to have a unitary vector with R lenght.

  • \vec{N_{unitR}}=\frac{\overrightarrow{OP}\wedge\overrightarrow{OB}}{R.sin(\alpha)}=R.\vec{e}_N .

Rotate by Quaternion Concepts ?

Third : We turn \overrightarrow{OP} over \vec{N_{unitR}} by Quaternion Concept [CIPRIA-Quaternions-2017] by angle previously determined.

Quaternions de l'axe k - Rotations de vues 3d

Quaternions by 45° rotations Steps around the k (or Z or North) Vector.

What is a quaternion ?

As we detailled previous [CIPRIA-Quaternions-2017] quaternion is the same as complex number but with 3 ? 4 dimensions ? « Normal » complex number is 2 dimensions as : a+ib then a is the real part and b is the imaginary part projected in the i perpendicular one dimension space. Then in quaternion we add another two dimensions j and k and … ? A Spherical Angle \varphi ! Then quaternion is a 4 dimensions number. Example :

  • q=a+bi+cj+dk

In this complex form to « see » the quaternion we are able to do some calculations with some multiplication and addition new rules. But it is another form more explicit to understand quaternion. We display the Spherical Angle on it :

  • cos(\varphi)+sin(\varphi).u_x.i+sin(\varphi).u_y.j+sin(\varphi).u_z.k

We can see here that there are 4 variables : A Spherical Angle \varphi and a three dimensions Vector : u_x ,u_y , u_z .

Because an angle is INSIDE the quaternion we have define, by definition, a vector with its three coordinates AND a rotation in a four dimensions space. It is a great subtility. Then because we have a vector AND a spherical rotation position this quaternion seems to be a super vector or like a rotation matrix ? Yes it do.

After that we use for example the \vec{OP} vector to turn around the q quaternion as the method defined in previous article [CIPRIA-Quaternions-2017].

Navigate throught the Calculated Trajectory ?

Quarto and lasto : We can specify like as we do fractional angle d\alpha by a satellite speed and determinate for all s and ds positions the « right » trajectory to follow. Then we can then perfom servo-command for our navigation … And do not change of tack on sailboat at every 100 nautical milles (idem virements de bord d’un voilier) as every body explained us. Then we can do automatismes and pilote drone !

MP4 Video (French Explanations)

Click for MP4 Film

Earth Trajectory Paris New-York by Quaternion Rotations – ©Jean-Paul Cipria 2017

Local Plan for Paris New-York Trajectory

 - ©Jean-Paul Cipria 2017

Local Plan For Paris New-York Trajectory – ©Jean-Paul Cipria 2017


Thank You Olinde Rodrigues [Rodrigues-1815 ].
That’s all Folks ! 😉


Numeric Values

Paris Starting Route = -68.6°
New-York Ending Route = -54.1°

Latitude Paris = 48.8534100°
Longitude Paris = 2.3488000°

Latitude New-York = 40.5931°
Longitude New-York = -73.5686°

Distance = 5811 km.

Vertex Maximum Latitude = 52.22°

Trajectories Animation

Spherical Trajectory - ©Jean-Paul Cipria 2017

Spherical Trajectory – ©Jean-Paul Cipria 2017

Trajectory Explanation

Spherical Trajectory 2 - ©Jean-Paul Cipria 2017

Spherical Trajectory 2 – ©Jean-Paul Cipria 2017


 Did Neutrinos exceed the speed of light in 2011?

  • [CIPRIA-Light Speed-2011] : Jean-Paul Cipria, « Light Speed Measurements with neutrino experiments in 2011. Measurements Error in Physics. How do we made mistakes and how we correct them ? «  – 28/11/2016.

Les neutrinos ont-ils dépassé la vitesse de la lumière en 2011 ?

Les quaternions

  • [CIPRIA-Quaternions-2017] : Jean-Paul Cipria – Quaternions or real or mathematics space rotation ? How do we easily calculate with satelitte computer a rotation around a priviligied axe without evaluate it with rotation matrix ? French description.

Navigation 12 – Les Quaternions ou Rotations dans l’Espace Réel ou … Mathématique ?

Robotics Trajectories

  • [CIPRIA-Robotics-2015] : Cipria, Jean-Paul : « Here a small film on how to Program a Trajectory on a Defined Plan … then we 3D Change Referential Position and we perform the same Program. Whats Up, Doc? »

Robotics – Industrials 4


  • [Rodrigues-1815] : Olinde Rodrigues : « De l’attraction des sphéroïdes » – Thèse de Doctorat – 28 juin 1815

Jean-Paul Cipria


You can follow any responses to this entry through the RSS 2.0 feed. You can skip to the end and leave a response. Pinging is currently not allowed.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Anti-Spam Quiz: