sparse-tensor-0.2: typesafe tensor algebra library

Copyright (c) 2019 Tobias Reinhart and Nils Alex MIT tobi.reinhart@fau.de, nils.alex@fau.de None Haskell2010

Math.Tensor.Examples.Gravity.SchwarzschildSymbolic

Description

This module provides the Schwarzschild metric as an example for a tensor with symbolic values as well as functions to calculate Christoffel symbols, Ricci tensors and Einstein tensors from metric tensors with symbolic values.

Synopsis

# Documentation

Schwarzschild metric $$g = (1-\frac{r_\text{s}}{r})\,\mathrm dt\otimes\mathrm dt - \frac{1}{1-\frac{r_\text{s}}{r}}\,\mathrm dr\otimes \mathrm dr - r^2\,\mathrm d\theta\otimes \mathrm d\theta - r^2\sin^2\theta\,\mathrm d\phi\otimes \mathrm d\phi$$.

Inverse Schwarzschild metric $$g = \frac{1}{1-\frac{r_\text{s}}{r}}\,\partial_t \otimes \partial_t - (1-\frac{r_\text{s}}{r})\,\partial_r \otimes \partial_r - \frac{1}{r^2}\,\partial_\theta \otimes \partial_\theta - \frac{1}{r^2\sin^2\theta}\,\partial_\phi \otimes \partial_\phi$$.

Christoffel symbols of any symbolic metric.

ricciS :: STTens 0 2 SSymbolic -> STTens 2 0 SSymbolic -> STTens 0 2 SSymbolic Source #

Ricci tensor of any symbolic metric.

Einstein tensor of any symbolic metric. The components evaluate to zero:

>>> let g  = schwarzschildS
>>> let g' = schwarzschildS'
>>> let e  = einsteinS g g'
>>> print e
ZeroTensor -- modulo symbolic simplification, which is not implemented yet.