tensor
Riemann
compute the covariant Riemann curvature tensor
Calling Sequence
Parameters
Description
Examples
Riemann(ginv, D2g, Cf1)
ginv
-
rank two tensor_type of character [-1,-1] representing the contravariant metric tensor; specifically, ginvcomptsi,j≔gij
D2g
rank four tensor_type of character [-1,-1,-1,-1] representing the second partial derivatives of the COVARIANT metric tensor; specifically, D1gcomptsi,j,k≔gij,kl
Cf1
rank three tensor_type of character [-1,-1,-1] representing the Christoffel symbols of the first kind; specifically, Cf1comptsi,j,k≔k,i⁢j
Important: The tensor package has been deprecated. Use the superseding commands DifferentialGeometry[Tensor][RiemannInvariants] and Physics[Riemann] instead.
The routine Riemann(ginv, D2g, Cf1) computes the components of the covariant Riemann tensor using the contravariant metric tensor ginv, the second partial derivatives of the metric D2g, and the Christoffel symbols of the 1st kind Cf1. The result is a tensor_type with character [-1, -1, -1, -1] which uses the tensor package's 'cov_riemann' indexing function.
ginv should be indexed using the symmetric indexing function. D2g should be indexed using the `d2met` indexing function. Cf1 should be indexed using the `cf1` indexing function. All of the parameters can be obtained using the appropriate tensor package routines once the metric is known.
Indexing Function: The result uses the `cov_riemann` indexing function to implement the symmetrical properties of the indices of the covariant riemann tensor. Specifically, the indexing function implements the following:
skew-symmetry in the first and second indices
skew-symmetry in the third and fourth indices
symmetry in the first and second pairs of indices
Simplification: This routine uses the `tensor/Riemann/simp` routine for simplification purposes. The simplification routine is applied to each component of result after it is computed. By default, `tensor/Riemann/simp` is initialized to the `tensor/simp` routine. It is recommended that the `tensor/Riemann/simp` routine be customized to suit the needs of the particular problem.
This function is part of the tensor package, and so can be used in the form Riemann(..) only after performing the command with(tensor) or with(tensor, Riemann). The function can always be accessed in the long form tensor[Riemann](..).
with⁡tensor:
Define the coordinate variables and the covariant components of the Schwarzchild metric.
coord≔t,r,θ,φ:
g_compts≔array⁡symmetric,sparse,1..4,1..4:
g_compts1,1≔1−2⁢mr:g_compts2,2≔−1g_compts1,1:
g_compts3,3≔−r2:g_compts4,4≔−r2⁢sin⁡θ2:
g≔create⁡−1,−1,eval⁡g_compts
g≔table⁡compts=1−2⁢mr0000−11−2⁢mr0000−r20000−r2⁢sin⁡θ2,index_char=−1,−1
Compute the Riemann tensor.
ginv≔invert⁡g,detg:
D1g≔d1metric⁡g,coord:D2g≔d2metric⁡D1g,coord:
Cf1≔Christoffel1⁡D1g:
RMN≔Riemann⁡ginv,D2g,Cf1:
RMNc≔get_compts⁡RMN:
Show the nonzero components.
map(proc(x) if RMNc[op(x)]<>0 then x=RMNc[op(x)] else NULL end if end proc, [ indices(RMNc)] );
1,2,1,2=2⁢mr3,3,4,3,4=−2⁢sin⁡θ2⁢m⁢r,1,3,1,3=−r+2⁢m⁢mr2,2,3,2,3=−m−r+2⁢m,1,4,1,4=−r+2⁢m⁢m⁢sin⁡θ2r2,2,4,2,4=−m⁢sin⁡θ2−r+2⁢m
You can also view the result using the tensor package function displayGR.
See Also
DifferentialGeometry[Tensor][RiemannInvariants]
Physics[Christoffel]
Physics[D_]
Physics[d_]
Physics[Einstein]
Physics[g_]
Physics[LeviCivita]
Physics[Ricci]
Physics[Riemann]
Physics[Weyl]
tensor(deprecated)
tensor(deprecated)/partial_diff
tensor(deprecated)[Christoffel1]
tensor(deprecated)[displayGR]
tensor(deprecated)[indexing]
tensor(deprecated)[invert]
tensor(deprecated)[simp]
tensor(deprecated)[tensorsGR]
Download Help Document