compute the exterior derivative of a totally antisymmetric covariant tensorial expression - Maple Programming Help

Physics[ExteriorDerivative] - compute the exterior derivative of a totally antisymmetric covariant tensorial expression

 Calling Sequence ExteriorDerivative[mu](A)

Parameters

 A - an algebraic expression, or a relation, or a list, set, Matrix or Array of them. A can be tensorial, in which case all its free indices must be covariant and the expression totally antisymmetric with respect to permutations of its free indices mu - a spacetime covariant index, used to index the covariant derivative operator D_ ... - (optional) the last argument can be the non-covariant operator d_ to be used instead of the covariant D_

Description

 • The ExteriorDerivative[mu] command computes the exterior derivative of an expression A (possibly tensorial, according to the standard definition) as the exterior product of the covariant operator D_[mu], and a covariant, totally antisymmetric expression A, which can also be a vector in tensor notation with only one covariant index, or a scalar. In this sense, ExteriorDerivative performs, in a tensorial expression and using tensor notation, the operation that DifferentialGeometry[ExteriorDerivative] performs in the equivalent expression using differential forms.
 NOTE: if the covariant index passed, mu, is also present in A as a free covariant index, the output is the contracted product D_[~mu](A[.., mu, ..]).
 • The antisymmetry of A with respect to permutations of its free indices is verified before proceeding using Library[IsTensorialAntisymmetric]. Note that both the antisymmetrization of A as well as the exterior product between two arbitrary tensorial expressions can always be computed passing the expression or product to Antisymmetrize.
 • The index mu indexing ExteriorDerivative in ExteriorDerivative[mu](A) is expected to be a spacetime index and is used to index the covariant derivative operator D_. When the spacetime is Galilean, so all the Christoffel symbols are zero, the operator d_ is used instead. When the spacetime is non-Galilean, due to the symmetry of the Christoffel symbols under permutation of their 2nd and 3rd indices, as well as the antisymmetric property of the result of ExteriorDerivative[mu](A), all the terms involving Christoffel symbols cancel so that a mathematically equivalent result can be obtained replacing D_ by d_. To obtain a result directly expressed using d_, pass d_ as the last argument.

Examples

In the examples that follow, as well as in the context of tensor computations with the Physics package, it is used Einstein's summation convention for repeated indices

 > $\mathrm{with}\left(\mathrm{Physics}\right):$
 > $\mathrm{Setup}\left(\mathrm{mathematicalnotation}=\mathrm{true}\right)$
 $\left[{\mathrm{mathematicalnotation}}{=}{\mathrm{true}}\right]$ (1)

Set a system of coordinates - say X

 > $\mathrm{Setup}\left(\mathrm{coordinates}=X\right)$
 ${}\mathrm{Default differentiation variables for d_, D_ and dAlembertian are:}{}{}\left\{X=\left(\mathrm{x1}{,}\mathrm{x2}{,}\mathrm{x3}{,}\mathrm{x4}\right)\right\}$
 ${}\mathrm{Systems of spacetime coordinates are:}{}{}\left\{X=\left(\mathrm{x1}{,}\mathrm{x2}{,}\mathrm{x3}{,}\mathrm{x4}\right)\right\}$
 $\mathrm{_______________________________________________________}$
 $\left[{\mathrm{coordinatesystems}}{=}\left\{{X}\right\}\right]$ (2)

Compute the exterior derivative of a scalar $f\left(X\right)$

 > ${\mathrm{ExteriorDerivative}}_{\mathrm{μ}}\left(f\left(X\right)\right)$
 ${{\partial }}_{{\mathrm{\mu }}}{}\left({f}{}\left({X}\right)\right)$ (3)

