CHRISTOFFEL Symbols
Univ.-Prof. Dr.-Ing. habil. Josef BETTEN
RWTH University Aachen
Mathematical Models in Materials Science and Continuum Mechanics
Augustinerbach 4-20
D-52056 A a c h e n , Germany
betten@mmw.rwth-aachen.de
Abstract
A lot of tensor operations are included in the MAPLE tensor package. Examples are
illustrated in the following MAPLE program, where the metric tensors and the
CHRISTOFFEL symbols have been calculated for cylindrical and spherical coordinates.
Keynotes: Metric tensors; CHRISTOFFEL symbols; Cylindrical and Spherical coordinates
Definitions
The CHRISTOFFEL symbols of the first kind are defined by
> |
Gamma[kij]:=(1/2)*(g[ik,j]+g[jk,i]-g[ij,k]); |
![`+`(`*`(`/`(1, 2), `*`(g[ik, j])), `*`(`/`(1, 2), `*`(g[jk, i])), `-`(`*`(`/`(1, 2), `*`(g[ij, k]))))](/view.aspx?SI=5642/135926/images/CHRISTOFFELsymbolsfo_2.gif) |
(1) |
where
> |
g[ij,k]:=Diff(g[ij],xi[k]); |
![Diff(g[ij], xi[k])](/view.aspx?SI=5642/135926/images/CHRISTOFFELsymbolsfo_3.gif) |
(2) |
is the partial derivative of the covariant metric tensor with respect to curvlinear coordinates.
Note that the CHRISTOFFEL symbols, in general, are not tensors unless the coordinate
transformation is affine.
Cylindrical Coordinates
> |
cylindrical_coord:=[r,phi,z]; |
![[r, phi, z]](/view.aspx?SI=5642/135926/images/CHRISTOFFELsymbolsfo_4.gif) |
(3) |
covariant metric tensor:
> |
g_compts:=array(symmetric,sparse,1..3,1..3): |
> |
g_compts[1,1]:=1: g_compts[2,2]:=r^2: g_compts[3,3]:=1: |
The components must be stored as an array of size equal to the rank of the object,
with all index ranges beginning at one and ending at the dimension of the space.
Only "square" ranges are allowed. The index character is stored as a list of positive and
negative ones (1 or -1). A positive one (1) in the ith position in the index character
list specifies that the ith index of the object is contravariant, while a negative one (-1)
in the ith position in the index character list specifies that the ith index of the object is
covariant. For example, [1,-1,1] specifies that the indices 1 and 3 are contravariant
(written as superscripts), while the second index is covariant (written as subscript).
> |
g:=create([-1,-1], eval(g_compts)); |
 |
(4) |
> |
D1g:=d1metric(g,cylindrical_coord): |
> |
Gamma[kij]:=[ijk]; CHRISTOFFEL[first_kind][cylindrical]:= Gamma[kij]=Christoffel1(D1g); |
In matrix notation we arrive at:
> |
Gamma[1][ij]:=matrix(3,3,[[0,0,0],[0,r,0],[0,0,0]]); Gamma[2][ij]:=matrix(3,3,[[0,r,0],[-r,0,0],[0,0,0]]); Gamma[3][ij]:=matrix(3,3,[[0,0,0],[0,0,0],[0,0,0]]); |
Spherical Coordinates
> |
spherical_coord:=[r,phi,theta]; |
![[r, phi, theta]](/view.aspx?SI=5642/135926/images/CHRISTOFFELsymbolsfo_15.gif) |
(7) |
> |
g_compts:=array(symmetric,sparse,1..3,1..3): |
> |
g_compts[1,1]:=1: g_compts[2,2]:=r^2: g_compts[3,3]:=(r*sin(phi))^2: |
> |
g:=create([-1,-1],eval(g_compts)); |
 |
(8) |
> |
D1g:=d1metric(g,spherical_coord): |
> |
Gamma[kij]:=[ijk];CHRISTOFFEL[first_kind][spherical]:= Gamma[kij]=Christoffel1(D1g); |
In matrix notation we arrive at
> |
Gamma[1][ij]:=matrix(3,3,[[0,0,0],[0,r,0],[0,0,r*(sin(phi))^2]]); Gamma[2][ij]:=matrix(3,3,[[0,r,0],[-r,0,0], [0,0,r^2*sin(phi)*cos(phi)]]); Gamma[3][ij]:=matrix(3,3,[[0,0,r*(sin(phi))^2],[0,0,r^2*sin(phi)*cos(phi)], [-r*(sin(phi))^2,-r^2*sin(phi)*cos(phi),0]]); |
In a similar way one can find the CHRISTOFFEL symbols of the second kind.
Legal Notice: The copyright for this application is owned by the author(s). Neither Maplesoft nor the author are responsible for any errors contained within and are not liable for any damages resulting from the use of this material. This application is intended for non-commercial, non-profit use only. Contact the author for permission if you wish to use this application in for-profit activities.