Examples:
The following example shows how the pullback operator can be used.
Let M be 2-dimentional sphere
and N be 3-dimensional Euclidean space
. Let
:
be standard embedding of sphere
into
.
This procedure is presented just for appropriate simplification (see atlas[simp]).
`atlas/simp`:=proc(a) normal(a);subs({cos(theta)^2=1-sin(theta)^2,cos(phi)^2=1-sin(phi)^2},%);normal(%); factor(%) end;
Declare 1-forms e[j] and u[k] for corresponding coframes:
![{e[j], u[k]}](Maple/atlas/help/images/Restriction_22.gif) | (2.2) |
Declare vectors for corresponding frames:
![{E[j], U[k]}](Maple/atlas/help/images/Restriction_23.gif) | (2.3) |
Declare Euclidean space -
:
 | (2.4) |
Declare coframe on
:
| > | 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/help/images/Restriction_27.gif) | (2.5) |
Declare frame on
:
Frame(E[j]);
![[E[1] = Diff(``, x), E[2] = Diff(``, y), E[3] = Diff(``, z)]](Maple/atlas/help/images/Restriction_29.gif) | (2.6) |
Declare metric on
(standard 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/help/images/Restriction_31.gif) | (2.7) |
Declare sphere -
:
 | (2.8) |
Declare coframe on
:
| > | Coframe(u[1]=d(theta),u[2]=d(phi)); |
![[u[1] = d(theta), u[2] = d(phi)]](Maple/atlas/help/images/Restriction_35.gif) | (2.9) |
Declare frame on
:
Frame(U[j]);
![[U[1] = Diff(``, theta), U[2] = Diff(``, phi)]](Maple/atlas/help/images/Restriction_37.gif) | (2.10) |
Declare definite mapping
:
:
| > | Mapping(F,S^2,R^3, x=sin(theta)*cos(phi), y=sin(theta)*sin(phi), z=cos(theta)); |
 |
 | (2.11) |
Verify that we are on the sphere:
Domain();
 | (2.13) |
Calculate metric induced on the sphere using pullback operator &/:
Metric(G = g &/ F);
![G = `+`(`&.`(u[1], u[1]), `*`(`^`(sin(theta), 2), `*`(`&.`(u[2], u[2]))))](Maple/atlas/help/images/Restriction_51.gif) | (2.14) |
One can calculate pullback of any [0,k] tensor field on
under the mapping:
pullback of coframe 1-forms:
'e[1]&/F'=e[1]&/F;
'e[2]&/F'=e[2]&/F;
![`&/`(e[1], F) = `+`(`*`(cos(theta), `*`(u[1], `*`(cos(phi)))), `-`(`*`(sin(theta), `*`(sin(phi), `*`(u[2])))))](Maple/atlas/help/images/Restriction_53.gif) |
![`&/`(e[2], F) = `+`(`*`(cos(theta), `*`(u[1], `*`(sin(phi)))), `*`(sin(theta), `*`(cos(phi), `*`(u[2]))))](Maple/atlas/help/images/Restriction_54.gif) | (2.15) |
pullback of 0-forms (scalars):
'(x^2+y^2)&/F'=(x^2+y^2)&/F;
'(y/x)&/F'=(y/x)&/F;
 |
 | (2.16) |
pullback of "rotation" 1-form:
'(x*d(y)-y*d(x))&/F'=(x*d(y)-y*d(x))&/F;
![`&/`(`+`(`*`(x, `*`(d(y))), `-`(`*`(y, `*`(d(x))))), F) = `*`(`^`(sin(theta), 2), `*`(u[2]))](Maple/atlas/help/images/Restriction_57.gif) | (2.17) |
pullback of tensor product d(x)&.d(z):
'(d(x)&.d(z))&/F'=(d(x)&.d(z))&/F;
![`&/`(`&.`(d(x), d(z)), F) = `+`(`-`(`*`(sin(theta), `*`(cos(theta), `*`(cos(phi), `*`(`&.`(u[1], u[1])))))), `*`(`^`(sin(theta), 2), `*`(sin(phi), `*`(`&.`(u[2], u[1])))))](Maple/atlas/help/images/Restriction_58.gif)
![`&/`(`&.`(d(x), d(z)), F) = `+`(`-`(`*`(sin(theta), `*`(cos(theta), `*`(cos(phi), `*`(`&.`(u[1], u[1])))))), `*`(`^`(sin(theta), 2), `*`(sin(phi), `*`(`&.`(u[2], u[1])))))](Maple/atlas/help/images/Restriction_59.gif) | (2.18) |
pullback of exterior product d(x)&^d(y):
'(d(x)&^d(y))&/F'=(d(x)&^d(y))&/F;
![`&/`(`&^`(d(x), d(y)), F) = `*`(cos(theta), `*`(sin(theta), `*`(`&^`(u[1], u[2]))))](Maple/atlas/help/images/Restriction_60.gif) | (2.19) |
Some more examples
Declare abstract mapping between
and
:
 |
 | (2.20) |
pullback of exterior product d(x)&^d(y) under abstract mapping
:
'(d(x)&^d(y))&/Phi'=(d(x)&^d(y))&/Phi;
![`&/`(`&^`(d(x), d(y)), Phi) = `*`(`+`(`-`(`*`(Diff(x, phi), `*`(Diff(y, theta)))), `*`(Diff(x, theta), `*`(Diff(y, phi)))), `*`(`&^`(u[1], u[2])))](Maple/atlas/help/images/Restriction_66.gif)
![`&/`(`&^`(d(x), d(y)), Phi) = `*`(`+`(`-`(`*`(Diff(x, phi), `*`(Diff(y, theta)))), `*`(Diff(x, theta), `*`(Diff(y, phi)))), `*`(`&^`(u[1], u[2])))](Maple/atlas/help/images/Restriction_67.gif) | (2.21) |
pullback of coframe 1-forms
'e[1]&/Phi'=e[1]&/Phi;
'e[2]&/Phi'=e[2]&/Phi;
![`&/`(e[1], Phi) = `+`(`*`(Diff(x, phi), `*`(u[2])), `*`(Diff(x, theta), `*`(u[1])))](Maple/atlas/help/images/Restriction_68.gif) |
![`&/`(e[2], Phi) = `+`(`*`(Diff(y, phi), `*`(u[2])), `*`(Diff(y, theta), `*`(u[1])))](Maple/atlas/help/images/Restriction_69.gif) | (2.22) |
Who is who?
Who();
![piecewise(Domains, {`*`(`^`(R, 3)), `*`(`^`(S, 2))}, Mappings, {F, Phi}, Tensors, {G, g, E[j], U[k], e[j], u[k]}, Forms, {e[j], u[k]}, Constants, {`+`(`-`(I)), I, Pi, _Z, Catalan}, Functions, {})](Maple/atlas/help/images/Restriction_70.gif) | (2.23) |