Laboratorios de Maple

Geometría Diferencial MATE2410

Prof. José Ricardo ARTEAGA BEJARANO
Lab4: Geodésicas

Objetivos:

Parte 1: Cálculo de las geodésicas

Cálculos básicos

> restart: with(plots): with(LinearAlgebra):
EFG:=proc(X)# PRIMERA FORMA FUNDAMENTAL

local Xu,Xv,E,F,G;

Xu:=<diff(X[1],u),diff(X[2],u),diff(X[3],u)>;

Xv:=<diff(X[1],v),diff(X[2],v),diff(X[3],v)>;

E:=DotProduct(Xu,Xu,conjugate=false);

F:=DotProduct(Xu,Xv,conjugate=false);

G:=DotProduct(Xv,Xv,conjugate=false);

simplify([E,F,G]);

end:

> UN:=proc(X) # VECTOR NORMAL
local Xu,Xv,Z,s;

Xu:=<diff(X[1],u),diff(X[2],u),diff(X[3],u)>;

Xv:=<diff(X[1],v),diff(X[2],v),diff(X[3],v)>;

Z:=CrossProduct(Xu,Xv);

s:=VectorNorm(Z,Euclidean,conjugate=false);

simplify(<Z[1]/s|Z[2]/s|Z[3]/s>,sqrt,trig,simbolic);

end:

> lmn:=proc(X) # SEGUNDA FORMA FUNDAMENTAL
local Xu,Xv,Xuu,Xuv,Xvv,U,l,m,n;

Xu:=<diff(X[1],u),diff(X[2],u),diff(X[3],u)>;

Xv:=<diff(X[1],v),diff(X[2],v),diff(X[3],v)>;

Xuu:=<diff(Xu[1],u),diff(Xu[2],u),diff(Xu[3],u)>;

Xuv:=<diff(Xu[1],v),diff(Xu[2],v),diff(Xu[3],v)>;

Xvv:=<diff(Xv[1],v),diff(Xv[2],v),diff(Xv[3],v)>;

U:=UN(X);

l:=DotProduct(U,Xuu,conjugate=false);

m:=DotProduct(U,Xuv,conjugate=false);

n:=DotProduct(U,Xvv,conjugate=false);

simplify([l,m,n],sqrt,trig,symbolic);

end:

> MK:=proc(X)# CURVATURA MEDIA
local E,F,G,l,m,n,S,T;

S:=EFG(X); T:=lmn(X);

E:=S[1]; F:=S[2]; G:=S[3];

l:=T[1]; m:=T[2]; n:=T[3];

simplify((G*l+E*n-2*F*m)/(2*E*G-2*F^2),sqrt,trig,symbolic);

end:

> GK:=proc(X)# CURVATURA DE GAUSS
local E,F,G,l,m,n,S,T;

S:=EFG(X); T:=lmn(X);

E:=S[1]; F:=S[2]; G:=S[3];

l:=T[1]; m:=T[2]; n:=T[3];

simplify((l*n-m^2)/(E*G-F^2),sqrt,trig,symbolic);

end:

> shape:=proc(X)# OPERADOR FORMA
local Y,Z,a,b,c,d;

Y:=EFG(X);

Z:=lmn(X);

a:=simplify((Z[1]*Y[3]-Z[2]*Y[2])/(Y[1]*Y[3]-Y[2]^2));

b:=simplify((Z[2]*Y[1]-Z[1]*Y[2])/(Y[1]*Y[3]-Y[2]^2));

c:=simplify((Z[2]*Y[3]-Z[3]*Y[2])/(Y[1]*Y[3]-Y[2]^2));

d:=simplify((Z[3]*Y[1]-Z[2]*Y[2])/(Y[1]*Y[3]-Y[2]^2));

[S(x_u)=a*x_u+b*x_v,S(x_v)=c*x_u+d*x_v];

end:

> shape_matrix:=proc(X)# MATRIZ OPERADOR FORMA
local Y,Z,a,b,c,d;

Y:=EFG(X);

Z:=lmn(X);

a:=simplify((Z[1]*Y[3]-Z[2]*Y[2])/(Y[1]*Y[3]-Y[2]^2));

b:=simplify((Z[2]*Y[1]-Z[1]*Y[2])/(Y[1]*Y[3]-Y[2]^2));

c:=simplify((Z[2]*Y[3]-Z[3]*Y[2])/(Y[1]*Y[3]-Y[2]^2));

d:=simplify((Z[3]*Y[1]-Z[2]*Y[2])/(Y[1]*Y[3]-Y[2]^2));

Matrix([[a,c],[c,d]]);

end:

Warning, the name changecoords has been redefined

Ecuaciones de las geodésicas

> geoeq:=proc(X)
local M,eq1,eq2;

M:=EFG(X);

eq1:=diff(u(t),t$2)+subs({u=u(t),v=v(t)},diff(M[1],u)/(2*M[1]))*diff(u(t),t)^2

