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

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : DifferentialGeometry/Tensor/SubspaceType

Tensor[SubspaceType] - determine the signature of the metric restricted to a subspace of the tangent space

Calling Sequences

     SubspaceType(g, S, pt, output)

Calling Sequences

   g       - a metric tensor g on an n-dimensional manifold M. The signature of g is arbitrary

   S       - a list of vectors defining a subspace S of the tangent space of M

   pt      - (optional) a list of equations specifying the coordinates of a point p of M

   output  - (optional) a keyword argument, one of "Matrix", "Riemannian", "PseudoRiemannian", "Null"

 

Description

Examples

See Also

Description

• 

Let pM and let S be a k-dimensional subspace of the tangent space TpM. Let Y1,Y2, ..., Yk be a basis for S and let h be the k×k matrix with components

hij=gpYi,Yj,  i,j=1,2,..,k .

 

   The matrix h defines the metric on the subspace S induced by g.  The subspace S is called "Riemannian" if h is positive or negative definite; "PseudoRiemannian" if h is indefinite and non-degenerate; and "Null" if h is degenerate (deth=0).

• 

Let S be the span of m vectors X1,X2,...,Xm; these vectors need not be linearly independent. The command SubspaceType(g, S) will attempt to determine the type of the subspace S at a generic point. It will return a sequence k, T, where k is the dimension of S and T is one of {"Riemannian", "PseudoRiemannian", "Null", Fail}. The value Fail typically indicates the subspace type is varying with respect to coordinates or parameters.

• 

With the optional argument pt, the type of the subspace S at pt is determined. Specific properties of the coordinates of the point pt can be specified using assuming.

• 

With the keyword argument output = "Matrix", the values of the matrix h and the basis used to compute h, evaluated at the point p, are returned.

• 

With the keyword argument output = "Riemannian", output = "PseudoRiemannian" or output = "Null", the command returns the sequence k, TF, where k is the dimension of the subspace S and TF is true or false.

• 

The user can trace the program branching by setting infolevel[SubspaceType] := 2.

• 

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

Examples

withDifferentialGeometry:withTensor:

 

For Examples 1 -- 4 we use coordinates t,x,y,z and the metric g.

DGsetupt,x,y,z,M

frame name: M

(2.1)
M > 

gevalDGdt&tdtdx&tdxdy&tdydz&tdz

g:=dtdtdxdxdydydzdz

(2.2)

Example 1.

M > 

S1D_x,D_y

S1:=D_x,D_y

(2.3)
M > 

SubspaceTypeg,S1

2,Riemannian

(2.4)
M > 

S2D_t,D_x

S2:=D_t,D_x

(2.5)
M > 

SubspaceTypeg,S2

2,PseudoRiemannian

(2.6)
M > 

S3D_tD_x,D_y

S3:=D_tD_x,D_y

(2.7)
M > 

SubspaceTypeg,S3

2,Null

(2.8)

 

Example 2.

Here we give a simple example where the subspace type depends upon the value of the coordinates t and x.

M > 

StD_txD_x,D_y

S:=D_ttD_xx,D_y

(2.9)

 

Because the subspace type depends upon t and x, the first call to SubspaceType fails.

M > 

SubspaceTypeg,S

2,Fail

(2.10)

 

Specify the coordinates of a point and set the output option to "Matrix" to find the matrix form of the metric restricted to the subspace S.

M > 

SubspaceTypeg,S,t=a,x=b,y=c,z=d,output=Matrix

 

By inspection, we see that there are 3 possibilities:

Case 1. If a=b or a=b, then the subspace type is "Null".

M > 

SubspaceTypeg,S,t=a,x=a,y=c,z=d

2,Null

(2.11)
M > 

SubspaceTypeg,S,t=a,x=a,y=c,z=d

2,Null

(2.12)

 

Case 2. If a2>b2, then the subspace type is "PseudoRiemannian".

M > 

SubspaceTypeg&comma;S&comma;t=a&comma;x=b&comma;y=c&comma;z=dassumingb2<a2

2&comma;PseudoRiemannian

(2.13)

 

Case 3. If a2<b2, then the subspace type is "Riemannian".

M > 

SubspaceTypeg&comma;S&comma;t=a&comma;x=b&comma;y=c&comma;z=dassuminga2<b2

2&comma;Riemannian

(2.14)

 

Example 3.

With the keyword argument output = "Riemannian", output = "PseudoRiemannian", or output = "Null", the command returns the sequence k, TF.

M > 

SubspaceTypeg&comma;S2&comma;output=Null

2&comma;false

(2.15)

 

Example 4.

The user can trace the program branching by setting infolevel[SubspaceType] := 2.

M > 

infolevelSubspaceType2

infolevelDifferentialGeometry:-Tensor:-SubspaceType:=2

(2.16)
M > 

SubspaceTypeg&comma;S2

The orbit type is "Null" if the induced metric on the orbit is degenerate
The orbit type is "Riemannian" if the induced metric on the orbit is positive or negative definite
The orbit type is "PseudoRiemannian" if the induced metric on the orbit is non-degenerate and indefinite
   The matrix h defining the induced metric is:

   Matrix(2, 2, [[1,0],[0,-1]])
The determinant of the matrix h is: -1

2&comma;PseudoRiemannian

(2.17)
M > 

infolevelSubspaceType0

infolevelDifferentialGeometry:-Tensor:-SubspaceType:=0

(2.18)

 

Example 5.

The command SubspaceType works in all dimensions.

 

M > 

DGsetupu&comma;v&comma;t&comma;x&comma;y&comma;z&comma;M

frame name: M

(2.19)
M > 

gevalDGdu&sdv+dt&tdtdx&tdxdy&tdydz&tdz

g:=12dudv+12dvdu+dtdtdxdxdydydzdz

(2.20)
M > 

S1D_u&comma;D_x&comma;D_y

S1:=D_u&comma;D_x&comma;D_y

(2.21)
M > 

SubspaceTypeg&comma;S1

The orbit type is "Null" if the induced metric on the orbit is degenerate

The orbit type is "Riemannian" if the induced metric on the orbit is positive or negative definite
The orbit type is "PseudoRiemannian" if the induced metric on the orbit is non-degenerate and indefinite
   The matrix h defining the induced metric is:
   Matrix(3, 3, [[0,0,0],[0,-1,0],[0,0,-1]])
The determinant of the matrix h is: 0

3&comma;Null

(2.22)
M > 

S2D_t&comma;D_x&comma;D_y&comma;D_z

S2:=D_t&comma;D_x&comma;D_y&comma;D_z

(2.23)
M > 

SubspaceTypeg&comma;S2

The orbit type is "Null" if the induced metric on the orbit is degenerate

The orbit type is "Riemannian" if the induced metric on the orbit is positive or negative definite
The orbit type is "PseudoRiemannian" if the induced metric on the orbit is non-degenerate and indefinite
   The matrix h defining the induced metric is:
   Matrix(4, 4, [[1,0,0,0],[0,-1,0,0],[0,0,-1,0],[0,0,0,-1]])
The determinant of the matrix h is: -1

4&comma;PseudoRiemannian

(2.24)

 

The list of vectors specifying the subspace need not be linearly independent.

M > 

S3D_x&comma;D_y&comma;yD_xxD_y

S3:=D_x&comma;D_y&comma;yD_xxD_y

(2.25)
M > 

SubspaceTypeg&comma;S3

2&comma;Riemannian

(2.26)
M > 

SubspaceTypeg&comma;S3&comma;output=Matrix

See Also

DifferentialGeometry, Tensor, assuming, infolevel, IsDefinite