D_ - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Mozilla Firefox.

Online Help

All Products    Maple    MapleSim


Physics[D_] - indexed covariant differential operator with respect to curvilinear spacetime coordinates

Calling Sequence

D_[mu](A)

D_[mu](A, [X])

D_(A)

D_(A, [X])

Parameters

mu

-

a name representing an integer number between 0 and the spacetime dimension, can also be the number itself or preceded by ~ to represent a contravariant index

A

-

any mathematical expression or relation between expressions, or a set or list of them, or an rtable 

[X]

-

a list of differentiation variables to which the index mu refers

Description

• 

The D_[mu] command is a computational representation for ▿μ, the covariant differential operator, a tensor, the generalization of ∂μ to curvilinear coordinates.

• 

D_ can also be used without an index, as in D_(A) displayed as ▿⁡A, in which case it represents the total differential in curvilinear coordinates, and the output comes automatically expanded as D_[mu](A) * d_(X[~mu]), displayed as ▿⁡A⁢ⅆ⁡X μ where X is a coordinates system and X[~mu] is the corresponding spacetime vector.

• 

The covariant D_[mu] = ▿μ is defined in terms of the Christoffel symbols as

▿μ⁡Aν=∂μ⁡Aν−Γμ,να⁢Aα

  

when acting on a covariant tensor as Aν, and as

▿μ⁡Aν=∂μ⁡Aν+Γα,μν⁢Aα

  

when acting on a contravariant tensor. For tensors of higher rank, for each covariant index there is one negative Christoffel term as in the formula for Aν and for each contravariant index there is one positive Christoffel term as in the formula for Aν.

• 

To express ▿μ⁡Aν using this definition in terms of Christoffel symbols use convert to d_ or expand which also know about other identities for ▿μ.

• 

The contravariant gμ,ν⁢▿ν=▿μ is entered as D_[~mu], so using the same D_ just with a contravariant index.

• 

Computations performed with the Physics package commands take into account Einstein's sum rule for repeated indices - see `.` and Simplify. The distinction between covariant and contravariant indices in the input of tensors is done by prefixing contravariant ones with ~, say as in ~mu; in the output, contravariant indices are displayed as superscripts. For contracted indices, you can enter them one covariant and one contravariant. Note however that - provided that the spacetime metric is Galilean (Euclidean or Minkowski), or the object is a tensor also in curvilinear coordinates - this distinction in the input is not relevant, and so contracted indices can be entered as both covariant or both contravariant, in which case they will be automatically rewritten as one covariant and one contravariant. Tensors can have spacetime and space indices at the same time. To change the type of letter used to represent spacetime or space indices see Setup.

• 

When only one argument is given to D_ or D_[mu], say as in D_[mu](A), the differentiation variables are the default ones, as indicated by Setup(differentiationvariables). Note you can set various coordinate systems and choose which one is to be considered the differentiation variables for D_ using Setup.

• 

You can also override the default differentiation variables by passing two arguments to D_ or D_[mu], in which case the second argument is expected to be a list with the differentiation variables, as in D_[mu](A, [x1, x2, ...]), and so this list should have as many symbols as the dimension of spacetime, which by default is 4 but can be set to any value with the Setup command.

• 

Some automatic checking and simplifications are carried out each time an operation such as D_[mu](A) is executed. The checking is concerned with possible syntax errors. Regarding the automatic simplifications, a summary is as follows:

– 

If A does not depend on the differentiation variables or is equal to the metric g_, then 0 is returned.

– 

If A is a scalar then d_[mu](A) is returned.

– 

If A belongs to the differentiation variables, then the definition of D_[mu](A) is applied and the resulting value returned.

– 

If A is a sum, product, power, or known function, then the differentiation is distributed accordingly, the same way it is done by d_.

• 

A number of additional identities for covariant derivatives are returned when using expand.

• 

To perform the differentiation, the D_ command makes us of the diff command of the Physics package, which in turn uses the standard Maple diff command, so that any user-defined differentiation rule, such as for a function foo, of the form `diff/foo`, is automatically taken into account by D_.

• 

The %D_ command is the inert form of D_, so it represents the same mathematical operation but without performing it. To perform the operation, use value.

Examples

> 

with⁡Physics:

> 

Setup⁡mathematicalnotation=true

mathematicalnotation=true

(1)

Set up a coordinate system to work with - the first one to be set is automatically taken as the differentiation variables for d_, the covariant derivative D_ and the dAlembertian

> 

Setup⁡coordinatesystems=cartesian

⁢Systems of spacetime coordinates are:⁢X=x,y,z,t

coordinatesystems=X

(2)

When Physics is initialized, the default spacetime metric is of Minkowski type. You can see the metric querying Setup, as in Setup(metric);, or directly entering the metric g_ with no indices

> 

g_

gμ,ν=−10000−10000−100001

(3)

For illustration purposes Define an arbitrary spacetime tensor  A

> 

Define⁡A

Defined objects with tensor properties

A,γμ,σμ,∂μ,gμ,ν,εα,β,μ,ν,Xμ

(4)

