# Tensor analysis

Has anybody used tensors in Mathematica? How to properly work with them? I find Mathematica not very friendly in this field, as I am defining my own functions for lowering & raising indices, multiplication and stuff like that. I was wondering if there is some good package or a secret way to use tensors more properly in Mathematica. For example, I need tensor analysis for general relativity kind of calculations.

• Have a look at guide/SymbolicTensors in the help. – b.gates.you.know.what Feb 21 '13 at 13:34
• Related mathematica.stackexchange.com/questions/8895/…. For Maththematica 9 you might try to look at newer capabiliteis – Artes Feb 21 '13 at 13:41
• @Vladimir, What exactly is it that you find difficult to use? – user21 Feb 21 '13 at 18:42
• @b.gatessucks: I am aware there is a package in Mathematica called Tensors, but I do not agree that is able to do any computation in physics. It is more like N-dim matrix operations. This is why extra packages for Mathematica were made, as I was starting, and like some others have already developed in depth. The list of available packages with some description on them would be a great start (like you can see bellow). – Vladimir Feb 21 '13 at 20:37
• I agree, @Artes, there is a related question. However, this one is more general, while first one was for one-time problem. I would suggest you to have a look at some free packages (knowing that you were also working on these functions). – Vladimir Feb 21 '13 at 20:42

Mathematica 9 contains some functionality for working with symbolic tensors.

Here's a list of packages in no particular order, that may have some functionality for working with symbolic tensors.

• TensoriaCalc - intended for basic calculations in general relativity, but not finished (calculates only Christoffel symbols, Riemann and Ricci tensor). Parallel working with many metrics is possible. Symbolic calculations are not supported.

• FeynCalc

• grt - intended for basic calculations in general relativity, but full of bugs (only Christoffel symbols fully function). Symbolic calculations are not supported.

• NCAlgebra, for manipulating non-commuting algebraic expressions and computing non-commutative Gröbner bases. It allows working with symbolic matrices and symbolic block matrices (e.g. symbolic block matrix inversion).

• xAct - a package designed by researchers for large scale projects in general relativity; subpackages capable of extensive tensor manipulation (xTensor, xCoba) as well as perturbation theory in general relativity to any order (xPert). Other subpackages can also work with tensor spherical harmonics, spinor computations as well as exterior calculus (diferential forms).

• GRQUICK

• MathTensor (non-free)

• Tensorial (non-free)

• Ricci (last updated Sep 2011)

• diffgeo (free) - a very simple package for differential geometry. Works only with given basis and metric