Digi Area Group - Math Tools for Professionals
   Maple and Mathematica packages - math tools for professionals

atlas™ - modern differential geometry for Maple™

> Features List & Examples
> Template Worksheets
> Screenshots
> Documentation & Downloads
> License & Pricing
> Buy Online

 
 
 
 
Google

Features List & Examples  |  Introduction  |  Dimension  |  Indexing  |  Forms  |  Metric  |  atlasWizard - Maplet™

Curvature and moving frame
of abstract parametric curve in cartesian coordinates

 

Copyright © 2004-2008 by  DigiArea Group . All rights reserved.

Problem:

Find curvature and moving frame of some abstract plane curve defined by parametric  equations: PIECEWISE([x = xi(tau), ``],[y = eta(tau), ``])

Curve

[Maple Plot]

Solution:

Load atlas package:
restart:
with(atlas):

Plane

First of all we have to discribe the space we are working in. The space is 2-dimensional Eucledean (flat) space i.e. a plane. To define the space we declare domain, forms, vectors, coframe, frame, flat metric and calculate connection (it equals to zero of cause).
Domain(R^2);

R^2

Forms(e[k]=1);

{e[k]}

Vectors(E[j]);

{E[j]}

Coframe(e[1]=d(x),e[2]=d(y));

[e[1] = d(x), e[2] = d(y)]

Frame(E[k]);

[E[1] = Diff(``,x), E[2] = Diff(``,y)]

Metric(g=d(x)&.d(x)+d(y)&.d(y));

g = `&.`(e[1],e[1])+`&.`(e[2],e[2])

Connection(omega);

omega[i,j]

Now the working space is defined completely and we can start to solve the problem.

Abstract parametric curve

Define the curve as a manifold:
Domain(A);

A

Define two functions on the curve:
Functions(xi=xi(tau),eta=eta(tau));

{xi, eta}

Declare 1-form for curve's coframe
Forms(u[i]=1);

{e[k], u[i]}

Declare vectors for curve's frame:
Vectors(U[k]);

{U[k]}

Declare coframe on the curve:
Coframe(u[1]=d(tau));

[u[1] = d(tau)]

Declare frame of the curve:
Frame(U[l]);

[U[1] = Diff(``,tau)]

Declare mapping of the curve into R^2 :
Mapping(pi,A,R^2,
                   x=xi,
                   y=eta);

pi

A.`--->`.(R^2)

Let us see the mapping attributes:
Who(pi);


pi: mapping


TABLE([manifolds = [A, R^2], coframe = {e[1] = Diff(xi,tau)*u[1], e[2] = Diff(eta,tau)*u[1]}, equations = [x = xi, y = eta], frame = {U[1] = Diff(xi,tau)*E[1]+Diff(eta,tau)*E[2]}, natural = {Diff(``,ta...
TABLE([manifolds = [A, R^2], coframe = {e[1] = Diff(xi,tau)*u[1], e[2] = Diff(eta,tau)*u[1]}, equations = [x = xi, y = eta], frame = {U[1] = Diff(xi,tau)*E[1]+Diff(eta,tau)*E[2]}, natural = {Diff(``,ta...
TABLE([manifolds = [A, R^2], coframe = {e[1] = Diff(xi,tau)*u[1], e[2] = Diff(eta,tau)*u[1]}, equations = [x = xi, y = eta], frame = {U[1] = Diff(xi,tau)*E[1]+Diff(eta,tau)*E[2]}, natural = {Diff(``,ta...
TABLE([manifolds = [A, R^2], coframe = {e[1] = Diff(xi,tau)*u[1], e[2] = Diff(eta,tau)*u[1]}, equations = [x = xi, y = eta], frame = {U[1] = Diff(xi,tau)*E[1]+Diff(eta,tau)*E[2]}, natural = {Diff(``,ta...

Now we can calculate metric induced on the curve by the mapping. It is obvious that the metric gives squared differential of the curve's arc i.e.

d(l)^2 = (Diff(xi,tau)^2+Diff(eta,tau)^2)*d(tau)^2

Metric(G = g &/ pi);

G = (Diff(xi,tau)^2+Diff(eta,tau)^2)*`&.`(u[1],u[1])

Calculate invariants of the mapping:
Inv:=Invariants(pi);

Inv := TABLE([curvatures = TABLE(zero,[1 = [(Diff(eta,`$`(tau,2))*Diff(xi,tau)-Diff(xi,`$`(tau,2))*Diff(eta,tau))/(Diff(xi,tau)^2+Diff(eta,tau)^2)^(3/2)]]), basis = TABLE(zero,[0 = [Diff(xi,tau)/(Diff(...
Inv := TABLE([curvatures = TABLE(zero,[1 = [(Diff(eta,`$`(tau,2))*Diff(xi,tau)-Diff(xi,`$`(tau,2))*Diff(eta,tau))/(Diff(xi,tau)^2+Diff(eta,tau)^2)^(3/2)]]), basis = TABLE(zero,[0 = [Diff(xi,tau)/(Diff(...
Inv := TABLE([curvatures = TABLE(zero,[1 = [(Diff(eta,`$`(tau,2))*Diff(xi,tau)-Diff(xi,`$`(tau,2))*Diff(eta,tau))/(Diff(xi,tau)^2+Diff(eta,tau)^2)^(3/2)]]), basis = TABLE(zero,[0 = [Diff(xi,tau)/(Diff(...
Inv := TABLE([curvatures = TABLE(zero,[1 = [(Diff(eta,`$`(tau,2))*Diff(xi,tau)-Diff(xi,`$`(tau,2))*Diff(eta,tau))/(Diff(xi,tau)^2+Diff(eta,tau)^2)^(3/2)]]), basis = TABLE(zero,[0 = [Diff(xi,tau)/(Diff(...
Inv := TABLE([curvatures = TABLE(zero,[1 = [(Diff(eta,`$`(tau,2))*Diff(xi,tau)-Diff(xi,`$`(tau,2))*Diff(eta,tau))/(Diff(xi,tau)^2+Diff(eta,tau)^2)^(3/2)]]), basis = TABLE(zero,[0 = [Diff(xi,tau)/(Diff(...

Result

The curve curvature:
k:=Inv['curvatures'][1];

k := (Diff(eta,`$`(tau,2))*Diff(xi,tau)-Diff(xi,`$`(tau,2))*Diff(eta,tau))/(Diff(xi,tau)^2+Diff(eta,tau)^2)^(3/2)

The curve moving frame:
X:=Inv['basis'][0];
Y:=Inv['basis'][1];

X := Diff(xi,tau)/(Diff(xi,tau)^2+Diff(eta,tau)^2)^(1/2)*E[1]+Diff(eta,tau)*E[2]/(Diff(xi,tau)^2+Diff(eta,tau)^2)^(1/2)

Y := -Diff(eta,tau)/(Diff(xi,tau)^2+Diff(eta,tau)^2)^(1/2)*E[1]+Diff(xi,tau)/(Diff(xi,tau)^2+Diff(eta,tau)^2)^(1/2)*E[2]

Check the "orthonormality":
'g(X,Y)'=simplify(g(X,Y));

g(X,Y) = 0