Efficient trace-free decomposition of symmetric tensors of arbitrary rank
Abstract
Symmetric trace-free tensors are used in many areas of physics, including electromagnetism, relativistic celestial mechanics and geodesy, as well as in the study of gravitational radiation and gravitational lensing. Their use allows integration of the relevant wave propagation equations to arbitrary order. We present an improved iterative method for the trace-free decomposition of symmetric tensors of arbitrary rank. The method can be used both in coordinate-free symbolic derivations using a computer algebra system and in numerical modeling. We obtain a closed-form representation of the trace-free decomposition in arbitrary dimensions. To demonstrate the results, we compute the coordinate combinations representing the symmetric trace-free (STF) mass multipole moments for rank 5 through 8, not readily available in the literature.
keywords:
STF tensors,trace-free decomposition,computer algebraMathematics Subject Classification 2020: 15A72, 68W30, 78A10, 85-04
1 Introduction
In our investigation of gravitational lensing phenomena [11, 12, 13], we utilized the representation of the scalar gravitational potential via an infinite series of symmetric trace-free (STF) tensor mass multipole moments [4]. The STF mass multipole moments of an object of arbitrary shape can be obtained by integrating the appropriate STF coordinate combinations over the volume of the object, as was demonstrated in [13]. Such a representation is useful to study not just gravitational lensing but also electromagnetism, gravitational radiation, geodesy and celestial mechanics [14, 8, 5, 15, 6, 7].
Although the STF representation of a scalar potential is equivalent to the representation using spherical harmonics, it simplifies the integration of wave propagation equations [11, 12, 13] and offers the advantage of coordinate independence [2]. This, in turn, makes it possible to use a Cartesian coordinate system for actual calculations, which offers great convenience over spherical coordinates in many scenarios. On the other hand, the STF formalism can be computationally intensive, which may explain why it remains somewhat less well known and less frequently used than spherical harmonics.
As we shall see below, the trace-free representation of tensors is unique. Obtaining the decomposition, however, requires solving a potentially very large linear system of equations [4]. The complexity of the system of equations makes it difficult to use the results in analytical derivations. While it is computationally straightforward to solve a linear system of equations numerically, such solutions are opaque, offer little insight, and are useless when the goal is to obtain closed form analytical or semianalytical solutions of a physical problem.
On the other hand, the problem can be greatly simplified when the tensor in question is symmetric in all indices [9]. This is the case in particular when it comes to tensorial STF mass multipole moments. This investigation led us to a new, direct, coordinate-independent method of trace-free decomposition of fully symmetric tensors of arbitrary rank. After implementing this method using computer algebra software, we realized that a more efficient, closed-form representation is also achievable. Guided by earlier efforts to obtain such a representation specifically in the three-dimensional case, we were able to derive a closed-form result in arbitrary dimensions.
In the present paper, we offer a brief introduction to the trace-free representation in Sec. 2. In Section 3 we explore the fully symmetric case. In Section 5 we present a closed-form representation for the STF coordinate combinations. We offer a brief discussion in Sec. 6. We demonstrate the utility of this result in the Appendix by way of a simple use case, computing the coordinate combinations that represent STF mass multipole moments for rank 5 through 8.
2 Trace-free representation of a generic tensor
To introduce our approach, let us first consider the simplest case, the trace of a rank-2 tensor:
(1) |
where is the covariant metric. (In case of Euclidean space with Cartesian coordinates, , but our approach is not confined to this special case; we assume a generic metric manifold with a nondegenerate metric.) The trace-free representation amounts to decomposing the generic tensor into a linear combination of a trace-free tensor and the trace multiplied by the metric:
(2) |
where is the number of dimensions. It is well known and easy to see that this representation is unique.
For rank-3 tensors the decomposition becomes a bit more interesting. These tensors have three distinct traces, , and . The decomposition then follows:
(3) |
To determine the values of the quantities through , we can take the trace of (3) and obtain three linear tensor equations in three sets of unknowns:
(4) | ||||
(5) | ||||
(6) |
These can be readily solved to yield
(7) | ||||
(8) | ||||
(9) |
thus
(10) |
This establishes the generic pattern. As we can see, the representation is unique. For rank- tensors, the representation involves unknown tensors of rank :
(11) |
which, after taking the traces, yields equations in the form
(12) | ||||
(13) |
The structure of this system of equations is more complex than it appears at first sight, as it sometimes involves the unknown tensors, sometimes their traces. In the general case, this is a linear system of equations in unknowns. In principle, this is trivially solvable, but the result is a complex expression, not readily tractable.
3 Symmetric trace-free tensors
When is symmetric in all indices, the situation is greatly simplified, since in (11). In particular, for we get
(14) |
Taking the trace with respect to the indices, we get
(15) |
Solving for and substituting back into (14), we obtain
(16) |
Similarly, for , we obtain the equation
(17) |
Taking the trace with respect to the indices, we get
(18) |
Taking the trace again, with respect to , we obtain
(19) |
which we can substitute back into (18), to get
(20) |
Finally, we can substitute this result back into (17):
(21) |
where we used round brackets in indices to indicate symmetrization. This nice, clean result suggests that a generalization to arbitrary rank might be possible. To investigate this, let us first consider the case following the same approach:
(22) | ||||
(23) | ||||
(24) | ||||
(25) | ||||
(26) |
However, generalizing to introduces a new twist, the need to take the trace not twice but three times:
(27) | ||||
(28) | ||||
(29) |
(30) | ||||
(31) | ||||
(32) | ||||
(33) |
Even as, with higher rank, we need to calculate more and more traces, this establishes a general pattern that allows us to compute the trace-free representation of fully symmetric tensors:
(34) | ||||
(35) | ||||
(36) | ||||
This approach can be readily continued to arbitrary rank, as required.
4 Coordinate-free decomposition algorithm
The generic procedure to obtain the trace-free representation of a symmetric tensor can be summarized as follows:
-
1.
Start with the equation
(37) -
2.
Form subsequent traces with respect to , , etc., until only a vector or scalar expression remains.
-
3.
Solve the final equation for (if is even) or (if is odd) in terms of or .
-
4.
Substitute the result into the preceding (rank-2 or rank-3) equation and solve for (for even ) or (for odd ).
-
5.
Repeat iteratively until solutions for all the indexed quantities are obtained in this manner.
-
6.
Finally, substitute these solutions into (37), which is solved trivially for the trace-free .
It may be tempting to think that computing the trace-free representation of a rank- tensor can utilize results from the rank- or rank- computation. This, however, is not the case. At each rank, the computation relies on unique terms, despite the apparent, formal similarities between expressions.
We implemented this algorithm using the Maxima computer algebra system, as presented in A. Although we have also obtained a closed form representation (see Sec. 5 below) the iterative algorithm presented here may be more convenient in some situations. This implementation can compute the symbolic form of the decomposition for tensor ranks up to rank-8 on desktop computers with typical hardware and memory resources. (Higher rank tensors exhaust the memory allocation of the LISP language implementation underlying the Maxima language. The symbolic result in any case becomes too complex to be of practical use.)
This Maxima implementation of our trace-free decomposition algorithm can also be used either directly for numerical computation within the Maxima system, or it can serve as a model for numerical implementations. The Maxima session shown in B demonstrates using this algorithm to explicitly compute matrix elements, in this case the rank-3 STF tensor characterizing the octupole gravitational potential of a point mass located at coordinates in a Cartesian coordinate system.
The trace-free nature of the result is readily seen. By assigning values to the parameters the final expression can be numerically evaluated. Specific cases, in principle up to arbitrary rank, in actual practice up to rank-8, can be just as readily evaluated. It is not necessary to display large, untractable interim expressions; a few additional lines of Maxima code can be used, as needed, to compute results numerically and then print only unique nonzero elements of the resulting tensor.
5 Closed-form representation
Recurring patterns in this solution appear to suggest that a closed-form can be obtained. Indeed, such a representation has been derived for the case of dimensions in [10] for use in the study of gravitational radiation; see also [8, 1, 3].
Following the approach in [10], in the general -dimensional case, we obtain by induction the expression
(38) |
The product term in the denominator can, in turn, be expressed using gamma functions and simplified:
(39) |
leading to the final trace-free representation of the fully symmetric, -dimensional, rank- tensor in the form
(40) |
This closed-form representation can also be readily implemented using computer algebra, as shown in C. To demonstrate the practical applicability of our results, in D we present the coordinate combinations needed to compute the STF mass moments of rank that are not readily available in the literature.
6 Conclusions
Symmetric trace-free tensors provide a versatile alternative to spherical harmonics in the investigation of many problems in physics, including the topic that inspired our investigation, gravitational lensing [11, 12, 13]. The primary advantage of the STF tensor representation is its coordinate independence. This allows us to work using the coordinate system of our choice, which includes the convenient Cartesian coordinate system. Nonetheless, the STF representation is less well known than that with the spherical harmonics. This is likely due to the fact that their use, especially the use of higher-rank STF tensors, can be computationally daunting, and that symbolic results suitable for analytical calculations are not readily available.
The STF representation often begins by obtaining a tensor, symmetric in all indices, but not yet trace-free. The corresponding STF tensor is obtained using the unique trace-free representation of this tensor. In principle, finding this representation requires solving a potentially large system of linear equations. The result that we developed relies on the unique properties of fully symmetric tensors to compute this decomposition efficiently in a coordinate-independent form. This may be done not only to arbitrary order, but also in the geometries with arbitrary dimensions.
Though the principles are well known, our result presents several advantages. First, it is valid in an arbitrary metric manifold with a nondegenerate metric, in arbitrary dimensions. Second, it is a closed-form expression: instead of relying on generic methods like matrix inversion or linear equation solvers, it relies on the unique properties of symmetric tensors. As a consequence, the results are readily presented in symbolic form, suitable for use in analytical expressions and for use in computer algebra.
As such, this method is usable in many applied contexts, including electromagnetism, geodesy and celestial mechanics, as well as the subject of our investigation, gravitational lensing. As the solution works in arbitrary dimensions, it may also find use in the development and application of new theories such as higher-dimensional theories of gravitation. Our results can also help solve wave propagation equations in many areas of wave physics.
In D we present the STF coordinate combinations that are required to compute the STF mass multipole moments for rank , which can be used to study gravitational lensing by complex mass distributions. The work on using these results is ongoing; results, when available, will be published elsewhere.
Acknowledgments
This work in part was performed at the Jet Propulsion Laboratory, California Institute of Technology, under a contract with the National Aeronautics and Space Administration. VTT acknowledges the generous support of Plamen Vasilev and other Patreon patrons.
References
- [1] L. Blanchet and T. Damour, Radiative gravitational fields in general relativity. I - General structure of the field outside the source, Philos. Trans. R. Soc. London Ser. A 320 (December 1986) 379–430.
- [2] R. Conboye, Coordinate independent expression for transverse trace-free tensors, Class. Quant. Grav. 33 (January 2016) p. 015008.
- [3] T. Damour and B. R. Iyer, Multipole analysis for electromagnetism and linearized gravity with irreducible Cartesian tensors, Phys. Rev. D 43 (May 1991) 3259–3272.
- [4] M. Hamermesh, Group Theory and its Application to Physical Problems (Dover, New York, 1962).
- [5] T. Hartmann, M. H. Soffel and T. Kioustelidis, On the Use of STF-Tensors in Celestial Mechanics, Cel. Mech. Dyn. Astron. 60 (September 1994) 139–159.
- [6] M. Soffel, S. Kopeikin and W.-B. Han, Advanced relativistic VLBI model for geodesy, J. of Geodesy 91 (July 2017) 783–801.
- [7] M. H. Soffel and W.-B. Han, Applied General Relativity: Theory and Applications in Astronomy, Celestial Mechanics and Metrology (Springer, Cham, Switzerland, 2019).
- [8] K. S. Thorne, Multipole expansions of gravitational radiation, Rev. Mod. Phys. 52 (April 1980) 299–340.
- [9] D. R. Tompkins, Symmetrized Tensor “Trace” Operations, J. Math. Phys. 9 (January 1968) 1–8.
- [10] A. Trautman, F. A. E. Pirani and H. Bondi, Lectures on General Relativity, Volume One (Prentice-Hall, Englewood Hills, New Jersey, 1964).
- [11] S. G. Turyshev and V. T. Toth, Diffraction of electromagnetic waves by an extended gravitational lens, Phys. Rev. D 103 (3 2021) p. 064076.
- [12] S. G. Turyshev and V. T. Toth, Multipole decomposition of gravitational lensing, submitted (2021) arXiv:2107.13126 [gr-qc].
- [13] S. G. Turyshev and V. T. Toth, Multipole representation of a generic gravitational lens, submitted (2021) arXiv:2108.07172 [gr-qc].
- [14] J. W. York, Jr., Covariant decompositions of symmetric tensors in the theory of gravitation, Annales de L’Institut Henri Poincare Section (A) Physique Theorique 21 (December 1974) 319–332.
- [15] S. Zschocke, a Detailed Proof of the Fundamental Theorem of STF Multipole Expansion in Linearized Gravity, Int. J. Mod. Phys. D 23 (October 2014) p. 1450003.
Appendix A Maxima implementation
/* makeQ0: Generate trace-free decomposition of a symmetric tensor. * * Usage: makeQ0(N, [d, g, Q]); * * parameters: N: rank of the tensor to be decomposed (integer, >1) * d (optional): Number of dimensions (can be symbolic) * g (optional): Name of the metric (default: n) * Q (optional): Name of the tensor * * Given the rank-d contravariant tensor Q that is fully symmetric * in all indices, this program defines the itensor components of Q0, * its trace-free decomposition. * * Side effects: 1) loads itensor; 2) redefines imetric and dim, * 3) defines symmetry properties for the metric and Q, 4) defines * contraction properties for Q and Qa, and 5) defines the itensor * components for Qa and Q0. * * Example: * * (%i1) load("makeQ0.mac"); * (%o1) makeQ0.mac * (%i2) makeQ0(2,3); * (%o2) done * (%i3) ishow(Q0([],[a,b]))$ * a b * a b Q n * (%t3) Q - ------ * 3 * (%i4) makeQ0(3,n,g,T); * (%o4) done * (%i5) ishow(T0([],[a,b,c]))$ * a b c a b c a c b * 2 g T 2 T g 2 g T a b c * (%t5) (- ---------) - --------- - --------- + T * 2 n + 4 2 n + 4 2 n + 4 * * (c) 2021 Viktor T. Toth (https://www.vttoth.com/) * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of * the License, or (at your option) any later version. * * This program is distributed in the hope that it will be * useful, but WITHOUT ANY WARRANTY; without even the implied * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU General Public License for more details. */ makeQ0(N,[L]):=block ( [AI,II,I3,E,i,j,a,q,q0], if not get(’makeQ0,’version) then ( put(’makeQ0,’20210720,’version), load(itensor) ), if not integerp(N) or N < 2 then return("makeQ0: first argument must be an integer greater than 1!"), if length(L)>2 then (q:L[3],q0:concat(L[3],"0"),a:concat(L[3],"a")) else (q:Q,q0:Q0,a:Qa), if length(L)>1 then imetric(L[2]) else imetric(n), if length(L)>0 then dim:L[1] else dim:’d, decsym(imetric,2,0,[sym(all)],[]), decsym(imetric,0,2,[],[sym(all)]), defcon(a,a,a), defcon(q,q,q), for i from 2 thru N-2 do ( decsym(a,i,0,[sym(all)],[]), decsym(a,0,i,[],[sym(all)]), decsym(q,i,0,[sym(all)],[]), decsym(q,0,i,[],[sym(all)]) ), remcomps(a), AI:makelist(eval_string(concat("a",i)),i,1,N), II:makelist(eval_string(concat("i",i)),i,1,N), I3:makelist(eval_string(concat("i",i)),i,3,N), E:makelist(0,i,0,(N+1)/2), E[1]:(canform(contract(expand(kdels(II,AI)*ev(imetric)([],[i1,i2])*a([],I3))))), for i thru N-1 step 2 do ( E[(i+3)/2]:(canform(contract(contract(expand(E[(i+1)/2]* ev(imetric)([AI[i],AI[i+1]])))))) ), if evenp(N) then components(a([],[]),rhs(solve(q([],[])=E[N/2+1],a([],[]))[1])), for i from N+(if evenp(N) then -1 else 0) thru 3 step -2 do components(a([],makelist(AI[j],j,i,N)), rhs(solve(q([],makelist(AI[j],j,i,N))=ev(E[(i+1)/2],a), a([],makelist(AI[j],j,i,N)))[1])), components(q0([],AI),q([],AI)-ev(E[1],a)) )$
Appendix B Maxima usage example
The following Maxima program computes the rank-3 STF tensor corresponding to the octupole moment of the gravitational field of a point mass located at coordinates in a Cartesian coordinate system.
(%i1) load("makeQ0.mac")$ (%i2) makeQ0(3,3,g,T)$ (%i3) components(T([],[c]),g([a,b],[])*T([],[a,b,c]))$ (%i4) EQ:T0([],[a,b,c])$ (%i5) EQ:EQ,T$ (%i6) EQ:subst(T0[a][b,c],’T0[a,b,c],ic_convert(’T0([],[a,b,c])=EQ))$ (%i7) lg:ident(3)$ (%i8) ug:ident(3)$ (%i9) dim:3$ (%i10) T0:[0,0,0]$ (%i11) for i thru dim do T0[i]:zeromatrix(dim,dim)$ (%i12) for i thru 3 do for j thru 3 do for k thru 3 do T[i,j,k]:0$ (%i13) T[3,3,3]:m*z^3$ (%i14) ev(EQ)$ (%i15) T0:factor(T0); [ 3 ] [ 3 ] [ 0 0 0 ] [ m z ] [ m z ] [ ] [ - ---- 0 0 ] [ 0 0 - ---- ] [ 3 ] [ 5 ] [ 5 ] [ m z ] [ ] [ ] [ 0 0 - ---- ] [ 3 ] (%o15) [[ 0 0 0 ], [ 5 ], [ m z ]] [ ] [ ] [ 0 - ---- 0 ] [ 3 ] [ 3 ] [ 5 ] [ m z ] [ m z ] [ ] [ - ---- 0 0 ] [ 0 - ---- 0 ] [ 3 ] [ 5 ] [ 5 ] [ 2 m z ] [ 0 0 ------ ] [ 5 ]
Lines 1–2 load the STF program and run it for the rank-3 3-dimensional case, using the symbols and for the metric tensor and the moment of inertia tensor, respectively.
Line 3 establishes the components of the traces of using the formalism of the maxima itensor package.
Lines 4–6 set up an equation using the ic_convert facility of itensor, which can convert an abstract index expression into a set of matrix element operations.
Lines 7–9 establish the metric and the dimensionality of the problem.
Lines 10–13 set up a rank-3 object as a vector of three matrices.
Finally, line 14 evaluates the ic_convert expression and line 15 displays the result.
Appendix C Closed form implementation
The closed-form representation of the STF decomposition described in Sec. 5 can be implemented using the following simple Maxima function:
/* formQ0: Evaluate trace-free decomposition of a symmetric tensor. * * Usage: Q0(Q); * * parameters: Q: itensor expression * * Given the tensor Q that is fully symmetric in all indices, this * function returns the corresponding STF tensor. * * Side effects: None. * * Example: * * (%i1) load("formQ0.mac")$ * (%i2) load(itensor)$ * (%i3) dim:3$ * (%i4) decsym(g,0,2,[],[sym(all)])$ * (%i5) imetric(g)$ * (%i6) flipflag:true$ * (%i7) defcon(Q,Q,Q)$ * (%i8) decsym(Q,0,3,[],[sym(all)])$ * (%i9) ishow(canform(’kdels([a,b,c],[j,k,l])*Q0(Q([],[a,b,c]))))$ * %1 %2 %3 j k l * 3 Q g kdels * %1 %2 %3 j k l %1 %2 %3 * (%t9) Q kdels - -------------------------- * %1 %2 %3 5 * * (c) 2021 Viktor T. Toth (https://www.vttoth.com/) * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of * the License, or (at your option) any later version. * * This program is distributed in the hope that it will be * useful, but WITHOUT ANY WARRANTY; without even the implied * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU General Public License for more details. */ Q0(_Q):=block ([_a,_k,_i,_j,_l,_g], _a:indices(_Q)[1], _k:length(_a), _g:ev(imetric), _Q+canform(contract(sum( (-1/2)^_p*(dim+2*_k-2*(_p+2))!!/_p!/(_k-2*_p)!/(dim+2*_k-4)!! *canform(contract(expand( kdels(makelist(concat(’_i,_j),_j,1,_k),_a) *prod(_g([],[concat(’_i,2*_i-1), concat(’_i,2*_i)])*_g([concat(’_j,2*_i-1),concat(’_j,2*_i)]),_i,1,_p) *sublis(makelist(_a[_l]=(flatten([makelist(concat(’_j,_i),_i,1,2*_p), makelist(concat(’_i,_i),_i,2*_p+1,_k)]))[_l],_l,1,_k),_Q)))), _p,1,_k/2))) )$
Before running this subroutine, the itensor package of Maxima must be loaded. The following usage example demonstrates the use of this formulation, used in conjunction with the powerful capabilities of itensor to apply declared symmetries, and obtain the result in a particularly compact form:
(%i1) load("formQ0.mac")$ (%i2) load(itensor)$ (%i3) dim:3$ (%i4) decsym(g,0,2,[],[sym(all)])$ (%i5) imetric(g)$ (%i6) flipflag:true$ (%i7) defcon(x,x,r2)$ (%i8) components(r2([],[]),r^2)$ (%i9) ishow(canform(’kdels([a,b,c],[j,k,l])*Q0(x([],[a])*x([],[b])*x([],[c]))))$ %1 %2 %3 j k l 2 3 x g kdels r %1 %2 %3 j k l %1 %2 %3 (%t9) x x x kdels - ----------------------------- %1 %2 %3 5 (%i10) ishow(canform(’kdels([a,b,c,d],[j,k,l,m]) *Q0(x([],[a])*x([],[b])*x([],[c])*x([],[d]))))$ %1 %2 %3 %4 j k l m 4 3 g g kdels r %1 %2 %3 %4 (%t10) ----------------------------------- 35 %1 %2 %3 %4 j k l m 2 6 x x g kdels r %1 %2 %3 %4 %1 %2 %3 %4 j k l m - ------------------------------------ + x x x x kdels 7 %1 %2 %3 %4
Appendix D STF multipole moments
Despite their advantages compared to the method of spherical harmonics, STF multipole moments are not yet widely used modern physics (see discussion in [12]). This is primarily due to the fact that they are difficult to compute by hand. Using our results, especially with computer algebra, these tedious computations can be trivially simplified. Here we present an example, STF mass multipole moments of increasing rank.
We use the usual definition of the STF mass multipole moments [7]:
(41) |
where angle brackets represent symmetrization and trace removal. The known coordinate combinations needed to compute the lowest Cartesian STF multipole moments [7] are given as
(42) | ||||
(43) | ||||
(44) |
To our surprise, higher rank combinations, , are not readily available in the literature. To demonstrate the utility of our result, we compute the coordinate combinations needed for STF moments of rank in three dimensions, . Using the Maxima implementation of our closed form result presented in D, we can easily compute all cases for :
(45) | ||||
(46) | ||||
(47) | ||||
(48) |
These expressions may now be used to compute the STF moments for , as we did in [13].