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

Online Help

All Products    Maple    MapleSim


DifferentialGeometry

  

GetComponents

  

find the coefficients of a vector, differential form or tensor with respect to a list of vectors, differential forms or tensors

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

GetComponents(T, S, options)

Parameters

T

-

a vector, differential form or tensor on a manifold M or a list of such

S

-

a list of vectors, differential form or tensors options : method = "real", trueorfalse = "on"/"off", initialpointlist = [pt1, pt2, ...]

Description

• 

If T is a vector, differential form, or tensor and S = [S1, S2, S3, ...] is a list of like objects, then the procedure GetComponents(T, S) will return a list of Maple expressions C = [c1, c2, c3, ...] such that T = c1*S1 + c2*S2 + c3*S3 + ... .  The expressions C are called the coefficients of T with respect to the elements of S.  If the elements of S are linearly independent, then the coefficients C, if they exist, are unique. If the coefficients C cannot be found, that is, if T is linearly independent from the elements of S, then GetComponents(T, S) will return [].

• 

If T = [T1, T2, T3, ...] is a list of vectors, differential form or tensors, then GetComponents(T, S) will return a list of lists C = [C1, C2, C3, ...], where the Ci are the coefficients of T with respect to the elements of S.

• 

If method = "real", then GetComponents(T, S) will determine if T is a linear combination of the elements of S with real numbers (i.e. constants) as coefficients.

• 

If trueorfalse = "on" then GetComponents will simply return true if T is a linear combination of S and false otherwise.

• 

Here are the details of how the GetComponents procedure works with the option method = "real".  Let us just consider the question of when a function g(x, y) is a constant linear combination of the functions f1(x, y), f2(x, y), f3(x, y),  ..., that is, g(x, y) = c1*f1(x, y) + c2*f2(x, y) + c3*f3(x, y) + ... (*). The first approach is to use the Maple random number generator to pick many numerical values [xi, yi] for the coordinates [x, y], substitute these values into (*) to obtain a large overdetermined system, and use LinearAlgebra:-LinearSolve to find the c1, c2, c3, ....  This works well when the fi(x, y) are rational functions (except for the remote possibility that a value of [x, y] is chosen to be a singular point for one of the functions).  The second method is to take repeated derivatives of (*) with respect to all the variables and evaluate the results at a few select user specified points pt1, pt2.  This too will generate a large overdetermined system which can then be solved for the c1, c2, c3, ....  If the GetComponents command is called with the initialpointlist = [pt1, pt2 , ..] where pti = [ xi, yi], then the second method is used.  The second approach works better in cases where the functions are transcendental.

• 

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

Examples

withDifferentialGeometry:

 

Create a 3-dimensional manifold M with coordinates [x, y, z, w].

DGsetupx,y,z,w,M:

 

Example 1.

Express the vector X as a linear combination of the vectors S1.  Check the result using DGzip.

X1evalDGx2D_xyzD_y+z3D_w

X1x2D_xzyD_y+z3D_w

(1)

S1evalDGD_x,D_y,D_z,D_w

S1D_x,D_y,D_z,D_w

(2)

CGetComponentsX1,S1

Cx2,zy,0,z3

(3)

Y1DGzipC,S1,plus

Y1x2D_xzyD_y+z3D_w

(4)

Y1&minusX1

0D_x

(5)

 

Example 2.

Show that the 2-form omega2 is linearly independent of the 2-forms in S2.

ω2evalDGdx&wdy+dy&wdw

ω2dxdy+dydw

(6)

S2evalDGdx&wdz+dy&wdw,dx&wdz+dx&wdw,dy&wdz+dx&wdw,dx&wdz+dz&wdw

S2dxdz+dydw,dxdz+dxdw,dxdw+dydz,dxdz+dzdw

(7)

GetComponentsω2,S2

(8)

GetComponentsω2,S2,trueorfalse=on

false

(9)

 

Example 3.

Express the 1-forms in Omega as linear combinations of the 1-forms in S3.

ΩevalDGdx+dy,dy+dz,dz+dw,dx+dy+dz+dw

Ωdx+dy,dy+dz,dz+dw,dx+dy+dz+dw

(10)

S3evalDGdx,dy,dz,dw

S3dx,dy,dz,dw

(11)

GetComponentsΩ,S3

1,1,0,0,0,1,1,0,0,0,1,1,1,1,1,1

(12)

 

Example 4.

Show that the vector X is a real linear combination of the vectors in S4 but not a real linear combination of the first 3 vectors in S4

X4evalDGx+3D_xy+x+1D_y

X4x+3D_xy+x+1D_y

(13)

S4evalDGD_x,D_y,xD_x,yD_x,xD_y,yD_y

S4D_x,D_y,xD_x,yD_x,xD_y,yD_y

(14)

GetComponentsX4,S4,method=real

3,−1,1,0,−1,−1

(15)

GetComponentsX4,S41..3,method=real

(16)

 

Example 5.

Show that the 1-form omega is a real linear combination of the 1-forms in S5.

withDifferentialGeometry:

DGsetupx,y,z,w,M

frame name: M

(17)

ωevalDGsinxdx+cosydy

ωsinxdx+cosydy

(18)

S5evalDGsinxdx,cosxdx,sinydx,cosydx,sinxdy,cosxdy,sinydy,cosydy

S5sinxdx,cosxdx,sinydx,cosydx,sinxdy,cosxdy,sinydy,cosydy

(19)

GetComponentsω,S5,method=real,initialpointlist=x=0,y=0,x=0,y=π

1,0,0,0,0,0,0,1

(20)

See Also

DifferentialGeometry

DGbasis

DGzip