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 2019 has been the consolidation of the functionality introduced in previous releases, together with significant enhancements to further strengthen the functionality mainly in three areas:
1.
|
Quantum Mechanics: coherent states, tensor products of states, taylor series of expressions involving anticommutative variables and functions, and several improvements in the normalization and simplification of Commutator and AntiCommutator algebra rules.
|
2.
|
Tensor computations in general, making Maple 2019 unmatched in the field, covering classical and quantum mechanics, and special and general relativity, using natural tensor input notation and textbook-like display of results. The functionality for tensors is tightly integrated with the full Maple computation system and extensively documented in "A Complete Guide for performing tensor computations using Physics".
|
3.
|
Documentation: besides the new guide for tensor computations, two other new pages, linked in all the help pages of Physics commands, are
|
a.
|
Physics Updates organizes and presents in one place all formerly scattered links to updates and presentations with examples on the use of Physics.
|
b.
|
Mini-Course: Computer Algebra for Physicists, is a course that can be used as a tutorial, with 10 sections to be covered in 5 hands-on guided experiences of 2 hours each. The first part, 5 sections, is about Maple 101, while the remaining 5 sections is all about using the Physics package.
|
Overall, the enhancements throughout the entire package increase robustness, versatility and functionality, extending furthermore the range of Physics-related algebraic computations that can be done naturally in a worksheet. The presentation below illustrates both the novelties and the kind of mathematical formulations that can now be performed.
As part of its commitment to providing the best possible environment for algebraic computations in Physics, Maplesoft launched a Maple Physics: Research and Development website 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 2019.
|
The Zassenhaus formula and the algebra of the Pauli matrices
|
|
The implementation of the Pauli matrices and their algebra were reviewed for Maple 2019, including the algebraic manipulation of nested commutators, resulting in faster computations using simpler and more flexible input. As it frequently happens, improvements of this type suddenly transform research problems presented in the literature as untractable in practice, into tractable.
As an illustration, we tackle below the derivation of the coefficients entering the Zassenhaus formula shown in section 4 of [1] for the Pauli matrices up to order 10 (results in the literature go up to order 5). The computation presented can be reused to compute these coefficients up to any desired higher-order (hardware limitations may apply). A number of examples which exploit this formula and its dual, the Baker-Campbell-Hausdorff formula, occur in connection with the Weyl prescription for converting a classical function to a quantum operator (see sec. 5 of [1]), as well as when solving the eigenvalue problem for classes of mathematical-physics partial differential equations [2].
|
References
|
|
|
[1] R.M. Wilcox. "Exponential Operators and Parameter Differentiation in Quantum Physics", Journal of Mathematical Physics, V.8, 4, (1967.
|
|
[2] S. Steinberg. "Applications of the lie algebraic formulas of Baker, Campbell, Hausdorff, and Zassenhaus to the calculation of explicit solutions of partial differential equations". Journal of Differential Equations, V.26, 3, 1977.
|
|
[3] K. Huang. "Statistical Mechanics". John Wiley & Sons, Inc. 1963, p217, Eq.(10.60).
|
|
Formulation of the problem
The Zassenhaus formula expresses as an infinite product of exponential operators involving nested commutators of increasing complexity
Given , and their commutator , if and commute with , for and the Zassenhaus formula reduces to the product of the first three exponentials above. The interest here is in the general case, when and , and the goal is to compute the Zassenhaus coefficients in terms of , for arbitrary n. Following [1], in that general case, differentiating the Zassenhaus formula with respect to and multiplying from the right by one obtains
This is an intricate formula, which however (see eq.(4.20) of [1]) can be represented in abstract form as
from where an equation to be solved for each is obtained by equating to 0 the coefficient of . In this formula, the repeated commutator bracket is defined inductively in terms of the standard commutator by
and higher-order repeated-commutator brackets are similarly defined. For example, taking the coefficient of and and respectively solving each of them for and one obtains
This method is used in [3] to treat quantum deviations from the classical limit of the partition function for both a Bose-Einstein and Fermi-Dirac gas. The complexity of the computation of grows rapidly and in the literature only the coefficients up to have been published. Taking advantage of developments in the Physics package for Maple 2019, below we show the computation up to and provide a compact approach to compute them up to arbitrary order.
Computing up to
Set the signature of spacetime such that its space part is equal to +++ and use lowercaselatin letters to represent space indices. Set also , and to represent quantum operators
>
|
|
>
|
|
| |
| |
| (1) |
To illustrate the computation up to , a convenient example, where the commutator algebra is closed, consists of taking and as Pauli Matrices which, multiplied by the imaginary unit, form a basis for the group, which in turn exponentiate to the relevant Special Unitary Group . The algebra for the Pauli matrices involves a commutator and an anticommutator
>
|
|
| (2) |
Assign now and to two Pauli matrices, for instance
Next, to extract the coefficient of from
to solve it for we note that each term has a factor multiplying a sum, so we only need to take into account the first terms (sums) and in each sum replace by the corresponding . For example, given to compute we only need to compute these first three terms:
then solving for one gets .
Also, since to compute we only need the coefficient of , it is not necessary to compute all the terms of each multiple-sum. One way of restricting the multiple-sums to only one power of consists of using multi-index summation, available in the Physics package (see Physics:-Library:-Add). For that purpose, redefine sum to extend its functionality with multi-index summation
>
|
|
Now we can represent the same computation of without multiple sums and without computing unnecessary terms as
Finally, we need a computational representation for the repeated commutator bracket
One way of representing this commutator bracket operation is defining a procedure, say F, with a cache to avoid recomputing lower order nested commutators, as follows
>
|
|
| (6) |
For example,
We can set now the value of
>
|
|
and enter the formula that involves only multi-index summation
>
|
|
| (11) |
from where we compute by solving for it the coefficient of , and since due to the multi-index summation this expression already contains as a factor,
>
|
|
In order to generalize the formula for H for higher powers of , the right-hand side of the multi-index summation limit can be expressed in terms of an abstract N, and H transformed into a mapping:
>
|
|
| (13) |
Now we have
The following is already equal to (11)
| (16) |
In this way, we can reproduce the results published in the literature for the coefficients of Zassenhaus formula up to by adding two more multi-index sums to (13). Unassign first
>
|
|
We compute now up to in one go
>
|
|
| (17) |
The nested-commutator expression solved in the last step for is
| (18) |
With everything understood, we want now to extend these results generalizing them into an approach to compute an arbitrarily large coefficient , then use that generalization to compute all the Zassenhaus coefficients up to . To type the formula for H for higher powers of is however prone to typographical mistakes. The following is a program, using the Maple programming language, that produces these formulas for an arbitrary integer power of :
This Formula program uses a sequence of summation indices with as much indices as the order of the coefficient we want to compute, in this case we need 10 of them
>
|
|
| (19) |
To avoid interference of the results computed in the loop (17), unassign again
Now the formulas typed by hand, used lines above to compute each of , and , are respectively constructed by the computer
>
|
|
| (20) |
>
|
|
| (21) |
>
|
|
| (22) |
Construct then the formula for and make it be a mapping with respect to N, as done for after (16)
>
|
|
| (23) |
Compute now the coefficients of the Zassenhaus formula up to all in one go
>
|
|
| |
| |
| |
| |
| |
| (24) |
Notes: with the material above you can compute higher order values of . For that you need:
1.
|
Unassign , as done above in two cases, to avoid interference of the results just computed.
|
2.
|
Indicate more summation indices in the sequence in (19), as many as the maximum value of n in .
|
3.
|
Have in mind that the growth in size and complexity is significant, with each taking significantly more time than the computation of all the previous ones.
|
4.
|
Re-execute the input line (23) and the loop (24).
|
|
|
Multivariable Taylor series of expressions involving anticommutative (Grassmannian) variables
|
|
The Physics:-Gtaylor command, for computing Taylor series of expressions involving anticommutative variables, got rewritten, now as a multivariable Taylor series command (same difference as in between the taylor and mtaylor commands) and combining two different approaches to handle, when possible, the presence of noncommutative and anticommutative variables. One is the standard approach for multi-variable expansions, it requires that the derivative of each function entering the expression being expanded commutes with the function itself. The second approach, for expansions with respect to anticommutative variables, separates the function into a "Body" and a "Soul", as is standard in supermathematics.
Consider a set of anticommutative Grassmann variables with , forming a basis enlarged by their products, that satisfies , so that The elements of the algebra involving these variables are linear combinations of the form
where the coefficients are complex numbers, is called the body and everything else, , is called the soul (nilpotent part).
Consider now a mapping (function) which is assumed to be differentiable. Then can be defined by its Taylor expansion,
That is the expansion computed by Gtaylor in Maple 2019.
Examples
>
|
|
| (25) |
Consider
>
|
|
| (26) |
Step by step, (26) is the application of the mapping
to the element of the algebra
>
|
|
| (28) |
The body of is
>
|
|
The soul of is
| (30) |
and in view of
>
|
|
| (31) |
for the expression (26), the Taylor expansion, mentioned in the introductory paragraph is
>
|
|
| (32) |
The same computation, all in one go:
| (33) |
•
|
Gauss integrals in this domain, that is, integrals over the exponential of a quadratic form of Grassmann variables, yield the determinant of the coefficient matrix of the quadratic form. These integrals play an important role in applications of anticommutative variables.
|
Problem. Taking into account that, with regards to Grassmann variables, differentiation and integration are the same operation, recover the determinant of the coefficient matrix with dimension
Define the coefficient matrix and construct the exponential
>
|
|
| (34) |
>
|
|
>
|
|
>
|
|
| (37) |
The integral of this exponential can thus be obtained performing a multivariable Taylor series expansion, then differentiating (equivalent to integrating) with respect to the six variables.
>
|
|
To avoid the default behavior of discarding terms of order 6 or higher in , as in the other series commands of the Maple system, indicate the order term to be .
>
|
|
| (38) |
Perform now the integration of the expanded exponential
| (39) |
Compare with the determinant of the coefficient matrix M
>
|
|
| (40) |
•
|
An example with fermionic annihilation and creation operators, typical from quantum field theory.
|
>
|
|
| |
| |
| (42) |
Define corresponding annihilation and creation operators
>
|
|
Note that the anticommutator of these two operators is equal to 1 (so they don't anticommute)
>
|
|
while they do anticommute with all Grassmann variables
>
|
|
>
|
|
and, because of Pauli's exclusion principle for fermions, the square of and are equal to 0.
Consider now the product of exponentials
>
|
|
| (48) |
Because the corresponding exponents and commute with their commutator, this product of exponentials can be combined using Hausdorff's formula
| (49) |
Both sides can be expanded in multivariable Taylor series, this time including the annihilation and creation operators as series variables since their commutation rules are all known ((45), (46), (47)) and their square is equal to 0:
| (50) |
On the left-hand side is the product of the expansion of each exponential while on the right-hand side it is the expansion of the single exponential (no-trivially) combined taking into account the commutator of the exponents on the left-hand side. Verify that both expansions are one and the same:
•
|
Both Gtaylor and diff now handle as a differentiation or series variable in equal footing as itself
|
| (52) |
| (53) |
•
|
Depending on the case, multivariable Taylor expansions in the presence of not commutative variables can also be computed for functions of more than one variable and for unknown functions
|
>
|
|
| (55) |
>
|
|
| (56) |
>
|
|
|
|
New SortProducts command
|
|
A new command, SortProducts, receives an expression involving products and sorts the operands of these products according to the ordering indicated as the second argument, a list containing some or all of the operands of the product(s) found in the expression. The sorting of operands performed automatically takes into account any algebra rules set using Setup.
Examples
Consider the product of the commutative
Reorder the operands and "in place".
>
|
|
Sort the operands and and put them to the left, then to the right
>
|
|
>
|
|
Set a prefix identifying noncommutative variables and related algebra rules for some of them, such that and commute between themselves, but none of them commute with .
>
|
|
| (62) |
Sort Z2 and Z3 "in place".
>
|
|
>
|
|
The value of the commutator between Z1 and Z5 is not known to the system, so by default they are not sorted:
>
|
|
Force their sorting using their commutator or anticommutator
>
|
|
>
|
|
Enter the product of with at the end (so, to the right of P) and sort it with to the left. This is a case where does not commute with any of the other operands. Compare the results with and without the option usecommutator,
>
|
|
>
|
|
| (73) |
>
|
|
| (74) |
|
|
Documentation: "Physics updates", "A complete guide for performing tensor computations" and the "Mini-Course: Computer Algebra for Physicists"
|
|
•
|
Prior to Maple 2019, the Physics package documentation contained
|
a.
|
Help pages for each Physics command
|
b.
|
A page on Physics conventions
|
c.
|
Another page with Examples in different areas of physics
|
d.
|
The "What's new in Physics" of each release with illustrations only shown there.
|
e.
|
A number of Mapleprimes posts describing the Physics project and showing how to use the package to tackle different problems.
|
|
Although this set is thorough in the information provided, the information is scattered. To address this situation, for Maple 2019, a single page, "Physics Updates" organizes and presents all those elusive links from b. to e. in one place, with hyperlinks to all the contents, and this page is now linked in all the Physics commands' help pages. Comments on practical ways to improve this presentation of information are welcome.
|
•
|
Likewise, one frequently asked question is on how to perform computations with tensors using the Physics packages, including the ones done in the past using GRTensor, a package developed in the 90's, not by Maplesoft, and which was at that time the standard for computer algebra and relativity. To address these question a new help page A Complete Guide for performing tensor computations using Physics, as an e-Handbook, is now part of the help system. This guide has three sections. Part I is all about tensors and their use in Euclidean spaces, Special Relativity, Quantum Mechanics and Classical field theory. Part II is all devoted to General Relativity. Part III is about transformations of coordinates on tensorial expressions.
|
•
|
The Physics package provides the mathematical tools for computations in several different areas. Maple users have mentioned other times that in a case like this the help pages themselves are not enough, that a tutorial approach would be an appropriate complement. In Maple 2019 we are thus adding a Mini-Course: Computer Algebra for Physicists. This course can be used as a tutorial, with 10 sections to be covered in 5 hands-on guided experiences of 2 hours each. The first part, 5 sections, is about Maple 101, for people who never used Computer Algebra, while the remaining 5 sections are all about using the Physics package.
|
|
|
Simplification of tensors, Pauli and Dirac matrices and KroneckerDelta
|
|
•
|
Significant enhancement of the simplification of tensorial expressions
|
A new algorithm for normalizing tensorial expressions got implemented, following the ideas presented in the paper by L. R. U. Manssur, R. Portugal, and B. F. Svaiter,
Group-Theoretic Approach for Symbolic Tensor Manipulation, International Journal of Modern Physics C, Vol. 13, No. 07, pp. 859-879 (2002).
Examples
>
|
|
| (75) |
Define the following tensors, with no particular symmetry
>
|
|
| (76) |
These tensors, A, B, F, H, and J respectively depend on 1 to 5 indices in the following tensorial expressions, all of which are actually equal to 0. The simplifier in Maple 2019 detects that fact by rewriting these expressions in the canonical / normal form explained in the reference mentioned above. To input the expressions with the contravariant indices as superscripts, type them preceded by ~, then right-click the input expression and select 2-D Math / Convert To / 2-D Math Input.
>
|
|
>
|
|
>
|
|
>
|
|
The following example is less simple, define a tensor with three indices, that is symmetric with respect to the last two of them
>
|
|
| |
| (81) |
So
>
|
|
If we now swap with and take the difference we get an antisymmetric tensorial expression
>
|
|
So, by construction, the following is equal to 0 even when none of the terms is; detecting situations like this one is part of the intrinsic efficiency of the group theoretic approach
>
|
|
| (85) |
•
|
The Pauli and Dirac matrices are implemented as 4-vectors
|
In Maple 2019, to compute the matrix components use Library:-RewriteInMatrixForm and Library:-PerformMatrixOperations
>
|
|
| (87) |
Since Pauli matrices are now defined as a 4-vector, all the keywords for tensors automatically work
| (88) |
Likewise, you can visualize tensor components the usual way using TensorArray
| (89) |
To see the matrix expression of these commutators and anticommutators of Pauli matrices use the option performmatrixoperations. For example, for the first block of identities involving commutators,
>
|
|
| (90) |
The simplifier now knows more about Pauli matrices
>
|
|
These two library routines are the ones used to rewrite tensorial expressions in matrix form or to perform the corresponding matrix operations
>
|
|
| (97) |
>
|
|
The same works for the Dirac matrices
| (99) |
| (100) |
New in Maple 2019, when Physics is loaded the standard representation of Dirac matrices is automatically loaded too, corresponding to the contravariant components of
| (101) |
>
|
|
| (102) |
The definition of is also visible using the keyword definition
| (103) |
Verify the first three of these identities
>
|
|
| (104) |
For the fourth identity
>
|
|
| (106) |
You can compute with the tensor components and later represent them in matrix form, or perform the corresponding matrix operations
>
|
|
>
|
|
| (108) |
>
|
|
| (109) |
>
|
|
| (110) |
| (111) |
>
|
|
•
|
In Maple 2019, KroneckerDelta is not a tensor unless its indices are of su2, su3, spinor or gauge type
|
Although in an Euclidean space the Kronecker symbol is a tensor, its components do not change under a transformation of coordinates, that is not the case in a Minkowski or curved spacetime. Also, KroneckerDelta is more often than otherwise used taking when , while due to Einstein's sum rule for repeated indices, if KroneckerDelta were a tensor and is a tensor index, then . To avoid this ambiguity of notation, in Maple 2019 KroneckerDelta is not implemented as a tensor, but as the standard non-tensorial Kronecker symbol, unless its indices are of su2, xu3, spinor or gauge type.
For the cases where you need to use it as a tensor with space or spacetime indices, for example when entering commutation relations in quantum mechanics using tensorial notation, you can either use the metric itself , or define a Kronecker tensor for that purpose. For example
>
|
|
| |
| |
| |
| (112) |
This does not return the dimension of space
>
|
|
This returns the dimension of space:
You can define a Kronecker tensor using Define with ease, for example defining the covariant components of the tensor as follows
>
|
|
| |
| (116) |
Now you have
| (117) |
>
|
|
| (118) |
| (119) |
And the trace:
So this is not equal to 1
This tensor, well defined in an Euclidean space, however changes when the space is not Euclidean. For example:
>
|
|
| (124) |
>
|
|
| (125) |
|
|