Because the spacetime at this point in the worksheet is flat, the output above involves d_, not the covariant D_. Set the spacetime to any non-Galilean value, for instance use the Schwarzschild metric (see g_)

 > ${\mathrm{g_}}_{\mathrm{sc}}$
 ${}\mathrm{_______________________________________________________}$
 ${}\mathrm{Systems of spacetime coordinates are:}{}{}\left\{X=\left(r{,}\mathrm{\theta }{,}\mathrm{\phi }{,}t\right)\right\}$
 ${}\mathrm{Default differentiation variables for d_, D_ and dAlembertian are:}{}{}\left\{X=\left(r{,}\mathrm{\theta }{,}\mathrm{\phi }{,}t\right)\right\}$
 ${}\mathrm{The Schwarzschild metric in coordinates}{}{}\left[r{,}\mathrm{\theta }{,}\mathrm{\phi }{,}t\right]$
 $\mathrm{Parameters:}{}\left[m\right]$
 ${}\mathrm{_______________________________________________________}$
 ${{\mathrm{g_}}}_{{\mathrm{μ}}{,}{\mathrm{ν}}}{=}\left(\left[\begin{array}{cccc}\frac{r}{-r+2m}& 0& 0& 0\\ 0& -{r}^{2}& 0& 0\\ 0& 0& -{r}^{2}{\mathrm{sin}{}\left(\mathrm{θ}\right)}^{2}& 0\\ 0& 0& 0& \frac{r-2m}{r}\end{array}\right]\right)$ (4)

Define two tensors for experimentation, one symmetric, the other antisymmetric

 > $\mathrm{Define}\left(F,\mathrm{antisymmetric},\mathrm{quiet}\right):$$\mathrm{Define}\left(H,\mathrm{symmetric}\right)$
 $\mathrm{Defined objects with tensor properties}$
 $\left\{{F}{,}{H}{,}{{▿}}_{{\mathrm{\mu }}}{,}{{\mathrm{\gamma }}}_{{\mathrm{\mu }}}{,}{{\mathrm{\sigma }}}_{{\mathrm{\mu }}}{,}{{R}}_{{\mathrm{\mu }}{,}{\mathrm{\nu }}}{,}{{R}}_{{\mathrm{\mu }}{,}{\mathrm{\nu }}{,}{\mathrm{\alpha }}{,}{\mathrm{\beta }}}{,}{{C}}_{{\mathrm{\mu }}{,}{\mathrm{\nu }}{,}{\mathrm{\alpha }}{,}{\mathrm{\beta }}}{,}{{X}}_{{\mathrm{\mu }}}{,}{{\partial }}_{{\mathrm{\mu }}}{,}{{g}}_{{\mathrm{\mu }}{,}{\mathrm{\nu }}}{,}{{\mathrm{\Gamma }}}_{{\mathrm{\mu }}{,}{\mathrm{\nu }}{,}{\mathrm{\alpha }}}{,}{{G}}_{{\mathrm{\mu }}{,}{\mathrm{\nu }}}{,}{{\mathrm{\epsilon }}}_{{\mathrm{\alpha }}{,}{\mathrm{\beta }}{,}{\mathrm{\mu }}{,}{\mathrm{\nu }}}\right\}$ (5)

Use the declare facility of PDEtools to avoid redundant display of functionality of $F\left(X\right)$ and $H\left(X\right)$

 > $\mathrm{PDEtools}:-\mathrm{declare}\left(\left(F,H\right)\left(X\right)\right)$
 ${F}{}\left({X}\right){\mathrm{will now be displayed as}}{F}$
 ${H}{}\left({X}\right){\mathrm{will now be displayed as}}{H}$ (6)
 > ${\mathrm{ExteriorDerivative}}_{\mathrm{μ}}\left({F}_{\mathrm{α},\mathrm{β}}\left(X\right)\right)$
 $\frac{{1}}{{3}}{{\mathrm{D_}}}_{{\mathrm{μ}}}{}\left({{F}}_{{\mathrm{α}}{,}{\mathrm{β}}}{}\left({X}\right){,}\left[{X}\right]\right){+}\frac{{1}}{{3}}{{\mathrm{D_}}}_{{\mathrm{α}}}{}\left({{F}}_{{\mathrm{β}}{,}{\mathrm{μ}}}{}\left({X}\right){,}\left[{X}\right]\right){-}\frac{{1}}{{3}}{{\mathrm{D_}}}_{{\mathrm{β}}}{}\left({{F}}_{{\mathrm{α}}{,}{\mathrm{μ}}}{}\left({X}\right){,}\left[{X}\right]\right)$ (7)

