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

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Physics : Updates : Physics for Maple 2015

Physics

Maple provides a state-of-the-art environment for algebraic computations in Physics, with emphasis on ensuring that the computational experience is as natural as possible. The theme of the Physics project for Maple 2015 has been Vector Analysis, symbolic Tensor manipulations, Quantum Mechanics, and General Relativity. With more than 400 enhancements throughout the entire package to increase robustness and versatility, two new commands, Assume and SubstituteTensor, a new Tetrads subpackage with 13 commands, as well as 26 new Physics:-Library commands to support further explorations and extensions, and an enlargement of the database of solutions to Einstein's equations with more than 100 new metrics, Maple 2015 extends again the range of Physics-related algebraic computations that can be done, in a natural way, using computer algebra software.


As part of its commitment to providing the best possible environment for algebraic computations in Physics, Maplesoft launched a Maple Physics: Research and Development web site with Maple 18, which enabled users to download research versions, ask questions, and provide feedback. The results from this accelerated exchange with people around the world have been incorporated into the Physics package in Maple 2015. Examples illustrating the use of the new capabilities in the context of more general problems are found in the MaplePrimes post Computer Algebra for Theoretical Physics.

 

Simplification

Tensors

Tetrads in General Relativity

More Metrics in the Database of Solutions to Einstein's Equations

Commutators, AntiCommutators, and Dirac notation in quantum mechanics

New Assume command and new enhanced Mode: automaticsimplification

Vectors Package

The Physics Library

Miscellaneous

Simplification

Simplification is perhaps the most common operation performed in a computer algebra system. In Physics, this typically entails simplifying tensorial expressions, or expressions involving noncommutative operators that satisfy certain commutator/anticommutator rules, or sums and integrals involving quantum operators and Dirac delta functions in the summands and integrands. Relevant enhancements were introduced in Maple 2015 for all these cases, including enhancements in the simplification of:

• 

Products of LeviCivita tensors in curved spacetimes when LeviCivita represents the Galilean pseudo-tensor (related to Setup(levicivita = Galilean)), instead of its generalization to curved spaces (related to Setup(levicivita = nongalilean)).

• 

Tensorial expressions in general that have spacetime, space, and/or tetrad contracted indices, possibly at the same time.

• 

New option tryhard, that resolves zero recognition in an important number of nontrivial situations.

• 

Expressions involving the Dirac function.

• 

Vectorial expressions involving cylindrical or spherical coordinates and related unit vectors.

• 

Expressions simplified with respect to side relations (equations) in the presence of quantum vectorial equations.

• 

Expressions involving products of quantum operators entering parameterized algebra rules.

• 

Expressions involving vectorial quantum operators simplified with respect to other vectorial equations.

• 

Add support for the simplification and integration of spherical harmonics (SphericalY ) relevant in quantum mechanics.

Examples

• 

Enhancements in the simplification of tensorial expressions.

> 

restart;withPhysics: Setupnotation = true, coordinates = X

* Partial match of 'notation' against keyword 'mathematicalnotation'

* Partial match of 'coordinates' against keyword 'coordinatesystems'

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,mathematicalnotation=true

(1)
• 

Define a tensor lμX and define the metric in terms of the components of this tensor so that gμ,ν=ημ,ν+lμ⁢lν and ημ,ν is a Minkowski metric.

> 

lμ,ημ,ν=−rhs⁡g_Minkowski

The Minkowski metric in cartesian coordinates

> 

Defined objects with tensor properties

γμ,σμ,Xμ,∂μ,ημ,ν,gμ,ν,lμ,δμ,ν,εα,β,μ,ν

(2)
• 

Avoid redundant display:

> 

PDEtools:-declarelX

l⁡x1,x2,x3,x4⁢will now be displayed as⁢l

(3)
• 

The metric:

> 

g_mu,nu = ημ,ν+lμ⁡X⁢lν⁡X

gμ,ν=ημ,ν+lμ⁢lν

(4)
• 

New: you can define it directly using a tensorial equation like (4), using either Define or Setup.

> 

Define

Defined objects with tensor properties

𝒟μ,γμ,σμ,Rμ,ν,Rμ,ν,α,β,Cμ,ν,α,β,Xμ,∂μ,ημ,ν,gμ,ν,lμ,Γμ,ν,α,Gμ,ν,δμ,ν,εα,β,μ,ν

(5)
• 

Verify the resulting gμ,ν:

> 

g_

gμ,ν=1+l12l1⁢l2l1⁢l3l1⁢l4l1⁢l21+l22l2⁢l3l2⁢l4l1⁢l3l2⁢l31+l32l3⁢l4l1⁢l4l2⁢l4l3⁢l4−1+l42

(6)
• 

New: you can query about the definition you gave for any tensor directly from the tensor itself.

> 

g_definition

gμ,ν=ημ,ν+lμ⁢lν

(7)
• 

Enhanced simplification capabilities: show that this expression involving derivatives of lμ⁡X is equal to zero.

> 

−d_α⁡lλ⁡X⁢η⁢α,β⁢α,β⁢d_β⁡lκ⁡X⁢l⁢κ⁢κ⁡X⁢l⁢λ⁢λ⁡X+η⁢α,β⁢α,β⁢d_β⁡lκ⁡X⁢d_λ⁡lα⁡X⁢l⁢κ⁢κ⁡X⁢l⁢λ⁢λ⁡X+d_λ⁡lκ⁡X⁢d_ρ⁡l⁢ρ⁢ρ⁡X⁢l⁢κ⁢κ⁡X⁢l⁢λ⁢λ⁡X+d_β⁡d_λ⁡lκ⁡X⁢l⁢β⁢β⁡X⁢l⁢κ⁢κ⁡X⁢l⁢λ⁢λ⁡X−12⁢l⁢μ⁢μ⁡X⁢l⁢ν⁢ν⁡X⁢d_ρ⁡l⁢ρ⁢ρ⁡X⁢d_μ⁡lν⁡X−12⁢l⁢μ⁢μ⁡X⁢l⁢ν⁢ν⁡X⁢l⁢ρ⁢ρ⁡X⁢d_ρ⁡d_μ⁡lν⁡X−12⁢l⁢μ⁢μ⁡X⁢l⁢ν⁢ν⁡X⁢d_ρ⁡l⁢ρ⁢ρ⁡X⁢d_ν⁡lμ⁡X−12⁢l⁢μ⁢μ⁡X⁢l⁢ν⁢ν⁡X⁢l⁢ρ⁢ρ⁡X⁢d_ρ⁡d_ν⁡lμ⁡X+12⁢l⁢μ⁢μ⁡X⁢l⁢ν⁢ν⁡X⁢η⁢α,ρ⁢α,ρ⁢d_ρ⁡lμ⁡X⁢d_α⁡lν⁡X−12⁢l⁢μ⁢μ⁡X⁢l⁢ν⁢ν⁡X⁢η⁢α,ρ⁢α,ρ⁢d_μ⁡lα⁡X⁢d_ρ⁡lν⁡X+12⁢l⁢μ⁢μ⁡X⁢l⁢ν⁢ν⁡X⁢η⁢α,ρ⁢α,ρ⁢d_α⁡lμ⁡X⁢d_ρ⁡lν⁡X−12⁢l⁢μ⁢μ⁡X⁢l⁢ν⁢ν⁡X⁢η⁢α,ρ⁢α,ρ⁢d_ν⁡lα⁡X⁢d_ρ⁡lμ⁡X−12⁢l⁢μ⁢μ⁡X⁢l⁢ν⁢ν⁡X⁢l⁢α⁢α⁡X⁢l⁢ρ⁢ρ⁡X⁢d_ρ⁡lν⁡X⁢d_α⁡lμ⁡X+12⁢l⁢μ⁢μ⁡X⁢l⁢ν⁢ν⁡X⁢l⁢α⁢α⁡X⁢l⁢ρ⁢ρ⁡X⁢d_μ⁡lα⁡X⁢d_ρ⁡lν⁡X−12⁢l⁢μ⁢μ⁡X⁢l⁢ν⁢ν⁡X⁢l⁢α⁢α⁡X⁢l⁢ρ⁢ρ⁡X⁢d_ρ⁡lμ⁡X⁢d_α⁡lν⁡X+12⁢l⁢μ⁢μ⁡X⁢l⁢ν⁢ν⁡X⁢l⁢α⁢α⁡X⁢l⁢ρ⁢ρ⁡X⁢d_ν⁡lα⁡X⁢d_ρ⁡lμ⁡X

−∂α⁡lλ⁢η⁢α,β⁢α,β⁢∂β⁡lκ⁢l⁢κ⁢κ⁢l⁢λ⁢λ+η⁢α,β⁢α,β⁢∂β⁡lκ⁢∂λ⁡lα⁢l⁢κ⁢κ⁢l⁢λ⁢λ+∂λ⁡lκ⁢∂ρ⁡l⁢ρ⁢ρ⁢l⁢κ⁢κ⁢l⁢λ⁢λ+∂β⁡∂λ⁡lκ⁢l⁢β⁢β⁢l⁢κ⁢κ⁢l⁢λ⁢λ−l⁢μ⁢μ⁢l⁢ν⁢ν⁢∂ρ⁡l⁢ρ⁢ρ⁢∂μ⁡lν2−l⁢μ⁢μ⁢l⁢ν⁢ν⁢l⁢ρ⁢ρ⁢∂ρ⁡∂μ⁡lν2−l⁢μ⁢μ⁢l⁢ν⁢ν⁢∂ρ⁡l⁢ρ⁢ρ⁢∂ν⁡lμ2−l⁢μ⁢μ⁢l⁢ν⁢ν⁢l⁢ρ⁢ρ⁢∂ρ⁡∂ν⁡lμ2+l⁢μ⁢μ⁢l⁢ν⁢ν⁢η⁢α,ρ⁢α,ρ⁢∂ρ⁡lμ⁢∂α⁡lν2−l⁢μ⁢μ⁢l⁢ν⁢ν⁢η⁢α,ρ⁢α,ρ⁢∂μ⁡lα⁢∂ρ⁡lν2+l⁢μ⁢μ⁢l⁢ν⁢ν⁢η⁢α,ρ⁢α,ρ⁢∂α⁡lμ⁢∂ρ⁡lν2−l⁢μ⁢μ⁢l⁢ν⁢ν⁢η⁢α,ρ⁢α,ρ⁢∂ν⁡lα⁢∂ρ⁡lμ2−l⁢μ⁢μ⁢l⁢ν⁢ν⁢l⁢α⁢α⁢l⁢ρ⁢ρ⁢∂ρ⁡lν⁢∂α⁡lμ2+l⁢μ⁢μ⁢l⁢ν⁢ν⁢l⁢α⁢α⁢l⁢ρ⁢ρ⁢∂μ⁡lα⁢∂ρ⁡lν2−l⁢μ⁢μ⁢l⁢ν⁢ν⁢l⁢α⁢α⁢l⁢ρ⁢ρ⁢∂ρ⁡lμ⁢∂α⁡lν2+l⁢μ⁢μ⁢l⁢ν⁢ν⁢l⁢α⁢α⁢l⁢ρ⁢ρ⁢∂ν⁡lα⁢∂ρ⁡lμ2

(8)
> 

Simplify

0

(9)
• 

A new tryhard option significantly improves zero recognition, which also got improved regardless of the new option.

Set spacetimeindices to be represented with lowercase Latin letters to make the input simpler.

> 

Setupspacetimeindices = lowercaselatin

spacetimeindices=lowercaselatin

(10)
> 

DefineAa, Ba, b, Fa, b, c, Ha, b, c, d, Ja, b, c, d, e

Defined objects with tensor properties

Aa,Ba,b,𝒟μ,γμ,Fa,b,c,Ha,b,c,d,Ja,b,c,d,e,σμ,Rμ,ν,Rμ,ν,α,β,Cμ,ν,α,β,Xμ,∂μ,ημ,ν,gμ,ν,lμ,Γμ,ν,α,Gμ,ν,δμ,ν,εα,β,μ,ν

(11)

 

Consider the following tensorial expressions.

> 

e__1≔Ac⁢Hd,h,c,b⁢Fh,d,f⁢Ha,e,e,f−Ah⁢Ha,c,c,f⁢Fe,d,f⁢Hd,e,h,b

e__1≔Ha,eefa,eef⁢Hd,h,c,b⁢F⁢h,d,f⁢h,d,f⁢A⁢c⁢c−Ha,ccfa,ccf⁢Hd,e,h,b⁢F⁢e,d,f⁢e,d,f⁢A⁢h⁢h

(12)
> 

e__2≔Jf,a,b,g,c⁢Fe,f,d⁢Fe,d,g−Je,a,b,f,c⁢Fd,e,g⁢Fd,g,f

e__2≔−Je,a,b,f,c⁢Fdegdeg⁢F⁢d,g,f⁢d,g,f+Jf,a,b,g,c⁢Fe,dge,dg⁢F⁢e,f,d⁢e,f,d

(13)
> 

e__3≔Jg,c,k,j,e⁢Hi,h,a,h⁢He,b,i,g⁢Fd,k,j−Hh,b,g,j⁢Fd,k,e⁢Jj,c,k,e,h⁢Hg,i,a,i

e__3≔−Jj,c,k,e,h⁢Hg,i,aig,i,ai⁢H⁢hbg,j⁢hbg,j⁢Fdk,edk,e+Jg,c,k,j,e⁢H⁢eb,ig⁢eb,ig⁢H⁢ih,ah⁢ih,ah⁢Fdk,jdk,j

(14)

There are two, three and four free indices, and five, four and six repeated indices respectively in each of these three expressions, e__1,e__2,e__3 (see Check).

> 

mapu → Checku,all,quiet, e__1,e__2,e__3

c,d,e,f,h,c,d,e,f,h,a,b,d,e,f,g,d,e,f,g,a,b,c,e,g,h,i,j,k,e,g,h,i,j,k,a,b,c,d

(15)
> 

Simplifye__1,tryhard

0

(16)
> 

Simplifye__2,tryhard

0

(17)
> 

Simplifye__3

0

(18)
• 

Improve the simplification with respect to side relations (equations) in the presence of quantum vectorial equations.

> 

withVectors:

> 

Setupredo, hermitianoperators = L,r_, p_, x,y,z, p, quantumoperators = A, B

hermitianoperators=L,p,p→,r→,x,y,z,quantumoperators=A,B,L,p,p→,r→,x,y,z

(19)
• 

The identification of the vectorial character of expressions got improved. For example, this commutator is actually a non-projected vector.

> 

Commutatorp_·p_,r_

p→2,r→−

(20)

 

> 

Identify

5

(21)
• 

Consider an expression involving vectorial quantum operators.

> 

interfaceimaginaryunit = i

I

(22)
> 

_i⋅ⅈ⁢x⁢pz−ⅈ⁢z⁢px+_j⋅ⅈ⁢y⁢pz−ⅈ⁢z⁢py

i∧⁢ⅈ⁢x⁢pz−ⅈ⁢z⁢px+j∧⁢ⅈ⁢y⁢pz−ⅈ⁢z⁢py

(23)
• 

Simplify (23) taking into account the definition of angular momentum.

> 

y⁢pz−z⁢py=Lx,z⁢px−x⁢pz=Ly

y⁢pz−z⁢py=Lx,z⁢px−x⁢pz=Ly

(24)
> 

simplify,

−ⅈ⁢i∧⁢Ly+ⅈ⁢j∧⁢Lx

(25)
• 

Enhancements in the simplification and integration of spherical harmonics (SphericalY) relevant in quantum mechanics.

> 

18648640⁢7293⁢ⅇ6⁢I⁢theta⁢1−cos⁡phi23⁢20270252⁢cos⁡phi2−1351352π+SphericalY8,6,phi,theta

7293⁢ⅇ6⁢ⅈ⁢θ⁢1−cos⁡φ23⁢2027025⁢cos⁡φ22−13513528648640⁢π+Y86⁡φ,θ

(26)
> 

simplify

0

(27)
> 

conjugateSphericalY8,6,phi,theta*1+1/5*sin6*theta*sin5*phi*sinphi

Y86⁡φ,θ&conjugate0;⁢1+sin⁡6⁢θ⁢sin⁡5⁢φ5⁢sin⁡φ

(28)
> 

IntInt,theta=0..2 Pi, phi=0..Pi

∫0π∫02⁢πY86⁡φ,θ&conjugate0;⁢1+sin⁡6⁢θ⁢sin⁡5⁢φ5⁢sin⁡φⅆθⅆφ

(29)
> 

value

−37⁢ⅈ81920⁢π32⁢7293

(30)

 

Tensors

A number of relevant changes happened in the tensor routines of the Physics package, towards making the routines pack more functionality, the simplification more powerful, and the handling of symmetries, substitutions, and other operations more flexible and natural.

• 

Physics now works with four kinds of Minkowski spaces (different signatures) to accommodate the typical situations seen in textbooks; to these, correspond the signatures +---, ---+, -+++ and +++-.

• 

Allow setting the metric by specifying the signature directly, as in g_[`-`] or g_[`+---`], or Setup⁡metric=`---+` or Setup⁡gμ,ν=`---+`.

• 

The signature keyword of the Physics Setup is now in use, to set the metric and to indicate the form of the orthonormal tetrad, in turn used to derive the form of a null tetrad.

• 

Automatic detection of the position of t as the time variable when you set the coordinates automatically sets the signature of the default Minkowski spacetime metric accordingly to ---+ or +---.

• 

New keywords with special meaning when indexing the Physics (also the user defined) tensors:
· `~`; for example g_[`~`] returns the all-contravariant matrix form of the metric.
· definition; for example Ricci[definition] returns the definition of the Ricci tensor; works also with user-defined tensors.
· scalars; for example Weyl[scalars] and Ricci[scalars] return the five Weyl and seven Ricci scalars used to perform a Petrov classification and in the Newman-Penrose formalism.
· scalarsdefinition, and invariantsdefinition; for example Weyl[scalarsdefinition] or Riemann[invariantsdefinition] return the corresponding definitions for the scalars and invariants.
· nullvectors; for example, when the new Tetrads subpackage is loaded, e_[nullvectors] returns a sequence of null vectors with their products normalized according to the Newman-Penrose formalism.
· matrix; this keyword was introduced in previous releases, and in Maple 2015 it can appear after a space index (not spacetime), in which case a matrix with only the space components is returned.

• 

Tensorial expressions can now have spacetime indices (related to a global system of references) and tetrad indices (related to a local system of references) at the same time, or they be rewritten in one (spacetime) or the other (tetrad) frames.

• 

The matrix keyword can be used with spacetime, space, or tetrad indices, resulting in the corresponding matrix

• 

Implement automatic determination of symmetry under permutation of tensor indices when the tensor is defined as a matrix.

• 

New conversions from the Weyl to the Ricci tensors, and from Weyl to the Christoffel symbols.

• 

New option evaluatetrace = true or false within convert/Ricci, to avoid automatically evaluating the Ricci trace when performing conversions that involve this trace.

• 

New option 'evaluate' to convert/g_, convert/Christoffel and convert/Ricci. With this option set to false, it is possible to see the algebraic form of the result (that is, of the tensors involved) before evaluating it.

• 

