set up aliases for the spacetime coordinates used by Physics commands - Maple Programming Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Physics : Physics/Coordinates

Physics[Coordinates] - set up aliases for the spacetime coordinates used by Physics commands

Calling Sequence

Coordinates( )

Coordinates(X, quiet, clear)

Parameters

X

-

an unassigned capital letter, or an equation with it on the left-hand side and a list of coordinates or any of the keywords cartesian, cylindrical, spherical on the right-hand side

quiet

-

(optional) proceed without displaying messages on the screen

clear

-

(optional) to unset the specified system of coordinates previously set by Coordinates

Description

• 

The Coordinates command is used to set the systems of coordinates used by the other commands of the Physics package, as for instance the differentiation operators d_, D_, dAlembertian, diff and Fundiff, and all the general relativity tensors.

• 

The Coordinates command also sets an alias for a capital letter X to represent a list of coordinates as explained below. These simplified representations for the spacetime coordinates eliminate the redundancy of having to type all the coordinates and in the correct order (setting these aliases does not prevent you from doing so, however), when entering functions of spacetime or using the Physics differentiation commands d_, D_ or the dAlembertian.

• 

After setting a coordinate system, the capital letter that labels it can also be used in algebraic computations to represent the corresponding SpaceTimeVector (tensor with 1 index) - see the Examples section.

• 

When the Coordinates command is called with no arguments, it returns the capital letters currently set to represent coordinate systems.

• 

When Coordinates is called with one argument, a capital letter - say X - an alias is set for X to represent the sequence of n (the spacetime dimension, say 4) coordinates conformed by: x1,x2,x3,x4. Also x0 is assigned the value x4. As a rule, this sequence of spacetime coordinates is built by using the corresponding lowercase letter as a root, concatenated with positive integers from 1 to n. The capital letters that can be used as labels for systems of coordinates are the letters from A to Z, excluding D, E, G, I, O and R.

• 

When the spacetime dimension is changed in the middle of a Maple session, the systems of coordinates previously set are automatically redefined to have the same number of coordinates as the new value for the dimension.

• 

You can also call Coordinates with an equation, having any of the capital letters mentioned in the previous paragraph on the left-hand side, say Y, and a list of variables - all of type name- say [u, v, w, ...] on the right side, so that Y will be aliased to [u, v, w, ...]. In these cases, macros are also set as y1 = u, y2 = v, y3 = w, ... so that you can continue using concatenated lowercase letters y1, y2, ... to refer to each of the individual coordinates, apart from referring to them via Y[1], Y[2], ... or directly as u, v, ...

• 

Coordinates also understands three keywords: cartesian, representing x,y,z,t, cylindrical, representing rho,phi,z,t, and spherical, representing r,theta,phi,t, that can be on the right-hand side of the equation X = ... passed as first argument, so that the capital letter on the left-hand side will be aliased these coordinates.

• 

The first time Coordinates is called to set a system of coordinates, this system is also set as the default differentiation variables for all of d_, D_ and the dAlembertian as explained in the corresponding help pages.

• 

You can set many systems of coordinates to work with at the same time. This is particularly useful, for instance, when working with functional derivatives or coordinate transformations. To change the default differentiation variables from one system of coordinates to another one use Setup

• 

You can also view the systems of coordinates already set, or set new ones, by launching the setup maplet (enter Setup() at the Maple prompt).

Examples

Load the Physics package.

withPhysics:

Setupmathematicalnotation=true

mathematicalnotation=true

(1)

Set an alias for X to represent x1, x2, x3, x4, and set the default differentiation coordinates for d_ and dAlembertian to be X; this can be done in a single command line by using the Setup command as in Setup(differentiationvariables = X) - that automatically sets the coordinates - or using Coordinates - the first time it is called it automatically sets the differentiation variables

CoordinatesX

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

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

X

(2)

Query about the default differentiation variables for

Setupdiff

* Partial match of 'Physics:-diff' against keyword 'differentiationvariables'

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

differentiationvariables=X

(3)

Note the display of the association between x1,x2,x3,x4 and the sequence x1,x2,x3,x4. Because of the alias', if you now enter X you do not see its contents

X

X

(4)

The variables are however there:

X1

x1

(5)

X4

x4

(6)

After having set x1,x2,x3,x4 as a coordinate system and default differentiation variables, d_ and dAlembertian can be used omitting the second argument that would specify the differentiation variables

fX

fX

(7)

d_[μ]

μfX

(8)

dAlembertian

fX

(9)

Set more systems of spacetime coordinates.

CoordinatesY,Z

Systems of spacetime Coordinates are: X=x1,x2,x3,x4,Y=y1,y2,y3,y4,Z=z1,z2,z3,z4

X,Y,Z

(10)

This is useful, for example, when you want to represent objects evaluated at different points in spacetime. If you want to use d_ or dAlembertian with y1,y2,y3,y4 or z1,z2,z3,z4, which in this example are not the default differentiation variables, you need to specify them as the second argument, and they will be displayed on the screen.

d_[μ]fY,Y

μfY,Y

(11)

dAlembertianfY,Y

fY,Y

(12)

An example where more than one system of coordinates is intrinsically required: functional differentiation. Use 'delay evaluation quotes' to first display the expression, then evaluate.

fX

fX

(13)

'Fundiff',fY

δδfYfX

(14)

δ4x1y1,x2y2,x3y3,x4y4

(15)

