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

Online Help

All Products    Maple    MapleSim


Tensor[GRQuery] - check various geometric properties of fields on a spacetime

Calling Sequences

     GRQuery(arg1, arg2, ..., keyword)

Parameters

   arg1    - (optional) other arguments

   keyword - keyword string

 

Description

Examples

See Also

Description

• 

The GRQuery command can be used to check various properties of metrics and other tensor and spinor fields defined on a spacetime manifold. Admissible keyword strings are "NullTetrad", "OrthonormalFrame", "OrthonormalCoframe", "OrthonormalTetrad", "PrincipalNullDirection" "RecurrentTensor".

• 

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

Examples

withDifferentialGeometry:withTensor:

 

Example 1.

Let g be a metric on a 4-dimensional manifold with signature 1,1,1,1. A list of 4 vectors E1,E2,E3,E4 defines an orthonormal tetrad if


gE1,E1=1, gE2,E2=gE3,E3=gE4,E4=1.

 

and all other inner products vanish. The command GRQuery, with the keyword "OrthonormalTetrad", can be used to check that a list of 4 vectors defines an orthonormal tetrad.

 

First create manifold M with coordinates t,x,y,z.

M > 

DGsetupt,x,y,z,M

frame name: M

(2.1)

 

Define a spacetime metric g on M.

M > 

gevalDGdt&tdtdx&tdxdy&tdydz&tdz

g:=dtdtdxdxdydydzdz

(2.2)

 

Define a tetrad F1 on M. Verify that F1 is an orthonormal tetrad with respect to the metric g.

M > 

F1D_t,D_x,D_y,D_z

F1:=D_t,D_x,D_y,D_z

(2.3)
M > 

GRQueryF1,g,OrthonormalTetrad

true

(2.4)

 

Note that the same vectors, listed in a different order, do not necessarily define an orthonormal tetrad.

M > 

F2D_x,D_y,D_z,D_t

F2:=D_x,D_y,D_z,D_t

(2.5)

 

M > 

GRQueryF2,g,OrthonormalTetrad

false

(2.6)

 

Example 2.

A list of 4 vectors L, N, M, M defines a (complex) null tetrad if M is the complex conjugate of M,

 

gL,N=1,  gM, M=1,

 

and all other inner products vanish. In particular, the vectors L, N, M, M are all null vectors. The command GRQuery, with the keyword "NullTetrad", can be used to check that a list of 4 vectors defines a null tetrad.

 

M > 

NevalDG12212D_t+12212D_z,12212D_t12212D_z,12212D_x+12I212D_y,12212D_x12I212D_y

N:=22D_t+22D_z,22D_t22D_z,22D_x+I22D_y,22D_xI22D_y

(2.7)
M > 

GRQueryN,g,NullTetrad

true

(2.8)

 

Example 3.

To check that a given frame or co-frame is orthonormal in other dimensions or with different metric signatures, the keywords "OrthonormalFrame", "OrthonormalCoframe" are used.

First create a 3-manifold M with coordinates x,y,z.

M > 

DGsetupx,y,z,M

frame name: M

(2.9)

 

Define a Riemannian metric g on M.

M > 

g3evalDGdx&tdx+dy&tdy+dz&tdz

g3:=dxdx+dydy+dzdz

(2.10)

 

Define a frame F3 on M with respect to the metric g. Verify that F3 is an orthonormal frame.

M > 

F3D_x,D_y,D_z

F3:=D_x,D_y,D_z

(2.11)

GRQueryF3,g3,OrthonormalFrame

true

(2.12)

 

Define a co-frame Ω3 with respect to the metric g. Verify that Ω3 is an orthonormal co-frame.

M > 

Ω3dx,dy,dz

Ω3:=dx,dy,dz

(2.13)

GRQueryΩ3,g3,OrthonormalCoframe

true

(2.14)

 

One can use an optional 3rd argument, a square matrix A, to specify the orthogonality relations to be verified - if F=E1, E2,...,En, then GRQuery(F, g, A, "OrthonormalFrame") returns true if gEi,Ej=Aij . For example:

M > 

g3evalDG2dx&sdy+dz&tdz

g3:=dxdy+dydx+dzdz

(2.15)
M > 

F3D_x,D_y,D_z

F3:=D_x,D_y,D_z

(2.16)
M > 

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

M > 

GRQueryF3,g3,A,OrthonormalFrame

true

(2.17)

 

Example 4.

The keyword argument "PrincipalNullDirection" will test to see if a given vector is a principal null direction for a given metric. The Weyl tensor of the metric is a required argument.

M > 

DGsetupt,x,y,z,M

frame name: M

(2.18)
M > 

g4DifferentialGeometry:-evalDGdx&tdx+dy&tdy+12exp2xdz&tdzdt+expxdz&sdt+expxdz

g4:=dtdtⅇxdtdz+dxdx+dydyⅇxdzdt12ⅇ2xdzdz

(2.19)
M > 

W4WeylTensorg4:

 

The metric g4 is of Petrov type D and therefore admits two independent principal null directions.

M > 

PND1evalDGD_tD_y

PND1:=D_tD_y

(2.20)
M > 

GRQueryPND1,g4,W4,PrincipalNullDirection

true

(2.21)
M > 

PND2evalDGD_t+D_y

PND2:=D_t+D_y

(2.22)
M > 

GRQueryPND1,g4,W4,PrincipalNullDirection

true

(2.23)

 

Example 5.

The keyword argument "RecurrentTensor" will test to see if a given tensor is a recurrent tensor with respect to a given metric or connection. If true, then the associated eigen-form is also returned.

 

M > 

DGsetupt,x,y,z,M

frame name: M

(2.24)
M > 

g5evalDGt2dx&tdxx2dy&tdy+dz&tdz+dt&sdx

g5:=12dtdx+12dxdt+t2dxdxx2dydy+dzdz

(2.25)
M > 

TevalDGdx&tdydy&tdx+dx&tdzx

T:=dxdy+dxdzxdydx

(2.26)
M > 

GRQueryT,g5,RecurrentTensor

true,2tx1dxx

(2.27)

See Also

DifferentialGeometry, Tensor, DGGramSchmidt, NullTetrad, PetrovType, PrincipalNullDirections, OrthonormalTetrad, RecurrentTensors,  SpinorInnerProduct, SolderForm, TensorInnerProduct