3. Parallel derivatives and Christoffel tensors

We begin by remembering that each basis has its own parallel derivative

In[207]:=

{PDpolar[-a][v[b]], PDcartesian[-a][T[-b, -c]]}

Out[207]=

{_a^ v_ ^b, _a^ T_bc^  }

defined so that

In[208]:=

PDpolar[-a][Basis[{b, polar}, -c]]

Out[208]=

0

This derivative is always flat, and has a vanishing Riemann

In[209]:=

RiemannPDpolar[-a, -b, -c, -d]

Out[209]=

0

But it has torsion, unless the basis is coordinated,

In[210]:=

TorsionPDcartesian[a, -b, -c]

Out[210]=

T_ ( bc)^a  

In[211]:=

Bracket[a][Basis[s, {1, -polar}], Basis[s, {3, -polar}]]

Out[211]=

-T_ ( 13)^a  

In xTensor` we can define the Christoffel tensor connecting two covariant derivatives (cf. Section 6 of xTensorDoc.nb). In particular, this works with the PD of our bases

In[212]:=

Christoffel[PDpolar, PDcartesian][a, -b, -c]

** DefTensor: Defining tensor ChristoffelPDcartesianPDpolar[a, -b, -c] .

Out[212]=

-Γ[, ] _ ( bc)^a  

Notice how the Christoffel connecting any covariant derivative to PD is defined with the derivative, in our case by DefBasis.

In[213]:=

Christoffel[PDpolar, PD][a, -b, -c]

Out[213]=

Γ[] _ ( bc)^a  

Any derivative of any Basis object can be translated into a component of  Christoffel tensors relating that derivative to the PDs of the bases involved

In[214]:=

PD[-a][Basis[{1, polar}, -b]]

Out[214]=

Γ[] _ ( ab)^1  

In[215]:=

PD[-a][Basis[{a, polar}, {-b, -cartesian}]]

Out[215]=

-Γ[, ] _ ( ab)^a  

In[216]:=

PD[-a][Basis[{b, polar}, {-c, -polar}]]

Out[216]=

0

With another parallel derivative,

In[217]:=

PDpolar[-a][Basis[{1, -polar}, b]]

Out[217]=

0

In[218]:=

PDpolar[-a][Basis[{1, -cartesian}, b]]

Out[218]=

-Γ[, ] _ ( a1)^b  

Complex bases have FRiemann and AChristoffel tensors, as explained in xTensorDoc, section 6.8.  

In[219]:=

? AChristoffelPDcomp

Global`AChristoffelPDcomp

Dagger[AChristoffelPDcomp]^=AChristoffelPDcomp†
DependenciesOfTensor[AChristoffelPDcomp]^={M3}
Info[AChristoffelPDcomp]^={nonsymmetric AChristoffel tensor ,}
MasterOf[AChristoffelPDcomp]^=PDcomp
PrintAs[AChristoffelPDcomp]^=A[ s]
ServantsOf[AChristoffelPDcomp]^={AChristoffelPDcomp†}
SlotsOfTensor[AChristoffelPDcomp]^={InnerC,-TangentM3,-InnerC}
SymmetryGroupOfTensor[AChristoffelPDcomp]^=StrongGenSet[{},GenSet[]]
TensorID[AChristoffelPDcomp]^={AChristoffel,PDcomp,PD}
xTensorQ[AChristoffelPDcomp]^=True

The FRiemann is also zero

In[220]:=

FRiemannPDcomp[-A, -B, -C, -D]

Out[220]=

0

Derivatives of complex bases are also replaced by the corresponding Christoffels

In[221]:=

PD[-a][Basis[C, {-A, -comp}]]

Out[221]=

-A[] _ ( aA)^C  

In[222]:=

PD[-a][Basis[C†, {-A†, -comp}]]

Out[222]=

-((A[] †) _ (  aA†))^C†   

In[223]:=

PD[-a][Basis[b, {-c, -comp}]]

Out[223]=

-Γ[] _ ( ac)^b  

In[224]:=

PDpolar[-b][Basis[C, {-A, -comp}]]

** DefTensor: Defining tensor AChristoffelPDcompPDpolar[A, -b, -C] .

** DefTensor: Defining tensor AChristoffelPDcompPDpolar†[A†, -b, -C†] .

Out[224]=

-A[, ] _ ( bA)^C  

Both basis indices must belong to the same vbundle:

In[225]:=

Catch @ PD[-a][Basis[B, {-c, -comp}]]

Christoffel :: error : Indices #1 and #3 of (A)Christoffel must belong to the same vector bundle.

3.1. Ricci rotation coefficients


Created by Mathematica  (May 16, 2008) Valid XHTML 1.1!