The Maple 18 Library:-SubstituteTensor command, got enhanced and transformed into one of the main Physics commands, that substitutes tensorial equation(s) Eqs into an expression, taking care of the free and repeated indices, such that: 1) equations in Eqs are interpreted as mappings having the free indices as parameters, 2) repeated indices in Eqs do not clash with repeated indices in the expression and 3) spacetime, space, and tetrad indices are handled independently, so they can all be present in Eqs and in the expression at the same time. This new command can also substitute algebraic sub-expressions of type product or sum within the expression, generalizing and unifying the functionality of the subs and algsubs commands for algebraic tensor expressions.

Examples

• 

Minkowski spacetime: four different conventions.

> 

restart; withPhysics: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

(31)

By default, the metric has a signature - - - +, with time in the last position.

> 

g_

> 

x0

x4

(32)

You can now set the signature of a Minkowski spacetime directly from the metric, or using the Setup keyword signature to use any of the four conventions frequently found in textbooks (- - - +), (+ - - -), (+++ -), and (- +++), and to indicate an Euclidean spacetime you can indicate (++++) or just +.

> 

g_`+`

Changing the signature of the tensor spacetime to: + + + +

The Euclidean metric in coordinates x1,x2,x3,x4

> 

g_`+++-`

The Minkowski metric, with signature + + + -, in coordinates x1,x2,x3,x4

Using Setup's signature keyword:

> 

Setupsignature = `- +++`

signature=- + + +

(33)
> 

g_

• 

The position of the different sign in a Minkowski spacetime always, either the first or the last symbol in the signature, refers to the time variable. So if you indicate t as one of the coordinates, say in the first position, and the signature is not in agreement with time in the first position, it is now automatically corrected and the metric set. For example, in this moment, due to (33), time is implicitly assumed to be in the first position; set coordinates with t in the last (fourth) position.

> 

CoordinatesX=x,y,z,t

Detected `t`, the time variable, in position 4. Changing the signature of the spacetime metric accordingly, to: + + + -

Default differentiation variables for d_, D_ and dAlembertian are: X=x,y,z,t

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

X

(34)
> 

g_

• 

New shortcut for the matrix form of the all contravariant components of a tensor.

Since previous releases, you can always request the matrix (or array in the case of more than 2 indices) form of a tensor by adding the keyword matrix as a last index. For example, g_μ,ν,matrix . A shortcut notation for the all covariant components is to omit the indices, as in . A new shortcut notation for the all contravariant components is to pass only they tilde `~`. To see the difference, consider a non-Minkowski spacetime, for instance set it in one go via:

> 

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

The all contravariant components of the metric are:

> 

g_`~`

• 

It is now possible to also use the keyword matrix passing only space (not spacetime) indices, resulting in a matrix with only the space components.

> 

Setupspaceindices=lowercase_is

spaceindices=lowercaselatin_is

(35)
> 

g_~i,~j, matrix

g⁢i,j⁢i,j=−r+2⁢mr000−1r2000−1r2⁢sin⁡θ2

(36)

 

• 

All the tensor predefined in the Physics package, or defined using defining equations and the Define command, accept a new keyword, definition, that returns their definition. For example:

> 

Riccidefinition

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

(37)
> 

Einsteindefinition

Gμ,ν=Rμ,ν−gμ,ν⁢Rαααα2

(38)

Define a tensor using a tensorial equation:

> 

PDEtools:-declareAX

A⁡r,θ,φ,t⁢will now be displayed as⁢A

(39)
> 

Fmu,nu = d_muAnuX − d_nuAmuX

Fμ,ν=∂μ⁡Aν−∂ν⁡Aμ

(40)

Note that for consistency of free indices, if you now define the left-hand side Fμ,ν as a tensor, in the right-hand side Aμ is also a tensor and so is automatically defined as well.

> 

Define

Defined objects with tensor properties

Aμ,𝒟μ,γμ,Fμ,ν,σμ,Rμ,ν,Rμ,ν,α,β,Cμ,ν,α,β,Xμ,∂μ,gμ,ν,Γμ,ν,α,Gμ,ν,δμ,ν,εα,β,μ,ν

(41)

Check the definition of Fμ,ν:

> 

Fdefinition

Fμ,ν=∂μ⁡Aν−∂ν⁡Aμ

(42)
• 

A new keyword scalars for the Weyl and Ricci tensors, generates the Weyl and Ricci scalars of the Newman-Penrose formalism. Correspondingly, another new keyword scalarsdefinition return the definition of these scalars.

> 

Weylscalars

ψ__0=0,ψ__1=0,ψ__2=mr3,ψ__3=0,ψ__4=0

(43)
> 

Weylscalarsdefinition

ψ__0=C⁢μ,ν,α,β⁢μ,ν,α,β⁢lμ⁢mν⁢lα⁢mβ,ψ__1=C⁢μ,ν,α,β⁢μ,ν,α,β⁢lμ⁢nν⁢lα⁢mβ,ψ__2=C⁢μ,ν,α,β⁢μ,ν,α,β⁢lμ⁢mν⁢m&conjugate0;α⁢nβ,ψ__3=C⁢μ,ν,α,β⁢μ,ν,α,β⁢lμ⁢nν⁢m&conjugate0;α⁢nβ,ψ__4=C⁢μ,ν,α,β⁢μ,ν,α,β⁢nμ⁢m&conjugate0;ν⁢nα⁢m&conjugate0;β

(44)

In the definition earlier, the tensors lμ,nμ,mμ,m&conjugate0;μ are the null tensors of the Newman-Penrose formalism, implemented in Maple 2015 within the new Tetrads package.

> 

withTetrads

Setting lowercaselatin_ah letters to represent tetrad indices

Defined as tetrad tensors see ?Physics,tetrads,𝔢a,μ,ηa,b,γa,b,c,λa,b,c

Defined as spacetime tensors representing the NP null vectors of the tetrad formalism see ?Physics,tetrads,lμ,nμ,mμ,m&conjugate0;μ

IsTetrad,NullTetrad,OrthonormalTetrad,SimplifyTetrad,TransformTetrad,e_,eta_,gamma_,l_,lambda_,m_,mb_,n_

(45)

In this new Tetrads package, 𝔢a,μ is the tetrad (vierbein), by default an orthonormal tetrad that can be set to be a null tetrad using Setup⁡tetrad=null, γa,b,c,λa,b,c are respectively the Ricci rotation coefficients and the lambda tensor defined in the "Landau, L.D., and Lifshitz, E.M. The Classical Theory of Fields, Course of Theoretical Physics Volume 2" (definitions (98.9) and (98.10))

For instance, the form of the orthonormal tetrad for the Schwarzschild metric set in  is:

> 

e_

𝔢a,μ=r−r+2⁢m0000−I⁢r0000−I⁢r⁢sin⁡θ0000−r+2⁢mr

(46)

A new keyword for the tetrad 𝔢a,μ is nullvectors:

> 

e_nullvectors

lμ=2⁢r2⁢−r+2⁢m002⁢−r+2⁢m2⁢r,nμ=−2⁢r2⁢−r+2⁢m002⁢−r+2⁢m2⁢r,mμ=0−I2⁢2⁢r2⁢r⁢sin⁡θ20,m&conjugate0;μ=0−I2⁢2⁢r−2⁢r⁢sin⁡θ20

(47)

The matrix keyword can be used with different kinds of indices, representing different objects. For example, the spacetime components of the electromagnetic tensor defined in equation (40) are:

> 

F

Fμ,ν=0A2r−A1θA3r−A1φA4r−A1tA1θ−A2r0A3θ−A2φA4θ−A2tA1φ−A3rA2φ−A3θ0A4φ−A3tA1t−A4rA2t−A4θA3t−A4φ0

(48)

The components of this tensor in the local inertial (tetrad) system of references are:

> 

Fa,b,matrix

Fa,b=0I⁢−r+2⁢m⁢A2r−A1θr32I⁢−r+2⁢m⁢A3r−A1φr32⁢sin⁡θA1t−A4r−I⁢−r+2⁢m⁢A2r−A1θr320A2φ−A3θr2⁢sin⁡θI⁢A2t−A4θ−r+2⁢m⁢r−I⁢−r+2⁢m⁢A3r−A1φr32⁢sin⁡θA3θ−A2φr2⁢sin⁡θ0I⁢A3t−A4φ−r+2⁢m⁢r⁢sin⁡θA4r−A1tI⁢A4θ−A2tr⁢−r+2⁢mI⁢A4φ−A3tr⁢sin⁡θ⁢−r+2⁢m0

(49)

Likewise, the nonzero components of the Riemann tensor in the global (spacetime, Greek indices) and local (tetrad, lowercase roman indices from a to h) system of references are:

> 

Riemannnonzero

Rμ,ν,α,β=1,2,1,2=−m−r+2⁢m,1,2,2,1=m−r+2⁢m,1,3,1,3=−m⁢sin⁡θ2−r+2⁢m,1,3,3,1=m⁢sin⁡θ2−r+2⁢m,1,4,1,4=2⁢mr3,1,4,4,1=−2⁢mr3,2,1,1,2=m−r+2⁢m,2,1,2,1=−m−r+2⁢m,2,3,2,3=−2⁢r⁢m⁢sin⁡θ2,2,3,3,2=2⁢r⁢m⁢sin⁡θ2,2,4,2,4=−r+2⁢m⁢mr2,2,4,4,2=−2⁢m2+m⁢rr2,3,1,1,3=m⁢sin⁡θ2−r+2⁢m,3,1,3,1=−m⁢sin⁡θ2−r+2⁢m,3,2,2,3=2⁢r⁢m⁢sin⁡θ2,3,2,3,2=−2⁢r⁢m⁢sin⁡θ2,3,4,3,4=sin⁡θ2⁢−r+2⁢m⁢mr2,3,4,4,3=−sin⁡θ2⁢−r+2⁢m⁢mr2,4,1,1,4=−2⁢mr3,4,1,4,1=2⁢mr3,4,2,2,4=−2⁢m2+m⁢rr2,4,2,4,2=−r+2⁢m⁢mr2,4,3,3,4=−sin⁡θ2⁢−r+2⁢m⁢mr2,4,3,4,3=sin⁡θ2⁢−r+2⁢m⁢mr2

(50)
> 

Riemanna,b,c,d,nonzero

Ra,b,c,d=1,2,1,2=mr3,1,2,2,1=−mr3,1,3,1,3=mr3,1,3,3,1=−mr3,1,4,1,4=2⁢mr3,1,4,4,1=−2⁢mr3,2,1,1,2=−mr3,2,1,2,1=mr3,2,3,2,3=−2⁢mr3,2,3,3,2=2⁢mr3,2,4,2,4=−mr3,2,4,4,2=mr3,3,1,1,3=−mr3,3,1,3,1=mr3,3,2,2,3=2⁢mr3,3,2,3,2=−2⁢mr3,3,4,3,4=−mr3,3,4,4,3=mr3,4,1,1,4=−2⁢mr3,4,1,4,1=2⁢mr3,4,2,2,4=mr3,4,2,4,2=−mr3,4,3,3,4=mr3,4,3,4,3=−mr3

(51)
• 

Implement automatic determination of symmetry under permutation of tensor indices when the tensor is defined as a matrix.

Define a tensor using a symmetric matrix on the right-hand-side:

> 

Mmu, nu = Matrix4, symbol=m, shape=symmetric

> 

Defined objects with tensor properties

Aμ,𝒟μ,γμ,Fμ,ν,Mμ,ν,σμ,Rμ,ν,Rμ,ν,α,β,Cμ,ν,α,β,Xμ,∂μ,𝔢a,μ,ηa,b,gμ,ν,γa,b,c,lμ,λa,b,c,mμ,m&conjugate0;μ,nμ,Γμ,ν,α,Gμ,ν,δμ,ν,εα,β,μ,ν

(52)

Check whether the system detected that ηα,β is symmetric under permutation of α,β.

> 

Library:−IsTensorialSymmetric⁡Mα,β

true

(53)

Hence, the indices of this tensor are automatically normalized taking this symmetry into account, so that:

> 

Mα,β

Mα,β

(54)
> 

Mβ,α

Mα,β

(55)
> 

−

0

(56)

 

Tetrads in General Relativity

The formalism of tetrads in general relativity got implemented within Physics as a new package, Physics:-Tetrads, with 13 commands, mainly the null vectors of the Newman-Penrose formalism, the tetrad tensors 𝔢a,μ,ηa,b,γa,b,c,λa,b,c, respectively: the tetrad, the tetrad metric, the Ricci rotation coefficients, and the lambda tensor, plus five algebraic manipulation commands: IsTetrad, NullTetrad, OrthonormalTetrad, SimplifyTetrad, and TransformTetrad to construct orthonormal and null tetrads of different forms and using different methods.

Examples

The new Tetrads package contains 13 commands for computing in a local (tetrad) frame. Tensor components in the local frame are represented with tetrad indices using a type of letter different than the one representing global spacetime indices. You can set the type of letter using Setup, or just load the new package and the type of letter will be set automatically.

> 

restart;withPhysics:withTetrads;

Setting lowercaselatin letters to represent tetrad indices

Defined as tetrad tensors see ?Physics,tetrads,𝔢a,μ,ηa,b,γa,b,c,λa,b,c

Defined as spacetime tensors representing the NP null vectors of the tetrad formalism see ?Physics,tetrads,lμ,nμ,mμ,m&conjugate0;μ

IsTetrad,NullTetrad,OrthonormalTetrad,SimplifyTetrad,TransformTetrad,e_,eta_,gamma_,l_,lambda_,m_,mb_,n_

(57)

The most relevant commands are 𝔢a,μ and ηa,b, respectively representing the tetrad (also vierbein; by default, this is an orthonormal tetrad) and the tetrad metric (that is, the metric of the local - by default inertial - frame)

> 

e_definition

𝔢a,μ⁢𝔢bμbμ=ηa,b

(58)

Then γa,b,c are the Ricci rotation coefficients and λa,b,c is a linear combination of them, according to the definitions in the "Landau, L.D., and Lifshitz, E.M. The Classical Theory of Fields, Course of Theoretical Physics Volume 2" (definitions (98.9) and (98.10)).

> 

gamma_definition

γa,b,c=𝒟ν⁡𝔢a,μ⁢𝔢bμbμ⁢𝔢cνcν

(59)
> 

lambda_definition

λa,b,c=𝒟ν⁡𝔢a,μ−𝒟μ⁡𝔢a,ν⁢𝔢bμbμ⁢𝔢cνcν

(60)

The lμ,nμ,mμ,m&conjugate0;μ tensors are the null tensors of the Newman-Penrose formalism and the commands  IsTetrad,NullTetrad,OrthonormalTetrad,SimplifyTetrad,TransformTetrad are for manipulating and exploring different forms of tetrads.

 

In a flat space, the spacetime and tetrad metrics are the same, so the orthonormal tetrad is just the identity.

> 

g_

> 

eta_

> 

e_

𝔢a,μ=1000010000100001

(61)

In a curved spacetime, for instance, set a "Local Rotational Symmetry metric" metric:

> 

g_13,7,5

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

Default differentiation variables for d_, D_ and dAlembertian are: X=x,y,z,t

The metric in coordinates x,y,z,t

Parameters: ε,A⁡t,B⁡t

Comments: _ⅇpsⅈlon=1 or _ⅇpsⅈlon=-1

> 

PDEtools:-declareAt, Bt

A⁡t⁢will now be displayed as⁢A

B⁡t⁢will now be displayed as⁢B

(62)

The default orthonormal tetrad is:

> 

e_

𝔢a,μ=−I⁢ε⁢A0000−I⁢cosh⁡2⁢x⁢B⁢ⅇA⁢xI⁢sinh⁡2⁢x⁢B⁢ⅇA⁢xcosh⁡2⁢x000−I⁢B⁢ⅇA⁢xcosh⁡2⁢x0000I⁢ε

(63)

The following null vectors correspond to this tetrad:

> 

e_nullvectors

lμ=−I2⁢2⁢ε⁢A00I2⁢2⁢ε,nμ=I2⁢2⁢ε⁢A00I2⁢2⁢ε,mμ=0−I2⁢2⁢cosh⁡2⁢x⁢B⁢ⅇA⁢x2⁢B⁢ⅇA⁢x⁢I⁢sinh⁡2⁢x+12⁢cosh⁡2⁢x0,m&conjugate0;μ=0−I2⁢2⁢cosh⁡2⁢x⁢B⁢ⅇA⁢x2⁢B⁢ⅇA⁢x⁢I⁢sinh⁡2⁢x−12⁢cosh⁡2⁢x0

(64)

You can compute these null vectors directly since these are also part of the Tetrads package:

> 

l_mu2,l_mu n_mu,l_mu m_mu,l_mu mb_mu

lμ⁢l⁢μ⁢μ,lμ⁢n⁢μ⁢μ,lμ⁢m⁢μ⁢μ,m&conjugate0;μ⁢l⁢μ⁢μ

(65)
> 

mapu → u = SumOverRepeatedIndicesu, 

lμ⁢l⁢μ⁢μ=0,lμ⁢n⁢μ⁢μ=1,lμ⁢m⁢μ⁢μ=0,m&conjugate0;μ⁢l⁢μ⁢μ=0

(66)

You can query about their definition in the same way you can now query any other tensor:

> 

m_definition

mμ⁢l⁢μ⁢μ=0,mμ⁢n⁢μ⁢μ=0,mμ⁢m⁢μ⁢μ=0,mμ⁢m&conjugate0;⁢μ⁢μ=−1,gμ,ν=lμ⁢nν+lν⁢nμ−mμ⁢m&conjugate0;ν−mν⁢m&conjugate0;μ

(67)

Now that this definition depends on the signature:

> 

Setupsignature

signature=- - - +

(68)

Change the signature, both in sign and placing time in position 1:

> 

Setupsignature=`- +++`

signature=- + + +

(69)

So, now mμ⁢m&conjugate0;⁢μ⁢μ=1 instead of −1 and there is a change in the sign of the definition in terms of the metric gμ,ν if compared with (67).

> 

m_definition

mμ⁢l⁢μ⁢μ=0,mμ⁢n⁢μ⁢μ=0,mμ⁢m⁢μ⁢μ=0,mμ⁢m&conjugate0;⁢μ⁢μ=1,gμ,ν=−lμ⁢nν−lν⁢nμ+mμ⁢m&conjugate0;ν+mν⁢m&conjugate0;μ

(70)

You can verify these tensorial identities using TensorArray; for example, for the last equation:

> 

−1

gμ,ν=−lμ⁢nν−lν⁢nμ+mμ⁢m&conjugate0;ν+mν⁢m&conjugate0;μ

(71)
> 

TensorArray,simplifier=simplify@expand

ε⁢A2=ε⁢A20=00=00=00=0B2⁢ⅇ2⁢A⁢x⁢2⁢cosh⁡x2−1=B2⁢ⅇ2⁢A⁢x⁢2⁢cosh⁡x2−1−2⁢B2⁢ⅇ2⁢A⁢x⁢cosh⁡x⁢sinh⁡x=−2⁢B2⁢ⅇ2⁢A⁢x⁢cosh⁡x⁢sinh⁡x0=00=0−2⁢B2⁢ⅇ2⁢A⁢x⁢cosh⁡x⁢sinh⁡x=−2⁢B2⁢ⅇ2⁢A⁢x⁢cosh⁡x⁢sinh⁡xB2⁢ⅇ2⁢A⁢x⁢2⁢cosh⁡x2−1=B2⁢ⅇ2⁢A⁢x⁢2⁢cosh⁡x2−10=00=00=00=0−ε=−ε

(72)

To compute with a null tetrad instead of an orthonormal tetrad, set the tetrad or tetradmetric to null using Setup.

> 

Setuptetradmetric = null

tetradmetric=1,2=−1,3,4=1

(73)

So, now the metric of the local (tetrad) system of references is:

> 

eta_

Note: this form of the null tetrad metric is consistent with time in position 1, a change done in (69)- and not with time in position 4 (default). You can in any case redefine the tetrad metric in any particular way also using Setup⁡tetradmetric=...a symmetric matrix here....

 

The null tetrad is now:

> 

e_

𝔢a,μ=−I2⁢2⁢ε⁢A2⁢cosh⁡2⁢x⁢B⁢ⅇA⁢x2−2⁢sinh⁡2⁢x⁢B⁢ⅇA⁢x2⁢cosh⁡2⁢x0−I2⁢2⁢ε⁢A−2⁢cosh⁡2⁢x⁢B⁢ⅇA⁢x22⁢sinh⁡2⁢x⁢B⁢ⅇA⁢x2⁢cosh⁡2⁢x0002⁢B⁢ⅇA⁢x2⁢cosh⁡2⁢x−2⁢ε2002⁢B⁢ⅇA⁢x2⁢cosh⁡2⁢x2⁢ε2

(74)

Compare this result with the orthonormal tetrad (63).

It is possible to test whether these tetrads satisfy the tetrad definition:

> 

e_definition

𝔢a,μ⁢𝔢bμbμ=ηa,b

(75)

Using the manipulation commands of the package:

> 

IsTetrad

Type of tetrad: orthonormal

true

(76)
> 

IsTetrad

Type of tetrad: null

true

(77)

or, using the TensorArray command as done in (72), by passing to it the definition directly:

> 

TensorArray,simplifier=simplify

0=0−1=−10=00=0−1=−10=00=00=00=00=00=01=10=00=01=10=0

(78)

You can compute different forms of an orthonormal tetrad or a null tetrad using the OrthonormalTetrad or NullTetrad command, respectively, requesting the use of different methods, or passing a starting vector. For instance, this is the default form of an orthonormal tetrad for the current spacetime metric:

> 

OrthonormalTetrad

−I⁢ε⁢A0000cosh⁡2⁢x⁢B⁢ⅇA⁢x−B⁢ⅇA⁢x⁢sinh⁡2⁢xcosh⁡2⁢x000B⁢ⅇA⁢xcosh⁡2⁢x0000I⁢ε

(79)

There are two methods available for computing these tetrads: the GramSchmidt (generalization to curved spaces) and Eigenvectors (based on computing the Eigenvectors of a related matrix). By the default, the Physics package routines decide on what method is more convenient to use for the the spacetime metric set. In this case the routines used the GramSchmidt method; you can check the other method via:

> 

OrthonormalTetradmethod=Eigenvectors

000εA⁢ε0000−2⁢B⁢ⅇA⁢x2⁢2⁢cosh⁡x2−2⁢cosh⁡x⁢sinh⁡x−12⁢B⁢ⅇA⁢x2⁢2⁢cosh⁡x2−2⁢cosh⁡x⁢sinh⁡x−1002⁢B⁢ⅇA⁢x2⁢2⁢cosh⁡x2+2⁢cosh⁡x⁢sinh⁡x−12⁢B⁢ⅇA⁢x2⁢2⁢cosh⁡x2+2⁢cosh⁡x⁢sinh⁡x−10

(80)

If this is an orthonormal tetrad you prefer, you can set it via Setup⁡e_=. To see what would be the null tetrads corresponding to (79) and (80),

> 

NullTetrad

−I2⁢2⁢ε⁢A2⁢cosh⁡2⁢x⁢B⁢ⅇA⁢x2−2⁢sinh⁡2⁢x⁢B⁢ⅇA⁢x2⁢cosh⁡2⁢x0−I2⁢2⁢ε⁢A−2⁢cosh⁡2⁢x⁢B⁢ⅇA⁢x22⁢sinh⁡2⁢x⁢B⁢ⅇA⁢x2⁢cosh⁡2⁢x0002⁢B⁢ⅇA⁢x2⁢cosh⁡2⁢x−2⁢ε2002⁢B⁢ⅇA⁢x2⁢cosh⁡2⁢x2⁢ε2

(81)

 

> 

NullTetradmethod=Eigenvectors

2⁢ε⁢A2002⁢ε2−2⁢ε⁢A2002⁢ε20B⁢ⅇA⁢x⁢I⁢2⁢cosh⁡x2−2⁢cosh⁡x⁢sinh⁡x−1−2⁢cosh⁡x2+2⁢cosh⁡x⁢sinh⁡x−12⁢2⁢cosh⁡x2−2⁢cosh⁡x⁢sinh⁡x−1⁢2⁢cosh⁡x2+2⁢cosh⁡x⁢sinh⁡x−1B⁢ⅇA⁢x⁢I⁢2⁢cosh⁡x2−2⁢cosh⁡x⁢sinh⁡x−1+2⁢cosh⁡x2+2⁢cosh⁡x⁢sinh⁡x−12⁢2⁢cosh⁡x2−2⁢cosh⁡x⁢sinh⁡x−1⁢2⁢cosh⁡x2+2⁢cosh⁡x⁢sinh⁡x−100−B⁢ⅇA⁢x⁢I⁢2⁢cosh⁡x2−2⁢cosh⁡x⁢sinh⁡x−1+2⁢cosh⁡x2+2⁢cosh⁡x⁢sinh⁡x−12⁢2⁢cosh⁡x2−2⁢cosh⁡x⁢sinh⁡x−1⁢2⁢cosh⁡x2+2⁢cosh⁡x⁢sinh⁡x−1−B⁢ⅇA⁢x⁢I⁢2⁢cosh⁡x2−2⁢cosh⁡x⁢sinh⁡x−1−2⁢cosh⁡x2+2⁢cosh⁡x⁢sinh⁡x−12⁢2⁢cosh⁡x2−2⁢cosh⁡x⁢sinh⁡x−1⁢2⁢cosh⁡x2+2⁢cosh⁡x⁢sinh⁡x−10

(82)

When using the GramSchmidt you can also specify the first vector. Recalling, the method works iterating the computation of the "next" vector (line of the tetrad) starting from a first vector. For example, instead of starting from ε⁢A⁡t,0,0,0 start from 0,0,0,1, compare with (79).

> 

OrthonormalTetradfirstvector=0,0,0,1

000ε0cosh⁡2⁢x⁢B⁢ⅇA⁢x−B⁢ⅇA⁢x⁢sinh⁡2⁢xcosh⁡2⁢x000B⁢ⅇA⁢xcosh⁡2⁢x0A⁢ε000

(83)
> 

IsTetrad

Type of tetrad: orthonormal

true

(84)

Compare this other result with (81):

> 

NullTetradfirstvector=0,0,0,1

02⁢cosh⁡2⁢x⁢B⁢ⅇA⁢x2−2⁢sinh⁡2⁢x⁢B⁢ⅇA⁢x2⁢cosh⁡2⁢x2⁢ε20−2⁢cosh⁡2⁢x⁢B⁢ⅇA⁢x22⁢sinh⁡2⁢x⁢B⁢ⅇA⁢x2⁢cosh⁡2⁢x2⁢ε2I2⁢2⁢ε⁢A02⁢B⁢ⅇA⁢x2⁢cosh⁡2⁢x0−I2⁢2⁢ε⁢A02⁢B⁢ⅇA⁢x2⁢cosh⁡2⁢x0

(85)
> 

IsTetrad

Type of tetrad: null

true

(86)

The Ricci rotation coefficients for the spacetime metric set; recalling:

> 

g_

> 

gamma_definition

γa,b,c=𝒟ν⁡𝔢a,μ⁢𝔢bμbμ⁢𝔢cνcν

(87)

Simpler expressions happen for the all contravariant components:

> 

gamma_~1,~a,~b,matrix

γ⁢1,a,b⁢1,a,b=0000−I2⁢2⁢A⁢cosh⁡2⁢x+sinh⁡2⁢xcosh⁡2⁢x⁢ε⁢AI2⁢2⁢A⁢cosh⁡2⁢x+sinh⁡2⁢xcosh⁡2⁢x⁢ε⁢AI⁢2ε⁢4⁢A⁢cosh⁡x2−2⁢AI⁢2ε⁢4⁢A⁢cosh⁡x2−2⁢A−2⁢B⁢cosh⁡x2−12⁢At+−A⁢cosh⁡x2+A2⁢Bt+I⁢B⁢2ε⁢8⁢A⁢cosh⁡x2−4⁢A⁢B−Bt⁢A+At⁢B⁢24⁢A⁢ε⁢BI⁢2⁢2⁢A⁢cosh⁡x2−2⁢cosh⁡x⁢sinh⁡x−Aε⁢8⁢A⁢cosh⁡x2−4⁢AI⁢2⁢2⁢A⁢cosh⁡x2−2⁢cosh⁡x⁢sinh⁡x−Aε⁢8⁢A⁢cosh⁡x2−4⁢A−2⁢B⁢−cosh⁡x2+12⁢At+cosh⁡x2−12⁢A⁢Bt+I⁢B⁢2ε⁢8⁢A⁢cosh⁡x2−4⁢A⁢BBt⁢A+At⁢B⁢24⁢A⁢ε⁢BI⁢2⁢2⁢A⁢cosh⁡x2−2⁢cosh⁡x⁢sinh⁡x−Aε⁢8⁢A⁢cosh⁡x2−4⁢AI⁢2⁢2⁢A⁢cosh⁡x2−2⁢cosh⁡x⁢sinh⁡x−Aε⁢8⁢A⁢cosh⁡x2−4⁢A

(88)

To see all the nonzero components at once, input gamma_nonzero.

 

The Weyl and Ricci scalars of the Newman-Penrose formalism:

> 

Weylscalarsdefinition

ψ__0=C⁢μ,ν,α,β⁢μ,ν,α,β⁢lμ⁢mν⁢lα⁢mβ,ψ__1=C⁢μ,ν,α,β⁢μ,ν,α,β⁢lμ⁢nν⁢lα⁢mβ,ψ__2=C⁢μ,ν,α,β⁢μ,ν,α,β⁢lμ⁢mν⁢m&conjugate0;α⁢nβ,ψ__3=C⁢μ,ν,α,β⁢μ,ν,α,β⁢lμ⁢nν⁢m&conjugate0;α⁢nβ,ψ__4=C⁢μ,ν,α,β⁢μ,ν,α,β⁢nμ⁢m&conjugate0;ν⁢nα⁢m&conjugate0;β

(89)
> 

Weylscalars

ψ__0=2⁢cosh⁡x2−12⁢A⁢B2⁢At,t−2⁢cosh⁡x2−12⁢A2⁢B⁢Bt,t+A2⁢2⁢cosh⁡x2−1⁢Bt2+2⁢A⁢B⁢I+−cosh⁡x2+12⁢At⁢Bt−2⁢2⁢A⁢cosh⁡x⁢sinh⁡x+I⁢At−2⁢cosh⁡x2+1⁢B28⁢cosh⁡x2−12⁢ε⁢A2⁢B2,ψ__1=2⁢I⁢A⁢cosh⁡x⁢sinh⁡x⁢Bt−2⁢I⁢B⁢cosh⁡x⁢sinh⁡x⁢At+B⁢A2⁢B⁢ε⁢A2⁢cosh⁡2⁢x,ψ__2=2⁢cosh⁡x2−12⁢A⁢B2⁢At,t−2⁢cosh⁡x2−12⁢A2⁢B⁢Bt,t+A2⁢2⁢cosh⁡x2−1⁢Bt2−6⁢I+cosh⁡x23−16⁢At⁢A⁢B⁢Bt+6⁢B2⁢2⁢A⁢cosh⁡x⁢sinh⁡x+I⁢At+2⁢cosh⁡x23−1324⁢cosh⁡x2−12⁢ε⁢A2⁢B2,ψ__3=−2⁢I⁢A⁢cosh⁡x⁢sinh⁡x⁢Bt+2⁢I⁢B⁢cosh⁡x⁢sinh⁡x⁢At−B⁢A2⁢B⁢A2⁢cosh⁡2⁢x⁢ε,ψ__4=2⁢cosh⁡x2−12⁢A⁢B2⁢At,t−2⁢cosh⁡x2−12⁢A2⁢B⁢Bt,t+A2⁢2⁢cosh⁡x2−1⁢Bt2+2⁢A⁢B⁢I+−cosh⁡x2+12⁢At⁢Bt−2⁢2⁢A⁢cosh⁡x⁢sinh⁡x+I⁢At−2⁢cosh⁡x2+1⁢B28⁢cosh⁡x2−12⁢ε⁢A2⁢B2

(90)
> 

Ricciscalarsdefinition

Φ__00=−R⁢μ,ν⁢μ,ν⁢lμ⁢lν,Φ__01=−R⁢μ,ν⁢μ,ν⁢lμ⁢mν,Φ__02=−R⁢μ,ν⁢μ,ν⁢mμ⁢mν,Φ__11=−R⁢μ,ν⁢μ,ν⁢lμ⁢nν+mμ⁢m&conjugate0;ν,Φ__12=−R⁢μ,ν⁢μ,ν⁢nμ⁢mν,Φ__22=−R⁢μ,ν⁢μ,ν⁢nμ⁢nν,Λ=Rμμμμ24

(91)
> 

Ricciscalars

(92)

The all spacetime, then mixed tetrad and spacetime, then all tetrad components of the Ricci tensor; for illustration purposes, use a simpler metric (Tolman), avoiding large algebraic expressions.

> 

g_tol

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

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

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

Parameters: R⁡t,r,E⁡r

> 

PDEtools:-declareRt,r

R⁡t,r⁢will now be displayed as⁢R

(93)
> 

Ricci

Rμ,ν=Rr⁢Rt,r,t⁢R+2⁢Rt⁢Rr,t−2⁢Er1+2⁢E⁡r⁢R0000Rr,t⁢R⁢Rt+R⁢Rt,t⁢Rr+−2⁢E⁡r+Rt2⁢Rr−Er⁢RRr0000Rr,t⁢R⁢Rt+R⁢Rt,t⁢Rr+−2⁢E⁡r+Rt2⁢Rr−Er⁢R⁢sin⁡θ2Rr0000−2⁢Rt,t⁢Rr−Rt,r,t⁢RR⁢Rr

(94)
> 

Riccia,mu,matrix

Ra,μ=2⁢Rt,r,t⁢R+2⁢Rt⁢Rr,t−2⁢Er2⁢−1−2⁢E⁡r⁢R00I2⁢2⁢2⁢Rt,t⁢Rr+Rt,r,t⁢RR⁢Rr0I2⁢2⁢Rr,t⁢R⁢Rt+R⁢Rt,t⁢Rr+−2⁢E⁡r+Rt2⁢Rr−Er⁢RRr⁢R−sin⁡θ⁢2⁢Rr,t⁢R⁢Rt+R⁢Rt,t⁢Rr+−2⁢E⁡r+Rt2⁢Rr−Er⁢R2⁢R⁢Rr00I2⁢2⁢Rr,t⁢R⁢Rt+R⁢Rt,t⁢Rr+−2⁢E⁡r+Rt2⁢Rr−Er⁢RRr⁢Rsin⁡θ⁢2⁢Rr,t⁢R⁢Rt+R⁢Rt,t⁢Rr+−2⁢E⁡r+Rt2⁢Rr−Er⁢R2⁢R⁢Rr0−2⁢Rt,r,t⁢R+2⁢Rt⁢Rr,t−2⁢Er2⁢−1−2⁢E⁡r⁢R00I2⁢2⁢2⁢Rt,t⁢Rr+Rt,r,t⁢RR⁢Rr

(95)
> 

Riccia,b,matrix

Ra,b=2⁢I⁢Rt,t⁢−1−2⁢E⁡r−2⁢Rt⁢Rr,t−Rt,r,t⁢R+2⁢Er⁢Rr+I⁢Rt,r,t⁢R⁢−1−2⁢E⁡r2⁢R⁢Rr200I⁢Rr⁢Rt,r,t⁢R+2⁢Rt⁢Rr,t−2⁢Er⁢−1−2⁢E⁡r+4⁢Rt,t⁢Rr+Rt,r,t⁢R2⁢E⁡r+122+4⁢E⁡r⁢R⁢Rr0−I⁢sin⁡θ+1⁢Rr,t⁢R⁢Rt+R⁢Rt,t⁢Rr+−2⁢E⁡r+Rt2⁢Rr−Er⁢R2⁢R2⁢Rr−Rr,t⁢R⁢Rt+R⁢Rt,t⁢Rr+−2⁢E⁡r+Rt2⁢Rr−Er⁢R⁢I+sin⁡θ2⁢sin⁡θ⁢R2⁢Rr00I⁢sin⁡θ−1⁢Rr,t⁢R⁢Rt+R⁢Rt,t⁢Rr+−2⁢E⁡r+Rt2⁢Rr−Er⁢R2⁢R2⁢Rr−Rr,t⁢R⁢Rt+R⁢Rt,t⁢Rr+−2⁢E⁡r+Rt2⁢Rr−Er⁢R⁢I−sin⁡θ2⁢sin⁡θ⁢R2⁢Rr02⁢I⁢Rt,t⁢−1−2⁢E⁡r+2⁢Rt⁢Rr,t+Rt,r,t⁢R−2⁢Er⁢Rr+I⁢Rt,r,t⁢R⁢−1−2⁢E⁡r2⁢R⁢Rr200−I⁢Rr⁢Rt,r,t⁢R+2⁢Rt⁢Rr,t−2⁢Er⁢−1−2⁢E⁡r+4⁢Rt,t⁢Rr+Rt,r,t⁢R2⁢E⁡r+122+4⁢E⁡r⁢R⁢Rr

(96)

 

More Metrics in the Database of Solutions to Einstein's Equations

A database of solutions to Einstein's equations was added to the Maple library in Maple 15 with a selection of metrics from "Stephani, H.; Kramer, D.; MacCallum, M.; Hoenselaers, C.; and Herlt, E.,  Exact Solutions to Einstein's Field Equations" and "Hawking, Stephen; and Ellis, G. F. R., The Large Scale Structure of Space-Time". More metrics from these two books were added for Maple 16, Maple 17, and Maple 18. These metrics can be searched using g_ (the Physics command representing the spacetime metric that also sets the metric to your choice in one go) or using the command DifferentialGeometry:-Library:-MetricSearch.

• 

For Maple 2015, one hundred and four more metrics were added to the database from various Chapters of the aforementioned book entitled "Exact Solutions to Einstein's Field Equations". Among new metrics for other chapters, with this addition, the solutions found in the literature and collected in Chapters 13 and 14 of this book are all present as well in database of solutions to Einstein's equations.

• 

It is now possible to manipulate algebraically the properties of these metrics, for example, computing tetrads and null vectors for them - using the 13 commands of new Physics:-Tetrads package.

Examples

