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™

Abstract calculations

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

Introduction:

 This worksheet illustrates how to do "abstract" calculations using atlas  package. To do this we use simple manifolds (such as Euclidean space, curves and 2-dimensional surfaces) just to illustrate the corresponding abilities.
First of all some possible calculations with symbolic dimension will be considered.

After that we calculate metric and second fundamental form on abstract "rotational" surface defined by parametric equations:

PIECEWISE([``, x = rho(zeta)*cos(phi)],[``, y = rho(zeta)*cos(phi)],[``, z = eta(zeta)])


where
rho(zeta)  and eta(zeta)  are some undefined functions on zeta .
At last the same invariants will be calculated for abstract surface defined by equation:

z = z(x,y)

where z is undefined function on x and y.

        

Abstract calculations

restart:

First of all we load atlas package:
with(atlas):

Abstract calculations with symbolic dimension

Domain(M);

M

Declare some functions:

Functions(f=f(y[k]),h=h(x[j]));

{h, f}

Declare some vectors:

Vectors(E[k],X,Y,Z);

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

Declare some forms:

Forms(e[j]=1,xi=1,theta=p);

{xi, theta, e[j]}

Declare coframe 1-forms:

Coframe(e[k],k=1..n);

{e[k]}[k = 1 .. n]

Declare frame vectors:

Frame(E[j]);

{E[j]}[j = 1 .. n]

Declare connection:

Connection(omega);

omega[i,j]

Using d-procedure:

For functions:
'd(f*h)'=d(f*h);

d(f*h) = Sum(Diff(f,y[l[2]])*d(y[l[2]]),l[2] = 1 .. n)*h+f*Sum(Diff(h,x[l[2]])*d(x[l[2]]),l[2] = 1 .. n)

Obviously that:
'd(h*xi)'=d(h*xi);

d(h*xi) = -Sum(Diff(h,x[l[2]])*`&^`(xi,d(x[l[2]])),l[2] = 1 .. n)+h*d(xi)

Using ToBasis procedure:

X&.xi=ToBasis(X&.xi);

`&.`(X,xi) = Sum(iota[E[l[2]]](xi)*Sum(iota[X](e[l[1]])*`&.`(E[l[1]],e[l[2]]),l[1] = 1 .. n),l[2] = 1 .. n)

Using div-procedure:

div(X)=div(ToBasis(X));

div(X) = Sum(iota[X](e[l[1]])*Sum(iota[E[l[2]]](omega[l[2],l[1]]),l[2] = 1 .. n),l[1] = 1 .. n)+Sum(iota[E[l[1]]](d(iota[X](e[l[1]]))),l[1] = 1 .. n)

Using Lie derivative:

'L[E[i]](e[k])'=L[E[i]](e[k]);

L[E[i]](e[k]) = iota[E[i]](d(e[k]))

'L[E[i]](E[j])'=L[E[i]](E[j]);

L[E[i]](E[j]) = Sum((iota[E[i]](omega[l[1],j])-iota[E[j]](omega[l[1],i]))*E[l[1]],l[1] = 1 .. n)

A nother domain:
Domain(N);

N

Declare constant lambda :
Constants(lambda);

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

Declare forms:
Forms(zeta[i]=1);

{xi, theta, e[j], zeta[i]}

Let us declare another coframe 1-forms:
Coframe(zeta[j]=d(x[j])/(1+lambda*Sum(x[i]^2,i=1..n)),j=1..n);

{zeta[j] = d(x[j])/(1+lambda*Sum(x[i]^2,i = 1 .. n))}[j = 1 .. n]

And another frame vectors:
Frame(E[k]);

{E[k]}[k = 1 .. n]

'd(zeta[k])'=simplify(d(zeta[k]));

d(zeta[k]) = -2*lambda*Sum(x[i]*`&^`(zeta[i],zeta[k]),i = 1 .. n)

'd(x[j])'=d(x[j]);

d(x[j]) = zeta[j]+zeta[j]*lambda*Sum(x[i]^2,i = 1 .. n)

'd(h)'=d(h);

d(h) = Sum(Diff(h,x[l[1]])*(zeta[l[1]]+zeta[l[1]]*lambda*Sum(x[i]^2,i = 1 .. n)),l[1] = 1 .. n)

Functions(F=F(f,h));

{h, f, F}

'd(F)'=d(F);

