Compute the Lie derivative of a tensorial expression - Maple Programming Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Physics : Physics/LieDerivative

Physics[LieDerivative] - Compute the Lie derivative of a tensorial expression

Calling Sequence

LieDerivative[v, ...](T)

LieDerivative(T, v, ...)

Parameters

T

-

an algebraic expression, or a relation, or a list, set, Matrix or Array of them

v

-

a contravariant vector as a tensor or tensor function, passed with or without one free spacetime contravariant index (prefixed by ~), with respect to which the derivative is being taken

...

-

optional, more contravariant vectors as v to perform higher order differentiation

...

-

optional, the last argument can be the non-covariant operator d_ to be used instead of the covariant D_

Description

• 

The LieDerivative[v] command computes the Lie derivative of a tensorial expression T - say with one contravariant and one covariant spacetime indices as in Tba - according to the standard definition

vTba=vccTbaTbccva+Tcabvc

  

where Einstein's summation convention is used, a,b and c represent spacetime indices, v is a contravariant vector field, a tensor with one index, and  is the covariant derivative operator D_. When the expression T has no free indices, the Lie derivative is equal to only the first term of the right-hand-side, and when T has more than one contravariant or covariant tensor indices, there is a term like the second one and another like the third one respectively for each contravariant and covariant free indices in T.

• 

From this definition it is clear that the LieDerivative is a tensor with regards to the free indices of the derivand, but not with regards to the free index of the indexing vector field (vc in the above), whose index appears in the definition contracted with the differentiation operator D_ (or d_). In other words, the index c of vc enters the Lie derivative as a dummy. If this dummy is found in the indices of the derivand, it is automatically replaced by another spacetime dummy index. You can also pass V without an index, with our with functionality, as in V or VX.

• 

The vector vc indexing in LieDerivative[v[~c]](T) is expected to be defined as a tensor such using Define, and ~c (entered suffixed by ~) to be a spacetime contravariant index. Because this index is a dummy index, you can also pass v without indexation, possibly as a function too, as in LieDerivative[v](T) (case of a constant v) or LieDerivative[v(x)](T).

• 

The indexation of LieDerivative can also consists of a sequence of spacetime vectors like v, in which case a higher order LieDerivative is computed (orderly differentiating from left to right).

• 

This single differentiating vector, or a sequence of them, can also be passed after the first argument, as in other Maple differentiation commands.

• 

When the spacetime is Galilean, so all the Christoffel symbols are zero, the operator d_ is used instead of the covariant D_. Also, when the spacetime is non-Galilean, due to the symmetry of the Christoffel symbols under permutation of their 2nd and 3rd indices, all the terms involving Christoffel symbols cancel so that a mathematically equivalent result can be obtained replacing D_ by d_. To obtain a result directly expressed using d_, pass d_ as the last argument.

Examples

In the examples that follow, as well as in the context of tensor computations with the Physics package, Einstein's summation convention for repeated indices is used.

withPhysics:

Setupmathematicalnotation=true

mathematicalnotation=true

(1)

Set a system of coordinates - say X

Setupcoordinates=X

Default differentiation variables for d_, D_ and dAlembertian are:X=x1,x2,x3,x4

Systems of spacetime coordinates are:X=x1,x2,x3,x4

_______________________________________________________

coordinatesystems=X

(2)

Define some tensors for experimentation

Definev,ξ,T

Defined objects with tensor properties

T,v,ξ,γμ,σμ,μ,gμ,ν,εα,β,μ,ν,Xμ

(3)

Compute the Lie derivative of a scalar fX: it is the same as the directional derivative in the direction of vμ

LieDerivativev~muXfX

vμμXμfX

(4)

Because the spacetime at this point in the worksheet is flat, the output above involves d_, not the covariant D_. Set the spacetime to any nongalilean value, for instance (see g_):

g_sc

_______________________________________________________

Systems of spacetime coordinates are:X=r,θ,φ,t

Default differentiation variables for d_, D_ and dAlembertian are:X=r,θ,φ,t

The Schwarzschild metric in coordinates r,θ,φ,t

Parameters: m

_______________________________________________________

g_μ,ν=rr+2m0000r20000r2sinθ20000r2mr

(5)