You see above a four dimensional Dirac delta function as a result of the functional differentiation. Alternatively, instead of using 'delay evaluation quotes,' you can use the inert form %Fundiff, and then evaluate by using the value command.

%FundifffY,fZ

δδfZfY

(16)

value

δ4y1z1,y2z2,y3z3,y4z4

(17)

Coordinates systems and the "SpaceTimeVector"

After setting a coordinate system, the capital letter that labels it can also be use in algebraic computations to represent the corresponding SpaceTimeVector (tensor with 1 index). For example:

X`~alpha`X`~beta`

XααXββ

(18)

d_[μ]

Xααgμβμβ+gμαμαXββ

(19)

dAlembertian

2gα,βα,β

(20)

LeviCivitaα,β,μ,ν

εα,β,μ,νXααXββ

(21)

Simplify

0

(22)

Or using `.` instead of `*` to shortcut the call to Simplify

LeviCivitaα,β,μ,ν.

0

(23)

g_α,β.

XββXβ

(24)

Remark: in tensor computations, the distinction between covariant and contravariant indices is important when the spacetime is not Euclidean and the indices assume numerical values. The label of a system of coordinates set with Coordinates represent the contravariant components of the corresponding SpaceTimeVector. To indicate than an index is contravariant you prefix it with ~. On the other hand, in Maple, the selection operation is also performed through indexation. Hence, if X is a label for a system of coordinates, entering X[1] returns x1, the contravariant component of the corresponding SpaceTimeVector, even when the index used is the number 1, the covariant version of the contravariant ~1. So in a context where covariant and contravariant indexation is relevant and where you are going to assign numerical values to the indices, it is recommended to represent the spacetime vector with the SpaceTimeVector function, as in SpaceTimeVector[mu](X), instead of directly using X[mu]. In all other cases it is safe and simpler to use X[mu] and all the Physics commands understand both representations as equivalent.

Due to the equivalence between SpaceTimeVector[~mu] and X[~mu], they are both displayed X[~mu] (note the prefix ~ to indicate that mu is contravariant)

SpaceTimeVector[`~mu`]X

Xμμ

(25)

lprint

Physics:-SpaceTimeVector[`~mu`](X)

Display the current spacetime metric g_ matrix

g_[]

gμ,ν=1000010000100001

(26)

The 1st contravariant and covariant components are respectively represented by indexing SpaceTimeVector with the numbers ~1 and 1

SpaceTimeVector[`~1`]X

x1

(27)

SpaceTimeVector[1]X=g_1,μXμ

x1=Xμg1μ1μ

(28)

Simplify

x1=x1

(29)

Once you have set a system of coordinates, you can differentiate the corresponding SpaceTimeVector, using diff, d_ or any of the differentiation operators of Physics. In the following input, compute the derivative with respect to the 1st contravariant component of x1,x2,x3,x4, that is x1. Recalling, contravariant differentiation coordinates are the ones entering the covariant differentiation operator μ=xμ. For illustration purposes use the inert form of d_ and diff, prefixing the commands with % and perform the computation using value

SpaceTimeVector[`~mu`]X

Xμμ

(30)

%d_[1]=%diff,x1

1Xμμ=x1Xμμ

(31)

value

g1μ1μ=g1μ1μ

(32)

You can also represent x1 with SpaceTimeVector[~1](X), and when differentiate with respect to contravariant components of the spacetime vector you can also represent them directly with X[~mu] because ~1, ~2, etc. are viewed by the system as symbols (in this context, contravariant indices) not selecting numbers

%diff,X`~1`=%diff,%SpaceTimeVector[`~1`]X

X~1Xμμ=X11Xμμ

(33)

value

g1μ1μ=g1μ1μ

(34)

and in general,

%d_[μ]X`~nu`=d_[μ]X`~nu`

μXνν=gμνμν

(35)

Compute now the contravariant derivative, that is, the derivative with respect to the covariant Xmu

%d_[`~mu`]X`~nu`=d_[`~mu`]X`~nu`

μμXνν=gμ,νμ,ν

(36)

Set five more systems of coordinates, using the different forms of setting them

CoordinatesY,Z=a,b,c,d,A=cartesian,B=cylindrical,C=spherical

Systems of spacetime Coordinates are: A=x,y,z,t,B=ρ,φ,z,t,C=r,θ,φ,t,X=x1,x2,x3,x4,Y=y1,y2,y3,y4,Z=a,b,c,d

A,B,C,X,Y,Z

(37)

Query about the coordinate systems currently set

Coordinates

Systems of spacetime Coordinates are: A=x,y,z,t,B=ρ,φ,z,t,C=r,θ,φ,t,X=x1,x2,x3,x4,Y=y1,y2,y3,y4,Z=a,b,c,d

A,B,C,X,Y,Z

(38)

Change the default differentiation variables for d_ and the other differentiation commands

Setupdiff=C

* Partial match of 'Physics:-diff' against keyword 'differentiationvariables'

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

differentiationvariables=C

(39)

So now

d_[μ]Xν

0

(40)

d_[μ]Cν

gμ,ν

(41)

C1,C2,C3

r,θ,φ

(42)

All these refer to the same variable t

C4,c4,c0,t

t,t,t,t

(43)

See Also

`.`, d_, D_, dAlembertian, diff, Dirac, Fundiff, g_, Physics, Physics conventions, Physics examples, Setup, Simplify, SpaceTimeVector, value

References

  

Landau, L.D. and Lifshitz, E.M. The Classical Theory of Fields. Vol 2. Elsevier, 1975.


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