| 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); 
Forms(e[k]=1); ![{e[k]}](prod/atlas/Templates/images/bipolarcylindrical2.gif)
Vectors(E[j]); ![{E[j]}](prod/atlas/Templates/images/bipolarcylindrical3.gif)
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)]](prod/atlas/Templates/images/bipolarcylindrical4.gif)
Frame(E[k]); ![[E[1] = Diff(``,x), E[2] = Diff(``,y), E[3] = Diff(``,z)]](prod/atlas/Templates/images/bipolarcylindrical5.gif)
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])](prod/atlas/Templates/images/bipolarcylindrical6.gif)
Connection(omega); ![omega[i,j]](prod/atlas/Templates/images/bipolarcylindrical7.gif)
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]](prod/atlas/Templates/images/images/bipolarcylindrical.png)
Define new domain: Domain(B); 
Declare 1-form for the domain coframe Forms(phi[i]=1); ![{phi[i], e[k]}](prod/atlas/Templates/images/bipolarcylindrical10.gif)
Declare vectors for the domain frame: Vectors(Phi[k]); ![{Phi[k]}](prod/atlas/Templates/images/bipolarcylindrical11.gif)
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)]](prod/atlas/Templates/images/bipolarcylindrical12.gif)
Declare frame of the domain: Frame(Phi[j]); ![[Phi[1] = Diff(``,u), Phi[2] = Diff(``,v), Phi[3] = Diff(``,w)]](prod/atlas/Templates/images/bipolarcylindrical13.gif)
Declare mapping of the domain into : Mapping(pi,B,R^3, x = sinh(v)/(cosh(v)-cos(u)), y = sin(u)/(cosh(v)-cos(u)), z = w); 

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])](prod/atlas/Templates/images/bipolarcylindrical17.gif)
Calculate connection: Connection(Gamma); ![Gamma[i,j]](prod/atlas/Templates/images/bipolarcylindrical18.gif)
eval(Gamma); Functions(f=f(u,v,w));

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