d(F) = Diff(F,f)*Sum(Diff(f,y[l[1]])*d(y[l[1]]),l[1] = 1 .. n)+Diff(F,h)*Sum(Diff(h,x[l[1]])*(zeta[l[1]]+zeta[l[1]]*lambda*Sum(x[i]^2,i = 1 .. n)),l[1] = 1 .. n)

Abstract calculations with numeric dimension

restart:

Now we reload the atlas package:
with(atlas):

We redefine `atlas/simp` procedure just for right simplification (this is not necessary but it leads to more compact results):
`atlas/simp`:=proc(a) simplify(a) end:

Domain R^3

This domain is just 3-dimensional Euclidean space:
Domain(R^3);

R^3

Declare 1-forms for to use them as a coframe:
Forms(e[j]=1);

{e[j]}

Declare vector fields to use them as a frame:
Vectors(E[i]);

{E[i]}

Declare coframe 1-forms:
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)]

Declare frame vectors:
Frame(E[j]);

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

Declare flat metric:
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 calculation:
Connection(Gamma);

Gamma[i,j]

"Rotational" surface

Now we on a surface.
Domain(S[1]);

S[1]

Functions(rho=rho(zeta),eta=eta(zeta));

{rho, eta}

Declare 1-forms for coframe:
Forms(u[k]=1);

{u[k], e[j]}

Declare vector fields for frame:
Vectors(U[j]);

{U[j]}

Coframe declaration for the surface:
Coframe(u[1]=d(zeta),u[2]=d(phi));

[u[1] = d(zeta), u[2] = d(phi)]

Frame declaration for the surface:
Frame(U[k]);

[U[1] = Diff(``,zeta), U[2] = Diff(``,phi)]

Now we declare mapping of the surface into the Euclidean space R^3 :
Mapping(pi,S[1],R^3,
        x=rho*cos(phi),
        y=rho*sin(phi),
        z=eta);

pi

S[1].`--->`.(R^3)

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


pi: mapping


