Transformation - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


DifferentialGeometry

  

Transformation

  

create a transformation or mapping from one manifold to another

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

Transformation(M, N, Eq)

Transformation(M, N, A)

Parameters

M

-

an unassigned Maple name or string, the domain for the transformation

N

-

an unassigned Maple name or string, the range for the transformation

Eq

-

a list of equations specifying each range variable as a function of the domain variables

A

-

a Matrix

Description

• 

The Transformation command creates an internal data structure for a mapping between two frames.  This internal data structure contains information regarding the transformation (domain, range, prolongation order, transformation type (projectable, point, contact, differential substitution etc.), and the Jacobian of the transformation).  Once a mapping between frames has been encoded using the Transformation command, the mapping can then be using to transform vectors, differential forms and tensors using the Pushforward, Pullback, and PushPullTensor commands in the DifferentialGeometry package and in the Tensor subpackage.

• 

If M and N are the names of initialized Lie algebras, then the second calling sequence can be used to define a linear transformation from M to N with matrix representation A.

• 

This command is part of the DifferentialGeometry package, and so can be used in the form Transformation(...) only after executing the command with(DifferentialGeometry).  It can always be used in the long form DifferentialGeometry:-Transformation.

Examples

withDifferentialGeometry:

 

Define 4 different manifolds:

DGsetupt,R:DGsetupx,y,M:DGsetupu,v,N:DGsetupr,θ,P:DGsetupx,y,z,Q:

 

Example 1.

Define a transformation from R to Q, that is, the parametric representation of a space-curve.

T1TransformationR,Q,x=2tsint,y=3tcost,z=tt+1

T1x=2tsint,y=3tcost,z=tt+1

(1)

 

Example 2.

Define a transformation presenting the mapping in the complex plane z -> w = z^3.

wevalcx+Iy3

wI3x2yy3+x33xy2

(2)

We use the real and imaginary parts of w to define the components of the transformation.  We can set up the transformation as a map from M to N or as a map from M to itself.

T2TransformationM,N,u=evalcw,v=evalcw

T2u=x33xy2,v=3x2yy3

(3)

T3TransformationM,M,x=evalcw,y=evalcw

T3x=x33xy2,y=3x2yy3

(4)

 

Example 3.

Define a transformation encoding the change from polar to Cartesian coordinates.

T4TransformationP,M,x=rcosθ,y=rsinθ

T4x=rcosθ,y=rsinθ

(5)

 

Example 4.

Define a transformation from P to Q which parameterizes the hyperboloid of revolution z^2 = 1 + x^2 + y^2.

T5TransformationP,Q,x=rcosθ,y=rθ,z=sqrt1+x2

T5x=rcosθ,y=rθ,z=x2+1

(6)

 

Example 5.

Define the canonical projection map [x, y, z] -> [x, y] from Q to M.

T6TransformationQ,M,x=x,y=y

T6x=x,y=y

(7)

 

Example 6.

The command DGinfo can be used to access various attributes of a transformation.

T2

u=x33xy2,v=3x2yy3

(8)

Tools:-DGinfoT2,DomainFrame

M

(9)

Tools:-DGinfoT2,RangeFrame

N

(10)

Tools:-DGinfoT2,JacobianMatrix

3x23y26xy6xy3x23y2

(11)

 

Example 7.

Where an adapted frame is used, the Jacobian is computed relative to that frame. Here is a simple example:

ChangeFrameM

Q

(12)

FrD_x+yD_y,D_y

FrD_yy+D_x,D_y

(13)

FrDataFrameDataFr,M1

FrDataE1,E2=E2

(14)

DGsetupFrData,verbose

The following coordinates have been protected:

x,y

The following vector fields have been defined and protected:

E1,E2

The following differential 1-forms have been defined and protected:

Θ1,Θ2

frame name: M1

(15)

T7TransformationM,M,x=2x+y,y=x+3y

T7x=2x+y,y=x+3y

(16)

J7Tools:-DGinfoT7,JacobianMatrix

J721−13

(17)

T8TransformationM,M1,x=2x+y,y=x+3y

T8x=2x+y,y=x+3y

(18)

J8Tools:-DGinfoT8,JacobianMatrix

J8212x6y1x3y+3

(19)

 

Example 8.

Here we use the second calling sequence to define a Lie algebra homomorphism between two Lie algebras. See the LieAlgebraData help page for information on creating Lie algebras with Maple.

withLieAlgebras:

 

Initialize a Lie algebra Alg1 which will serve as the domain for the Lie algebra homomorphism.

L1LieAlgebraDatax1,x4=x1,x2,x4=x1+x2,x3,x4=x2+x3,x1,x2,x3,x4,Alg1

L1e1,e4=e1,e2,e4=e1+e2,e3,e4=e2+e3

(20)

DGsetupL1

Lie algebra: Alg1

(21)

Initialize a Lie algebra Alg2 which will serve as the range for the Lie algebra homomorphism.

L2LieAlgebraDatax1,x2=x2x3,x1,x3=x3,x1,x2,x3,Alg2

L2e1,e2=e2e3,e1,e3=e3

(22)

DGsetupL2,f,θ

Lie algebra: Alg2

(23)

Define a matrix which will determine the linear transformation from Alg1 to Alg2.

AMatrix0,0,0,1,0,0,1,0,0,1,0,1

A00010010010−1

(24)

φTransformationAlg1,Alg2,A

φe1,0f1,e2,f3,e3,f2,e4,f1f3

(25)

The output indicates that phi sends e1 to 0f1, e2 to f3, e3 to f2, and e4 to f1 - f3.  The LieAlgebras Query command allows us to check that phi is a Lie algebra homomorphism.

QueryAlg1,Alg2,A,Homomorphism

true

(26)

See Also

DifferentialGeometry

Tools

ApplyTransformation

ComposeTransformations

DGinfo

InverseTransformation

Pullback

Pushforward

PushPullTensor