Minimal surfaces
First of all we load 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);
collect(simplify(a),`&.`,factor)
end:
After that we declare constant
:
 | (2.1) |
Domain
This domain is just 3-dimensional Euclidean space:
Domain(R^3);
 | (2.1.1) |
Declare 1-forms for to use them as a coframe:
Forms(e[j]=1);
![{e[j]}](Maple/atlas/Templates/images/minimal_8.gif) | (2.1.2) |
Declare vector fields to use them as a frame:
Vectors(E[i]);
![{E[i]}](Maple/atlas/Templates/images/minimal_9.gif) | (2.1.3) |
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)]](Maple/atlas/Templates/images/minimal_10.gif) | (2.1.4) |
Declare frame vectors:
Frame(E[j]);
![[E[1] = Diff(``, x), E[2] = Diff(``, y), E[3] = Diff(``, z)]](Maple/atlas/Templates/images/minimal_11.gif) | (2.1.5) |
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]))](Maple/atlas/Templates/images/minimal_12.gif) | (2.1.6) |
Connection calculation:
Connection(Gamma);
![Gamma[i, j]](Maple/atlas/Templates/images/minimal_13.gif) | (2.1.7) |
Catenoid
Now we on a catenoid.
Domain(K);
 | (2.2.1) |
Declare 1-forms for coframe:
Forms(u[k]=1);
![{e[j], u[k]}](Maple/atlas/Templates/images/minimal_15.gif) | (2.2.2) |
Declare vector fields for frame:
Vectors(U[j]);
![{U[j]}](Maple/atlas/Templates/images/minimal_16.gif) | (2.2.3) |
Coframe declaration for the catenoid:
Coframe(u[1]=d(zeta),u[2]=d(phi));
![[u[1] = d(zeta), u[2] = d(phi)]](Maple/atlas/Templates/images/minimal_17.gif) | (2.2.4) |
Frame declaration for the catenoid:
Frame(U[k]);
![[U[1] = Diff(``, zeta), U[2] = Diff(``, phi)]](Maple/atlas/Templates/images/minimal_18.gif) | (2.2.5) |
Now we declare embedding of the catenoid into the Euclidean space
:
Mapping(f,K,R^3,
x=a*cosh(zeta/a)*cos(phi),
y=a*cosh(zeta/a)*sin(phi),
z=zeta);
 |
 | (2.2.6) |
After that we can calculate metric induced on the catenoid by the embedding:
Metric(G[K] = g &/ f);
![G[K] = `+`(`*`(`^`(cosh(`/`(`*`(zeta), `*`(a))), 2), `*`(`&.`(u[1], u[1]))), `*`(`^`(a, 2), `*`(`^`(cosh(`/`(`*`(zeta), `*`(a))), 2), `*`(`&.`(u[2], u[2])))))](Maple/atlas/Templates/images/minimal_22.gif) | (2.2.7) |
Calculation of the corresponding connection and curvature:
![omega[K][i, j]](Maple/atlas/Templates/images/minimal_23.gif) | (2.2.8) |
![Omega[K][i, j]](Maple/atlas/Templates/images/minimal_24.gif) | (2.2.9) |
Calculation of riemannian and ricci tensors of the embedded catenoid:
![R[K] = `+`(`-`(`&.`(`&^`(u[1], u[2]), `&^`(u[1], u[2]))))](Maple/atlas/Templates/images/minimal_25.gif) | (2.2.10) |
![ric[K] = `+`(`-`(`/`(`*`(`&.`(u[1], u[1])), `*`(`^`(cosh(`/`(`*`(zeta), `*`(a))), 2), `*`(`^`(a, 2))))), `-`(`/`(`*`(`&.`(u[2], u[2])), `*`(`^`(cosh(`/`(`*`(zeta), `*`(a))), 2)))))](Maple/atlas/Templates/images/minimal_26.gif) | (2.2.11) |
Calculation of ricci scalar of the embedded catenoid:
RicciScalar(s[K]);
![s[K] = `+`(`-`(`/`(`*`(2), `*`(`^`(cosh(`/`(`*`(zeta), `*`(a))), 4), `*`(`^`(a, 2))))))](Maple/atlas/Templates/images/minimal_27.gif) | (2.2.12) |
We can also calculate the invariants (the second fundamental form and mean curvature vector) of the embedding:
Thus the embedding is a minimal one (mean curvature vector is equal to zero):
Let us extract the second fundamental form:
| > | B[K]:=eval(Inv[K][secondForm]); |
Now we can calculate the corresponding tensor:
| > | 'B[K]'=add(add(`&.`(e[i],e[j],eval(B[K])[i,j]) ,i=1..2),j=1..2); |
Helicoid
Now current manifold is a helicoid.
Domain(H);
 | (2.3.1) |