TABLE([manifolds = [S[1], R^3], coframe = {e[3] = Diff(eta,zeta)*u[1], e[1] = Diff(rho,zeta)*u[1]*cos(phi)-rho*sin(phi)*u[2], e[2] = Diff(rho,zeta)*u[1]*sin(phi)+rho*cos(phi)*u[2]}, equations = [x = rh...
TABLE([manifolds = [S[1], R^3], coframe = {e[3] = Diff(eta,zeta)*u[1], e[1] = Diff(rho,zeta)*u[1]*cos(phi)-rho*sin(phi)*u[2], e[2] = Diff(rho,zeta)*u[1]*sin(phi)+rho*cos(phi)*u[2]}, equations = [x = rh...
TABLE([manifolds = [S[1], R^3], coframe = {e[3] = Diff(eta,zeta)*u[1], e[1] = Diff(rho,zeta)*u[1]*cos(phi)-rho*sin(phi)*u[2], e[2] = Diff(rho,zeta)*u[1]*sin(phi)+rho*cos(phi)*u[2]}, equations = [x = rh...
TABLE([manifolds = [S[1], R^3], coframe = {e[3] = Diff(eta,zeta)*u[1], e[1] = Diff(rho,zeta)*u[1]*cos(phi)-rho*sin(phi)*u[2], e[2] = Diff(rho,zeta)*u[1]*sin(phi)+rho*cos(phi)*u[2]}, equations = [x = rh...
TABLE([manifolds = [S[1], R^3], coframe = {e[3] = Diff(eta,zeta)*u[1], e[1] = Diff(rho,zeta)*u[1]*cos(phi)-rho*sin(phi)*u[2], e[2] = Diff(rho,zeta)*u[1]*sin(phi)+rho*cos(phi)*u[2]}, equations = [x = rh...
TABLE([manifolds = [S[1], R^3], coframe = {e[3] = Diff(eta,zeta)*u[1], e[1] = Diff(rho,zeta)*u[1]*cos(phi)-rho*sin(phi)*u[2], e[2] = Diff(rho,zeta)*u[1]*sin(phi)+rho*cos(phi)*u[2]}, equations = [x = rh...
TABLE([manifolds = [S[1], R^3], coframe = {e[3] = Diff(eta,zeta)*u[1], e[1] = Diff(rho,zeta)*u[1]*cos(phi)-rho*sin(phi)*u[2], e[2] = Diff(rho,zeta)*u[1]*sin(phi)+rho*cos(phi)*u[2]}, equations = [x = rh...

After that we can calculate metric induced on the surface by the mapping:
Metric(G = g &/ pi);

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

Calculation of the corresponding connection and curvature:

Connection(omega);

omega[i,j]

Let us see the result:
eval(omega);

TABLE([(2, 2) = 1/rho*Diff(rho,zeta)*u[1], (2, 1) = 1/rho*Diff(rho,zeta)*u[2], (1, 1) = (Diff(rho,zeta)*Diff(rho,`$`(zeta,2))+Diff(eta,zeta)*Diff(eta,`$`(zeta,2)))/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*u...
TABLE([(2, 2) = 1/rho*Diff(rho,zeta)*u[1], (2, 1) = 1/rho*Diff(rho,zeta)*u[2], (1, 1) = (Diff(rho,zeta)*Diff(rho,`$`(zeta,2))+Diff(eta,zeta)*Diff(eta,`$`(zeta,2)))/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*u...
TABLE([(2, 2) = 1/rho*Diff(rho,zeta)*u[1], (2, 1) = 1/rho*Diff(rho,zeta)*u[2], (1, 1) = (Diff(rho,zeta)*Diff(rho,`$`(zeta,2))+Diff(eta,zeta)*Diff(eta,`$`(zeta,2)))/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*u...

Now we can calculate the corresponding curvature:
Curvature(Omega);

Omega[i,j]

The result is:
eval(Omega);

TABLE([(2, 2) = 0, (2, 1) = Diff(eta,zeta)*(Diff(rho,`$`(zeta,2))*Diff(eta,zeta)-Diff(rho,zeta)*Diff(eta,`$`(zeta,2)))/rho/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&^`(u[1],u[2]), (1, 1) = 0, (1, 2) = -rho...
TABLE([(2, 2) = 0, (2, 1) = Diff(eta,zeta)*(Diff(rho,`$`(zeta,2))*Diff(eta,zeta)-Diff(rho,zeta)*Diff(eta,`$`(zeta,2)))/rho/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&^`(u[1],u[2]), (1, 1) = 0, (1, 2) = -rho...
TABLE([(2, 2) = 0, (2, 1) = Diff(eta,zeta)*(Diff(rho,`$`(zeta,2))*Diff(eta,zeta)-Diff(rho,zeta)*Diff(eta,`$`(zeta,2)))/rho/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&^`(u[1],u[2]), (1, 1) = 0, (1, 2) = -rho...

Calculation of riemannian and ricci tensors of the embedded surface:

Riemann(Riem);

Riem = -rho*Diff(eta,zeta)*(Diff(rho,`$`(zeta,2))*Diff(eta,zeta)-Diff(rho,zeta)*Diff(eta,`$`(zeta,2)))/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(`&^`(u[1],u[2]),`&^`(u[1],u[2]))

Ricci(ric);

ric = -Diff(eta,zeta)*(Diff(rho,`$`(zeta,2))*Diff(eta,zeta)-Diff(rho,zeta)*Diff(eta,`$`(zeta,2)))/rho/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(u[1],u[1])-rho*Diff(eta,zeta)*(Diff(rho,`$`(zeta,2))*Diff(...
ric = -Diff(eta,zeta)*(Diff(rho,`$`(zeta,2))*Diff(eta,zeta)-Diff(rho,zeta)*Diff(eta,`$`(zeta,2)))/rho/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(u[1],u[1])-rho*Diff(eta,zeta)*(Diff(rho,`$`(zeta,2))*Diff(...

Calculation of ricci scalar of the embedded surface:
RicciScalar(s);

s = -2*Diff(eta,zeta)*(Diff(rho,`$`(zeta,2))*Diff(eta,zeta)-Diff(rho,zeta)*Diff(eta,`$`(zeta,2)))/rho/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)^2

We can also calculate the invariants (the second fundamental form and mean curvature vector) of the embedding:

Inv:=Invariants(pi);

Inv := TABLE([secondForm = TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(...
Inv := TABLE([secondForm = TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(...
Inv := TABLE([secondForm = TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(...
Inv := TABLE([secondForm = TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(...
Inv := TABLE([secondForm = TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(...
Inv := TABLE([secondForm = TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(...
Inv := TABLE([secondForm = TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(...
Inv := TABLE([secondForm = TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(...
Inv := TABLE([secondForm = TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(...
Inv := TABLE([secondForm = TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(...
Inv := TABLE([secondForm = TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(...

Let us extract the second fundamental form:

B:=eval(Inv[secondForm]);

B := TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(rho,zeta)*Diff(eta,zet...
B := TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(rho,zeta)*Diff(eta,zet...
B := TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(rho,zeta)*Diff(eta,zet...
B := TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(rho,zeta)*Diff(eta,zet...
B := TABLE(zero,[(2, 2) = [-rho*cos(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[1]-rho*sin(phi)*Diff(eta,zeta)^2/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*E[2]+rho*Diff(rho,zeta)*Diff(eta,zet...

Now we can calculate the corresponding tensor:

'B'=add(add(`&.`(e[i],e[j],eval(B)[i,j]), i=1..2), j=1..2);

B = cos(phi)*Diff(eta,zeta)*(Diff(rho,`$`(zeta,2))*Diff(eta,zeta)-Diff(rho,zeta)*Diff(eta,`$`(zeta,2)))/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(e[1],e[1],E[1])+sin(phi)*Diff(eta,zeta)*(Diff(rho,`$`(ze...
B = cos(phi)*Diff(eta,zeta)*(Diff(rho,`$`(zeta,2))*Diff(eta,zeta)-Diff(rho,zeta)*Diff(eta,`$`(zeta,2)))/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(e[1],e[1],E[1])+sin(phi)*Diff(eta,zeta)*(Diff(rho,`$`(ze...
B = cos(phi)*Diff(eta,zeta)*(Diff(rho,`$`(zeta,2))*Diff(eta,zeta)-Diff(rho,zeta)*Diff(eta,`$`(zeta,2)))/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(e[1],e[1],E[1])+sin(phi)*Diff(eta,zeta)*(Diff(rho,`$`(ze...
B = cos(phi)*Diff(eta,zeta)*(Diff(rho,`$`(zeta,2))*Diff(eta,zeta)-Diff(rho,zeta)*Diff(eta,`$`(zeta,2)))/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(e[1],e[1],E[1])+sin(phi)*Diff(eta,zeta)*(Diff(rho,`$`(ze...

One can also calculate the corresponding projectors:

Projectors(pi);

TABLE([tangent = -(-Diff(rho,zeta)^2-Diff(eta,zeta)^2+Diff(eta,zeta)^2*cos(phi)^2)/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(e[1],E[1])+1/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*Diff(eta,zeta)*Diff(rho,zeta...
TABLE([tangent = -(-Diff(rho,zeta)^2-Diff(eta,zeta)^2+Diff(eta,zeta)^2*cos(phi)^2)/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(e[1],E[1])+1/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*Diff(eta,zeta)*Diff(rho,zeta...
TABLE([tangent = -(-Diff(rho,zeta)^2-Diff(eta,zeta)^2+Diff(eta,zeta)^2*cos(phi)^2)/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(e[1],E[1])+1/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*Diff(eta,zeta)*Diff(rho,zeta...
TABLE([tangent = -(-Diff(rho,zeta)^2-Diff(eta,zeta)^2+Diff(eta,zeta)^2*cos(phi)^2)/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(e[1],E[1])+1/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*Diff(eta,zeta)*Diff(rho,zeta...
TABLE([tangent = -(-Diff(rho,zeta)^2-Diff(eta,zeta)^2+Diff(eta,zeta)^2*cos(phi)^2)/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(e[1],E[1])+1/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*Diff(eta,zeta)*Diff(rho,zeta...
TABLE([tangent = -(-Diff(rho,zeta)^2-Diff(eta,zeta)^2+Diff(eta,zeta)^2*cos(phi)^2)/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(e[1],E[1])+1/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*Diff(eta,zeta)*Diff(rho,zeta...
TABLE([tangent = -(-Diff(rho,zeta)^2-Diff(eta,zeta)^2+Diff(eta,zeta)^2*cos(phi)^2)/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(e[1],E[1])+1/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*Diff(eta,zeta)*Diff(rho,zeta...
TABLE([tangent = -(-Diff(rho,zeta)^2-Diff(eta,zeta)^2+Diff(eta,zeta)^2*cos(phi)^2)/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(e[1],E[1])+1/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*Diff(eta,zeta)*Diff(rho,zeta...
TABLE([tangent = -(-Diff(rho,zeta)^2-Diff(eta,zeta)^2+Diff(eta,zeta)^2*cos(phi)^2)/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(e[1],E[1])+1/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*Diff(eta,zeta)*Diff(rho,zeta...
TABLE([tangent = -(-Diff(rho,zeta)^2-Diff(eta,zeta)^2+Diff(eta,zeta)^2*cos(phi)^2)/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*`&.`(e[1],E[1])+1/(Diff(rho,zeta)^2+Diff(eta,zeta)^2)*Diff(eta,zeta)*Diff(rho,zeta...

An abstract surface

Now current manifold is a surface.
Domain(S[2]);

S[2]

Declare functions:
Functions(f=f(alpha,beta));

{rho, eta, f}

Declare 1-forms for the surface coframe:
Forms(xi[k]=1);

{u[k], xi[k], e[j]}

Declare vector fields for the surface frame:
Vectors(Xi[j]);

{Xi[j]}

Coframe declaration for the surface:
Coframe(xi[1]=d(alpha),xi[2]=d(beta));

[xi[1] = d(alpha), xi[2] = d(beta)]

Frame declaration for the surface:
Frame(Xi[k]);

[Xi[1] = Diff(``,alpha), Xi[2] = Diff(``,beta)]

Now we declare embedding of the surface into R^3 :
Mapping(psi,S[2],R^3,
        x=alpha,
        y=beta,
        z=f);

psi

S[2].`--->`.(R^3)

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


psi: mapping


TABLE([manifolds = [S[2], R^3], coframe = {e[1] = xi[1], e[2] = xi[2], e[3] = Diff(f,alpha)*xi[1]+Diff(f,beta)*xi[2]}, equations = [x = alpha, y = beta, z = f], frame = {Xi[1] = E[1]+Diff(f,alpha)*E[3]...
TABLE([manifolds = [S[2], R^3], coframe = {e[1] = xi[1], e[2] = xi[2], e[3] = Diff(f,alpha)*xi[1]+Diff(f,beta)*xi[2]}, equations = [x = alpha, y = beta, z = f], frame = {Xi[1] = E[1]+Diff(f,alpha)*E[3]...
TABLE([manifolds = [S[2], R^3], coframe = {e[1] = xi[1], e[2] = xi[2], e[3] = Diff(f,alpha)*xi[1]+Diff(f,beta)*xi[2]}, equations = [x = alpha, y = beta, z = f], frame = {Xi[1] = E[1]+Diff(f,alpha)*E[3]...
TABLE([manifolds = [S[2], R^3], coframe = {e[1] = xi[1], e[2] = xi[2], e[3] = Diff(f,alpha)*xi[1]+Diff(f,beta)*xi[2]}, equations = [x = alpha, y = beta, z = f], frame = {Xi[1] = E[1]+Diff(f,alpha)*E[3]...

After that we can calculate metric induced on the surface by the embedding:
Metric(gK = g &/ psi);

gK = (Diff(f,alpha)^2+1)*`&.`(xi[1],xi[1])+(1+Diff(f,beta)^2)*`&.`(xi[2],xi[2])+Diff(f,alpha)*Diff(f,beta)*`&.`(xi[2],xi[1])+Diff(f,alpha)*Diff(f,beta)*`&.`(xi[1],xi[2])
gK = (Diff(f,alpha)^2+1)*`&.`(xi[1],xi[1])+(1+Diff(f,beta)^2)*`&.`(xi[2],xi[2])+Diff(f,alpha)*Diff(f,beta)*`&.`(xi[2],xi[1])+Diff(f,alpha)*Diff(f,beta)*`&.`(xi[1],xi[2])

Let us calculate the invariants of the embedding:

Invariants(psi);

TABLE([secondForm = TABLE(zero,[(2, 2) = [-Diff(f,`$`(beta,2))*Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[1]-Diff(f,`$`(beta,2))*Diff(f,beta)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[2]+Diff(f,`$`(...
TABLE([secondForm = TABLE(zero,[(2, 2) = [-Diff(f,`$`(beta,2))*Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[1]-Diff(f,`$`(beta,2))*Diff(f,beta)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[2]+Diff(f,`$`(...
TABLE([secondForm = TABLE(zero,[(2, 2) = [-Diff(f,`$`(beta,2))*Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[1]-Diff(f,`$`(beta,2))*Diff(f,beta)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[2]+Diff(f,`$`(...
TABLE([secondForm = TABLE(zero,[(2, 2) = [-Diff(f,`$`(beta,2))*Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[1]-Diff(f,`$`(beta,2))*Diff(f,beta)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[2]+Diff(f,`$`(...
TABLE([secondForm = TABLE(zero,[(2, 2) = [-Diff(f,`$`(beta,2))*Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[1]-Diff(f,`$`(beta,2))*Diff(f,beta)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[2]+Diff(f,`$`(...
TABLE([secondForm = TABLE(zero,[(2, 2) = [-Diff(f,`$`(beta,2))*Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[1]-Diff(f,`$`(beta,2))*Diff(f,beta)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[2]+Diff(f,`$`(...
TABLE([secondForm = TABLE(zero,[(2, 2) = [-Diff(f,`$`(beta,2))*Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[1]-Diff(f,`$`(beta,2))*Diff(f,beta)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[2]+Diff(f,`$`(...
TABLE([secondForm = TABLE(zero,[(2, 2) = [-Diff(f,`$`(beta,2))*Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[1]-Diff(f,`$`(beta,2))*Diff(f,beta)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[2]+Diff(f,`$`(...
TABLE([secondForm = TABLE(zero,[(2, 2) = [-Diff(f,`$`(beta,2))*Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[1]-Diff(f,`$`(beta,2))*Diff(f,beta)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[2]+Diff(f,`$`(...
TABLE([secondForm = TABLE(zero,[(2, 2) = [-Diff(f,`$`(beta,2))*Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[1]-Diff(f,`$`(beta,2))*Diff(f,beta)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[2]+Diff(f,`$`(...
TABLE([secondForm = TABLE(zero,[(2, 2) = [-Diff(f,`$`(beta,2))*Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[1]-Diff(f,`$`(beta,2))*Diff(f,beta)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[2]+Diff(f,`$`(...
TABLE([secondForm = TABLE(zero,[(2, 2) = [-Diff(f,`$`(beta,2))*Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[1]-Diff(f,`$`(beta,2))*Diff(f,beta)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[2]+Diff(f,`$`(...
TABLE([secondForm = TABLE(zero,[(2, 2) = [-Diff(f,`$`(beta,2))*Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[1]-Diff(f,`$`(beta,2))*Diff(f,beta)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*E[2]+Diff(f,`$`(...

One can also calculate the corresponding projectors:

Projectors(psi);

TABLE([tangent = Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*`&.`(e[3],E[1])+(Diff(f,alpha)^2+Diff(f,beta)^2)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*`&.`(e[3],E[3])+Diff(f,alpha)/(Diff(f,alpha)^2+1+Di...
TABLE([tangent = Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*`&.`(e[3],E[1])+(Diff(f,alpha)^2+Diff(f,beta)^2)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*`&.`(e[3],E[3])+Diff(f,alpha)/(Diff(f,alpha)^2+1+Di...
TABLE([tangent = Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*`&.`(e[3],E[1])+(Diff(f,alpha)^2+Diff(f,beta)^2)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*`&.`(e[3],E[3])+Diff(f,alpha)/(Diff(f,alpha)^2+1+Di...
TABLE([tangent = Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*`&.`(e[3],E[1])+(Diff(f,alpha)^2+Diff(f,beta)^2)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*`&.`(e[3],E[3])+Diff(f,alpha)/(Diff(f,alpha)^2+1+Di...
TABLE([tangent = Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*`&.`(e[3],E[1])+(Diff(f,alpha)^2+Diff(f,beta)^2)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*`&.`(e[3],E[3])+Diff(f,alpha)/(Diff(f,alpha)^2+1+Di...
TABLE([tangent = Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*`&.`(e[3],E[1])+(Diff(f,alpha)^2+Diff(f,beta)^2)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*`&.`(e[3],E[3])+Diff(f,alpha)/(Diff(f,alpha)^2+1+Di...
TABLE([tangent = Diff(f,alpha)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*`&.`(e[3],E[1])+(Diff(f,alpha)^2+Diff(f,beta)^2)/(Diff(f,alpha)^2+1+Diff(f,beta)^2)*`&.`(e[3],E[3])+Diff(f,alpha)/(Diff(f,alpha)^2+1+Di...