Use the declare facility of PDEtools to avoid redundant display of functionality and have derivatives displayed with compact indexed notation

PDEtools:-declarev,ξ,TX

vXwill now be displayed asv

xiXwill now be displayed asξ

TXwill now be displayed asT

(6)

The Lie derivatives of the covariant and contravariant vectors xiα and ξα differ in the sign of the second term, but not just in that: note the different ways in which the index μ is contracted

LieDerivativev~muXξαX

v~muXD_μξαX,X+ξμXD_αv~muX,X

(7)

LieDerivativev~muXξ~alphaX

v~muXD_μξ~alphaX,Xξ~muXD_μv~alphaX,X

(8)

The index μ in vμ enters the Lie derivative as a dummy. If this dummy is found in the indices of the derivand, it is automatically replaced by another spacetime index. For example: pass V and xi with the same index α

LieDerivativev~alphaXξ~alphaX

v~muXD_μξ~alphaX,Xξ~muXD_μv~alphaX,X

(9)

You can also pass v without indices, with or without functionality depending on whether v is constant, in which case only the part involving the Christoffel symbols remains after computing the covariant derivative:

LieDerivativevXξ~alphaX

v~muXD_μξ~alphaX,Xξ~muXD_μv~alphaX,X

(10)

LieDerivativevξ~alphaX

v~muD_μξ~alphaX,Xξ~muXChristoffel~alpha,μ,νv~nu

(11)

When the derivand is a contravariant vector field, the Lie derivative is equal to the the LieBracket between the indexing vector field v in the above) and the derivand ξα. For that reason, you can also pass the first argument to LieBracket with or without the index

LieBracketv~muX,ξ~alphaX

v~muXD_μξ~alphaX,Xξ~muXD_μv~alphaX,X

(12)

So in LieBracket the free index of the first vector field is also a dummy and the index of the second one is the free index of the result.

The Lie derivative of a Tβα contains three terms: first there is the term equivalent to a directional derivative, then another with a minus sign related to the contravariant index, then another one related to the covariant index

LieDerivativev~muXT~alpha,βX

v~muXD_μT~alpha,βX,XT~mu,βXD_μv~alphaX,X+T~alpha,μXD_βv~muX,X

(13)

The Lie derivative is essentially the change in form of the derivand under transformations generated by the indexing vector field (v in the examples above). In turn the Killing vectors generate transformations that leave the form of the spacetime metric g_ invariant. So equating to zero the Lie Derivative of the metric (currently Schwarzschild) results in a system of partial differential equations defining the Killing vectors

LieDerivativeξ~muXg_α,β=0

g_μ,βD_αξ~muX,X+g_α,μD_βξ~muX,X=0

(14)

Simplify

D_βξαX,X+D_αξβX,X=0

(15)

The array of Killing equations behind this tensorial expression can be obtained with TensorArray, KillingVectors or the Library command TensorComponents:

TensorArray

2rξ1r,θ,φ,t2mξ1r,θ,φ,trr+2m=0θξ1r,θ,φ,t2ξ2r,θ,φ,tr+rξ2r,θ,φ,t=0φξ1r,θ,φ,t2ξ3r,θ,φ,tr+rξ3r,θ,φ,t=0tξ1r,θ,φ,t+2mξ4r,θ,φ,trr+2m+rξ4r,θ,φ,t=0θξ1r,θ,φ,t2ξ2r,θ,φ,tr+rξ2r,θ,φ,t=02θξ2r,θ,φ,t2r+2mξ1r,θ,φ,t=0φξ2r,θ,φ,t2cosθξ3r,θ,φ,tsinθ+θξ3r,θ,φ,t=0tξ2r,θ,φ,t+θξ4r,θ,φ,t=0φξ1r,θ,φ,t2ξ3r,θ,φ,tr+rξ3r,θ,φ,t=0φξ2r,θ,φ,t2cosθξ3r,θ,φ,tsinθ+θξ3r,θ,φ,t=02φξ3r,θ,φ,t2r+2msinθ2ξ1r,θ,φ,t+2sinθcosθξ2r,θ,φ,t=0tξ3r,θ,φ,t+φξ4r,θ,φ,t=0tξ1r,θ,φ,t+2mξ4r,θ,φ,trr+2m+rξ4r,θ,φ,t=0tξ2r,θ,φ,t+θξ4r,θ,φ,t=0tξ3r,θ,φ,t+φξ4r,θ,φ,t=02tξ4r,θ,φ,t+2r+2mmξ1r,θ,φ,tr3=0

