calculate the covariantly constant tensors with respect to a given metric or connection - Maple Help

Online Help

All Products    Maple    MapleSim

Home : Support : Online Help : Mathematics : DifferentialGeometry : Tensor : DifferentialGeometry/Tensor/CovariantlyConstantTensors

Tensor[CovariantlyConstantTensors] - calculate the covariantly constant tensors with respect to a given metric or connection

Calling Sequences

    CovariantlyConstantTensors(g, T, options)

    CovariantlyConstantTensors( Γ, T, options )


  g       - a metric tensor on a manifold M

  Γ       - a connection, either an affine connection on M or a connection on a vector bundle E over M 

  T       - a list of vector fields, differential forms or tensors (all of the same type)

  options - any of the following keywords arguments: ansatz, auxiliaryequations, coefficientvariables, unknowns, parameters, output




Let  denote covariant differentiation with respect to the given connection Γ, or with respect to the Christoffel connection defined by the metric g. A tensor field T is covariantly constant if T = 0.


 Let T=T1, T2, .... , Tp be a list of p tensor fields, all of the same of the same covariant-contravariant type and let T = f1T1 + f2 T2 +  + fpTp, where the coefficients fi are functions on the underlying manifold. The command CovariantlyConstantTensors generates the system of first order PDE in the unknowns fi from the tensor equation T = 0 and uses pdsolve to find the solutions to these PDE.


 The coefficient functions fi are taken to be functions of all the coordinate variables. The keyword argument coefficientvariables = x1 , x2, ... , xk allows the user to specify the coefficient functions fi as functions of the variables x1 , x2, ... , xk .


The exact form of the tensor T can be specified with the keyword argument ansatz = T . For example, if the coordinates on the underlying manifold are x, y, z and T1,T2, T3 are given tensor fields, then one may solve for covariantly constant tensor fields of the form T = xfy,zT1 + x2 T2+ gy,zT3 . In this situation the unknown functions must be explicitly specified with the keyword argument unknowns, for example, unknowns = fy,z, gy,z.


When using the keyword argument ansatz, additional algebraic or differential conditions may be imposed upon the unknowns using the keyword argument auxiliaryequations = EqList,where EqList is a list of the auxiliary equations to be added to the equations obtained from T = 0 .


If the metric g or connection Γ depends upon a number of unspecified parameters (either constants or functions), then the keyword argument parameters= ParList, where ParList is the list of parameters, will invoke case-splitting with respect to these parameters. Special values of the parameters, where either the number or the explicit form of the covariantly constant tensors changes, are calculated.


With keyword argument output = pde, the defining partial differential equations for the covariantly constant tensors are returned. The option output = general returns the general solution in terms of a number of arbitrary constants _C1, _C2 ... while the option output = list returns a list of tensors which form a basis for the solution space. The default value of this keyword argument is output = list.


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




Example 1.

We find the covariantly constant 2 forms and covariantly constant rank 2 symmetric tensors for a metric g, defined on a 3 dimensional manifold.


frame name: M


g:=evalDGz2dx &t dx+dy &t dy+x4dz &t dz




We use the command GenerateForms to generate a basis Ω for the space of 2 forms.

M > 





The space of covariantly constant 2 forms is 1-dimensional.

M > 





We use the command GenerateSymmetricTensors to generate a basis S for the space of rank 2 symmetric tensors.

M > 





The space of covariantly constant, rank 2 symmetric tensors is two-dimensional. We obtain the output as a single tensor T depending upon two arbitrary constants _C1 and _C2.

M > 





We can check this result using the CovariantDerivative command. For this we need the Christoffel connection for the metric.

M > 



M > 





Example 2.

We find the the trace-free, covariantly constant, rank 2 symmetric tensors for the metric g from Example 1. First construct the general rank 2 symmetric tensor.

M > 



M > 





The trace of T is given by

M > 





We now invoke the keyword arguments ansatz, auxiliaryequations, and unknowns.

M > 





Example 3.

In this example we consider a metric g which depends upon an arbitrary function fz. We find that generically there are no covariantly constant vector fields, but when the function is constant there are 2.

M > 

g2:=evalDGfzdx &t dx+dy &t dy+y2dz &t dz


M > 





We use the keyword argument parameters to invoke case-splitting with respect to the function fz.

M > 





Example 4.

We define a connection on a rank 2 vector bundle E over a 3-dimensional base manifold.

M > 


frame name: E

E > 

C:=ConnectionD_v &t du &t dx+yD_v &t dv &t dz




We calculate the covariantly constant type 1,1 tensors on E. The command GenerateTensors is used to generate a basis for the 1,1 tensors.

E > 





The most general 1,1 tensor on E is given by a linear combination of the elements of the list T, using coefficients which are functions of the base variables x, y,z alone. We specify this dependency with the keyword argument coefficientvariables .

E > 




See Also

DifferentialGeometry, LieAlgebras, Tensor, Decompose, KillingVectors, LieAlgebraData, LieDerivative, MultiplicationTable, Query,

Download Help Document

Was this information helpful?

Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam