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™

3D Coordinate system changing

  Bipolar cylindrical coordinate system on 3-space

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

Problem:

Find metric, connection and Laplace operator on 3-space in bipolar cylindrical  coordinate system:
   x = a*sinh(v)/(cosh(v)-cos(u))
   y = a*sin(u)/(cosh(v)-cos(u))
   z = w

Solution:

Load atlas package:
restart:
with(atlas):

Space

First of all we have to describe the space we are working in. The space is 3-dimensional Euclidean (flat) space. To define the space we declare domain, forms, vectors, coframe, frame, flat metric and calculate connection (it equals to zero of cause).

Domain(R^3);

R^3

Forms(e[k]=1);

{e[k]}

Vectors(E[j]);

{E[j]}

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

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

Frame(E[k]);

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

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

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

Connection(omega);

omega[i,j]

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

Redefine `atlas/simp` procedure to simplify the results:
`atlas/simp`:=proc(a) factor(simplify(a)) end:

Bipolar cylindrical

Graphical representation of the coordinate system:
plots[coordplot3d](bipolarcylindrical);

[Maple Plot]

Define new domain:
Domain(B);

B

Declare 1-form for the domain coframe
Forms(phi[i]=1);

{phi[i], e[k]}

Declare vectors for the domain frame:
Vectors(Phi[k]);

{Phi[k]}

Declare coframe on the domain:
Coframe(phi[1]=d(u),phi[2]=d(v),phi[3]=d(w));

[phi[1] = d(u), phi[2] = d(v), phi[3] = d(w)]

Declare frame of the domain:
Frame(Phi[j]);

[Phi[1] = Diff(``,u), Phi[2] = Diff(``,v), Phi[3] = Diff(``,w)]

Declare mapping of the domain into R^3 :
Mapping(pi,B,R^3,
   x = sinh(v)/(cosh(v)-cos(u)),
   y = sin(u)/(cosh(v)-cos(u)),
   z = w);

pi

B.`--->`.(R^3)

Now we can calculate metric induced on the domain by the mapping.
Metric(G = g &/ pi);

G = 1/(cosh(v)-cos(u))^2*`&.`(phi[2],phi[2])+1/(cosh(v)-cos(u))^2*`&.`(phi[1],phi[1])+`&.`(phi[3],phi[3])

Calculate connection:
Connection(Gamma);

Gamma[i,j]

eval(Gamma);

TABLE([(2, 3) = 0, (1, 2) = -1/(cosh(v)-cos(u))*sinh(v)*phi[1]+sin(u)/(cosh(v)-cos(u))*phi[2], (3, 3) = 0, (3, 2) = 0, (2, 1) = 1/(cosh(v)-cos(u))*sinh(v)*phi[1]-sin(u)/(cosh(v)-cos(u))*phi[2], (2, 2) ...
TABLE([(2, 3) = 0, (1, 2) = -1/(cosh(v)-cos(u))*sinh(v)*phi[1]+sin(u)/(cosh(v)-cos(u))*phi[2], (3, 3) = 0, (3, 2) = 0, (2, 1) = 1/(cosh(v)-cos(u))*sinh(v)*phi[1]-sin(u)/(cosh(v)-cos(u))*phi[2], (2, 2) ...
TABLE([(2, 3) = 0, (1, 2) = -1/(cosh(v)-cos(u))*sinh(v)*phi[1]+sin(u)/(cosh(v)-cos(u))*phi[2], (3, 3) = 0, (3, 2) = 0, (2, 1) = 1/(cosh(v)-cos(u))*sinh(v)*phi[1]-sin(u)/(cosh(v)-cos(u))*phi[2], (2, 2) ...
TABLE([(2, 3) = 0, (1, 2) = -1/(cosh(v)-cos(u))*sinh(v)*phi[1]+sin(u)/(cosh(v)-cos(u))*phi[2], (3, 3) = 0, (3, 2) = 0, (2, 1) = 1/(cosh(v)-cos(u))*sinh(v)*phi[1]-sin(u)/(cosh(v)-cos(u))*phi[2], (2, 2) ...
TABLE([(2, 3) = 0, (1, 2) = -1/(cosh(v)-cos(u))*sinh(v)*phi[1]+sin(u)/(cosh(v)-cos(u))*phi[2], (3, 3) = 0, (3, 2) = 0, (2, 1) = 1/(cosh(v)-cos(u))*sinh(v)*phi[1]-sin(u)/(cosh(v)-cos(u))*phi[2], (2, 2) ...

Functions(f=f(u,v,w));

{f}

To calculate Laplace operator one can use grad and div operators.  
Delta(f)=div(grad(f));

Delta(f) = (cosh(v)-cos(u))^2*Diff(f,`$`(u,2))+(cosh(v)-cos(u))^2*Diff(f,`$`(v,2))+Diff(f,`$`(w,2))