The same result can be expressed in non-covariant manner in terms of d_ - pass it as last argument

 > ${\mathrm{ExteriorDerivative}}_{\mathrm{μ}}\left({F}_{\mathrm{α},\mathrm{β}}\left(X\right),\mathrm{d_}\right)$
 $\frac{{1}}{{3}}{{\mathrm{d_}}}_{{\mathrm{μ}}}{}\left({{F}}_{{\mathrm{α}}{,}{\mathrm{β}}}{}\left({X}\right){,}\left[{X}\right]\right){+}\frac{{1}}{{3}}{{\mathrm{d_}}}_{{\mathrm{α}}}{}\left({{F}}_{{\mathrm{β}}{,}{\mathrm{μ}}}{}\left({X}\right){,}\left[{X}\right]\right){-}\frac{{1}}{{3}}{{\mathrm{d_}}}_{{\mathrm{β}}}{}\left({{F}}_{{\mathrm{α}}{,}{\mathrm{μ}}}{}\left({X}\right){,}\left[{X}\right]\right)$ (8)

For example, to verify these two expressions are the same, rewrite the first one in terms of d_ and Simplify to re-obtain (8)

 > $\mathrm{convert}\left(,\mathrm{d_}\right)$
 $\frac{{1}}{{3}}{{\mathrm{d_}}}_{{\mathrm{μ}}}{}\left({{F}}_{{\mathrm{α}}{,}{\mathrm{β}}}{}\left({X}\right){,}\left[{X}\right]\right){-}\frac{{1}}{{3}}{{\mathrm{Christoffel}}}_{{\mathrm{~nu}}{,}{\mathrm{α}}{,}{\mathrm{μ}}}{{F}}_{{\mathrm{ν}}{,}{\mathrm{β}}}{}\left({X}\right){+}\frac{{1}}{{3}}{{\mathrm{d_}}}_{{\mathrm{α}}}{}\left({{F}}_{{\mathrm{β}}{,}{\mathrm{μ}}}{}\left({X}\right){,}\left[{X}\right]\right){-}\frac{{1}}{{3}}{{\mathrm{Christoffel}}}_{{\mathrm{~nu}}{,}{\mathrm{α}}{,}{\mathrm{μ}}}{{F}}_{{\mathrm{β}}{,}{\mathrm{ν}}}{}\left({X}\right){-}\frac{{1}}{{3}}{{\mathrm{d_}}}_{{\mathrm{β}}}{}\left({{F}}_{{\mathrm{α}}{,}{\mathrm{μ}}}{}\left({X}\right){,}\left[{X}\right]\right)$ (9)
 > $\mathrm{Simplify}\left(\right)$
 $\frac{{1}}{{3}}{{\mathrm{d_}}}_{{\mathrm{μ}}}{}\left({{F}}_{{\mathrm{α}}{,}{\mathrm{β}}}{}\left({X}\right){,}\left[{X}\right]\right){+}\frac{{1}}{{3}}{{\mathrm{d_}}}_{{\mathrm{α}}}{}\left({{F}}_{{\mathrm{β}}{,}{\mathrm{μ}}}{}\left({X}\right){,}\left[{X}\right]\right){-}\frac{{1}}{{3}}{{\mathrm{d_}}}_{{\mathrm{β}}}{}\left({{F}}_{{\mathrm{α}}{,}{\mathrm{μ}}}{}\left({X}\right){,}\left[{X}\right]\right)$ (10)