As mentioned previously, the solutions found in the literature and collected in Chapters 13 and 14 of the book "Exact Solutions to Einstein's Field Equations" are all now present in the database of solutions to Einstein's equations. You can query about these solutions, and set the spacetime metric to be one of them directly from the g_ Physics command, or search them in details using the DifferentialGeometry:-Library:-MetricSearch.

List, for instance, all the metrics of chapters 13 and 14 found in the Maple database - after listing, to set the metric to be any of these, or just to give an explicit look, enter g_[index_of_metric], for example: g_[[13,2,1]]:

> 

g_13

____________________________________________________________

13,2,1=Authors=Ellis (1967), Stewart and Ellis (1968),PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=Local Rotational Symmetry metric, G3,Comments=_epsilon=1 or _epsilon=-1, k=0

____________________________________________________________

13,2,2=Authors=Ellis (1967), Stewart and Ellis (1968),PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=Local Rotational Symmetry metric, G4 on S3 or T3,Comments=_epsilon=1 or _epsilon=-1,k=1

____________________________________________________________

13,2,3=Authors=Ellis (1967), Stewart and Ellis (1968),PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=Local Rotational Symmetry metric, G4 on S3 or T3,Comments=_epsilon=1 or _epsilon=-1, k=-1

____________________________________________________________

13,7,1=PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=Local Rotational Symmetry metric, G3,Comments=_epsilon=1, -1

____________________________________________________________

13,7,2=PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=Local Rotational Symmetry metric, G3,Comments=_epsilon=1, -1

____________________________________________________________

13,7,3=PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=Local Rotational Symmetry metric, G3,Comments=_epsilon=1, -1

____________________________________________________________

13,7,4=PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=Local Rotational Symmetry metric, G3,Comments=_epsilon=1, -1

____________________________________________________________

13,7,5=PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=Local Rotational Symmetry metric, G3,Comments=_epsilon=1 or _epsilon=-1

____________________________________________________________

13,7,6=PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=Local Rotational Symmetry metric, G3,Comments=_epsilon= 1, -1. Here the Petrov and Segre type are for epsilon=1/-1 accordingly.

____________________________________________________________

13,7,7=PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=Local Rotational Symmetry metric, G3,Comments=_epsilon=1, -1

____________________________________________________________

13,7,8=PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=Local Rotational Symmetry metric, G3,Comments=_epsilon=1, -1; The Killing Vectors are calculated for y=0

____________________________________________________________

13,14,1=PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=G4 on T3, non-Local Rotational Symmetry metric

____________________________________________________________

13,14,2=PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=G4 on T3, non-Local Rotational Symmetry metric

____________________________________________________________

13,14,3=PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=G4 on T3, non-Local Rotational Symmetry metric

____________________________________________________________

13,19,1=PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=G4 on T3 and null rotation

____________________________________________________________

13,31,1=Authors=Heckmann and Schucking (1958),PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=G3I metrics,Comments=One can take _Sigma=sqrt(3)

____________________________________________________________

13,32,1=Authors=Heckmann and Schucking (1958),PrimaryDescription=Hyper-surface Homogenous,SecondaryDescription=G3V metrics,Comments=Psi=Pi/2

____________________________________________________________

13,46,1=Authors=Ftaclas, Cohen (1978),Henneaux (1984),PrimaryDescription=EinsteinMaxwell,SecondaryDescription=PureRadiation,Comments=13.3 with _epsilon=1

____________________________________________________________

13,48,1=Authors=Cahen, Defrise (1968),PrimaryDescription=EinsteinMaxwell,SecondaryDescription=Stationary,Comments=_kappa generic

____________________________________________________________

13,49,1=Authors=Taub (1951),Newman, Tamburino, Uniti (1963),PrimaryDescription=Vacuum,SecondaryDescription=,Comments=Exterior

____________________________________________________________

13,49,2=Authors=Taub (1951),Newman, Tamburino, Uniti (1963),PrimaryDescription=Vacuum,SecondaryDescription=,Comments=Interior

____________________________________________________________

13,51,1=Authors=Kasner (1921),PrimaryDescription=Vacuum,SecondaryDescription=,Comments=Riemannian signature

____________________________________________________________

13,53,1=Authors=Kasner (1921),PrimaryDescription=Vacuum,SecondaryDescription=,Comments=

____________________________________________________________

13,59,1=Authors=Joseph (1966),PrimaryDescription=Vacuum,SecondaryDescription=,Comments=A is an inessential parameter. It does not appear in the structure equations for Bianchi V.

____________________________________________________________

13,59,2=Authors=Joseph (1966),PrimaryDescription=Vacuum,SecondaryDescription=,Comments=A is an inessential parameter. It does not appear in the structure equations for Bianchi V.

____________________________________________________________

13,60,1=Authors=Lorenz-Petzold (1984),PrimaryDescription=Vacuum,SecondaryDescription=G3VI0 and VII0 on S3,Comments=13.60

____________________________________________________________

13,60,2=Authors=Lorenz-Petzold (1984),PrimaryDescription=Vacuum,SecondaryDescription=G3VI0 and VII0 on S3,Comments=13.60

____________________________________________________________

13,60,3=Authors=Lorenz-Petzold (1984),PrimaryDescription=Vacuum,SecondaryDescription=G3VI0 and VII0 on S3,Comments=13.60

____________________________________________________________

13,60,4=Authors=Lorenz-Petzold (1984),PrimaryDescription=Vacuum,SecondaryDescription=G3VI0 and VII0 on S3,Comments=13.60

____________________________________________________________

13,60,5=Authors=Lorenz-Petzold (1984),PrimaryDescription=Vacuum,SecondaryDescription=G3VI0 and VII0 on S3,Comments=13.60

____________________________________________________________

13,60,6=Authors=Lorenz-Petzold (1984),PrimaryDescription=Vacuum,SecondaryDescription=G3VI0 and VII0 on S3,Comments=13.60

____________________________________________________________

13,60,7=Authors=Lorenz-Petzold (1984),PrimaryDescription=Vacuum,SecondaryDescription=G3VI0 and VII0 on S3,Comments=13.60

____________________________________________________________

13,60,8=Authors=Lorenz-Petzold (1984),PrimaryDescription=Vacuum,SecondaryDescription=G3VI0 and VII0 on S3,Comments=13.60

____________________________________________________________

13,61,1=Authors=Barnes (1978) ),PrimaryDescription=Vacuum,SecondaryDescription=G3VI0 and VII0 on T3,Comments=_epsilon=1 (VII0)

____________________________________________________________

13,61,2=Authors=Barnes (1978) ,PrimaryDescription=Vacuum,SecondaryDescription=G3VI0 and VII0 on T3,Comments=_epsilon=-1, (G3VI0)

____________________________________________________________

13,62,1=Authors=Lukash (1974),PrimaryDescription=Vacuum,SecondaryDescription=G3VIIh on S3 (h=4/11),Comments=Only case 1 from Table 8.2 due to the complexity of the metric, for compactness, except for the metric, we use exponents instead of trigonometric functions

____________________________________________________________

13,62,2=Authors=Lukash (1974),PrimaryDescription=Vacuum,SecondaryDescription=G3VIIh on S3 (h=4/11),Comments=Case 2 from Table 8.2, for compactness, except for the metric, we use exponents instead of trigonometric functions

____________________________________________________________

13,62,4=Authors=Lukash (1974),PrimaryDescription=Vacuum,SecondaryDescription=G3VIIh on S3 (h=4/11),Comments=Case 4 from Table 8.2, for compactness, except for the metric, we use exponents instead of trigonometric functions

____________________________________________________________

13,62,6=Authors=Lukash (1974),PrimaryDescription=Vacuum,SecondaryDescription=G3VIIh on S3 (h=4/11),Comments=Case 6 from Table 8.2, for compactness, except for the metric, we use exponents instead of trigonometric functions

____________________________________________________________

13,63,1=Authors= Kasner (1925), Saunders (1967),PrimaryDescription=EinsteinMaxwell,SecondaryDescription=,Comments=Cases 1-4 correspond to the solutions of the DE for G and U for _C1=0

____________________________________________________________

13,63,2=Authors= Kasner (1925), Saunders (1967),PrimaryDescription=EinsteinMaxwell,SecondaryDescription=,Comments=Cases 1-4 correspond to the solutions of the DE for G and U for _C1=0

____________________________________________________________

13,63,3=Authors= Kasner (1925), Saunders (1967),PrimaryDescription=EinsteinMaxwell,SecondaryDescription=,Comments=Cases 1-4 correspond to the solutions of the DE for G and U for _C1=0

____________________________________________________________

13,63,4=Authors= Kasner (1925), Saunders (1967),PrimaryDescription=EinsteinMaxwell,SecondaryDescription=,Comments=Cases 1-4 correspond to the solutions of the DE for G and U for _C1=0

____________________________________________________________

13,64,1=Authors=Siklos (1981),PrimaryDescription=Einstein,SecondaryDescription=

____________________________________________________________

13,64,2=Authors=Kerr, Debney (1970),Collinson, French (1967),PrimaryDescription=Vacuum,SecondaryDescription=

____________________________________________________________

13,64,3=Authors=Siklos (1981),PrimaryDescription=Einstein,SecondaryDescription=,Comments=See also (13, 64, 4) for Riemannian orbits

____________________________________________________________

13,64,4=Authors=Siklos (1981),PrimaryDescription=Einstein,SecondaryDescription=,Comments=See also (13, 64, 3) for PseudoRiemannian orbits

____________________________________________________________

13,65,1=Authors=Siklos (1981),PrimaryDescription=Einstein,SecondaryDescription=,Comments=We can use the transformation x -> - x to assume the parameter _b > 0,A boost and a spatial rotation are required to take the null tetrad to an adapted null tetrad

____________________________________________________________

13,69,1=Authors=Datta(1965),PrimaryDescription=EinsteinMaxwell,SecondaryDescription=

____________________________________________________________

13,71,1=Authors=Wils (1989),PrimaryDescription=EinsteinMaxwell,SecondaryDescription=(13.71) -- a special case of (13.70),Comments=_epsilon=+1, -1, _delta=+1, -1, excluding -_delta=1=epsilon

____________________________________________________________

13,72,1=Authors=Tariq, Tupper (1975),PrimaryDescription=EinsteinMaxwell,SecondaryDescription=

____________________________________________________________