(16)

These equations can be solved using pdsolve

pdsolve

ξ1X=0,ξ2X=_C2sinφ+_C3cosφr2,ξ3X=r212_C4cos2θ+sinθ_C2cosφ_C3sinφcosθ+12_C4,ξ4X=r2m_C1r

(17)

Alternatively, the same equations components of the tensorial expression (15) can be obtained directly with KillingVectors that in addition performs a reduction to involutive form (canonical form) for the DE system, and can as well compute and solve the equations all in one go

KillingVectorsξ

ξμμ=0,0,0,1,ξμμ=0,sinφ,cosφtanθ,0,ξμμ=0,cosφ,sinφtanθ,0,ξμμ=0,0,1,0

(18)

Yet another manner of obtaining the same result is using Physics:-Library:-TensorComponents - that computes similar to TensorArray - but returns a list of equations instead, where the ordering is ascending with respect to value of the free indices -

Library:-TensorComponents

2diffξ1X,r2Christoffel~alpha,1,1ξαX=0,diffξ1X,θ2Christoffel~alpha,1,2ξαX+diffξ2X,r=0,diffξ1X,φ2Christoffel~alpha,1,3ξαX+diffξ3X,r=0,diffξ1X,t2Christoffel~alpha,1,4ξαX+diffξ4X,r=0,diffξ1X,θ2Christoffel~alpha,1,2ξαX+diffξ2X,r=0,2diffξ2X,θ2Christoffel~alpha,2,2ξαX=0,diffξ2X,φ2Christoffel~alpha,2,3ξαX+diffξ3X,θ=0,diffξ2X,t2Christoffel~alpha,2,4ξαX+diffξ4X,θ=0,diffξ1X,φ2Christoffel~alpha,1,3ξαX+diffξ3X,r=0,diffξ2X,φ2Christoffel~alpha,2,3ξαX+diffξ3X,θ=0,2diffξ3X,φ2Christoffel~alpha,3,3ξαX=0,diffξ3X,t2Christoffel~alpha,3,4ξαX+diffξ4X,φ=0,diffξ1X,t2Christoffel~alpha,1,4ξαX+diffξ4X,r=0,diffξ2X,t2Christoffel~alpha,2,4ξαX+diffξ4X,θ=0,diffξ3X,t2Christoffel~alpha,3,4ξαX+diffξ4X,φ=0,2diffξ4X,t2Christoffel~alpha,4,4ξαX=0

(19)

Expanding the sum over the repeated indices,

SumOverRepeatedIndices

2diffξ1X,r2mξ1Xrr+2m=0,diffξ1X,θ2ξ2Xr+diffξ2X,r=0,diffξ1X,φ2ξ3Xr+diffξ3X,r=0,diffξ1X,t+2mξ4Xrr+2m+diffξ4X,r=0,diffξ1X,θ2ξ2Xr+diffξ2X,r=0,2diffξ2X,θ2r+2mξ1X=0,diffξ2X,φ2cosθξ3Xsinθ+diffξ3X,θ=0,diffξ2X,t+diffξ4X,θ=0,diffξ1X,φ2ξ3Xr+diffξ3X,r=0,diffξ2X,φ2cosθξ3Xsinθ+diffξ3X,θ=0,2diffξ3X,φ2r+2msinθ2ξ1X+2sinθcosθξ2X=0,diffξ3X,t+diffξ4X,φ=0,diffξ1X,t+2mξ4Xrr+2m+diffξ4X,r=0,diffξ2X,t+diffξ4X,θ=0,diffξ3X,t+diffξ4X,φ=0,2diffξ4X,t+2r+2mmξ1Xr3=0

(20)

pdsolve

ξ1X=0,ξ2X=_C2sinφ+_C3cosφr2,ξ3X=r212_C4cos2θ+sinθ_C2cosφ_C3sinφcosθ+12_C4,ξ4X=r2m_C1r

(21)

See Also

Christoffel, Coordinates, d_