To see the components behind these tensorial expressions you can use TensorArray, or the Library command TensorComponents, or more directly: Define a tensor with the expression, say ${T}_{\mathrm{\mu },\mathrm{\alpha },\mathrm{\beta }}$ and use it to compute its contravariant or covariant expressions, matricial form, etc:

 > $\mathrm{Define}\left({T}_{\mathrm{μ},\mathrm{α},\mathrm{β}}=\right)$
 $\mathrm{Defined objects with tensor properties}$
 $\left\{{H}{,}{{▿}}_{{\mathrm{\mu }}}{,}{{\mathrm{\gamma }}}_{{\mathrm{\mu }}}{,}{{F}}_{{\mathrm{\alpha }}{,}{\mathrm{\beta }}}{,}{{\mathrm{\sigma }}}_{{\mathrm{\mu }}}{,}{{R}}_{{\mathrm{\mu }}{,}{\mathrm{\nu }}}{,}{{R}}_{{\mathrm{\mu }}{,}{\mathrm{\nu }}{,}{\mathrm{\alpha }}{,}{\mathrm{\beta }}}{,}{{T}}_{{\mathrm{\mu }}{,}{\mathrm{\alpha }}{,}{\mathrm{\beta }}}{,}{{C}}_{{\mathrm{\mu }}{,}{\mathrm{\nu }}{,}{\mathrm{\alpha }}{,}{\mathrm{\beta }}}{,}{{X}}_{{\mathrm{\mu }}}{,}{{\partial }}_{{\mathrm{\mu }}}{,}{{g}}_{{\mathrm{\mu }}{,}{\mathrm{\nu }}}{,}{{\mathrm{\Gamma }}}_{{\mathrm{\mu }}{,}{\mathrm{\nu }}{,}{\mathrm{\alpha }}}{,}{{G}}_{{\mathrm{\mu }}{,}{\mathrm{\nu }}}{,}{{\mathrm{\epsilon }}}_{{\mathrm{\alpha }}{,}{\mathrm{\beta }}{,}{\mathrm{\mu }}{,}{\mathrm{\nu }}}\right\}$ (11)

To see the all indices covariant and equal to 1,

 > ${T}_{1,1,1}$
 ${0}$ (12)

The values of $T$ for all of its indices equal to 1, 2, 3, either covariant or all contravariant

 > ${T}_{1,2,3}$
 $\frac{{1}}{{3}}{\mathrm{diff}}{}\left({{F}}_{{2}{,}{3}}{}\left({X}\right){,}{r}\right){-}\frac{{1}}{{3}}{\mathrm{diff}}{}\left({{F}}_{{1}{,}{3}}{}\left({X}\right){,}{\mathrm{θ}}\right){+}\frac{{1}}{{3}}{\mathrm{diff}}{}\left({{F}}_{{1}{,}{2}}{}\left({X}\right){,}{\mathrm{φ}}\right)$ (13)
 > ${T}_{\mathrm{~1},\mathrm{~2},\mathrm{~3}}$
 ${-}\frac{{1}}{{3}}\frac{\left({-}{r}{+}{2}{m}\right)\left({-}\left({\mathrm{diff}}{}\left({{F}}_{{3}{,}{1}}{}\left({X}\right){,}{\mathrm{θ}}\right)\right){+}{\mathrm{diff}}{}\left({{F}}_{{2}{,}{1}}{}\left({X}\right){,}{\mathrm{φ}}\right){-}\left({\mathrm{diff}}{}\left({{F}}_{{2}{,}{3}}{}\left({X}\right){,}{r}\right)\right)\right)}{{{r}}^{{5}}{{\mathrm{sin}}{}\left({\mathrm{θ}}\right)}^{{2}}}$ (14)

By construction, this tensorial expression ${T}_{\mathrm{\alpha },\mathrm{\beta },\mathrm{\gamma }}$ is totally antisymmetric, so

 > ${T}_{1,2,3}+{T}_{2,1,3}$
 ${0}$ (15)

Recalling that $H$ is defined as symmetric and the symmetries of the Riemann tensor, create an expression that is zero by contracting $H$ with the first or second pair of indices of Riemann. Use the product operator *, not ., to avoid automatic simplification of contracted indices

 > ${\mathrm{Riemann}}_{\mathrm{μ},\mathrm{ν},\mathrm{α},\mathrm{β}}{H}_{\mathrm{α},\mathrm{β}}\left(X\right)$
 ${{H}}_{{\mathrm{α}}{,}{\mathrm{β}}}{}\left({X}\right){{\mathrm{Riemann}}}_{{\mathrm{~alpha}}{,}{\mathrm{~beta}}{,}{\mathrm{μ}}{,}{\mathrm{ν}}}$ (16)