Check the nonzero components of Christoffel: if, as in the Minkowski case, there are none, then ▿μ=∂μ

> 

Christoffelnonzero

Γα,μ,ν=∅

(5)
> 

D_⁡X~nu

ⅆ⁡X⁢ν⁢ν

(6)
> 

D_μ⁡A~nu⁡X

∂μ⁡A⁢ν⁢ν⁡X

(7)

To set the scenario as an arbitrary non-galilean spacetime set the metric to be arbitrary, that is, depending on 10 arbitrary functions of the spacetime coordinates X

> 

Setup⁡metric=arbitrary

⁢_______________________________________________________

⁢The arbitrary metric in coordinates ⁢x,y,z,t

Signature: - - - +

⁢_______________________________________________________

gμ,ν=f__1⁡Xf__2⁡Xf__3⁡Xf__4⁡Xf__2⁡Xf__5⁡Xf__6⁡Xf__7⁡Xf__3⁡Xf__6⁡Xf__8⁡Xf__9⁡Xf__4⁡Xf__7⁡Xf__9⁡Xf__10⁡X

metric=1,1=f__1⁡X,1,2=f__2⁡X,1,3=f__3⁡X,1,4=f__4⁡X,2,2=f__5⁡X,2,3=f__6⁡X,2,4=f__7⁡X,3,3=f__8⁡X,3,4=f__9⁡X,4,4=f__10⁡X,spaceindices=lowercaselatin_is

(8)
> 

g_

gμ,ν=f__1⁡Xf__2⁡Xf__3⁡Xf__4⁡Xf__2⁡Xf__5⁡Xf__6⁡Xf__7⁡Xf__3⁡Xf__6⁡Xf__8⁡Xf__9⁡Xf__4⁡Xf__7⁡Xf__9⁡Xf__10⁡X

(9)

Related to displaying the components of Christoffel, it is convenient to have a compact display of the 10 arbitrary functions entering the metric as well as of their derivatives; for that purpose use CompactDisplay.

> 

CompactDisplay⁡

f__1⁡x,y,z,t⁢will now be displayed as⁢f__1

f__10⁡x,y,z,t⁢will now be displayed as⁢f__10

f__2⁡x,y,z,t⁢will now be displayed as⁢f__2

f__3⁡x,y,z,t⁢will now be displayed as⁢f__3

f__4⁡x,y,z,t⁢will now be displayed as⁢f__4

f__5⁡x,y,z,t⁢will now be displayed as⁢f__5

f__6⁡x,y,z,t⁢will now be displayed as⁢f__6

f__7⁡x,y,z,t⁢will now be displayed as⁢f__7

f__8⁡x,y,z,t⁢will now be displayed as⁢f__8

f__9⁡x,y,z,t⁢will now be displayed as⁢f__9

(10)

So from herein, in the display of expressions, derivatives are displayed as indexed and the functionality of the arbitrary functions is suppressed.

Check the value of Γ__α,μ,ν for α = μ = ν = 1

> 

Christoffel1,1,1

f__1x2

(11)

So now, for the total differential and the covariant derivative, we have

> 

D_⁡A~nu⁡X

▿μ⁡A⁢ν⁢ν⁡X⁢ⅆ⁡X⁢μ⁢μ

(12)
> 

D_μ⁡A~nu⁡X

▿μ⁡A⁢ν⁢ν⁡X

(13)

To express these results using the definition in terms of Christoffel symbols use expand or convert to d_

> 

convert⁡,d_

∂μ⁡A⁢ν⁢ν⁡X+Γ⁢να,μ⁢να,μ⁢A⁢α⁢α⁡X

(14)

To compute with a representation for ▿ without actually performing the operation, use the inert form %D_. To afterwards perform the operation use value

> 

%D_μ⁡g_α,β

▿μ⁡gα,β

(15)
> 

value⁡

0

(16)

The covariant derivative of a scalar is always equal to the ∂ derivative

> 

D_μ⁡Φ⁡X

∂μ⁡Φ⁡X

(17)
> 

D_⁡Φ⁡X

∂μ⁡Φ⁡X⁢ⅆ⁡X⁢μ⁢μ

(18)

To reduce the amount of input notation, a scalar constructed with contracted indices in tensors can be entered with all contracted indices covariant, or as a power in the case of a contracted product of a tensor with itself. For example, use Aμ⁢Aμ=Aμ2

> 

Aμ2

Aμ⁢A⁢μ⁢μ

(19)
> 

D_ν⁡Aμ⁡X2

∂ν⁡Aμ⁡X⁢A⁢μ⁢μ⁡X+Aμ⁡X⁢∂ν⁡A⁢μ⁢μ⁡X

(20)

and as expected in the case of scalars, in the above you see no Christoffel symbols.

Set the spacetime metric g_ by giving the square of the spacetime interval

> 

ds2≔x2⁢dx2+y2⁢dy2+z2⁢dz2+x⁢y⁢dx⁢dy−dt2

ds2≔x2⁢dx2+x⁢y⁢dx⁢dy+y2⁢dy2+z2⁢dz2−dt2

(21)
> 

