GeodesicLinesOnSphere::usage="Find the geodesic lines of a sphere, remembering that one of the two conditions must be met: a) The curvature of the line is equal to zero. b) The normal to the surface is the main normal of the line. References: Fedenko, A.S. Problemas de Geometría Diferencial. Moscú: Editorial Mir: p.110, 1981.; Personal.";
Development:
In[]:=
s[u_,v_]:={4Cos[v]Cos[u],4Cos[v]Sin[u],4Sin[v]};
The maximum circumferences in the sphere are those that have the same center of the sphere:
In[]:=
f[x_,y_]:=
16--
;g[x_,y_]:=-x-2y;f[rCos[t],rSin[t]]==g[rCos[t],rSin[t]]roft=r/.First@Solve[%,r]//Simplifyz[t_]:=g[roftCos[t],roftSin[t]];γ[t_]:={roftCos[t],roftSin[t],z[t]};2
x
2
y
Out[]=
16--
-rCos[t]-2rSin[t]2
r
2
Cos[t]
2
r
2
Sin[t]
Out[]=
-
4
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
ζ[t_]:=-,-,+;
4Cos[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
4Sin[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
4Cos[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
8Sin[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
In[]:=
ManipulateClearAll;s[u_,v_]:={4Cos[v]Cos[u],4Cos[v]Sin[u],4Sin[v]};ζ[t_]:=-,-,+;ShowParametricPlot3D[s[u,v],{u,0,t1/2},{v,0,t1},PlotStyle->Opacity[0.2],ColorFunction"BlueGreenYellow",MeshFalse,PerformanceGoal"Quality"],Graphics3DBlack,Ball0,-,,0.15,ParametricPlot3D[ζ[t],{t,0,t1},PlotStyleBlack],Graphics3DBlue,Point[{-1,0,3π}],Arrowheads[.05],ArrowTube0,-,,0,-,+t10,,-,AxesLabel->(Style[#,15,Blue]&/@{"X","Y","Z"}),AxesOrigin{0,0,0},AxesTrue,BoxedFalse,BoxRatiosAutomatic,PlotRangeAll,ViewPoint{-3,-3,3},ImageSize500,Style["Geodesic line:",Bold,Large],{{t1,1,"Value (t1)"},0.01,2π,0.01},ControlPlacementTop
4Cos[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
4Sin[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
4Cos[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
8Sin[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
4
5
8
5
4
5
8
5
4
5
8
5
1
5
2
5
Out[]=
A point about the maximum circumference is:
In[]:=
Printζ
π
2
0,-,
4
5
8
5
0,-,
4
5
8
5
Verification that is a geodesic line:
In[]:=
ResourceFunction["Curvature"][ζ[t],t]
Out[]=
2+-+++
2
----+-+---++
64
6
Cos[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
192Sin[t]
5
Cos[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
80
4
Cos[t]
2
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
80
2
Cos[t]
4
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
192Cos[t]
5
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
64
6
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
48
4
Cos[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
128Sin[t]
3
Cos[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
128Cos[t]
3
Sin[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
48
4
Sin[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
16
2
Cos[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
16
2
Sin[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
2
----+-+---++
128
6
Cos[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
384Sin[t]
5
Cos[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
160
4
Cos[t]
2
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
160
2
Cos[t]
4
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
384Cos[t]
5
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
128
6
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
96
4
Cos[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
256Sin[t]
3
Cos[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
256Cos[t]
3
Sin[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
96
4
Sin[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
32
2
Cos[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
32
2
Sin[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
3/2
2
2Sin[t](4+6Cos[t]Sin[t]-4)
2
Cos[t]
2
Sin[t]
3/2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
4Cos[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
2
--+-
2Cos[t](4+6Cos[t]Sin[t]-4)
2
Cos[t]
2
Sin[t]
3/2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
4Sin[t](4+6Cos[t]Sin[t]-4)
2
Cos[t]
2
Sin[t]
3/2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
8Cos[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
4Sin[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
2
2Cos[t](4+6Cos[t]Sin[t]-4)
2
Cos[t]
2
Sin[t]
3/2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
4Sin[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
In[]:=
2+-+++/.t
2
----+-+---++
64
6
Cos[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
192Sin[t]
5
Cos[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
80
4
Cos[t]
2
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
80
2
Cos[t]
4
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
192Cos[t]
5
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
64
6
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
48
4
Cos[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
128Sin[t]
3
Cos[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
128Cos[t]
3
Sin[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
48
4
Sin[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
16
2
Cos[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
16
2
Sin[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
2
----+-+---++
128
6
Cos[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
384Sin[t]
5
Cos[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
160
4
Cos[t]
2
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
160
2
Cos[t]
4
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
384Cos[t]
5
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
128
6
Sin[t]
3
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
96
4
Cos[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
256Sin[t]
3
Cos[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
256Cos[t]
3
Sin[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
96
4
Sin[t]
2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
32
2
Cos[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
32
2
Sin[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
3/2
2
2Sin[t](4+6Cos[t]Sin[t]-4)
2
Cos[t]
2
Sin[t]
3/2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
4Cos[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
2
--+-
2Cos[t](4+6Cos[t]Sin[t]-4)
2
Cos[t]
2
Sin[t]
3/2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
4Sin[t](4+6Cos[t]Sin[t]-4)
2
Cos[t]
2
Sin[t]
3/2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
8Cos[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
4Sin[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
2
2Cos[t](4+6Cos[t]Sin[t]-4)
2
Cos[t]
2
Sin[t]
3/2
(2+4Cos[t]Sin[t]+5)
2
Cos[t]
2
Sin[t]
4Sin[t]
2+4Cos[t]Sin[t]+5
2
Cos[t]
2
Sin[t]
π
2
Out[]=
1
4
It is not fulfilled (a), it must be fulfilled (b):
In[]:=
ResourceFunction["NormalVector"][ζ[t],t]
Out[]=
All that remains is to verify that it is equal to the normal surface:
Normal to the surface:
The normal of the curve is identical to the normal of the surface therefore it is a geodesic line as expected, it was fulfilled (b).
Now an animation with the rest of the geodesics (based on ResourceFunction[“Geodesic”]):