ExteriorDerivative does not simplify the expression before proceeding, it only checks the antisymmetry of the free indices

 > $\mathrm{Library}:-\mathrm{IsTensorialAntisymmetric}\left(\right)$
 ${\mathrm{true}}$ (17)
 > ${\mathrm{ExteriorDerivative}}_{\mathrm{μ}}\left(\right)$
 $\frac{{1}}{{3}}{{\mathrm{D_}}}_{{\mathrm{μ}}}{}\left({{H}}_{{\mathrm{α}}{,}{\mathrm{β}}}{}\left({X}\right){,}\left[{X}\right]\right){{\mathrm{Riemann}}}_{{\mathrm{~mu}}{,}{\mathrm{ν}}{,}{\mathrm{~alpha}}{,}{\mathrm{~beta}}}{+}\frac{{1}}{{3}}{{H}}_{{\mathrm{α}}{,}{\mathrm{β}}}{}\left({X}\right){{\mathrm{D_}}}_{{\mathrm{μ}}}{}\left({{\mathrm{Riemann}}}_{{\mathrm{~mu}}{,}{\mathrm{ν}}{,}{\mathrm{~alpha}}{,}{\mathrm{~beta}}}{,}\left[{X}\right]\right){-}\frac{{2}}{{3}}{{\mathrm{D_}}}_{{\mathrm{~mu}}}{}\left({{H}}_{{\mathrm{α}}{,}{\mathrm{β}}}{}\left({X}\right){,}\left[{X}\right]\right){{\mathrm{Riemann}}}_{{\mathrm{μ}}{,}{\mathrm{ν}}{,}{\mathrm{~alpha}}{,}{\mathrm{~beta}}}{-}\frac{{2}}{{3}}{{H}}_{{\mathrm{α}}{,}{\mathrm{β}}}{}\left({X}\right){{\mathrm{D_}}}_{{\mathrm{~mu}}}{}\left({{\mathrm{Riemann}}}_{{\mathrm{μ}}{,}{\mathrm{ν}}{,}{\mathrm{~alpha}}{,}{\mathrm{~beta}}}{,}\left[{X}\right]\right)$ (18)