Declare 1-forms for helicoid coframe:
Forms(v[k]=1);
![{e[j], u[k], v[k]}](Maple/atlas/Templates/images/minimal_38.gif) | (2.3.2) |
Declare vector fields for helicoid frame:
Vectors(V[j]);
![{V[j]}](Maple/atlas/Templates/images/minimal_39.gif) | (2.3.3) |
Coframe declaration for the helicoid:
Coframe(v[1]=d(theta),v[2]=d(tau));
![[v[1] = d(theta), v[2] = d(tau)]](Maple/atlas/Templates/images/minimal_40.gif) | (2.3.4) |
Frame declaration for the helicoid:
Frame(V[k]);
![[V[1] = Diff(``, theta), V[2] = Diff(``, tau)]](Maple/atlas/Templates/images/minimal_41.gif) | (2.3.5) |
Now we declare embedding of the helicoid into
:
Mapping(psi,H,R^3,
x=tau*cos(theta),
y=tau*sin(theta),
z=a*theta);
 |
 | (2.3.6) |
After that we can calculate metric induced on the helicoid by the embedding:
Metric(G[H] = g &/ psi);
![G[H] = `+`(`*`(`+`(`*`(`^`(tau, 2)), `*`(`^`(a, 2))), `*`(`&.`(v[1], v[1]))), `&.`(v[2], v[2]))](Maple/atlas/Templates/images/minimal_45.gif) | (2.3.7) |
Calculation of the corresponding connection and curvature:
![omega[H][i, j]](Maple/atlas/Templates/images/minimal_46.gif) | (2.3.8) |
![Omega[H][i, j]](Maple/atlas/Templates/images/minimal_47.gif) | (2.3.9) |
Calculation of riemannian and ricci tensors of the embedded helicoid:
![R[H] = `+`(`-`(`/`(`*`(`^`(a, 2), `*`(`&.`(`&^`(v[1], v[2]), `&^`(v[1], v[2])))), `*`(`+`(`*`(`^`(tau, 2)), `*`(`^`(a, 2)))))))](Maple/atlas/Templates/images/minimal_48.gif) | (2.3.10) |
![ric[H] = `+`(`-`(`/`(`*`(`^`(a, 2), `*`(`&.`(v[1], v[1]))), `*`(`+`(`*`(`^`(tau, 2)), `*`(`^`(a, 2)))))), `-`(`/`(`*`(`^`(a, 2), `*`(`&.`(v[2], v[2]))), `*`(`^`(`+`(`*`(`^`(tau, 2)), `*`(`^`(a, 2))), ...](Maple/atlas/Templates/images/minimal_49.gif) | (2.3.11) |
Calculation of ricci scalar of the embedded helicoid:
RicciScalar(s[H]);
![s[H] = `+`(`-`(`/`(`*`(2, `*`(`^`(a, 2))), `*`(`^`(`+`(`*`(`^`(tau, 2)), `*`(`^`(a, 2))), 2)))))](Maple/atlas/Templates/images/minimal_50.gif) | (2.3.12) |
Let us calculate the invariants (the second fundamental form and mean curvature vector) of the embedding:
| > | Inv[H]:=Invariants(psi); |
Thus the embedding is a minimal one (mean curvature vector is equal to zero):
Let us extract the second fundamental form:
| > | B[H]:=eval(Inv[H][secondForm]); |
![table( [( 1, 2 ) = [`+`(`-`(`/`(`*`(`^`(a, 2), `*`(sin(theta), `*`(E[1]))), `*`(`+`(`*`(`^`(tau, 2)), `*`(`^`(a, 2)))))), `/`(`*`(cos(theta), `*`(`^`(a, 2), `*`(E[2]))), `*`(`+`(`*`(`^`(tau, 2)), `*`(...](Maple/atlas/Templates/images/minimal_54.gif)
![table( [( 1, 2 ) = [`+`(`-`(`/`(`*`(`^`(a, 2), `*`(sin(theta), `*`(E[1]))), `*`(`+`(`*`(`^`(tau, 2)), `*`(`^`(a, 2)))))), `/`(`*`(cos(theta), `*`(`^`(a, 2), `*`(E[2]))), `*`(`+`(`*`(`^`(tau, 2)), `*`(...](Maple/atlas/Templates/images/minimal_55.gif) | (2.3.14) |
Now we can calculate the corresponding tensor:
| > | 'B[H]'=add(add(`&.`(e[i],e[j],eval(B[H])[i,j]) ,i=1..2),j=1..2); |
Sherk surface
Now current manifold Sherk surface.
Domain(S);
 | (2.4.1) |
Declare 1-forms:
Forms(xi[k]=1);
![{e[j], u[k], v[k], xi[k]}](Maple/atlas/Templates/images/minimal_60.gif) | (2.4.2) |
Declare vector fields:
Vectors(Xi[j]);
![{Xi[j]}](Maple/atlas/Templates/images/minimal_61.gif) | (2.4.3) |
Coframe declaration for the surface:
Coframe(xi[1]=d(alpha),xi[2]=d(beta));
![[xi[1] = d(alpha), xi[2] = d(beta)]](Maple/atlas/Templates/images/minimal_62.gif) | (2.4.4) |
Frame declaration for the surface:
Frame(Xi[k]);
![[Xi[1] = Diff(``, alpha), Xi[2] = Diff(``, beta)]](Maple/atlas/Templates/images/minimal_63.gif) | (2.4.5) |
Now we declare embedding of the surface into
:
Mapping(h,S,R^3,
x=alpha,
y=beta,
z=1/a*ln(cos(a*alpha)/cos(a*beta)));
 |
 | (2.4.6) |
After that we can calculate metric induced on the surface by the embedding:
Metric(G[S] = g &/ h);
![G[S] = `+`(`/`(`*`(`&.`(xi[1], xi[1])), `*`(`^`(cos(`*`(a, `*`(alpha))), 2))), `-`(`/`(`*`(sin(`*`(a, `*`(alpha))), `*`(sin(`*`(a, `*`(beta))), `*`(`&.`(xi[1], xi[2])))), `*`(cos(`*`(a, `*`(beta))), `...](Maple/atlas/Templates/images/minimal_67.gif)
![G[S] = `+`(`/`(`*`(`&.`(xi[1], xi[1])), `*`(`^`(cos(`*`(a, `*`(alpha))), 2))), `-`(`/`(`*`(sin(`*`(a, `*`(alpha))), `*`(sin(`*`(a, `*`(beta))), `*`(`&.`(xi[1], xi[2])))), `*`(cos(`*`(a, `*`(beta))), `...](Maple/atlas/Templates/images/minimal_68.gif) | (2.4.7) |
Calculation of the corresponding connection and curvature:
![omega[S][i, j]](Maple/atlas/Templates/images/minimal_69.gif) | (2.4.8) |
![Omega[S][i, j]](Maple/atlas/Templates/images/minimal_70.gif) | (2.4.9) |
Calculation of riemannian and ricci tensors of the embedded surface:
![R[S] = `/`(`*`(`^`(a, 2), `*`(`&.`(`&^`(xi[1], xi[2]), `&^`(xi[1], xi[2])))), `*`(`+`(`-`(`*`(`^`(cos(`*`(a, `*`(alpha))), 2))), `-`(`*`(`^`(cos(`*`(a, `*`(beta))), 2))), `*`(`^`(cos(`*`(a, `*`(beta))...](Maple/atlas/Templates/images/minimal_71.gif) | (2.4.10) |
Calculation of ricci scalar of the embedded surface:
RicciScalar(s[S]);
![s[S] = `+`(`-`(`/`(`*`(2, `*`(`^`(a, 2), `*`(`^`(cos(`*`(a, `*`(alpha))), 2), `*`(`^`(cos(`*`(a, `*`(beta))), 2))))), `*`(`^`(`+`(`-`(`*`(`^`(cos(`*`(a, `*`(alpha))), 2))), `-`(`*`(`^`(cos(`*`(a, `*`(...](Maple/atlas/Templates/images/minimal_76.gif) | (2.4.12) |
Let us calculate the invariants (the second fundamental form and mean curvature vector) of the embedding:
Thus the embedding is a minimal one (mean curvature vector is equal to zero):
Let us extract the second fundamental form:
| > | B[S]:=eval(Inv[S][secondForm]); |
Now we can calculate the corresponding tensor:
| > | 'B[S]'=add(add(`&.`(e[i],e[j],eval(B[S])[i,j]) ,i=1..2),j=1..2); |
Looking through the results
Now we can look through the calculated Ricci scalars:

 | (2.5.1) |
The same for curvature 2-forms:
And for the second fundamental forms:
Returning on a domain
Where are we?
 | (2.6.1) |
Thus we are on the Sherk surface.
We can return on any previous domain easily. Let us return on the catenoid:
 | (2.6.2) |
Suppose we wish to calculate lie derivative of the corresponding metric -
:
| > | 'L[U[j]](G[K])'=L[U[j]](G[K]); |
![L[U[j]](G[K]) = `+`(`/`(`*`(2, `*`(cosh(`/`(`*`(zeta), `*`(a))), `*`(sinh(`/`(`*`(zeta), `*`(a))), `*`(delta[1, j], `*`(`&.`(u[1], u[1])))))), `*`(a)), `*`(2, `*`(a, `*`(cosh(`/`(`*`(zeta), `*`(a))), ...](Maple/atlas/Templates/images/minimal_122.gif)
![L[U[j]](G[K]) = `+`(`/`(`*`(2, `*`(cosh(`/`(`*`(zeta), `*`(a))), `*`(sinh(`/`(`*`(zeta), `*`(a))), `*`(delta[1, j], `*`(`&.`(u[1], u[1])))))), `*`(a)), `*`(2, `*`(a, `*`(cosh(`/`(`*`(zeta), `*`(a))), ...](Maple/atlas/Templates/images/minimal_123.gif) | (2.6.3) |
Thus
is Killing vector field on the catenoid.
Let us jump on the helicoid and do the same:
 | (2.6.4) |
| > | 'L[V[i]](G[H])'=L[V[i]](G[H]); |
![L[V[i]](G[H]) = `+`(`*`(2, `*`(tau, `*`(delta[2, i], `*`(`&.`(v[1], v[1]))))))](Maple/atlas/Templates/images/minimal_126.gif) | (2.6.5) |
Obviously that
is Killing vector field on the helicoid.
Where are we?
 | (2.6.6) |
On the helicoid.