+subs({u=u(t),v=v(t)},diff(M[1],v)/(M[1]))*diff(u(t),t)*diff(v(t),t)

-subs({u=u(t),v=v(t)},diff(M[3],u)/(2*M[1]))*diff(v(t),t)^2=0;

eq2:=diff(v(t),t$2)-subs({u=u(t),v=v(t)},diff(M[1],v)/(2*M[3]))*diff(u(t),t)^2

+subs({u=u(t),v=v(t)},diff(M[3],u)/(M[3]))*diff(u(t),t)*diff(v(t),t)

+ subs({u=u(t),v=v(t)},diff(M[3],v)/(2*M[3]))*diff(v(t),t)^2=0;

eq1,eq2;

end:

Ejemplos

> sphere:=<cos(u)*cos(v)|sin(u)*cos(v)|sin(v)>;

> EFG(sphere);

> geoeq(sphere);

sphere := _rtable[2723872]

[cos(v)^2, 0, 1]

diff(u(t),`$`(t,2))-2/cos(v(t))*sin(v(t))*diff(u(t)...

> torus:=<(4+cos(u))*cos(v)|(4+cos(u))*sin(v)|sin(u)>;

> EFG(torus);

> geoeq(torus);

torus := _rtable[2749748]

[1, 0, 16+8*cos(u)+cos(u)^2]

diff(u(t),`$`(t,2))-(-4*sin(u(t))-cos(u(t))*sin(u(t...
diff(u(t),`$`(t,2))-(-4*sin(u(t))-cos(u(t))*sin(u(t...

> witch:=<2*tan(u)|2*cos(u)^2*cos(v)|2*cos(u)^2*sin(v)>;

> EFG(witch);

> geoeq(witch);

witch := _rtable[3218368]

[-4*(-1-4*cos(u)^6+4*cos(u)^8)/cos(u)^4, 0, 4*cos(u...

diff(u(t),`$`(t,2))-1/8*(-4*(24*cos(u(t))^5*sin(u(t...
diff(u(t),`$`(t,2))-1/8*(-4*(24*cos(u(t))^5*sin(u(t...
diff(u(t),`$`(t,2))-1/8*(-4*(24*cos(u(t))^5*sin(u(t...

Gráficos de las geodésicas

> plotgeo:=proc(X,ustart,uend,vstart,vend,u0,v0,Du0,Dv0,T,N,gr,theta,phi)
local sys,desys,u1,v1,listp,geo,plotX;

sys:=geoeq(X);

desys:=dsolve({sys,u(0)=u0,v(0)=v0,D(u)(0)=Du0,D(v)(0)=Dv0},

{u(t),v(t)},type=numeric, output=listprocedure);

u1:=subs(desys,u(t)); v1:=subs(desys,v(t));

geo:=tubeplot(convert(subs(u='u1'(t),v='v1'(t),X),list),

t=0..T,radius=0.05, color=black,numpoints=N):

plotX:=plot3d(subs({u=u(t),v=v(t)},X),u=ustart..uend,v=vstart..vend,grid=[gr[1],

gr[2]],shading=XY,lightmodel=light3):

display({geo,plotX},style=patch,scaling=constrained,orientation=[theta,phi]);

end:

Ejemplos

> plotgeo(torus,0,2*Pi,0,2*Pi,Pi/2,0,0,1,30,150,[15,30],105,33);

[Maple Plot]

> plotgeo(torus,0,2*Pi,0,2*Pi,0,0,0,1,15,75,[15,30],177,68);

[Maple Plot]

> plotgeo(torus,0,2*Pi,0,2*Pi,Pi,0,0,1,15,165,[15,30],177,68);

[Maple Plot]

> plotgeo(torus,0,2*Pi,0,2*Pi,Pi,0,0,1,35,165,[15,30],177,68);

[Maple Plot]

> plotgeo(sphere,0,2*Pi,0,2*Pi,0,0,1,1,5,35,[15,30],177,68);

[Maple Plot]

> plotgeo(witch,-1.1,1.1,0,2*Pi,Pi/3,0,0,1,100,200,[15,30],92,-113);

[Maple Plot]

>

Ejercicios

1. Considere el hiperboloide de un solo manto, como superficie de revolución sobre el eje z. Halle la métrica, las ecuaciones diferenciales que determinan las geodésicas y grafique diferentes geodésicas, entre otras grafique una geodésica que sea un meridiano y una geodésica que compruebe que un paralelo en particular no es geodésica. Ayuda: Vea la Figura 5.19 de la página 206, la cual está hecha para un cono.

2. Considere un cilindro vertical. En este caso los paralelos y los meridianos si son geodésicas. Compruébeloo usando Maple. Además haga dibujos de geodésicas que no sean ni paralelos ni meridianos. Cómo son estas curvas?. Compruebelo resolviendo las ecuaciones.