You can Simplify results like this one, or where the zero is more disguised, using

 > $\mathrm{Simplify}\left(\right)$
 ${0}$ (19)
 > $\mathrm{convert}\left(,\mathrm{d_}\right)$
 $\frac{{1}}{{3}}\left({{\mathrm{d_}}}_{{\mathrm{μ}}}{}\left({{H}}_{{\mathrm{α}}{,}{\mathrm{β}}}{}\left({X}\right){,}\left[{X}\right]\right){-}{{\mathrm{Christoffel}}}_{{\mathrm{~kappa}}{,}{\mathrm{α}}{,}{\mathrm{μ}}}{{H}}_{{\mathrm{κ}}{,}{\mathrm{β}}}{}\left({X}\right){-}{{\mathrm{Christoffel}}}_{{\mathrm{~kappa}}{,}{\mathrm{β}}{,}{\mathrm{μ}}}{{H}}_{{\mathrm{α}}{,}{\mathrm{κ}}}{}\left({X}\right)\right){{\mathrm{Riemann}}}_{{\mathrm{~mu}}{,}{\mathrm{ν}}{,}{\mathrm{~alpha}}{,}{\mathrm{~beta}}}{+}\frac{{1}}{{3}}{{H}}_{{\mathrm{α}}{,}{\mathrm{β}}}{}\left({X}\right)\left({{\mathrm{d_}}}_{{\mathrm{μ}}}{}\left({{\mathrm{Riemann}}}_{{\mathrm{~mu}}{,}{\mathrm{ν}}{,}{\mathrm{~alpha}}{,}{\mathrm{~beta}}}{,}\left[{X}\right]\right){-}{{\mathrm{Christoffel}}}_{{\mathrm{~kappa}}{,}{\mathrm{μ}}{,}{\mathrm{ν}}}{{\mathrm{Riemann}}}_{{\mathrm{~mu}}{,}{\mathrm{κ}}{,}{\mathrm{~alpha}}{,}{\mathrm{~beta}}}{-}{{\mathrm{Christoffel}}}_{{\mathrm{~alpha}}{,}{\mathrm{κ}}{,}{\mathrm{μ}}}{{\mathrm{Riemann}}}_{{\mathrm{~mu}}{,}{\mathrm{ν}}{,}{\mathrm{~beta}}{,}{\mathrm{~kappa}}}{+}{{\mathrm{Christoffel}}}_{{\mathrm{~beta}}{,}{\mathrm{κ}}{,}{\mathrm{μ}}}{{\mathrm{Riemann}}}_{{\mathrm{~mu}}{,}{\mathrm{ν}}{,}{\mathrm{~alpha}}{,}{\mathrm{~kappa}}}{+}{{\mathrm{Christoffel}}}_{{\mathrm{~mu}}{,}{\mathrm{κ}}{,}{\mathrm{μ}}}{{\mathrm{Riemann}}}_{{\mathrm{~kappa}}{,}{\mathrm{ν}}{,}{\mathrm{~alpha}}{,}{\mathrm{~beta}}}\right){-}\frac{{2}}{{3}}{{\mathrm{g_}}}_{{\mathrm{~lambda}}{,}{\mathrm{~mu}}}\left({{\mathrm{d_}}}_{{\mathrm{λ}}}{}\left({{H}}_{{\mathrm{α}}{,}{\mathrm{β}}}{}\left({X}\right){,}\left[{X}\right]\right){-}{{\mathrm{Christoffel}}}_{{\mathrm{~kappa}}{,}{\mathrm{α}}{,}{\mathrm{λ}}}{{H}}_{{\mathrm{κ}}{,}{\mathrm{β}}}{}\left({X}\right){-}{{\mathrm{Christoffel}}}_{{\mathrm{~kappa}}{,}{\mathrm{β}}{,}{\mathrm{λ}}}{{H}}_{{\mathrm{α}}{,}{\mathrm{κ}}}{}\left({X}\right)\right){{\mathrm{Riemann}}}_{{\mathrm{μ}}{,}{\mathrm{ν}}{,}{\mathrm{~alpha}}{,}{\mathrm{~beta}}}{-}\frac{{2}}{{3}}{{H}}_{{\mathrm{α}}{,}{\mathrm{β}}}{}\left({X}\right){{\mathrm{g_}}}_{{\mathrm{~lambda}}{,}{\mathrm{~mu}}}\left({{\mathrm{d_}}}_{{\mathrm{λ}}}{}\left({{\mathrm{Riemann}}}_{{\mathrm{μ}}{,}{\mathrm{ν}}{,}{\mathrm{~alpha}}{,}{\mathrm{~beta}}}{,}\left[{X}\right]\right){-}{{\mathrm{Christoffel}}}_{{\mathrm{~kappa}}{,}{\mathrm{λ}}{,}{\mathrm{μ}}}{{\mathrm{Riemann}}}_{{\mathrm{κ}}{,}{\mathrm{ν}}{,}{\mathrm{~alpha}}{,}{\mathrm{~beta}}}{+}{{\mathrm{Christoffel}}}_{{\mathrm{~kappa}}{,}{\mathrm{λ}}{,}{\mathrm{ν}}}{{\mathrm{Riemann}}}_{{\mathrm{κ}}{,}{\mathrm{μ}}{,}{\mathrm{~alpha}}{,}{\mathrm{~beta}}}{-}{{\mathrm{Christoffel}}}_{{\mathrm{~alpha}}{,}{\mathrm{κ}}{,}{\mathrm{λ}}}{{\mathrm{Riemann}}}_{{\mathrm{μ}}{,}{\mathrm{ν}}{,}{\mathrm{~beta}}{,}{\mathrm{~kappa}}}{+}{{\mathrm{Christoffel}}}_{{\mathrm{~beta}}{,}{\mathrm{κ}}{,}{\mathrm{λ}}}{{\mathrm{Riemann}}}_{{\mathrm{μ}}{,}{\mathrm{ν}}{,}{\mathrm{~alpha}}{,}{\mathrm{~kappa}}}\right)$ (20)
 > $\mathrm{Simplify}\left(\right)$
 ${0}$ (21)
 > 

References

 Landau, L.D., and Lifshitz, E.M. The Classical Theory of Fields, Course of Theoretical Physics Volume 2, fourth revised English edition. Elsevier, 1975.
 Weinberg, S. Gravitation and Cosmology: Principles and Applications of The General Theory of Relativity, John Wiley & Sons, Inc, 1972.

Compatibility

 • The Physics[ExteriorDerivative] command was introduced in Maple 17.