13. Isometrická zobrazení – Příklad 13.2 – Katenoid a helikoid

Nechť je dána část katenoidu (po vyjmutí jednoho poledníku)
[Maple OLE 2.0 Object] a část helikoidu
[Maple OLE 2.0 Object].

Ukažte, že zobrazení [Maple OLE 2.0 Object] je izometrií. Které křivky na helikoidu odpovídají v tomto zobrazení rovnoběžkám a poledníkům katenoidu?

Řešení

PDF

Nejdříve ověříme izometrii ploch pomocí procedury G pro výpočet koeficientů první základní formy plochy (viz příklad 9.1):

> restart:with(linalg):
> G:=proc(surf,u,v)

local f1,f2,g11,g12,g22;
f1:=(u,v)->subs(uu=u,diff(surf(uu,v),uu));
f2:=(u,v)->subs(vv=v,diff(surf(u,vv),vv));
g11:=simplify(dotprod(f1(u,v),f1(u,v),orthogonal));
g12:=simplify(dotprod(f1(u,v),f2(u,v),orthogonal));
g22:=simplify(dotprod(f2(u,v),f2(u,v),orthogonal));
[g11,g12,g22];

end:

> catenoid:=(u,v)->[cosh(u)*cos(v),cosh(u)*sin(v),u];

catenoid := proc (u, v) options operator, arrow; [cosh(u)*cos(v), cosh(u)*sin(v), u] end proc

> G(catenoid,u,v);

[cosh(u)^2, 0, cosh(u)^2]

> helicoid:=(u,v)->[u*cos(v),u*sin(v),v];

helicoid := proc (u, v) options operator, arrow; [u*cos(v), u*sin(v), v] end proc

> G(unapply(subs(u=sinh(u),helicoid(u,v)),u,v),u,v);

[cosh(u)^2, 0, cosh(u)^2]

Nyní ověříme, že i plochy příslušné izometrické deformace dávají tutéž první základní formu plochy:

> f:=evalm(cos(t)*catenoid(u,v+t)+sin(t)*helicoid(sinh(u),v+t-Pi/2)):
> surf:=unapply([f[1],f[2],f[3]],u,v):
> G(surf,u,v);

[cosh(u)^2, 0, cosh(u)^2]

Následující programový kód vytváří animaci izometrické deformace mezi katenoidem a helikoidem.

> with(plots):setoptions3d(scaling=constrained):
> for i from 0 to 50 do

P[i]:=plot3d(evalm(cos(i*Pi/100)*catenoid(u,v+i*Pi/100)+sin(i*Pi/100)*helicoid(sinh(u),v+i*Pi/100-Pi/2)),u=-2..2,v=0..2*Pi):

od:

> display(seq(P[i],i=0..50),insequence=true);

[Maple Plot]

Další programový kód po spuštění znázorňuje, jak se postupně mění parametrické křivky na zadaných plochách:

> for i from 0 to 50 do

P[i]:=plot3d(evalm(cos(i*Pi/100)*catenoid(u,v+i*Pi/100)+sin(i*Pi/100)*helicoid(sinh(u),v+i*Pi/100-Pi/2)),u=-2..2,v=0..2*Pi,color=grey,style=wireframe):
u_CURVE[i]:=spacecurve(evalm(cos(i*Pi/100)*catenoid(u,Pi+i*Pi/100)+sin(i*Pi/100)*helicoid(sinh(u),Pi+i*Pi/100-Pi/2)),u=-2..2,thickness=2,color=blue):
v_CURVE[i]:=spacecurve(evalm(cos(i*Pi/100)*catenoid(1,v+i*Pi/100)+sin(i*Pi/100)*helicoid(sinh(1),v+i*Pi/100-Pi/2)),v=0..2*Pi,thickness=2,color=blue):

od:

> ANIM:=display([seq(P[i], i=0..50)], insequence=true):
> ANIM1:=display([seq(u_CURVE[i], i=0..50)], insequence=true):
> ANIM2:=display([seq(v_CURVE[i], i=0..50)], insequence=true):
> display(ANIM1,ANIM);display(ANIM2,ANIM);

[Maple Plot]
[Maple Plot]
Stránky Přírodovědecké fakulty MU
| Technická spolupráce:
| Servisní středisko pro e-learning na MU, 2008
| Stránky střediska na Elportále