Setup⁡metric=ds2

⁢_______________________________________________________

Coordinates: x,y,z,t. Signature: - - - +

⁢_______________________________________________________

gμ,ν=x2x⁢y200x⁢y2y20000z20000−1

⁢_______________________________________________________

metric=1,1=x2,1,2=x⁢y2,2,2=y2,3,3=z2,4,4=−1

(22)

The generalized divergence of a vector in curvilinear coordinates

> 

D_μ⁡A~mu⁡X

▿μ⁡A⁢μ⁢μ⁡X

(23)
> 

expand⁡

A⁢μ⁢μ⁡X⁢∂μ⁡xx+A⁢μ⁢μ⁡X⁢∂μ⁡yy+A⁢μ⁢μ⁡X⁢∂μ⁡zz+∂μ⁡A⁢μ⁢μ⁡X

(24)

Relative scalars, tensors and tensorial expressions

In the context of a curved spacetime, when computing the covariant derivative of a relative scalar, tensor or tensorial expression that has non-zero relative weight w, a relative term is added - see Chapter 4 of [2]. That term can be computed using the Physics:-Library:-GetRelativeWeight command.

> 

g__det≔%g_:-determinant

g__det≔ g

(25)
> 

Library:-GetRelativeTerm⁡g__det,μ

−2⁢Γ⁢νμ,ν⁢νμ,ν⁢ g

(26)

Consequently, not just in a flat spacetime where gdet is a constant, but also in a curved spacetime,

> 

%D_μ=D_μ⁡g__det

▿μ⁡ g =0

(27)

To understand this zero value on the right-hand side, express the left-hand side in terms of d_

> 

convert⁡,d_

∂μ⁡ g −2⁢Γ⁢αα,μ⁢αα,μ⁢ g =0

(28)

evaluate the inert %d_

> 

factor⁡eval⁡,%d_=d_

g ⁢g⁢α,ν⁢α,ν⁢∂μ⁡gα,ν−2⁢Γ⁢αα,μ⁢αα,μ=0

(29)

The factor in parentheses is equal to ▿mu⁡galpha,nu, the covariant derivative of the metric, equal to zero, so

> 

Simplify⁡

0=0

(30)

Set the Schwarzschild metric and consider the covariant derivative of two tensors Tμ and Rμ, defined such that the former has zero relative weight and the latter has relative weight equal to 1. To define them use the Define command

> 

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

Signature: - - - +

⁢_______________________________________________________

gμ,ν=r2⁢m−r0000−r20000−r2⁢sin⁡θ20000r−2⁢mr

(31)
> 

Define⁡Tμ

Defined objects with tensor properties

A⁢ν⁢ν,▿μ,γμ,σμ,Rμ,ν,Rμ,ν,α,β,Tμ,Cμ,ν,α,β,∂μ,gμ,ν,γi,j,Γμ,ν,α,Gμ,ν,εα,β,μ,ν,Xμ

(32)
> 

Define⁡Rμ,relativeweight=1

Defined objects with tensor properties

A⁢ν⁢ν,▿μ,γμ,σμ,Rμ,Rμ,ν,Rμ,ν,α,β,Tμ,Cμ,ν,α,β,∂μ,gμ,ν,γi,j,Γμ,ν,α,Gμ,ν,εα,β,μ,ν,Xμ

(33)

Hence

> 

Library:-GetRelativeWeight⁡Tμ

0

(34)
> 

Library:-GetRelativeWeight⁡Rμ

1

(35)

The corresponding covariant derivatives

> 

%D_ν=D_ν⁡Tμ⁡X

▿ν⁡Tμ⁡X=▿ν⁡Tμ⁡X

(36)
> 

expand⁡

▿ν⁡Tμ⁡X=∂ν⁡Tμ⁡X−Γ⁢αμ,ν⁢αμ,ν⁢Tα⁡X

(37)
> 

%D_ν=D_ν⁡Rμ⁡X

▿ν⁡Rμ⁡X=▿ν⁡Rμ⁡X

(38)
> 

expand⁡

▿ν⁡Rμ⁡X=∂ν⁡Rμ⁡X−Γ⁢αμ,ν⁢αμ,ν⁢Rα⁡X−Γ⁢ββ,ν⁢ββ,ν⁢Rμ⁡X

(39)

where in the above we see the additional (relative) term

> 

Library:-GetRelativeTerm⁡Rμ⁡X,ν

−Γ⁢αα,ν⁢αα,ν⁢Rμ⁡X

(40)
> 

See Also

`.`, Christoffel, Coordinates, d_, Define, DifferentialGeometry[Tensor][CovariantDerivative], Physics, Physics conventions, Physics examples, Physics Updates, Tensors - a complete guide, Mini-Course Computer Algebra for Physicists, Relative Tensors, Setup, value

References

  

[1] Landau, L.D., and Lifshitz, E.M. The Classical Theory of Fields, Course of Theoretical Physics Volume 2, fourth revised English edition. Elsevier, 1975.

  

[2] Lovelock, D., and Rund, H. Tensors, Differential Forms and Variational Principles, Dover, 1989.