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™

atlas[Curvature] - calculation of curvature 2-forms

Calling Sequence:

     Curvature(Id)

Parameters:

      Id - variable - curvature identifier

Description:

  • The Curvature  procedure calculates curvature 2-forms. If a connection is calculated or defined then curvature can be calculated completely otherwise just curvature identifier is declared as a curvature. To get the rezult of the calculation use eval  or atlas[iota]  operators.
  • The definition is as follows: Omega[l]^j = d(omega[l]^j)+Sum(`&^`(omega[k]^j,omega[l]^k),k = 1 .. n)  , where omega[l]^j  are connection 1-forms, n  is the dimension.

Example 1

Conformally flat metric of sphere -S^3
restart:
with(atlas):

Declare forms:
Forms(e[j]=1,xi=1);

{xi, e[j]}

Declare vectors:
Vectors(X,Y,Z,E[j]);

{X, Y, Z, E[j]}

Declare constant lambda :
Constants(lambda);

{_Z, Pi, I, Catalan, -I, lambda}

Declare coframe: Coframe(e[1]=2*d(x)/(1+lambda*(x^2+y^2+z^2)),
e[2]=2*d(y)/(1+lambda*(x^2+y^2+z^2)),e[3]=2*d(z)/(1+lambda*(x^2+y^2+z^2)));

[e[1] = 2*d(x)/(1+lambda*(x^2+y^2+z^2)), e[2] = 2*d(y)/(1+lambda*(x^2+y^2+z^2)), e[3] = 2*d(z)/(1+lambda*(x^2+y^2+z^2))]

Declare frame:
Frame(E[i]);