13,73,1=Authors=Barnes (1977),PrimaryDescription=EinsteinMaxwell,SecondaryDescription=G3VII0,Comments=This is 19.73 for w from table 8.2 and for A=(1/3)*(2*I)*sqrt(3) -- in this case, the PetrovType is D (it's I in the general case)

____________________________________________________________

13,74,1=Authors=Ruban (1971),PrimaryDescription=EinsteinMaxwell,SecondaryDescription=G3II,Comments=13.74 and 13.75, the _b=0 is the vacuum solution, _a=0 is LRS (13.48), _epsilon=+-1

____________________________________________________________

13,74,2=Authors=Ruban (1971),PrimaryDescription=EinsteinMaxwell,SecondaryDescription=G3II,Comments=13.74 and 13.75, the _b=0 is the vacuum solution, _a=0 is LRS (13.48), |_epsilon|= 1

____________________________________________________________

13,74,3=Authors=Ruban (1971),PrimaryDescription=EinsteinMaxwell,SecondaryDescription=G3II,Comments=13.74 and 13.75, the _b=0 is the vacuum solution, _a=0 is LRS (13.48), |epsilon|=1

____________________________________________________________

13,76,1=Authors=McIntosh (1979),PrimaryDescription=EinsteinMaxwell,SecondaryDescription=

____________________________________________________________

13,77,1=PrimaryDescription=EinsteinMaxwell,SecondaryDescription=,Comments=_epsilon=1

____________________________________________________________

13,77,2=PrimaryDescription=EinsteinMaxwell,SecondaryDescription=,Comments=_epsilon=-1

____________________________________________________________

13&comma;79&comma;1=Authors=Hermann (1983), Daishev (1984)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on T3&comma;Comments=The case _l<>0

____________________________________________________________

13&comma;79&comma;2=Authors=Hermann (1983), Daishev (1984)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=Spherical&comma;Comments=_l=0, _k=_a/2=1, _a=2

____________________________________________________________

13&comma;80&comma;1=Authors=Ellis (1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=Dust solution&comma;Comments=For 13.80 use _Y(w)=_Y_(w)[1], _rel[1], _Lambda>0, for 13.82 - _Y(w)=_Y_(w)[2], _rel[2], _Lambda<0

____________________________________________________________

13&comma;81&comma;1=Authors=Ellis (1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=Dust solution

____________________________________________________________

13&comma;83&comma;1=Authors=Bradley, Marklund (1996)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=

____________________________________________________________

13&comma;84&comma;1=Authors=Ellis (1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=Shearfree Dust, _Lambda>0

____________________________________________________________

13&comma;84&comma;2=Authors=Ellis (1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=Shearfree Dust, _Lambda=0

____________________________________________________________

13&comma;84&comma;3=Authors=Ellis (1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=Shearfree Dust, _Lambda<0

____________________________________________________________

13&comma;85&comma;1=Authors=Wainwright (1985) &comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3II on T3&comma;Comments=Metric 13.85 with _a=0 and gamma-law, the PetrovType and SegreType are found for _gamma=2

____________________________________________________________

13&comma;85&comma;2=Authors=Nilsson and Uggla (1997b) &comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3II on T3&comma;Comments=Metric 13.85 with _a=1 and gamma-law

____________________________________________________________

13&comma;86&comma;1=Authors=(Sintes et al. (1998)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3VI on T3

____________________________________________________________

13&comma;87&comma;1=Authors=Hermann (1983)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=

(97)

Set the metric:

> 

g_13&comma;2&comma;1

Systems of spacetime Coordinates are: X=x&comma;y&comma;z&comma;t

Default differentiation variables for d_, D_ and dAlembertian are: X=x&comma;y&comma;z&comma;t

The Ellis (1967), Stewart and Ellis (1968) metric in coordinates x&comma;y&comma;z&comma;t

Parameters: ε&comma;A⁡t&comma;B⁡t

Comments: _&ExponentialE;psⅈlon=1 or _&ExponentialE;psⅈlon=-1, k=0

Change it to another one, this time from chapter 14:

> 

g_14&comma;7&comma;1

Systems of spacetime Coordinates are: X=r&comma;θ&comma;φ&comma;t

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

The Tolman (1934) metric in coordinates r&comma;θ&comma;φ&comma;t

Parameters: &kappa;0&comma;m

Comments: Thⅈs ⅈs FRW wⅈth manⅈfol&DifferentialD; R x R^3 (k = 0)

List all the metrics of the literature, collected in chapter 14, found in the Maple database:

> 

g_14

____________________________________________________________

14&comma;7&comma;1=Authors=Tolman (1934)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=This is FRW with manifold R x R^3 (k = 0)&comma;radiation dominated

____________________________________________________________

14&comma;10&comma;1=Authors=Harrison(1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=This is FRW with manifold R x S^3 (k = 1)&comma;cosmological constant > 0&comma;_Lambda*_m > = 3/4, t > 0

____________________________________________________________

14&comma;10&comma;2=Authors=Harrison(1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=This is FRW with manifold R x S^3 (k = 1)&comma;cosmological constant > 0&comma;_Lambda * m < 3/4, t in (0, t0), where t0 = ln(-(3+2 sqrt(3) sqrt(_Lambda _m))/(-3+2 sqrt(3) sqrt(_Lambda _m))) sqrt(3/(4 _Lambda)).

____________________________________________________________

14&comma;12&comma;1=Authors=McIntosh (1968), Sapar (1970), May (1975), Coquereaux and Grossmann (1982), Dabrowski and Stelmach (1986)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW with Lambda=0, instead of coordinate t we use a knowing implicitely the function a(t),dt = (-_m*cos((2*a-_m)/sqrt(_m^2+4*_N))/(sin((2*a-_m)/sqrt(_m^2+4*_N))^2*sqrt(_m^2+4*_N))-(_m-2*a)/(2*sqrt(_m*a-a^2+_N)))*da

____________________________________________________________

14&comma;12&comma;2=Authors=McIntosh (1968), Sapar (1970), May (1975), Coquereaux and Grossmann (1982), Dabrowski and Stelmach (1986)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW with Lambda=0, instead of coordinate t we use a knowing implicitely the function a(t), dt = a*da/sqrt(_m*a+_N)

____________________________________________________________

14&comma;12&comma;3=Authors=McIntosh (1968), Sapar (1970), May (1975), Coquereaux and Grossmann (1982), Dabrowski and Stelmach (1986)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW with Lambda=0, instead of coordinate t we use a knowing implicitely the function a(t), dt = a*d_a/sqrt(_m*a+a^2+_N)

____________________________________________________________

14&comma;14&comma;1=Authors=(Vajk and Eltgroth 1970&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW perfect fluid with a gamma-law

____________________________________________________________

14&comma;14&comma;2=Authors=(Vajk and Eltgroth 1970&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW perfect fluid with a gamma-law

____________________________________________________________

14&comma;15&comma;1=Authors=Kantowski (1966), Kantowski and Sachs (1966), Shikin (1966), Thorne (1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW perfect fluid with a gamma-law, gamma=1, dt = 2*_b*cos(psi)^2*dpsi

____________________________________________________________

14&comma;16&comma;1=Authors=Kantowski (1966)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW perfect fluid with a gamma-law, gamma=4/3, k=1, dt^2=u*B*du^2

____________________________________________________________

14&comma;16&comma;2=Authors=Kantowski (1966)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW perfect fluid with a gamma-law, gamma=4/3, k=1, dt^2=u*B*du^2

____________________________________________________________

14&comma;17&comma;1=Authors=Kantowski (1966)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW perfect fluid with a gamma-law, gamma=4/3, k=1, dt^2=3*u/(4*(_c-u))*du^2

____________________________________________________________

14&comma;18&comma;1=Authors=Kantowski (1966)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW perfect fluid with a gamma-law, gamma=2, k=1, dt^2=u*B*du^2, _c=sqrt(1-_M*lambda^4)

____________________________________________________________

14&comma;18&comma;2=Authors=Kantowski (1966)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW perfect fluid with a gamma-law, gamma=2, k=-1, dt^2=u*B*du^2, _c=sqrt(1-_M*lambda^4)

____________________________________________________________

14&comma;19&comma;1=Authors=Kantowski (1966)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW perfect fluid with a gamma-law, k=-1

____________________________________________________________

14&comma;20&comma;1=Authors=Collins and Stewart (1971) &comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=gamma-law perfect fluid

____________________________________________________________

14&comma;21&comma;1=Authors=Cohen (1972), Batakis and Cohen (1972)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G4 on S3&comma;Comments=Case 1, k=1, gamma=2

____________________________________________________________

14&comma;21&comma;2=Authors=Cohen (1972), Batakis and Cohen (1972)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G4 on S3&comma;Comments=Case 2, k=0, gamma=2

____________________________________________________________

14&comma;21&comma;3=Authors=Cohen (1972), Batakis and Cohen (1972)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G4 on S3&comma;Comments=Case 3, k=-1, gamma=2

____________________________________________________________

14&comma;22&comma;1=Authors=Farnsworth (1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G4 on S3&comma;Comments=the functions _g(u) satisfies 2*diff(_g(u),u,u)*_g(u)-_Lambda*_g(u)^2-1/_a^2, because of it, we make the change in coordinates u=t+b*x

____________________________________________________________

14&comma;23&comma;1=Authors=Collins et al. (1980)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G4 on S3

____________________________________________________________

14&comma;24&comma;1=Authors=Collins and Wainwright (1983)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G4 on S3&comma;Comments=_U(w) is the solutions of diff(U(w),w,w)+diff(U(w),w)+U(w)^2=0, we change the coordinates to w=t+x

____________________________________________________________

14&comma;25&comma;1=Authors=Lozanovski and Aarons (1999) &comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G4 on S3

____________________________________________________________

14&comma;26&comma;1=Authors=Saunders (1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=Lambda>0, the stress-energy tensor was found in the case _M=0, _psi=Pi,_Lambda=1

____________________________________________________________

14&comma;26&comma;2=Authors=Saunders (1967), Raychaudhuri (1958), Heckmann and Schucking (1958)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=Lambda=0, the stress-energy tensor was found in the case _M=0

____________________________________________________________

14&comma;26&comma;3=Authors=Saunders (1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=Lambda<0, the stress-energyt tensor was found in the case _M=0, _psi=Pi,_Lambda=-1

____________________________________________________________

14&comma;26&comma;4=Authors=Lorenz (1982) &comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=Lambda>0

____________________________________________________________

14&comma;27&comma;1=Authors=Wainwright (1984), Wainwright and Ellis (1997)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3

____________________________________________________________

14&comma;28&comma;1=Authors=Ellis and MacCallum (1969)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=gamma=2

____________________________________________________________

14&comma;28&comma;2=Authors=Jacobs (1968) and Shikin (1968)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=gamma=2

____________________________________________________________

14&comma;28&comma;3=Authors=Ellis and MacCallum (1969)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=gamma=2

____________________________________________________________

14&comma;29&comma;1=Authors=Collins (1971), Wainwright and Ellis (1997)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments= _gamma<2, _gamma>2/3

____________________________________________________________

14&comma;30&comma;1=Authors=Hewitt (1991b)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments= _gamma<2, _gamma>10/7

____________________________________________________________

14&comma;31&comma;1=Authors=Hewitt et al. (2001)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments= _gamma=14/9

____________________________________________________________

14&comma;32&comma;1=Authors=Ruban (1977)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments= _gamma=4/3

____________________________________________________________

14&comma;33&comma;1=Authors=Collins (1971) )&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments= G3VIh metric

____________________________________________________________

14&comma;35&comma;1=Authors=Wainwright (1983)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=G3VIh

____________________________________________________________

14&comma;37&comma;1=Authors=Collins (1971)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments= G3VIh metric, _gamma<2, _gamma>2/3

____________________________________________________________

14&comma;38&comma;1=Authors=Uggla and Rosquist (1990)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=_gamma<2, _gamma>0

____________________________________________________________

14&comma;38&comma;2=Authors=Uggla and Rosquist (1990)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=_gamma<2, _gamma>0

____________________________________________________________

14&comma;38&comma;3=Authors=Uggla and Rosquist (1990)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=_gamma<2, _gamma>0

____________________________________________________________

14&comma;39&comma;1=Authors=Uggla and Rosquist (1990)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments= _gamma<4/3, _gamma>2/3

____________________________________________________________

14&comma;39&comma;2=Authors=Uggla and Rosquist (1990)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=_gamma<4/3, _gamma>2/3

____________________________________________________________

14&comma;39&comma;3=Authors=Uggla and Rosquist (1990)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=_gamma<4/3, _gamma>2/3

____________________________________________________________

14&comma;39&comma;4=Authors=Uggla and Rosquist (1990)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments= _gamma<2, _gamma>4/3

____________________________________________________________

14&comma;39&comma;5=Authors=Uggla and Rosquist (1990)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=_gamma<2, _gamma>4/3

____________________________________________________________

14&comma;39&comma;6=Authors=Uggla and Rosquist (1990)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=_gamma<2, _gamma>4/3

____________________________________________________________

14&comma;40&comma;1=Authors=Uggla (1990)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=_gamma=6/5

____________________________________________________________

14&comma;41&comma;1=Authors=Wainwright (1984)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=_gamma=10/9, r>2/3, r<1

____________________________________________________________

14&comma;42&comma;1=Authors=Rosquist and Jantzen (1985)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=Bianchi VI0

____________________________________________________________

14&comma;46&comma;1=Authors=Allnutt (1980)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=G3 on S3&comma;Comments=G3VIh

____________________________________________________________

14&comma;6.1&comma;1=Authors=Friedman (1922)&comma;Friedman (1924)&comma;Einstein, deSitter (1932)&comma;PrimaryDescription=Dust&comma;SecondaryDescription=FRW&comma;Comments=This is FRW with manifold R x S^3 (k = 1)

____________________________________________________________

14&comma;6.2&comma;1=Authors=Friedman (1922)&comma;Friedman (1924)&comma;Einstein, deSitter (1932)&comma;PrimaryDescription=Dust&comma;SecondaryDescription=FRW&comma;Comments=This is FRW with manifold R x R^3 (k = 0)

____________________________________________________________

14&comma;6.3&comma;1=Authors=Friedman (1922)&comma;Friedman (1924)&comma;Einstein, deSitter (1932)&comma;PrimaryDescription=Dust&comma;SecondaryDescription=FRW&comma;Comments=This is FRW with manifold R x R^3 (k = -1)

____________________________________________________________

14&comma;8.1&comma;1=Authors=Harrison (1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW

____________________________________________________________

14&comma;8.2&comma;1=Authors=Harrison (1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=This is FRW with manifold R x R^3 (k = 0)&comma;cosmological constant = 0

____________________________________________________________

14&comma;8.3&comma;1=Authors=Harrison (1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=This is FRW with manifold R x R^3 (k = 0)&comma;cosmological constant = 0

____________________________________________________________

14&comma;9.1&comma;1=Authors=Harrison (1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=This is FRW with manifold R x S^3 (k = 1)&comma;cosmological constant < 0&comma;gamma = 0 gives de-Sitter space, which we exclude here

____________________________________________________________

14&comma;9.2&comma;1=Authors=Harrison(1967)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=This is FRW with manifold R x R^3 (k = -1)&comma;cosmological constant = 0&comma;gamma = 0 gives de-Sitter space, which we exclude here

____________________________________________________________

14&comma;15.1&comma;2=Authors=Kantowski (1966)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW perfect fluid with a gamma-law, gamma=1, k=-1, dt=2*_b*sinh(psi)^2*dpsi

____________________________________________________________

14&comma;15.2&comma;2=Authors=Kantowski (1966)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW perfect fluid with a gamma-law, gamma=1, k=-1, dt = 2*_b*cosh(psi)^2*dpsi

____________________________________________________________

14&comma;15.3&comma;2=Authors=Shukla and Patel (1977)&comma;PrimaryDescription=PerfectFluid&comma;SecondaryDescription=FRW&comma;Comments=FRW perfect fluid with a gamma-law, gamma=1, k=-1, dt = 2*_b*(exp(psi))^2*dpsi

(98)

 

Set the metric to be last one listed:

> 

g_14&comma;15.3&comma;2

Systems of spacetime Coordinates are: X=x&comma;y&comma;z&comma;ψ

Default differentiation variables for d_, D_ and dAlembertian are: X=x&comma;y&comma;z&comma;ψ

The Shukla and Patel (1977) metric in coordinates x&comma;y&comma;z&comma;ψ

Parameters: &kappa;0&comma;M&comma;b&comma;K

Comments: FRW p&ExponentialE;rf&ExponentialE;ct fluⅈ&DifferentialD; wⅈth a gamma-law, gamma=1, k=-1, &DifferentialD;t = 2*_b*(&ExponentialE;xp(psⅈ))^2*&DifferentialD;psⅈ

 

Commutators, AntiCommutators, and Dirac notation in quantum mechanics

When computing with products of noncommutative operators, the results depend on the algebra of commutators and anticommutators that you previously set. Besides that, in Physics, various mathematical objects themselves satisfy specific commutation rules. You can query about these rules using the Library commands Commute and AntiCommute. Previously existing functionality and enhancements in this area were refined and implemented in Maple 2015. These include:

• 

Computing Commutators and Anticommutators between equations, or of an expression with an equation.

• 

Library:−Commute⁡A&comma;F⁡A=true whenever A is a quantum operator and F is a commutative mapping (see Cohen-Tannoudji, Quantum Mechanics, page 171).

• 

Differentiating with respect to a noncommutative variable whenever all the variables present in the derivand commute with the differentiation variable.

• 

Automatic computation of F⁡X·Ket⁡X&comma;x=F⁡x⁢Ket⁡X&comma;x, that is the automatic computation of a function of an operator applied to its eigenkets (see Cohen-Tannoudji, Quantum Mechanics, page 171).

• 

Parameterized commutators; for example: when setting the rule Commutator⁡A&comma;&ExponentialE;λ⁢B=λ⁢C, take λ as a parameter, so Commutator⁡A&comma;&ExponentialE;α⁢B now returns α⁢C, not &lambda;⁢C&period;

• 

Automatic derivation of a commutator rule: Commutator(A, F(B)) = F '(B) when Commutator(A, C) = Commutator(B, C) = 0 and C = Commutator(A, B), as shown in (see Cohen-Tannoudji, Quantum Mechanics, page 171).

• 

 fA⁢Aa=fa⁢Aa, including cases like for instance f⁡α⁢A⁢Aa=f⁡α⁢a⁢Aa, or &ExponentialE;I⁢f⁡t⁢Aℏ⁢Aa=&ExponentialE;I⁢f⁡t⁢aℏ⁢Aa.

• 

New mechanism to have more than one algebra rule related to the same function (for example, a function of two arguments that come in different order).

• 

The dot product of the inverse of an operator, Inverse(A) · Ket, now returns the same as 1/A · Ket.

• 

F⁡H is Hermitian if H is Hermitian and F is assumed to be real, via Assume, assuming, or Setuprealobjects=F.

• 

Implement that F⁡H is Hermitian if H is Hermitian and F is a mathematical real function, that is, one that maps real objects into real objects; in this change only exp, the trigonometric functions and their inert forms are included.

• 

Add a few previously missing Unitary and Hermitian operator cases:

  

a) if U and V are unitary, the U V is also unitary.

  

b) if A is Hermitian then &ExponentialE;i⁢A is unitary.

  

c) if U is unitary and A is Hermitian, then U⁢A⁢U† is also Hermitian.

• 

Make the type definition for ExtendedQuantumOperator more precise to include as such any arbitrary function of an ExtendedQuantumOperator.

Examples

> 

restart&semi; withPhysics&colon;

> 

interfaceimaginaryunit &equals; i&semi; 

I

(99)
> 

Setupnotation &equals; true&comma; op &equals; U&comma;V&comma;W&comma;Z&comma; quiet

mathematicalnotation=true&comma;quantumoperators=U&comma;V&comma;W&comma;Z

(100)
> 

U &equals; V

U=V

(101)
> 

W &equals; Z

W=Z

(102)
> 

CommutatorU&equals;V&comma; W

U,W−=V,W−

(103)
> 

AntiCommutator&comma;

U,W+=V,Z+

(104)
• 

Arbitrary commutative mappings of a quantum operator V commute with V.

> 

typeF&comma; commutative&comma; typeV&comma; noncommutative&semi;

true,true

(105)
> 

Library:-CommuteFV&comma; V

true

(106)
• 

Derivatives with respect to the noncommutative variable V can now proceed whenever all the operators found in the derivand commute with V.

> 

%diff &equals; diffVn&comma; V

&DifferentialD;&DifferentialD;VVn=n⁢Vn−1

(107)

When an operator is used as label for a basis of Kets, for example X, so a case where the Ket is automatically an eigenket of the operator X, the application of a function of X to its eigenkets, and with that also the Bracket of a function of X, are now automatically computed (see Cohen-Tannoudji, Quantum Mechanics, page 171).

 

For example:

> 

Setupop &equals; X&comma; continuousbasis&equals;X

* Partial match of 'op' against keyword 'quantumoperators'

* Partial match of 'continuousbasis' against keyword 'quantumcontinuousbasis'

quantumcontinuousbasis=X&comma;quantumoperators=U&comma;V&comma;W&comma;X&comma;Z

(108)

From the previous Maple releases:

> 

&apos;X &period; KetX&comma;x&apos;

X·Xx

(109)
> 

x⁢Xx

(110)
> 

%BracketBraX&comma; x__1 &comma; X&comma; KetX&comma;x__2

Xx__1|X|Xx__2

(111)
> 

value

x__2⁢δ⁡x__2−x__1

(112)

New in Maple 2015:

> 

&apos;fX &period; KetX&comma;x&apos;

f⁡X·Xx

(113)
> 

f⁡x⁢Xx

(114)

So, for instance, for the Bracket:

> 

%BracketBraX&comma; x__1 &comma; fX&comma; KetX&comma;x__2

Xx__1|f⁡X|Xx__2

(115)
> 

value

f⁡x__2⁢δ⁡x__2−x__1

(116)

It works the same way for a discrete basis; set for instance X to be a label for a discrete basis.

> 

Setupredo&comma; discretebasis&equals;X

* Partial match of 'discretebasis' against keyword 'quantumdiscretebasis'

quantumdiscretebasis=X

(117)

Compute again the value of (115):

> 

value

f⁡x__2⁢δx__1,x__2

(118)

Example with functions of functions: use the `*` operator in the left-hand sides and the active dot `.` operator in the right-hand sides to see the operation performed.

> 

f&alpha;⋅X⋅KetX&comma;x&equals;f&alpha;⋅X·KetX&comma;x

f⁡α⁢X⁢Xx=f⁡α⁢x⁢Xx

(119)
> 

expⅈ⋅ft⋅Xℏ⋅KetX&comma;x&equals;expⅈ⋅ft⋅Xℏ·KetX&comma;x

&ExponentialE;ⅈ⁢f⁡t⁢Xℏ⁢Xx=&ExponentialE;ⅈ⁢f⁡t⁢xℏ⁢Xx

(120)
> 

Xk⋅KetX&comma;x&equals;Xk·KetX&comma;x assumingk&comma;nonnegint

Xk⁢Xx=xk⁢Xx

(121)
• 

Implement parameterized commutators. For example, set the following algebra rule:

> 

Setupredo&comma; op &equals; A&comma;B&comma;C&comma; %CommutatorA&comma;&ExponentialE;λ⁢B=&lambda;⁢C

* Partial match of 'op' against keyword 'quantumoperators'

algebrarules=A,&ExponentialE;λ⁢B−=λ⁢C&comma;quantumoperators=A&comma;B&comma;C

(122)

As usual, you get:

> 

%Commutator &equals;CommutatorA&comma;&ExponentialE;λ⁢B

A,&ExponentialE;λ⁢B−=λ⁢C

(123)

New: λ, appearing on both the left-hand and right-hand sides of the rule in (122), is thus considered one of the variables of this rule (that is, a parameter of the rule), so for instance changing λ by α or by α2 the rule works as expected, (that is, parameterized by λ)

> 

%Commutator&equals;CommutatorA&comma;&ExponentialE;α⁢B

A,&ExponentialE;α⁢B−=α⁢C

(124)
> 

%Commutator&equals;CommutatorA&comma;&ExponentialE;12⁢α⁢B

A,&ExponentialE;α⁢B2−=α⁢C2

(125)
• 

When A and B are quantum operators, both commute with their commutator, and let F be an arbitrary commutative mapping, you have that the commutator of A or B with F applied to the other one is computable (see Cohen-Tannoudji, Quantum Mechanics, (51), page 171). To illustrate this, redo the algebra rules:

> 

Setupredo&comma; %CommutatorA&comma; B &equals; C&comma; %CommutatorA&comma; C&equals;0&comma; %CommutatorB&comma; C&equals;0

algebrarules=A,B−=C&comma;A,C−=0&comma;B,C−=0

(126)
> 

%Commutator &equals; CommutatorA&comma;FB

A,F⁡B−=C⁢&DifferentialD;&DifferentialD;BF⁡B

(127)

Note that this turns the specification of commutator rules for known functions of quantum operators redundant. For example, there is in this moment no algebra rule for the Commutator of A with the exponential &ExponentialE;α⁢B and nevertheless the value of this commutator can be (now automatically) derived from the algebra rules:

> 

%Commutator&equals;CommutatorA&comma;&ExponentialE;α⁢B

A,&ExponentialE;α⁢B−=α⁢C⁢&ExponentialE;α⁢B

(128)

 

> 

%Commutator&equals;CommutatorA&comma;Bk assumingk&comma;integer

A,Bk−=k⁢C⁢B−1+k

(129)
• 

Many algebra rules for functions with same name but different arguments.

> 

withVectors&colon;

> 

Setupredo&comma; hermitianoperators &equals; A_&comma; r_&comma;p_

hermitianoperators=A→&comma;p→&comma;r→

(130)

The following two commutators involve the single product function, but the order of the arguments is relevant, consider a case where the left-hand sides of the commutators are not necessarily equal.

> 

%Commutatorp_·A_r_&comma;r_&equals;−ⅈ⋅&hslash;⋅B_r_

p→·A→⁡r→,r→−=−ⅈ⁢ℏ⁢B→⁡r→

(131)
> 

%CommutatorA_r_·p_&comma;r_&equals;−ⅈ⋅&hslash;⋅C_r_

A→⁡r→·p→,r→−=−ⅈ⁢ℏ⁢C→⁡r→

(132)

Set both commutators as algebra rules at the same time (not possible before this change).

> 

Setupredo&comma; &comma;

algebrarules=p→·A→⁡r→,r→−=−ⅈ⁢ℏ⁢B→⁡r→&comma;A→⁡r→·p→,r→−=−ⅈ⁢ℏ⁢C→⁡r→

(133)

Verify the commutators return as expected.

> 

%Commutator &equals; CommutatorA_r_·p_&comma;r_

A→⁡r→·p→,r→−=−ⅈ⁢ℏ⁢C→⁡r→

(134)
> 

%Commutator &equals; Commutatorp_·A_r_&comma;r_

p→·A→⁡r→,r→−=−ⅈ⁢ℏ⁢B→⁡r→

(135)
• 

Handle Inverse(A) ⋅ Ket the same as 1/A ⋅ Ket

> 

A &period; KetA&comma;n

n⁢An

(136)
> 

InverseA &period; KetA&comma; n

Ann

(137)
• 

Add a few previously missing Unitary and Hermitian operator cases:

> 

Setupredo&comma; unita &equals; U&comma; V&comma; her &equals; H&comma; quiet

hermitianoperators=H&comma;unitaryoperators=U&comma;V

(138)
> 

Library:−IsUnitaryOperator⁡U⁢V

true

(139)
> 

Library:−IsUnitaryOperator⁡&ExponentialE;i⁢H

true

(140)
> 

U H DaggerU

U⁢H⁢U†

(141)
> 

Library:−IsHermitianOperator⁡

true

(142)
> 

withLibrary:-PhysicsType

AnnihilationCreationOperator&comma;AnnihilationOperator&comma;AppliableProcedure&comma;AppliedQuantumOperator&comma;AtProcedure&comma;CommutativeMapping&comma;CompositeDifferentiationOperator&comma;Contravariant&comma;Covariant&comma;CreationOperator&comma;DifferentialOperator&comma;DifferentialOperatorIndexed&comma;DifferentialOperatorSymbol&comma;EntirelyNotNestedIntegral&comma;EuclideanIndex&comma;ExpandableProduct&comma;ExtendedBra&comma;ExtendedDifferentialOperator&comma;ExtendedDifferentialOperatorIndexed&comma;ExtendedDifferentialOperatorSymbol&comma;ExtendedKet&comma;ExtendedProjector&comma;ExtendedProjectorKind&comma;ExtendedQuantumOperator&comma;ExtendedTensor&comma;ExtendedVectorDifferentialOperator&comma;HalfInteger&comma;HermitianOperator&comma;IdentityMatrix&comma;LeviCivitaTensor&comma;LiteralSubscript&comma;NegativeExponent&comma;NonCommutativeProduct&comma;NotNestedIntegral&comma;NumericalIndex&comma;PhysicsD_2&comma;PhysicsFunction&comma;PhysicsKnownFunction&comma;PhysicsVectors&comma;Physicsd_2&comma;Polynomial&comma;Procedure&comma;ProjectorCore&comma;ProjectorInt&comma;ProjectorKind&comma;ProjectorKindDot&comma;ProjectorKindStar&comma;ProjectorSum&comma;QuantumNumber&comma;QuantumObject&comma;QuantumOperator&comma;QuantumOperatorFunction&comma;SpaceIndexValue&comma;SpaceTimeVectorApplied&comma;SpacetimeIndexValue&comma;Tensor&comma;TensorAllowWithoutIndices&comma;TensorInCurrentCoordinates&comma;TensorIndex&comma;TensorInternalRepresentation&comma;TensorQuantumOperator&comma;TensorStructure&comma;TensorVector&comma;TensorWithAbstractIndices&comma;TensorWithIndices&comma;UnitaryOperator&comma;VectorDifferentialOperator&comma;VectorOperator&comma;VectorOperatorApplied&comma;Vectorial&comma;X_mu&comma;gaugeindex&comma;spaceindex&comma;spacetimeindex&comma;spinorindex&comma;tetradindex&comma;x_mu

(143)
> 

typeH&comma;HermitianOperator

true

(144)

Assume now that F is a real function of its argument:

> 

AssumeF∷real

F::real

(145)

Hence FH is also an Hermitian operator:

> 

typeFH&comma;HermitianOperator

true

(146)
> 

%Dagger &equals; DaggerFH

F⁡H†=F⁡H

(147)

For instance, sin is a real function of its argument:

> 

%Dagger &equals; DaggersinH

sin⁡H†=sin⁡H

(148)
• 

Make more precise the definition of Physics:-Library:-PhysicsType:-ExtendedQuantumOperator to include functions of ExtendedQuantumOperators.

> 

typeV&comma;QuantumOperator

true

(149)
> 

typeFV&comma;ExtendedQuantumOperator

true

(150)
> 

typeFV&plus;V&comma;ExtendedQuantumOperator

true

(151)

 

New Assume command and new enhanced Mode: automaticsimplification

One new enhanced mode was added to the Physics setup, automaticsimplification, and a new Physics:-Assume command make expressions be automatically expressed in simpler forms and allow for very flexible ways of implementing assumptions, making the Physics environment concretely more expressive.

Assume

In almost any mathematical formulation in Physics, there are objects that are real, positive, or just angles that have a restricted range; for example: Planck's constant, time, the mass and position of particles, and so on. When placing assumptions using the assume command, however, expressions entered before placing the assumptions and those entered with the assumptions cannot be reused in case the the assumptions are removed. Also, when using assume variables get redefined so that geometrical coordinates (spacetime, Cartesian, cylindrical, and spherical) loss their identity. These issues got addressed with a new Assume command, that does not redefine the variables, implementing the concept of an "extended assuming", allowing for reusing expressions entered before placing assumptions and also after removing them. Assume also includes the functionality of the additionally command.

Examples

• 

The new Assume command implements the concept of an "extended assuming".

Consider a generic variable, x; nothing is known about it.

> 

restart&semi; withPhysics&colon;

> 

aboutx

x:

  nothing known about this object

Each variable has an associated number that depends on the session, and the computer (internally) uses this number to refer to the variable.

> 

addressofx

18446744078214447198

(152)

When using the assume command to place assumptions on a variable, this number associated to it changes, for example:

> 

assume0 < x < Pi2

> 

addressofx

18446744078389139102

(153)

Indeed, the variable x got redefined and renamed, it is not anymore the variable x referenced in (152).

> 

aboutx

Originally x, renamed x~:

  is assumed to be: RealRange(Open(0),Open(1/2*Pi))

To undo assumptions placed using the assume command one reassigns the variable x to itself:

> 

x ≔ &apos;x&apos;

x≔x

(154)

Check the numerical address: it is again equal to (152).

> 

addressofx

18446744078214447198

(155)

The key observation is that variables that receive assumptions using assume get redefined at each assumption, and this means two things:

1) all the equations or expressions, entered before placing the assumptions on x using assume, involve a variable x that is different than the one that exists after placing the assumptions, and so these previous expressions cannot be reused. They involve a different variable.

2) Also, because, after placing the assumptions using assume, x refers to a different object, programs that depend on the x that existed before placing the assumptions will not recognize the new x redefined by assume .

 

For example, if x was part of a coordinate system and the spacetime metric gμ,νdepends on it, the new variable x, redefined within assume, being a different symbol, will not be recognized as part of the dependency of gμ,ν. This posed obstacles to working with curved spacetimes that depend on parameters or on coordinates that have a restricted range. Likewise, all the Physics:-Vectors commands look for the Cartesian, cylindrical, or spherical coordinates sets x&comma;y&comma;z,ρ&comma;φ&comma;z,r&comma;θ&comma;φ, respectively, in order to determine how to proceed, but these variables disappear if you use assume to place assumptions on them. For that reason, only assuming was fully compatible with Physics, not assume. A similar situation happens with the VectorCalculus package.

 

These issues get resolved with the new Assume command that uses all the implementation of the existing assume command but with a different approach: the variables being assumed do not get redefined, and hence:

  a) you can reuse expressions or equations entered before placing the assumptions, and

  b) you can also undo the assumptions and reuse results obtained with assumptions.

This is the concept of an extended assuming. Also, commands that depend on these assumed variables will all continue to work normally, before, during, or after placing the assumption, because the variables never get redefined.

For example, before placing assumptions this simplification attempt accomplishes nothing:

> 

simplifyarccoscosx

arccos⁡cos⁡x

(156)

Assume now that 0 < x < Pi2:

> 

Assume0 < x < Pi2

x::0&comma;π2

(157)

The new command echoes the assumption placed.

a) The address of x is still the same as in (152) before placing the assumption.

> 

addressofx

18446744078214447198

(158)

So, the variable did not get redefined. The system, however, knows about the assumption - all the machinery of the assume command is being used.

> 

aboutx

x:

  is assumed to be: RealRange(Open(0),Open(1/2*Pi))

Hence, expressions entered before placing assumptions can be reused. For example, you can reuse (156) now and get:

> 

simplify

x

(159)

To clear the assumptions on x, you can use either Assumex=x or Assumeclear=..&period;&comma;x in the case of many variables being cleared in one go, or in the case of a single variable being cleared:

> 

Assumeclear &equals; x

(160)
> 

aboutx

x:

  nothing known about this object

In summary, the new Assume command implements the concept of an extended assuming, that can be turned ON and OFF at will and at any moment without changing the variables involved.

The implementation also includes the functionality of the additionally command. For that purpose add the keyword additionally anywhere in the calling sequence. For example:

> 

Assumex∷positive

x::0&comma;∞

(161)
> 

aboutx

x:

  is assumed to be: RealRange(Open(0),infinity)

> 

Assumeadditionally&comma; x<1

x::0&comma;1

(162)
> 

aboutx

x:

  is assumed to be: RealRange(Open(0),Open(1))

Automatic simplification

This new Physics mode of computation means that, after you enter Setup⁡automaticsimplification=true, the output corresponding to every single input (not just related to Physics) gets automatically simplified in size before being returned to the screen. This is fantastically convenient for interactive work in most situations.

Examples

> 

restart&semi;withPhysics&colon;

• 

By default, automaticsimplification is turned OFF; you can query about that via:

> 

Setupautomaticsimplification

automaticsimplification=false

(163)

Hence, for instance, if you input the following expressions the computer just echoes your input:

> 

a⁢c+a⁢d+b⁢c+b⁢d

a⁢c+a⁢d+b⁢c+b⁢d

(164)
> 

−3⁢sin⁡x12⁢cos⁡x2⁢sin⁡xm+3⁢sin⁡x12⁢cos⁡x2⁢cos⁡xn+4⁢sin⁡x12⁢cos⁡x4⁢sin⁡xm−4⁢sinx12⁢cosx4⁢cosxn

−3⁢sin⁡x⁢cos⁡x2⁢sin⁡xm+3⁢sin⁡x⁢cos⁡x2⁢cos⁡xn+4⁢sin⁡x⁢cos⁡x4⁢sin⁡xm−4⁢sin⁡x⁢cos⁡x4⁢cos⁡xn

(165)

There is however some structure behind (164) and (165) and, in most situations, it is convenient to have these structures apparent, in part because they frequently provide hints on how to proceed ahead, but also because a more compact expression is, roughly speaking, simpler to understand. To see this automaticsimplification in action, turn it ON:

> 

Setupautomaticsimplification&equals;true

automaticsimplification=true

(166)

Recall these same expression (you could input it with the equation label (164) as well) ...

> 

c+d⁢a+b

(167)
> 

−4⁢cos⁡x2−34⁢sin⁡x⁢cos⁡x2⁢cos⁡xn−sin⁡xm

(168)

What happened is that this output, as everything else after you set automaticsimplification&equals;true and with no exceptions, is now further processed with simplify/size before being returned. You can now enjoy computing with frankly shorter expressions all around.

You can turn automaticsimplification OFF the same way:

> 

Setupautomaticsimplification&equals;false

automaticsimplification=false

(169)
> 

a⁢c+a⁢d+b⁢c+b⁢d

(170)
> 

−3⁢sin⁡x⁢cos⁡x2⁢sin⁡xm+3⁢sin⁡x⁢cos⁡x2⁢cos⁡xn+4⁢sin⁡x⁢cos⁡x4⁢sin⁡xm−4⁢sin⁡x⁢cos⁡x4⁢cos⁡xn

(171)

 

Vectors Package

A number of changes were performed in the Vectors subpackage to make the computations more natural and versatile:

• 

Enhancement in the algebraic manipulations of inert vectorial differential operators.

• 

Improvements in the manipulation of of scalar products of vector or scalar functions (to the left) with vectorial differential operators (to the right), that result in vectorial or scalar differential operators.

• 

Several improvements in the use of trigonometric simplifications when changing the basis or the coordinates in vectorial expressions.

• 

Add new functionality mapping Vectors:-Component over equations, automatically changing basis if the two sides are not projected over the same base.

• 

Implement the expansion of the square of a vectorial expression as the scalar (dot) product of the expression with itself, including the case of a vectorial quantum operator expression.

• 

Allow multiplying equations also when the product operator is in scalar and vector products (Vectors:-`.` and Vectors:-`&x`).

• 

ChangeBasis: allow changing coordinates between sets of orthogonal coordinates also when the expression is not vectorial.

• 

New command: ChangeCoordinates, to rewrite an algebraic expression, using Cartesian, cylindrical, and spherical coordinates, an expression that involves these coordinates, either a scalar expression, or vectorial one but then not changing the orthonormal basis.

Examples

• 

Enhance the capabilities for manipulating inert vectorial differential operations on projected vectors constructed with non-projected vectors.

> 

restart&semi; withPhysics&colon; withVectors&colon;

> 

PDEtools:-declare f_x&comma;y&comma;z&colon;

f→⁡x&comma;y&comma;z⁢will now be displayed as⁢f→

(172)

Consider the vector projected in the Cartesian basis, constructed with the non-projected vector f→:

> 

f_x&comma;y&comma;z &period; _i⋅_i&plus;f_x&comma;y&comma;z &period; _j⋅_j&plus;f_x&comma;y&comma;z &period; _k⋅_k

f→·i∧⁢i∧+f→·j∧⁢j∧+f→·k∧⁢k∧

(173)

Take its divergence but not computing the operation, that is, using the inert %Divergence operator:

> 

%Divergence

∇·f→·i∧⁢i∧+f→·j∧⁢j∧+f→·k∧⁢k∧

(174)

Evaluate and expand, also switching the order of these operations:

> 

expand

f→·i∧⁢∇·i∧+f→×∇×i∧·i∧+f→x·i∧+f→·j∧⁢∇·j∧+f→×∇×j∧·j∧+f→y·j∧+f→·k∧⁢∇·k∧+f→×∇×k∧·k∧+f→z·k∧

(175)
> 

value

f→x·i∧+f→y·j∧+f→z·k∧

(176)

Take the %Curl instead of the %Divergence:

> 

%Curl

∇×f→·i∧⁢i∧+f→·j∧⁢j∧+f→·k∧⁢k∧

(177)
> 

expand

2⁢∇×i∧⁢f→·i∧−f→⁢∇×i∧·i∧+3⁢∇×f→−i∧⁢i∧·∇×f→+f→x×i∧+2⁢∇×j∧⁢f→·j∧−f→⁢∇×j∧·j∧−j∧⁢j∧·∇×f→+f→y×j∧+2⁢∇×k∧⁢f→·k∧−f→⁢∇×k∧·k∧−k∧⁢k∧·∇×f→+f→z×k∧

(178)
> 

value

f→y·k∧−f→z·j∧⁢i∧+f→z·i∧−f→x·k∧⁢j∧+f→x·j∧−f→y·i∧⁢k∧

(179)

Compare this result with evaluating first the inert ∇×..&period; operation:

> 

value

3⁢∇×f→−i∧⁢i∧·∇×f→+f→x×i∧−j∧⁢j∧·∇×f→+f→y×j∧−k∧⁢k∧·∇×f→+f→z×k∧

(180)

Verify that (179) and (180) are mathematically equal by projecting f→, so using:

> 

PDEtools:-declarefx&comma;y&comma;z

f⁡x&comma;y&comma;z⁢will now be displayed as⁢f

(181)
> 

f_x&comma;y&comma;z &equals;f1x&comma;y&comma;z _i &plus;f2x&comma;y&comma;z _j &plus;f3x&comma;y&comma;z _k 

f→=f1⁢i∧+f2⁢j∧+f3⁢k∧

(182)

Substitute f→⁡x&comma;y&comma;z in (179) and (180)

> 

eval&comma;

f3y−f2z⁢i∧+f1z−f3x⁢j∧+f2x−f1y⁢k∧

(183)
> 

eval&comma;

2⁢f3y−f2z⁢i∧+2⁢f1z−f3x⁢j∧+2⁢f2x−f1y⁢k∧+j∧⁢f3x−k∧⁢f2x−i∧⁢f3y+k∧⁢f1y+i∧⁢f2z−j∧⁢f1z

(184)

Collecting unit vectors the two expressions are identical.

> 

collect&comma;_i&comma;_j&comma;_k

f3y−f2z⁢i∧+f1z−f3x⁢j∧+f2x−f1y⁢k∧

(185)
• 

Better handling of scalar products of vectors and vectorial differential operators. Consider:

> 

f ≔  f__1 _r&plus;f__2 _theta&plus;f__3 _phi

f≔f__3⁢φ∧+f__1⁢r∧+f__2⁢θ∧

(186)

So f &period; Nabla is actually not a vector but a differential operator, hence, for instance:

> 

f &period; Nabla &period; f

r∧⁢−f__32r−f__22r+θ∧⁢−f__32⁢cos⁡θr⁢sin⁡θ+f__1⁢f__2r+φ∧⁢f__1⁢f__3r+f__2⁢f__3⁢cos⁡θr⁢sin⁡θ

(187)
• 

Several improvements in the use of trigonometric simplifications when changing the orthogonal basis or the coordinates in vectorial expressions. Consider:

> 

arctansintheta&comma;costheta

arctan⁡sin⁡θ&comma;cos⁡θ

(188)
> 

 assuming 0≤theta≤Pi

θ

(189)

New:

> 

 assuming Pi<theta≤2 Pi

θ−2⁢π

(190)

With that and similar relationships in mind, consider the following vectorial expressions

> 

_phirho

φ∧ρ

(191)
> 

ChangeBasis&comma;cartesian

−sin⁡φ⁢i∧ρ+cos⁡φ⁢j∧ρ

(192)
> 

ChangeBasis&comma;cartesian&comma;alsocomponents

−y⁢i∧x2+y2+j∧⁢xx2+y2

(193)

Reverse now this transformation, arriving back at (191).

> 

ChangeBasis&comma;cylindrical&comma;alsocomponents

φ∧ρ

(194)

Compare the output of ChangeBasis with the one of the new ChangeCoordinates; when using the new command, the unit vectors remain unchanged:

> 

ChangeCoordinates&comma;cylindrical

−sin⁡φ⁢i∧+cos⁡φ⁢j∧ρ

(195)
> 

ChangeBasis&comma;cylindrical

−y⁢cos⁡φ+sin⁡φ⁢x⁢ρ∧x2+y2+cos⁡φ⁢x+y⁢sin⁡φ⁢φ∧x2+y2

(196)

For spherical coordinates, consider for instance:

> 

_theta

θ∧

(197)
> 

ChangeBasis&comma;cartesian&comma;alsocomponents

x⁢z⁢i∧x2+y2⁢x2+y2+z2+y⁢z⁢j∧x2+y2⁢x2+y2+z2−x2+y2⁢k∧x2+y2+z2

(198)
> 

ChangeBasis&comma;spherical&comma;alsocomponents 

θ∧

(199)
> 

&theta;⋅&phi;⋅_r

θ⁢φ⁢r∧

(200)
> 

ChangeBasis&comma;cartesian&comma;alsocomponents

arccos⁡zx2+y2+z2⁢arctan⁡y&comma;x⁢x⁢i∧x2+y2+z2+arccos⁡zx2+y2+z2⁢arctan⁡y&comma;x⁢y⁢j∧x2+y2+z2+arccos⁡zx2+y2+z2⁢arctan⁡y&comma;x⁢k∧⁢zx2+y2+z2

(201)
> 

ChangeBasis&comma;spherical&comma; alsocomponents

θ⁢φ⁢r∧

(202)
• 

Map Vectors:-Component over equations, automatically changing basis if the two sides are not projected over the same base.

> 

a _i&plus;b _j &equals; A _i&plus;B _j

a⁢i∧+b⁢j∧=A⁢i∧+B⁢j∧

(203)
> 

Component&comma; 1

a=A

(204)

When the sides of the equation are projected onto different basis, Component maps both sides onto the basis of the left-hand side.

> 

a _i&plus;b _j &equals; A _theta

a⁢i∧+b⁢j∧=A⁢θ∧

(205)
> 

Component&comma; 1

a=A⁢cos⁡θ⁢cos⁡φ

(206)
> 

rhs &equals; lhs

A⁢θ∧=a⁢i∧+b⁢j∧

(207)
> 

Component&comma; 1

0=sin⁡θ⁢cos⁡φ⁢a+sin⁡θ⁢sin⁡φ⁢b

(208)
> 

Component&comma; 2

A=cos⁡φ⁢cos⁡θ⁢a+cos⁡θ⁢sin⁡φ⁢b

(209)
• 

The square of a vectorial expression as the scalar (dot) product of the expression with itself.

> 

a_ &plus; b_2

a→+b→2

(210)
> 

expand

a→2+2⁢a→·b→+b→2

(211)

Example with quantum vectorial non-commutative operators:

> 

Setupop &equals; A_&comma; B_

* Partial match of 'op' against keyword 'quantumoperators'

quantumoperators=A→&comma;B→

(212)
> 

A_&plus;B_2

A→+B→2

(213)
> 

expand

A→·A→+A→·B→+B→·A→+B→·B→

(214)
> 

Setuphermitian &equals; A_&comma; B_

* Partial match of 'hermitian' against keyword 'hermitianoperators'

hermitianoperators=A→&comma;B→

(215)
> 

expand

A→2+A→·B→+B→·A→+B→2

(216)
• 

Allow multiplying equations by multiplying their left-hand sides and equating the result to the product of the right-hand sides also for vectorial scalar and vector products (Vectors:-`.` and Vectors:-`&x`)

> 

E_&equals;F_

E→=F→

(217)
> 

G_&equals;H_

G→=H→

(218)

To enter the · and × vector products you can use the palette of 'Common Symbols', or directly type the dot and &x for the cross product:

> 

 · 

E→·G→=F→·H→

(219)
> 

×

E→×G→=F→×H→

(220)

 

 

 

The Physics Library

Twenty-six new commands, useful for programming and interactive computation, have been added to the Physics:-Library package. These are:

• 

ClearCaches

• 

ExpandProductsInExpression

• 

FlipCharacterOfFreeIndices

• 

FromMinkowskiKindToSignature

• 

FromSignatureToMinkowskiKind

• 

FromTetradToTetradMetric

• 

GetByMatchingPattern

• 

GetTypeOfTensorIndices

• 

GetVectorRootName

• 

HasOriginalTypeOfIndices

• 

IsEuclideanSignature

• 

IsGalileanSignature

• 

IsMinkowskiSignature

• 

IsValidSignature

• 

IsEuclideanMetric

• 

IsGalileanMetric

• 

IsMinkowskiMetric

• 

IsOrthonormalTetradMetric

• 

IsNullTetradMetric 

• 

IsNullTetrad

• 

IsOrthonormalTetrad

• 

IsTensorFunctionalForm

• 

RepositionRepeatedIndicesAsIn

• 

RestoreRepeatedIndices

• 

RewriteTypeOfIndices

• 

SplitIndicesByType

 

Additionally, several improvements in the previously existing Physics:-Library commands have been implemented:

• 

Add the types spacetimeindex, spaceindex, spinorindex, gaugeindex, and tetradindex to the exports of the Library:-PhysicsType package.

• 

Library:-ToCovariant and Library:-ToContravariant when the spacetime is curved and some 'tensors' involved are not actually a tensor in a curved space.

• 

Add new options changefreeindices and flipcharacterofindices to the Library:-ToCovariant and Library:-ToContravariant commands, to actually lower and raise the free indices as necessary, instead of the default behavior of returning an expression that is mathematically equivalent to the given one.

• 

Extend the Library commands GetCommutativeSymbol, GetAntiCommutativeSymbol, and GetNonCommutativeSymbol to return vectorial symbols when Vectors is loaded and a vectorial symbol is requested.

• 

Add functionality to the Library command GetSymbolsWithSameType so that when the input is a list of objects, it returns a list with new symbols of the corresponding types, automatically taking into account the vectorial (Y/N) kind of the symbols.

Examples

> 

restart&colon;withPhysics

`*`&comma;`.`&comma;Annihilation&comma;AntiCommutator&comma;Antisymmetrize&comma;Assume&comma;Bra&comma;Bracket&comma;Check&comma;Christoffel&comma;Coefficients&comma;Commutator&comma;Coordinates&comma;Creation&comma;D_&comma;Dagger&comma;Define&comma;D&gamma;&comma;Einstein&comma;Expand&comma;ExteriorDerivative&comma;FeynmanDiagrams&comma;Fundiff&comma;Geodesics&comma;GrassmannParity&comma;Gtaylor&comma;Intc&comma;Inverse&comma;Ket&comma;KillingVectors&comma;KroneckerDelta&comma;LeviCivita&comma;Library&comma;LieBracket&comma;LieDerivative&comma;Normal&comma;Parameters&comma;PerformOnAnticommutativeSystem&comma;Projector&comma;Psigma&comma;Ricci&comma;Riemann&comma;Setup&comma;Simplify&comma;SpaceTimeVector&comma;SubstituteTensor&comma;SubstituteTensorIndices&comma;SumOverRepeatedIndices&comma;Symmetrize&comma;TensorArray&comma;Tetrads&comma;ToFieldComponents&comma;ToSuperfields&comma;Trace&comma;TransformCoordinates&comma;Vectors&comma;Weyl&comma;`^`&comma;dAlembertian&comma;d_&comma;diff&comma;g_

(221)
• 

ExpandProductsInExpression is a new Library routine, to perform the equivalent to frontend@expand but including now noncommutative products, powers, and vectorial sums. This routine also has the potential of substituting all the calls to frontend, difficult to use in user-written Physics programs due to not handling noncommutative operations.

• 

FlipCharacterOfFreeIndices is a new Library routine for flipping the free indices of a tensorial expression.

> 

DefineA&comma;B

Defined objects with tensor properties

A&comma;B&comma;γμ&comma;σμ&comma;∂μ&comma;gμ,ν&comma;δμ,ν&comma;εα,β,μ,ν

(222)

An example of a tensorial expression:

> 

Arho Amu Bmu&comma;nu &plus; Anu Amu Bmu&comma;rho

Bμ,ρ⁢A⁢μ⁢μ⁢Aν+Bμ,ν⁢Aρ⁢A⁢μ⁢μ

(223)

The free indices of this expression are covariant:

> 

Check&comma; free

The free indices are: ...

ν&comma;ρ

(224)

Flip all the free indices (the resulting expression is not mathematically equal, so this is different - complementary - to what you can achieve with Library:-ToCovariant and Library:-ToContravariant and their new option flipcharacterofindices):

> 

Library:-FlipCharacterOfFreeIndices

A⁢μ⁢μ⁢A⁢ν⁢ν⁢Bμρμρ+A⁢μ⁢μ⁢A⁢ρ⁢ρ⁢Bμνμν

(225)
> 

Check&comma; all

The repeated indices per term are: ...&comma;...&comma;...; the free indices are: ...

μ&comma;μ,~nu&comma;~rho

(226)

Flip only nu:

> 

Library:-FlipCharacterOfFreeIndices&comma; nu

Aρ⁢A⁢μ⁢μ⁢Bμνμν+A⁢μ⁢μ⁢A⁢ν⁢ν⁢Bμ,ρ

(227)
> 

Check&comma; all

The repeated indices per term are: ...&comma;...&comma;...; the free indices are: ...

μ&comma;μ,ρ&comma;~nu

(228)
• 

RepositionRepeatedIndicesAsIn is a new Library routine for repositioning repeated indices following a pattern. Consider a tensor T with one index repeated.

 

> 

DefineT&comma; symmetric

Defined objects with tensor properties

T&comma;Aμ&comma;Bμ,ν&comma;γμ&comma;σμ&comma;∂μ&comma;gμ,ν&comma;δμ,ν&comma;εα,β,μ,ν

(229)
> 

Talpha&comma; alpha&comma; beta&comma; rho

Tααβ,ρααβ,ρ

(230)

Rewrite this tensor such that the repeated indices appear in the first and third positions, so following a pattern as:

> 

sigma&comma; rho&comma; sigma&comma; delta

σ&comma;ρ&comma;σ&comma;δ

(231)
> 

Library:-RepositionRepeatedIndicesAsIn&comma;&semi;

Tα,βαρα,βαρ

(232)
• 

RestoreRepeatedIndices is a new routine to use, in a given expression, the same repeated indices used in another expression.

> 

Defineeta

Defined objects with tensor properties

&eta;&comma;Aμ&comma;Bμ,ν&comma;γμ&comma;σμ&comma;Tααβ,ρααβ,ρ&comma;∂μ&comma;gμ,ν&comma;δμ,ν&comma;εα,β,μ,ν

(233)

Consider these two tensorial expressions:

> 

&eta;μ,μ

&eta;μμμμ

(234)
> 

Aρ⁢Bρ

Aρ⁢Bρ

(235)

In (234), you want to use the repeated indices used in (235): indicate the two expressions, the indices in and the indices out.

> 

Library:-RestoreRepeatedIndices&comma;&comma; mu&comma; rho

&eta;ρρρρ

(236)
• 

RewriteTypeOfIndices rewrites a tensor in terms of the type of indices used when it got defined (for example, via Define⁡Aμ,a, where μ is spacetime and a is tetradic).

> 

withTetrads&colon;

Setting lowercaselatin letters to represent tetrad indices

Defined as tetrad tensors see ?Physics,tetrads,𝔢a,μ,ηa,b,γa,b,c,λa,b,c

Defined as spacetime tensors representing the NP null vectors of the tetrad formalism see ?Physics,tetrads,lμ,nμ,mμ,m&conjugate0;μ

(237)

Consider a tensor where the first index is tetradic and the second index is spacetime.

> 

Defineredo&comma; Aa&comma;mu

Defined objects with tensor properties

Aa,μ&comma;Bμ,ν&comma;γμ&comma;σμ&comma;Tααβ,ρααβ,ρ&comma;∂μ&comma;&eta;μμμμ&comma;ηa,b&comma;gμ,ν&comma;lμ&comma;mμ&comma;m&conjugate0;μ&comma;nμ&comma;δμ,ν&comma;εα,β,μ,ν

(238)

How can the components of Aμ,a, that is the first index spacetime and the second index tetrad be expressed in terms of the components of Aa,μ?

> 

Amu&comma;a&colon; % &equals; Library:-RewriteTypeOfIndices%

Aμ,a=𝔢⁢bμ⁢bμ⁢𝔢aνaν⁢Ab,ν

(239)
• 

New dedicated Physics types added to the Physics:-Library:-PhysicsType package: CommutativeMapping, ExpandableProduct, gaugeindex, spaceindex, spacetimeindex, spinorindex, and tetradindex.

> 

withLibrary:-PhysicsType

AnnihilationCreationOperator&comma;AnnihilationOperator&comma;AppliableProcedure&comma;AppliedQuantumOperator&comma;AtProcedure&comma;CommutativeMapping&comma;CompositeDifferentiationOperator&comma;Contravariant&comma;Covariant&comma;CreationOperator&comma;DifferentialOperator&comma;DifferentialOperatorIndexed&comma;DifferentialOperatorSymbol&comma;EntirelyNotNestedIntegral&comma;EuclideanIndex&comma;ExpandableProduct&comma;ExtendedBra&comma;ExtendedDifferentialOperator&comma;ExtendedDifferentialOperatorIndexed&comma;ExtendedDifferentialOperatorSymbol&comma;ExtendedKet&comma;ExtendedProjector&comma;ExtendedProjectorKind&comma;ExtendedQuantumOperator&comma;ExtendedTensor&comma;ExtendedVectorDifferentialOperator&comma;HalfInteger&comma;HermitianOperator&comma;IdentityMatrix&comma;LeviCivitaTensor&comma;LiteralSubscript&comma;NegativeExponent&comma;NonCommutativeProduct&comma;NotNestedIntegral&comma;NumericalIndex&comma;PhysicsD_2&comma;PhysicsFunction&comma;PhysicsKnownFunction&comma;PhysicsVectors&comma;Physicsd_2&comma;Polynomial&comma;Procedure&comma;ProjectorCore&comma;ProjectorInt&comma;ProjectorKind&comma;ProjectorKindDot&comma;ProjectorKindStar&comma;ProjectorSum&comma;QuantumNumber&comma;QuantumObject&comma;QuantumOperator&comma;QuantumOperatorFunction&comma;SpaceIndexValue&comma;SpaceTimeVectorApplied&comma;SpacetimeIndexValue&comma;Tensor&comma;TensorAllowWithoutIndices&comma;TensorInCurrentCoordinates&comma;TensorIndex&comma;TensorInternalRepresentation&comma;TensorQuantumOperator&comma;TensorStructure&comma;TensorVector&comma;TensorWithAbstractIndices&comma;TensorWithIndices&comma;UnitaryOperator&comma;VectorDifferentialOperator&comma;VectorOperator&comma;VectorOperatorApplied&comma;Vectorial&comma;X_mu&comma;gaugeindex&comma;spaceindex&comma;spacetimeindex&comma;spinorindex&comma;tetradindex&comma;x_mu

(240)

A CommutativeMapping is one performed using a commutative function (regardless of whether its arguments are or are not commutative).

> 

typeexpx&comma;CommutativeMapping

true

(241)
> 

Setupop&equals;A

* Partial match of 'op' against keyword 'quantumoperators'

quantumoperators=A

(242)
> 

typeexpA&comma; CommutativeMapping

true

(243)
> 

typeAx&comma; CommutativeMapping

false

(244)

Indices of different kinds can now be identified as being of different types.

> 

Setupspacetimeindices&equals;greek&comma; spaceindices &equals; lowercase&comma; tetradindices&equals;uppercase

spaceindices=lowercaselatin&comma;spacetimeindices=greek&comma;tetradindices=uppercaselatin

(245)
> 

mu&comma; a&comma; A

μ&comma;a&comma;A

(246)
> 

maptype&comma; &comma; spacetimeindex

true&comma;false&comma;false

(247)
> 

maptype&comma; &comma; spaceindex

false&comma;true&comma;false

(248)
> 

maptype&comma; &comma; tetradindex

false&comma;false&comma;true

(249)
• 

Improvements in Library:-ToCovariant and Library:-ToContravariant when the spacetime is curved and the expression being transformed is not actually a tensor in curved spaces.

For example, set the spacetime to something not Galilean for experimentation purposes:

> 

g_sc

Systems of spacetime Coordinates are: X=r&comma;θ&comma;φ&comma;t

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

The Schwarzschild metric in coordinates r&comma;θ&comma;φ&comma;t

Parameters: m

> 

Definelmu

Defined objects with tensor properties

Aa,μ&comma;Bμ,ν&comma;𝒟μ&comma;γμ&comma;σμ&comma;Rμ,ν&comma;Rμ,ν,α,β&comma;Tααβ,ρααβ,ρ&comma;Cμ,ν,α,β&comma;Xμ&comma;∂μ&comma;𝔢a,μ&comma;&eta;μμμμ&comma;ηa,b&comma;gμ,ν&comma;γa,b,c&comma;lμ&comma;lμ&comma;λa,b,c&comma;mμ&comma;m&conjugate0;μ&comma;nμ&comma;Γμ,ν,α&comma;Gμ,ν&comma;δμ,ν&comma;εα,β,μ,ν

(250)
> 

PDEtools:-declarelX

l⁡r&comma;θ&comma;φ&comma;t⁢will now be displayed as⁢l

(251)
> 

d_xil~psiX

∂ξ⁡l⁢ψ⁢ψ

(252)

In a curved spacetime as the one just set, this derivative (252) is not a tensor. Rewriting it in terms of its Covariant components, then in terms of its Contravariant components:

> 

Library:-ToCovariant

∂ξ⁡g⁢μ,ψ⁢μ,ψ⁢lμ+g⁢μ,ψ⁢μ,ψ⁢∂ξ⁡lμ

(253)
> 

Library:-ToContravariant

gμ,ξ⁢∂⁢μ⁢μ⁡l⁢ψ⁢ψ

(254)
> 

dAlembertiand_xil~psiX

□⁡∂ξ⁡l⁢ψ⁢ψ

(255)
> 

Library:-ToCovariant

□⁡g⁢μ,ψ⁢μ,ψ⁢∂ξ⁡lμ+2⁢∂α⁡g⁢μ,ψ⁢μ,ψ⁢∂⁢α⁢α⁡∂ξ⁡lμ+g⁢μ,ψ⁢μ,ψ⁢□⁡∂ξ⁡lμ

(256)
> 

Library:-ToContravariant

□⁡gμ,ξ⁢∂⁢μ⁢μ⁡l⁢ψ⁢ψ+2⁢∂α⁡gμ,ξ⁢∂⁢α⁢α⁡∂⁢μ⁢μ⁡l⁢ψ⁢ψ+gμ,ξ⁢□⁡∂⁢μ⁢μ⁡l⁢ψ⁢ψ

(257)
• 

The default behavior in Maple 18 for Library:-ToCovariant and Library:-ToContravariant is to return an expression that is mathematically equal to the given one, and where the tensors in it (all of them, or just those indicated) appear with all of their indices covariant or all contravariant.

New functionality: return an expression that is not mathematically equal to the given one but, instead, it has all (or part) of its free indices respectively covariant or contravariant. For that purpose, pass the new option flipcharacterofindices

> 

DefineF&comma;G

Defined objects with tensor properties

F&comma;G&comma;Aa,μ&comma;Bμ,ν&comma;𝒟μ&comma;γμ&comma;σμ&comma;Rμ,ν&comma;Rμ,ν,α,β&comma;Tααβ,ρααβ,ρ&comma;Cμ,ν,α,β&comma;Xμ&comma;∂μ&comma;𝔢a,μ&comma;&eta;μμμμ&comma;ηa,b&comma;gμ,ν&comma;γa,b,c&comma;lμ&comma;lμ&comma;λa,b,c&comma;mμ&comma;m&conjugate0;μ&comma;nμ&comma;Γμ,ν,α&comma;Gμ,ν&comma;δμ,ν&comma;εα,β,μ,ν

(258)
> 

Fmu&comma;nu Gmu&comma;~alpha

Gμαμα⁢F⁢μν⁢μν

(259)
> 

Check&comma;indices&comma; all

The repeated indices per term are: ...&comma;...&comma;...; the free indices are: ...

μ,ν&comma;~alpha

(260)

Default behavior: the returned expression is mathematically equal, but the tensors appear with all of their indices covariant (Library:-ToCovariant) or contravariant (Library:-ToContravariant), by means of introducing contractions with the metric.

> 

Library:-ToCovariant

g⁢α,κ⁢α,κ⁢Gμ,κ⁢g⁢β,μ⁢β,μ⁢Fβ,ν

(261)

The aforementioned G and F have only covariant indices. This result simplifies to the given (259).

> 

Simplify−

0

(262)

New: lower or raise only the free indices in the departing expression.

> 

Library:-ToContravariant&comma;changefreeindices

Gμαμα⁢F⁢μ,ν⁢μ,ν

(263)

New: flip character of free indices, to all free indices covariant (Library:-ToCovariant) or all free indices contravariant (Library:-ToContravariant). In (259), the free indices are α (contravariant) and ν (covariant), so in the following we have first α covariant, then ν contravariant.

> 

Library:-ToCovariant&comma;flipcharacterofindices

Gμκμκ⁢F⁢βν⁢βν⁢gα,κ⁢gβμβμ

(264)
> 

Check&comma;indices&comma; free

The free indices are: ...

α&comma;ν

(265)
> 

Library:-ToContravariant&comma;flipcharacterofindices

Gκακα⁢Fμ,β⁢g⁢κ,μ⁢κ,μ⁢g⁢β,ν⁢β,ν

(266)
> 

Check&comma;indices&comma; free

The free indices are: ...

~alpha&comma;~nu

(267)

 

Miscellaneous

• 

Add several fields to the Physics:-Setup() applet in order to allow for manipulating all the Physics settings from within the applet.

• 

New Physics:-Setup options: automaticsimplification and normusesconjugate.

• 

When any of Physics or Physics:-Vectors are loaded, dtheta, dphi, etc. are now displayed as d&theta;, d&phi;, etc. 

• 

Implement, within the `*` operator, both the global and the Physics one, the product of equations as the product of left-hand sides equal the product of right-hand sides, eliminating the frequently tedious typing "lhseq1 lhseq2 &equals; rhseq1 rhseq2". You can now just enter "eq1 eq2".

• 

Automatically distribute dot products over lists, as in A·a&comma;b&comma;c=A·a&comma;A·b&comma;A·c.

• 

Allow (A = B) - C also when A, B, and C are Matrices.

• 

Add convert⁡`...`&comma;setofequations and convert⁡`...`&comma;listofequations to convert Physics:-Vectors, Matrices of equations, etc. into sets or lists of equations.

• 

Annihilation and Creation operators are now displayed as in textbooks using a− and a+.

• 

It is now possible to use equation labels to copy and paste expressions involving Annihilation and Creation operators.

• 

Implement the ability in Fundiff to compute functional derivatives by passing only a function name as second argument. This works okay when the derivand contains this function with only one dependency (perhaps with many variables), say X, permitting varying a function quite like that done using paper and pencil.

• 

The determination of symmetries and antisymmetries of tensorial expressions got enhanced.

• 

The metric gμ,ν as well as the tetrad 𝔢a,μ and tetrad metric ημ,ν can now be (re)defined using the standard Physics:-Define command for defining tensors. Also, the definition can now be given directly in terms of a tensorial expression.

• 

Add keyword option attemptzerorecognition in TensorArray, so that each component of the array is tested for 0.

• 

Allow to sum over a list of objects, or over `in` structures like 'j∈a&comma;b&comma;c' when redefining sum, and also in Physics:-Library:-Add.

• 

Harmonize the use of simplify/siderels with Physics, so that anticommutative and noncommutative objects, whether they are vectorial or not, are respected as such and not transformed into commutative objects when the simplification is performed.

• 

Changes in design:

a. 

The output of KillingVectors has now the format of a vector solution by default, that is, a 4-D vector on the left-hand side and a list with its components on the right-hand side and as such can be repassed to the Define command for posterior use as a tensor. To recover the old format of a set of equation solutions for each vector component, a new optional argument, output = componentsolutions, got implemented.

b. 

Vectors:-Norm now returns the Euclidean real norm by default, that is: Norm⁡v→=v→·v→, and only return using conjugate, as in Norm⁡v→=v→·v→&conjugate0;, when the option conjugate is passed, or the setting normusesconjugate is set using Physics:-Setup.

c. 

The output of FeynmanDiagrams now discards, by default, all terms that include tadpoles. Also, an option, includetadpoles, to have these terms included as in previous releases, got implemented.

d. 

When Physics is loaded, 0m does not return 0, in view that, in Maple, 00 returns 1.

e. 

The dot product A·B of quantum operators A and B now returns as a (noncommutative) product A B when neither A nor B involve Bras or Kets.

f. 

If A is a quantum operator and Vectors is loaded, then A→ is also a quantum operator; likewise, if Z is a noncommutative prefix and Vectors is loaded then Z→ is also a noncommutative object.

g. 

When Vectors is loaded, the Hermitian and Unitary properties of operators set using the Setup command are now propagated to "the name under the arrow" and vice versa, so that if A is a Hermitian Operator, or Unitary, then A→ is too.

h. 

The SpaceTimeVector can now have dependency other than a coordinate system.

i. 

It is now possible to enter ∂μAμBμ even when the index is repeated twice, considering that μ in Aμ⁢Bμ &equals; A·B is actually a dummy, so that a collision with μ in ∂μ can be programmatically avoided.

j. 

Diminish the use of KroneckerDelta as a tensor, using the metric g_ instead in the output of Physics commands, reserving KroneckerDelta to be used as the standard corresponding symbol in quantum mechanics, so not as a tensor.

Examples

> 

restart&semi;withPhysics&colon; Setupmathematicalnotation&equals;true

mathematicalnotation=true

(268)
• 

Add several fields to the Physics:-Setup() applet, including Tetrad settings and the new automaticsimplification, in order to permit manipulating all the Physics settings directly from the applet.

> 

Physics:-Setup&colon;

 

 

 

• 

dtheta, dphi, etc. are now displayed as d&theta;, d&phi;, etc. when Physics or Physics:-Vectors are loaded. This is particularly convenient when entering the spacetime metrics by giving the square of the line element and using dtheta, dphi, etc.to represent differentials of the coordinates. This is the square of the line element for the Schwarzschild metric in coordinates r&comma;θ&comma;φ&comma;t

> 

ds2 &equals; r⁢dr22 m−r−r2⁢dtheta2−r2⁢sin⁡θ2⁢dphi2+r−2⁢m⁢dt2r

ds2=r⁢dr22⁢m−r−r2⁢d&theta;2−r2⁢sin⁡θ2⁢d&phi;2+r−2⁢m⁢dt2r

(269)
• 

The product of equations as the product of left-hand sides equal to the product of right-hand sides.

> 

a&equals;b

a=b

(270)
> 

c&equals;d

c=d

(271)
> 

 ⋅ 

a⁢c=b⁢d

(272)
> 

2

a2=b2

(273)
> 

ac=bd

(274)
> 

 ⋅ 5 ⋅ 

5⁢a⁢c=5⁢b⁢d

(275)
• 

Distribute a dot product over the elements of a list.

> 

A·a&comma;b&comma;c

A⁢a&comma;A⁢b&comma;A⁢c

(276)
• 

More flexible input notation: allow direct addition or subtraction of a Matrix to a Matrix equation.

> 

M&comma;N&comma;R ≔ Matrix3&comma;symbol&equals;m&comma;Matrix3&comma;symbol&equals;n&comma;Matrix3&comma;symbol&equals;r

M,N,R≔m1,1m1,2m1,3m2,1m2,2m2,3m3,1m3,2m3,3,n1,1n1,2n1,3n2,1n2,2n2,3n3,1n3,2n3,3,r1,1r1,2r1,3r2,1r2,2r2,3r3,1r3,2r3,3

(277)
> 

M&equals;N−R

m1,1−r1,1m1,2−r1,2m1,3−r1,3m2,1−r2,1m2,2−r2,2m2,3−r2,3m3,1−r3,1m3,2−r3,2m3,3−r3,3=n1,1−r1,1n1,2−r1,2n1,3−r1,3n2,1−r2,1n2,2−r2,2n2,3−r2,3n3,1−r3,1n3,2−r3,2n3,3−r3,3

(278)
• 

New: convert/setofequations and convert/listofequations, useful to transform matrix and vectorial equations into sets or lists of equations.

> 

M&equals;N

m1,1m1,2m1,3m2,1m2,2m2,3m3,1m3,2m3,3=n1,1n1,2n1,3n2,1n2,2n2,3n3,1n3,2n3,3

(279)
> 

convert&comma;setofequations

m1,1=n1,1&comma;m1,2=n1,2&comma;m1,3=n1,3&comma;m2,1=n2,1&comma;m2,2=n2,2&comma;m2,3=n2,3&comma;m3,1=n3,1&comma;m3,2=n3,2&comma;m3,3=n3,3

(280)
> 

convert&comma;listofequations

m1,1=n1,1&comma;m2,1=n2,1&comma;m3,1=n3,1&comma;m1,2=n1,2&comma;m2,2=n2,2&comma;m3,2=n3,2&comma;m1,3=n1,3&comma;m2,3=n2,3&comma;m3,3=n3,3

(281)

When a single matrix is passed, each element is equated to 0 and the related set or list is returned.

> 

convertM&comma;listofequations

m1,1=0&comma;m1,2=0&comma;m1,3=0&comma;m2,1=0&comma;m2,2=0&comma;m2,3=0&comma;m3,1=0&comma;m3,2=0&comma;m3,3=0

(282)
> 

withVectors&colon;

Vectorial equations are also handled:

> 

A_ ≔ Ax _i &plus;Ay _j &plus; Az _k

A→≔Ax⁢i∧+Ay⁢j∧+Az⁢k∧

(283)
> 

B_ ≔ Bx _i &plus;By _j &plus; bz _k

B→≔Bx⁢i∧+By⁢j∧+bz⁢k∧

(284)
> 

convert⁡A→=B→&comma;setofequations

Ax=Bx&comma;Ay=By&comma;Az=bz

(285)
• 

The display of Annihilation and Creation operators is now with the minus and plus symbols as superscripts.

> 

Annihilationpsi

a−

(286)
> 

Creationpsi

a+

(287)
• 

It is possible to use equation labels to refer to these operators.

> 

%Commutator &equals; Commutator&comma;

a−,a+−=1

(288)
> 

 &period; Ketpsi&comma; 0

ψ1

(289)
> 

 &period; 

ψ0

(290)
• 

Fundiff: when computing functional differentiation, you can indicate the functionality of the differentiation variable, as in:

> 

Fundifffx&comma; fy

δ⁡x−y

(291)

Frequently, however, x is an integration dummy variable, as in:

> 

Intcgx fx&comma;x

∫−∞∞g⁡x⁢f⁡x&DifferentialD;x

(292)

The standard way of computing the functional derivative, indicating the functionality of the differentiation function, continues to work, as in:

> 

Fundiff&comma; fy

g⁡y

(293)

It is now possible to not indicate the functionality of the differentiation variable, so that the output comes directly expressed using the originally dummy variable, in this case x. Here you can delay the operation:

> 

%Fundiff &equals; Fundiff&comma; f

δδ⁢f⁡∫−∞∞g⁡x⁢f⁡x&DifferentialD;x=g⁡x

(294)
• 

The determination of symmetries and antisymmetries of tensorial expressions got enhanced. Define a tensor H with the symmetries of the Riemann tensor

> 

DefineHalpha&comma;beta&comma;mu&comma;nu&comma; symmetric &equals; alpha&comma;beta&comma; mu&comma;nu&comma; antisymmetric &equals; alpha&comma;beta&comma;mu&comma;nu

Defined objects with tensor properties

γμ&comma;Hα,β,μ,ν&comma;σμ&comma;∂μ&comma;gμ,ν&comma;εα,β,μ,ν

(295)

Consider now the tensorial derivative, in inert form (use %diff, not diff)

> 

%diffHalpha&comma;beta&comma;mu&comma;nu&comma; Hrho&comma;sigma&comma;tau&comma;delta

∂∂Hρ,σ,τ,δHα,β,μ,ν

(296)

This inert derivative is antisymmetric with respect to permutations of the indices of each of the pairs alpha&comma;beta,mu&comma;nu,rho&comma;sigma,tau&comma;delta.

> 

Library:-IsTensorialAntisymmetric&comma; alpha&comma;beta&comma;mu&comma;nu&comma;rho&comma;sigma&comma;tau&comma;delta

true

(297)

Now replace the last pair, tau&comma;delta by tau&comma;sigma.

> 

Library:-IsTensorialAntisymmetric&comma; alpha&comma;beta&comma;mu&comma;nu&comma;rho&comma;sigma&comma;tau&comma;sigma

false

(298)

Test the antisymmetry with respect to each pair of indices.

> 

map2Library:-IsTensorialAntisymmetric&comma; &comma; alpha&comma;beta&comma;mu&comma;nu&comma;rho&comma;sigma&comma;tau&comma;sigma

true&comma;true&comma;true&comma;false

(299)
• 

The metric can be defined in terms of a tensorial expression and using the standard Physics command for defining tensors, that is, Define. Consider, for instance, the following definition of the metric in terms of a tensor lμX and a Minkowski metric ημ,ν.

> 

CoordinatesX

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

Systems of spacetime Coordinates are: X=x1&comma;x2&comma;x3&comma;x4

X

(300)
> 

PDEtools:-declarelX

l⁡x1&comma;x2&comma;x3&comma;x4⁢will now be displayed as⁢l

(301)

Define first  lμX and ημ,ν.

> 

lmuX&comma; etamu&comma;nu &equals; rhsg_

> 

Defined objects with tensor properties

γμ&comma;Hα,β,μ,ν&comma;σμ&comma;Xμ&comma;∂μ&comma;&eta;μ,ν&comma;gμ,ν&comma;lμ&comma;δμ,ν&comma;εα,β,μ,ν

(302)

Define now the metric gμ,νin terms of the following tensorial expression, directly using Define.

> 

g_mu&comma;nu &equals; lmu lnu − etamu&comma;nu

gμ,ν=lμ⁢lν−&eta;μ,ν

(303)
> 

Define

Defined objects with tensor properties

γμ&comma;Hα,β,μ,ν&comma;σμ&comma;Xμ&comma;∂μ&comma;&eta;μ,ν&comma;gμ,ν&comma;lμ&comma;δμ,ν&comma;εα,β,μ,ν

(304)

Verify the resulting metric:

> 

g_

gμ,ν=l12+1l1⁢l2l1⁢l3l1⁢l4l1⁢l2l22+1l2⁢l3l2⁢l4l1⁢l3l2⁢l3l32+1l3⁢l4l1⁢l4l2⁢l4l3⁢l4l42−1

(305)
• 

New Setup option normusesconjugate for Vectors:-Norm.

> 

withPhysics:-Vectors

&x&comma;`+`&comma;`.`&comma;ChangeBasis&comma;ChangeCoordinates&comma;Component&comma;Curl&comma;DirectionalDiff&comma;Divergence&comma;Gradient&comma;Identify&comma;Laplacian&comma;∇&comma;Norm&comma;Setup&comma;diff

(306)
> 

A_ ≔ a _i &plus; b _j &plus; c _k

A→≔a⁢i∧+b⁢j∧+c⁢k∧

(307)
> 

NormA_

a2+b2+c2

(308)
> 

NormA_&comma; conjugate

a⁢a&conjugate0;+b⁢b&conjugate0;+c⁢c&conjugate0;

(309)
> 

Setupnormusesconjugate &equals; true

normusesconjugate=true

(310)
> 

NormA_

a⁢a&conjugate0;+b⁢b&conjugate0;+c⁢c&conjugate0;

(311)

 

• 

New: summing over a list of objects.

Consider the following summation:

∑c=true&comma;false⁡2c3otherwise

So, you want to sum a piecewise function where one of the conditions assume the value true, then false. The input would be the following and you see an error interruption.

> 

sumpiecewisec&comma; 2&comma; 3&comma; c &equals; true&comma; false&semi;

Error, (in PiecewiseTools:-Is) Wrong kind of parameters in piecewise

This happens because of a premature evaluation of piecewise before the summation index c assumes a value, but even delaying the evaluation of piecewise with quotes you also receive (another kind of) error interruption

> 

sum&apos;piecewise&apos;c&comma; 2&comma; 3&comma; c &equals; true&comma; false&semi;

Error, (in sum) second argument must be a name, name=a..b, name=RootOf, or name=algebraic

The problem is that the sum command does not accept a list of values for the summation index like the add command does.

 

These two issues get resolved when redefining the sum command as explained in Physics:-Setup (subsection on redefinesum) - the novelty in Maple 2015 is in accepting a list of values for the summation index as add does. Note you do not need to load Physics for this purpose; just enter:

> 

Physics:-Setupredefinesum&equals;true

redefinesum=true

(312)

Also, after redefining sum, you do not need to use delay evaluation quotes: the premature evaluation of the summand before the summation index assumes values do not happen anymore, so just enter:

> 

sumpiecewisec&comma; 2&comma; 3&comma; c &equals; true&comma; false&semi;

5

(313)

Structures using `in`, as for instance 'j∈a&comma;b&comma;c' are now also allowed:

> 

&apos;sumpiecewisec&comma; 2&comma; 3&comma; c in true&comma; false&apos;&semi;

∑c∈true&comma;false⁡2c3otherwise

(314)
> 

5

(315)
• 

Change in FeynmanDiagrams: discard tadpoles by default.
(This section is updated according to developments in FeynmanDiagrams for the Maple 2020 release)

> 

PDEtools:-declarephiX

phi⁡X⁢will now be displayed as⁢φ

(316)

The interaction Lagrangian of the λ⁢φ⁡X4 model.

> 

L ≔ lambda phiX4

L≔λ⁢φ4

(317)

The default is to compute with three vertices, to compute with only one vertex use

> 

FeynmanDiagramsL&comma;numberofvertices&equals;1

I∫λ⁢φ4&DifferentialD;X 4

(318)

The corresponding graph:

> 

FeynmanDiagramsL&comma;numberofvertices&equals;1&comma;graph

I∫λ⁢φ4&DifferentialD;X 4

(319)

The previous default included terms that involve tadpoles, that is, internal (loop) lines that start and end in the same vertex; to recover that behavior use the new keyword includetadpoles.

> 

FeynmanDiagramsL&comma;numberofvertices&equals;1&comma; tadpoles

I∫6⁢λ⁢φ2⁢φ&comma;φ+λ⁢φ4&DifferentialD;X 4

(320)

Only the term with a tadpole and as a graph:

> 

FeynmanDiagramsL&comma;numberofvertices&equals;1&comma; tadpoles&comma;loops&equals;1&comma;  graphs

* Partial match of 'loops' against keyword 'numberofloops'

I∫6⁢λ⁢φ2⁢φ&comma;φ&DifferentialD;X 4

(321)

The terms of the scattering matrix up to order 2 (two vertices). Set a new system of coordinates and turn OFF the PDEtools:-declare mechanism to see both X and Y in the output.

> 

CoordinatesY

⁢Default differentiation variables for d_, D_ and dAlembertian are:⁢Y=y1&comma;y2&comma;y3&comma;y4

⁢Systems of spacetime coordinates are:⁢Y=y1&comma;y2&comma;y3&comma;y4

Y

(322)
> 

OFF&semi;

> 

FeynmanDiagramsL&comma;numberofvertices&equals;2&comma;  labels&equals;X&comma; Y

I22!∫∫96⁢λ2⁢φ⁡X⁢φ⁡Y⁢φ⁡X&comma;φ⁡Y3+72⁢λ2⁢φ⁡X2⁢φ⁡Y2⁢φ⁡X&comma;φ⁡Y2+16⁢λ2⁢φ⁡X3⁢φ⁡Y3⁢φ⁡X&comma;φ⁡Y&DifferentialD;X 4&DifferentialD;Y 4

(323)

The graph corresponding to the term (process) with two external legs, each one in a different vertex; new: you can specify the legs using the _NP(leg 1, leg2, ...) or directly as a list with the legs, possibly indicating the vertices.

> 

FeynmanDiagramsL&comma;numberofvertices&equals;2&comma;  labels&equals;X&comma; Y&comma; externallegs &equals; phiX&comma; phiY&comma; graph

I22!∫∫96⁢λ2⁢φ⁡X⁢φ⁡Y⁢φ⁡X&comma;φ⁡Y3&DifferentialD;X 4&DifferentialD;Y 4

(324)
> 

 

See Also

Index of New Maple 2015 Features

Physics

Computer Algebra for Theoretical Physics

The Physics project