[E[1] = (1/2+1/2*lambda*x^2+1/2*lambda*y^2+1/2*lambda*z^2)*Diff(``,x), E[2] = (1/2+1/2*lambda*x^2+1/2*lambda*y^2+1/2*lambda*z^2)*Diff(``,y), E[3] = (1/2+1/2*lambda*x^2+1/2*lambda*y^2+1/2*lambda*z^2)*Di...
[E[1] = (1/2+1/2*lambda*x^2+1/2*lambda*y^2+1/2*lambda*z^2)*Diff(``,x), E[2] = (1/2+1/2*lambda*x^2+1/2*lambda*y^2+1/2*lambda*z^2)*Diff(``,y), E[3] = (1/2+1/2*lambda*x^2+1/2*lambda*y^2+1/2*lambda*z^2)*Di...

Declare conformally flat metric of   S^3  (see atlas[Metric] ):
Metric(g=e[1]&.e[1]+e[2]&.e[2]+e[3]&.e[3]);

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

Connection calculation:
Connection(omega);

omega[i,j]

'iota[E[i]](omega[1,2])'=iota[E[i]](omega[1,2]);

iota[E[i]](omega[1,2]) = -lambda*y*delta[1,i]+lambda*x*delta[2,i]

Curvature calculation:
Curvature(Omega);

Omega[i,j]

Now curvature 2-forms Omega[i,j]  are calculated:
eval(Omega);

TABLE([(1, 3) = lambda*`&^`(e[1],e[3]), (3, 1) = -lambda*`&^`(e[1],e[3]), (2, 2) = 0, (2, 3) = lambda*`&^`(e[2],e[3]), (1, 2) = lambda*`&^`(e[1],e[2]), (3, 3) = 0, (1, 1) = 0, (3, 2) = -lambda*`&^`(e[2...
TABLE([(1, 3) = lambda*`&^`(e[1],e[3]), (3, 1) = -lambda*`&^`(e[1],e[3]), (2, 2) = 0, (2, 3) = lambda*`&^`(e[2],e[3]), (1, 2) = lambda*`&^`(e[1],e[2]), (3, 3) = 0, (1, 1) = 0, (3, 2) = -lambda*`&^`(e[2...
TABLE([(1, 3) = lambda*`&^`(e[1],e[3]), (3, 1) = -lambda*`&^`(e[1],e[3]), (2, 2) = 0, (2, 3) = lambda*`&^`(e[2],e[3]), (1, 2) = lambda*`&^`(e[1],e[2]), (3, 3) = 0, (1, 1) = 0, (3, 2) = -lambda*`&^`(e[2...
TABLE([(1, 3) = lambda*`&^`(e[1],e[3]), (3, 1) = -lambda*`&^`(e[1],e[3]), (2, 2) = 0, (2, 3) = lambda*`&^`(e[2],e[3]), (1, 2) = lambda*`&^`(e[1],e[2]), (3, 3) = 0, (1, 1) = 0, (3, 2) = -lambda*`&^`(e[2...

'Omega[1,3]'=Omega[1,3];

Omega[1,3] = lambda*`&^`(e[1],e[3])

'iota[E[k]](Omega[2,1])'=iota[E[k]](Omega[2,1]);

iota[E[k]](Omega[2,1]) = -lambda*(delta[1,k]*e[2]-delta[2,k]*e[1])

Example 2
restart:
with(atlas):

Declare forms:
Forms(e[j]=1,xi=1);

{xi, e[j]}

Declare vectors:
Vectors(X,Y,Z,E[j]);

{X, Y, Z, E[j]}

Declare coframe:
Coframe(e[1]=x*d(x)+y*d(y),e[2]=x*d(y)-y*d(x));

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

Declare frame:
Frame(E[i]);

[E[1] = 1/(y^2+x^2)*x*Diff(``,x)+1/(y^2+x^2)*y*Diff(``,y), E[2] = -1/(y^2+x^2)*y*Diff(``,x)+1/(y^2+x^2)*x*Diff(``,y)]

Connection definition:
omega[1,1]:=x*e[1];

omega[1,1] := x*e[1]

omega[2,2]:=y*e[2];

omega[2,2] := e[2]*y

omega[1,2]:=y*e[1];

omega[1,2] := y*e[1]

omega[2,1]:=-x*e[2];

omega[2,1] := -x*e[2]

Connection declaration:
Connection(omega);

omega[i,j]

Curvature calculation:
Curvature(Omega);

Omega[i,j]

eval(Omega);

TABLE([(1, 1) = -y*(-1+x*y^2+x^3)/(y^2+x^2)*`&^`(e[1],e[2]), (2, 2) = y*(3+x*y^2+x^3)/(y^2+x^2)*`&^`(e[1],e[2]), (2, 1) = x*(-3+x*y^2+x^3)/(y^2+x^2)*`&^`(e[1],e[2]), (1, 2) = (-x+y^4+y^2*x^2)/(y^2+x^2)...
TABLE([(1, 1) = -y*(-1+x*y^2+x^3)/(y^2+x^2)*`&^`(e[1],e[2]), (2, 2) = y*(3+x*y^2+x^3)/(y^2+x^2)*`&^`(e[1],e[2]), (2, 1) = x*(-3+x*y^2+x^3)/(y^2+x^2)*`&^`(e[1],e[2]), (1, 2) = (-x+y^4+y^2*x^2)/(y^2+x^2)...
TABLE([(1, 1) = -y*(-1+x*y^2+x^3)/(y^2+x^2)*`&^`(e[1],e[2]), (2, 2) = y*(3+x*y^2+x^3)/(y^2+x^2)*`&^`(e[1],e[2]), (2, 1) = x*(-3+x*y^2+x^3)/(y^2+x^2)*`&^`(e[1],e[2]), (1, 2) = (-x+y^4+y^2*x^2)/(y^2+x^2)...
TABLE([(1, 1) = -y*(-1+x*y^2+x^3)/(y^2+x^2)*`&^`(e[1],e[2]), (2, 2) = y*(3+x*y^2+x^3)/(y^2+x^2)*`&^`(e[1],e[2]), (2, 1) = x*(-3+x*y^2+x^3)/(y^2+x^2)*`&^`(e[1],e[2]), (1, 2) = (-x+y^4+y^2*x^2)/(y^2+x^2)...

'L[E[1]](E[2])'=L[E[1]](E[2]);

L[E[1]](E[2]) = E[2]*x+y*E[1]

See Also:

atlas , atlas[Frame] , atlas[Coframe] , atlas[Metric] .