Both sections shows how TTC recognice the properties of a defined tensor and applies them in a sistematic way to reach the result.
<<path/ttc.m
----------------------------------------
|TTC: Tools of Tensor Calculus 4.3.1|
| A.Balfagon,P.Castellvi and X.Jaen |
| http://baldufa.upc.edu/ttc |
| e-mail:Xavier.Jaen@upc.edu |
| version: june, 1, 2005 |
----------------------------------------
| TTC works correctly with |
| Cell menu options: |
| Default Input FormatType=InputForm |
| Default Output FormatType=OutputForm |
----------------------------------------
| Session started on |
| June, 5 , 2005 |
| at 17 h 50 min 6.981 s |
----------------------------------------
InputSMetric[gn,XX,"g",g]
CPU Time=0.11 s Memory in use=2.47 Mb
{g}
InputSRiemann[gn,XX,"R",Rie,Ric,R]
CPU Time=0.27 s Memory in use=2.512 Mb
{g, Rie, Ric, R}
InputIndex[{i,j,k,l,m,n,o,p,q,r,s,t}]
CPU Time=0. s Memory in use=2.512 Mb
{i, j, k, l, m, n, o, p, q, r, s, t}
RiemannRule1
RR1=Rie[-a,a,-c,-d]//Index[gn]
CPU Time=0.22 s Memory in use=2.525 Mb
k
0 + R
i j k
i j
RR1//Index[gn,SimplifyAllIndex[2]]
CPU Time=0.22 s Memory in use=2.534 Mb
0
RiemannRule6
RR6=Rie[-a,-b,-c,-d] Ric[a,b]//Index[gn]
CPU Time=0.22 s Memory in use=2.528 Mb
k l
0 + R
R
i j
k l i j
RR6//Index[gn,SimplifyAllIndex[2]]
CPU Time=1.98 s Memory in use=2.562 Mb
0
RiemannRule7
RR7= Rie[-a,-b,-c,-d] Rie[-e,a,b,c]+
1/2 Rie[-p,-d,-q,-r] Rie[-e,p,q,r]//Index[gn]
CPU Time=0.38 s Memory in use=2.538 Mb
k l m
R R
j k i l m
0 + -------------------
+
i j
2
k l m
R
R
j
k l m i
RR7//Index[gn,SimplifyAllIndex[2]]
CPU Time=61.9 s Memory in use=2.647 Mb
0
RiemannRule8
RR8=Rie[-a,-b,-c,-d] Rie[a,c,b,h]-
1/2 Rie[-p,-d,-q,-r] Rie[p,h,q,r]//Index[gn]
CPU Time=0.38 s Memory in use=2.562 Mb
k j l m
R R
j
k i l m
0 - -------------------
+
i
2
k m l j
R
R
k l m i
RR8//Index[gn,SimplifyAllIndex[2]]
CPU Time=0.94 s Memory in use=2.649 Mb
0
RiemannRule9
RR9=Rie[-a,-b,-c,-d] Rie[-e,a,-gg,b]-
1/2 Rie[-p,-q,-c,-d] Rie[-e,-gg,p,q]//Index[gn]
CPU Time=0.43 s Memory in use=2.655 Mb
m n
R R
k l m n i j
0
- ------------------- +
i j k l
2
m
n
R
R
k l
m n i j
RR9//Index[gn,SimplifyAllIndex[2]]
CPU Time=265.18 s Memory in use=3.66 Mb
0
RiemannRule10
RR10=Ric[-a,-b] Rie[-c,-d,-e,a] Rie[b,c,d,e]+
1/2 Ric[-p,-q] Rie[-r,-s,-t,p]Rie[q,t,r,s]//Index[gn]
CPU Time=0.39 s Memory in use=2.521 Mb
j k l m i
R R
R +
i j
k l m
j k l m i
R
R R
i j
l m k
-------------------------
2
RR10//Index[gn,SimplifyAllIndex[2]]
CPU Time=16.7 s Memory in use=2.53 Mb
i j l k m
R R
R -
i j k l
m
i k l j m
R
R R
i j k l
m
-------------------------
2
RiemannRule11
RR11=Rie[-a,-b,-c,-d] Rie[-e,-f,a,b] Rie[c,e,d,f]-
1/2 Rie[-p,-q,-r,-s] Rie[-t,-u,p,q]Rie[r,s,t,u]//Index[gn]
CPU Time=0.38 s Memory in use=2.521 Mb
k l m n i j
-(R
R R
)
i j k l
m n
-------------------------------- +
2
k m l n i j
R
R R
i j k l
m n
RR11//Index[gn,SimplifyAllIndex[2]]
CPU Time=627.25 s Memory in use=2.997 Mb
0
RR11//Index[gn,SimplifyAllIndex[2]]
CPU Time=1.76 s Memory in use=2.992 Mb
0
RiemannRule12
RR12=Rie[-a,-b,-c,-d] Rie[-e,a,-f,b] Rie[c,e,d,f]-
1/4 Rie[-p,-q,-r,-s] Rie[-t,-u,r,s]Rie[p,q,t,u]//Index[gn]
CPU Time=0.39 s Memory in use=3.198 Mb
k m l n i j
R
R R
-
i j k l
m n
i j m n k l
R
R R
i j k l
m n
-----------------------------
4
RR12//Index[gn,SimplifyAllIndex[2]]
CPU Time=1.65 s Memory in use=3.199 Mb
0
RiemannRule13
(corrected from the original)
RR13=Rie[-a,-b,-c,-d] Rie[-e,a,-gg,b] Rie[c,d,e,gg]-
1/2 Rie[-p,-q,-r,-s] Rie[-t,-u,p,q]Rie[r,s,t,u]//Index[gn]
CPU Time=0.38 s Memory in use=3.201 Mb
k l m n i j
R
R R
-
i j k l
m n
k l m n i j
R
R R
i j k l
m n
-----------------------------
2
RR13//Index[gn,SimplifyAllIndex[2]]
CPU Time=1.59 s Memory in use=3.202 Mb
0
RiemannRule14
RR14=Rie[-a,-b,-c,-d] Rie[-e,a,-gg,c] Rie[b,d,e,gg]-
1/4 Rie[-p,-q,r,s] Rie[-r,-s,t,u] Rie[p,q,-t,-u]//Index[gn]
CPU Time=0.44 s Memory in use=3.204 Mb
k l
i j m n
-(R
R R
)
i j
m n k l
-------------------------------- +
4
j l m n i k
R
R R
i j k l
m n
RR14//Index[gn,SimplifyAllIndex[2]]
CPU Time=1.65 s Memory in use=3.204 Mb
0
RiemannRule15
RR15=Rie[-a,-b,-c,-d] Rie[-e,a,-gg,c] Rie[b,gg,d,e]-
Rie[-p,-q,-r,-s] Rie[-t,p,-u,r] Rie[q,t,s,u]+
1/4 Rie[-p,-q,-r,-s] Rie[-t,-u,p,q]Rie[r,s,t,u]//Index[gn]
CPU Time=0.6 s Memory in use=3.004 Mb
j m l n i k
-(R
R R
) +
i j k l
m n
k l m n i j
R
R R
i j k l
m n
-----------------------------
+
4
j m l n i k
R
R R
i j k l
n m
RR15//Index[gn,SimplifyAllIndex[2]]
CPU Time=2.58 s Memory in use=3.004 Mb
0
RiemannRule16
RR16=Ric[-a,-b,.;b]-1/2 R[.;-a] //Index[gn]
CPU Time=0.55 s Memory in use=2.673 Mb
R
.;i .;j
0 - ----- + R
i
2 i j
RR16//Index[gn,SimplifyAllIndex[2]]
CPU Time=0.33 s Memory in use=2.674 Mb
0
RiemannRule18
RR18=Ric[-a,-b,.;-c,.;b]-
1/2 R[.;-a,.;-c]- Ric[-p,-a]Ric[-c,p]+
Ric[-p,-q] Rie[-a,q,-c,p] //Index[gn]
CPU Time=0.71 s Memory in use=3.658 Mb
R
.;i .;j k
0 - ---------
- R R +
i j
2 j k
i
.;k
l k
R
+ R R
i k .;j
k l i j
RR18//Index[gn,SimplifyAllIndex[2]]
CPU Time=1.6 s Memory in use=3.659 Mb
0
RiemannRule19
RR19=Ric[-a,-b,.;-c,.;a]-
1/2 R[.;-b,.;-c]-Ric[-p,-b] Ric[-c,p]+
Ric[-p,-q] Rie[-b,q,-c,p]//Index[gn]
CPU Time=0.93 s Memory in use=2.682 Mb
R
.;i .;j k
0 - ---------
- R R +
i j
2 j k
i
.;k
l k
R
+ R R
k i .;j
k l i j
RR19//Index[gn,SimplifyAllIndex[2]]
CPU Time=4.28 s Memory in use=2.683 Mb
0
RiemannRule20
RR20=Rie[-a,-b,-c,-d,.;a]+Ric[-b,-c,.;-d]-Ric[-b,-d,.;-c]//Index[gn]
CPU Time=0.5 s Memory in use=2.685 Mb
0
+ R - R
+
i j k i
j .;k i k .;j
.;l
R
l i j k
RR20//Index[gn,SimplifyAllIndex[2]]
CPU Time=0.43 s Memory in use=2.685 Mb
0
RiemannRule21
RR21=Rie[-a,-b,-c,-d,.;b]-Ric[-a,-c,.;-d]+Ric[-a,-d,.;-c]//Index[gn]
CPU Time=0.55 s Memory in use=2.687 Mb
0
- R + R
+
i j k i
j .;k i k .;j
.;l
R
i l j k
RR21//Index[gn,SimplifyAllIndex[2]]
CPU Time=0.44 s Memory in use=2.688 Mb
0
RiemannRule22
RR22=Rie[-a,-b,-c,-d,.;c]+Ric[-a,-d,.;-b]-Ric[-b,-d,.;-a]//Index[gn]
CPU Time=0.49 s Memory in use=2.69 Mb
0
+ R - R
+
i j k i
k .;j j k .;i
.;l
R
i j l k
RR22//Index[gn,SimplifyAllIndex[2]]
Creada la LlistaMonomis[gn,XX,3,2,1]
CPU Time=2.69 s Memory in use=2.692 Mb
0
RiemannRule23
RR23=Rie[-a,-b,-c,-d,.;d]-Ric[-a,-c,.;-b]+Ric[-b,-c,.;-a]//Index[gn]
CPU Time=0.55 s Memory in use=2.694 Mb
0
- R + R
+
i j k i
k .;j j k .;i
.;l
R
i j k l
RR23//Index[gn,SimplifyAllIndex[2]]
CPU Time=2.09 s Memory in use=2.695 Mb
0
RiemannRule24
RR24=R[.;-a,.;-b,.;a,.;b]-
1/2 R[.;-p] R[.;p]-
R[.;-p,.;p,.;-q,.;q]-
R[.;-p,.;-q] Ric[p,q]//Index[gn]
CPU Time=0.99 s Memory in use=2.698 Mb
.;i
-(R R
)
.;i
.;i .;j
-------------- - R
+
2
.;i .;j
.;i .;j
i j
R
- R R
.;i .;j
.;i .;j
RR24//Index[gn,SimplifyAllIndex[2]]
CPU Time=6.7 s Memory in use=2.701 Mb
0
RiemannRule25
RR25=Ric[-a,-b,.;-c,.;c,.;a,.;b]-
1/2 R[.;-p]R[.;p]+
3 Ric[-p,-q,.;-r] Ric[p,q,.;r]-
4 Ric[-p,-q,.;-r] Ric[p,r,.;q]-
1/2 R[.;-p,.;p,.;-q,.;q]-
2 R[.;-p,.;-q] Ric[p,q]+
Ric[-p,-q,.;-r,.;r] Ric[p,q]-
2 Ric[-p,-q] Ric[-r,p]Ric[q,r]+
2 Ric[-p,-q,.;-r,.;-s] Rie[p,r,q,s]+
2 Ric[-p,-q] Ric[-r,-s]Rie[p,r,q,s]//Index[gn]
CPU Time=1.87 s Memory in use=3.667 Mb
.;i .;i
.;j
-(R R
) R
.;i
.;i .;j
-------------- - ----------------- -
2
2
i j
2 R
R -
.;i .;j
j k i
2 R
R R +
i j
k
i j .;k
3 R
R -
i j .;k
i k .;j
4 R
R +
i j .;k
i j
.;k
R
R
+
i j .;k
.;k .;i .;j
R
+
i j .;k
i k j l
2 R
R R
+
i j
k l
i k j l
2 R
R
i j .;k
.;l
RR25//Index[gn,SimplifyAllIndex[2]]
CPU Time=142.87 s Memory in use=3.813 Mb
0
RiemannRule26
RR26=Rie[-a,-b,-c,-d,.;-e,.;e]-(
Ric[-a,-c,.;-d,.;-b]-
Ric[-a,-d,.;-c,.;-b]-
Ric[-b,-c,.;-d,.;-a]+
Ric[-b,-d,.;-c,.;-a]-
Rie[-p,-q,-c,-d]Rie[-a,p,-b,q]+
Ric[-p,-b]Rie[-a,p,-c,-d]-
Rie[-p,-b,-q,-d]Rie[-a,p,-c,q]+
Rie[-p,-b,-q,-c]Rie[-a,p,-d,q]-
Ric[-p,-a]Rie[-b,p,-c,-d]+
Rie[-p,-a,-q,-d]Rie[-b,p,-c,q]-
Rie[-p,-a,-q,-c]Rie[-b,p,-d,q]-
Rie[-p,-a,-q,-b]Rie[-c,-d,p,q])//Index[gn,Expand]
CPU Time=2.31 s Memory in use=3.82 Mb
0
- R
+
i j k l
i k .;l .;j
R
+ R
-
i l .;k .;j
j k .;l .;i
m
R
- R R
+
j l .;k .;i
m j i k l
m
m n
R
R + R
R +
m i j
k l k l m i
n j
m
n
R
R -
j l
m i n k
m
n
R
R -
j k
m i n l
m
n
R
R +
i l
m j n k
m
n
R
R +
i k
m j n l
m
n
.;m
R
R + R
i j
m n k l i j k l .;m
RR26//Index[gn,SimplifyAllIndex[2]]
CPU Time=5.76 s Memory in use=3.874 Mb
0
RiemannRule34
RR34=Rie[a,f,b,c,.;-e] Rie[-a,-b,-c,-d]+
1/2 Rie[p,f,q,r,.;-e] Rie[-p,-d,-q,-r]//Index[gn]
CPU Time=0.5 s Memory in use=3.876 Mb
l i m n
R R
i
l k m n .;j
0
+ ----------------------- +
j k
2
l i m n
R
R
l m n k
.;j
RR34//Index[gn,SimplifyAllIndex[2]]
CPU Time=489.22 s Memory in use=5.352 Mb
0
And now an example defining some tensors and its symmetries explicitely.
(
InputCoordinates[cx4,4];
InputSMetric[gn,cx4,"g",g];
InputSRiemann[gn,cx4,"R",Rie,Ric,R];
InputTensor[{L},cx4,{1,1,1}];
InputTensor[{V},cx4,{1}];
InputSymmetries[L[i,j,k],{i,k}[2]];
InputSymmetries[L[i,j,k,.;m],{i,j}[2],
Cyclic[j,k,m][2]];
InputIndex[{a,b,c,d,e,m,n}]);
Dimension[cx4]=4
CPU Time=0.55 s Memory in use=2.525 Mb
3/2 L[i,j,k] Rie[-i,-j,q,p] V[-k]//Index[gn]
CPU Time=0.22 s Memory in use=2.532 Mb
c d e a b
3 L V R
a b
e c d
0 + -----------------------
2
%//Index[gn,SimplifyAllIndex[2]]
CPU Time=462.53 s Memory in use=2.987 Mb
b d c a
3 L V R
a b
c d
0 - -------------------
+
4
b d c a
3 L
V R
c
d
------------------- +
4
a
d c b
3 L
V R
c d
------------------- -
4
a d c b
3 L
V R
c
d
------------------- +
4
a b c d
b a c d
3 L
V R 3 L
V R
c
d
c d
------------------- - -------------------
4
4
Note that if Ricci=0 then this is zero which is not obviously at all from the
original expression
<<path/ttc.m
----------------------------------------
|TTC: Tools of Tensor Calculus 4.3.1|
| A.Balfagon,P.Castellvi and X.Jaen |
| http://baldufa.upc.edu/ttc |
| e-mail:Xavier.Jaen@upc.edu |
| version: june, 1, 2005 |
----------------------------------------
| TTC works correctly with |
| Cell menu options: |
| Default Input FormatType=InputForm |
| Default Output FormatType=OutputForm |
----------------------------------------
| Session started on |
| June, 5 , 2005 |
| at 17 h 50 min 6.981 s |
----------------------------------------
InputCoordinates[x,4]
Dimension[x]=4
CPU Time=0. s Memory in use=2.458 Mb
InputSMetric[gx,x,"g",g]
CPU Time=0.05 s Memory in use=2.466 Mb
{g}
InputSChristoffelTensor[gx,x,"G",G]
CPU Time=0.06 s Memory in use=2.473 Mb
{g, G}
GtoM=IndexUpdate[G,":>",1/2 g[i,-s] g[j,-r]g[s,r,.,k]+
1/2 g[i,-s] g[k,-r]g[s,r,.,j]-
1/2 g[j,-s] g[k,-r]g[s,r,.,i]];
CPU Time=7.68 s Memory in use=2.489 Mb
InputTensor[R,x,{1,-1,-1,-1}]
CPU Time=0. s Memory in use=2.491 Mb
{g, G, R}
InputIndex[{i,j,k,l,m,n,o,p}];
CPU Time=0. s Memory in use=2.491 Mb
RtoG=IndexUpdate[R,":>",0[i,j,k,l]+
g[i,-m]g[j,n] g[k,s]
G[m,-n,-s,.,l]-
g[i,-m]g[j,n] g[l,s]G[m,-n,-s,.,k]+
G[-h,j,k] G[i,l,h]-
G[-h,j,l] G[i,k,h]];
CPU Time=0.27 s Memory in use=2.499 Mb
R[i,-j,-k,-l,.;-m]+R[i,-j,-m,-k,.;-l]+R[i,-j,-l,-m,.;-k]//Index[gx]
CPU Time=0.5 s Memory in use=2.504 Mb
i
i
0
+ R
+
j k l m
j k l .;m
i
i
R
+ R
j l m .;k
j m k .;l
%//Index[gx,CovariantToPartial]
CPU Time=1.59 s Memory in use=2.516 Mb
i
i
0
+ R
+
j k l m
j k l .,m
i
i
R
+ R
+
j l m .,k
j m k .,l
i n
i n
R
G + R
G +
n j l m
k n j m k l
i n i n
R
G - R
G -
n j k l
m l m
n k j
i n
i n
R
G - R
G -
j
m n k l j l
n k m
i n
i n
R
G - R
G -
m k n l j j m
n l k
i n
i n
R
G - R
G -
j
k n l m k l
n m j
i n
i n
R
G - R
G
j
l n m k j k
n m l
%//Index[gx,TensorRules[RtoG]]
CPU Time=12.8 s Memory in use=2.537 Mb
i
i n
0
+ G
j k l m
m
o
o
(G
G - G
G +
n l
o j k n k o j l
p
p1 p2
G
g g g
-
p1 p2 .,l j k
n p
p
p1 p2
G
g g g
) +
p1 p2 .,k j l
n p
i n
o
G
(-(G G
) +
l
n m o j k
o
G
G -
n
k o j m
p
p1 p2
G
g g g
+
p1 p2 .,m j k
n p
p
p1 p2
G
g g g
) +
p1 p2 .,k j m
n p
i n
o
G
(G G
-
k
n m o j l
o
G
G +
n
l o j m
p
p1 p2
G
g g g
-
p1 p2 .,m j l
n p
p
p1 p2
G
g g g
) -
p1 p2 .,l j m
n p
i o n
G
(G G
-
n m j
l o k
i
o n
G
G +
k o l
p
i p2 n p1
G
g g g
-
p1 p2 .,l p k
p
i p2 n p1
G
g g g
) -
p1 p2 .,k p l
i o n
G
(-(G G
) +
n l j
m o k
i
o n
G
G -
k o m
p
i p2 n p1
G
g g g
+
p1 p2 .,m p k
p
i p2 n p1
G
g g g
) -
p1 p2 .,k p m
i o n
G
(G G
-
n k j
m o l
i
o n
G
G +
l o m
p
i p2 n p1
G
g g g
-
p1 p2 .,m p l
p
i p2 n p1
G
g g g
) -
p1 p2 .,l p m
i n o
G
(G G
-
n m l
o j k
i
o n
G
G +
k o j
p
.,n i p1
p2
G
g g g
-
p1 p2 p j
k
p
i p1 n p2
G
g g g
) -
p1 p2 .,k p j
i n o
G
(-(G G
) +
n l m
o j k
i
o n
G
G -
k o j
p
.,n i p1
p2
G
g g g
+
p1 p2 p j
k
p
i p1 n p2
G
g g g
) -
p1 p2 .,k p j
i n o
G
(G G
-
n k m
o j l
i
o n
G
G +
l o j
p
.,n i p1
p2
G
g g g
-
p1 p2 p j
l
p
i p1 n p2
G
g g g
) -
p1 p2 .,l p j
i n o
G
(-(G G
) +
n m k
o j l
i
o n
G
G -
l o j
p
.,n i p1
p2
G
g g g
+
p1 p2 p j
l
p
i p1 n p2
G
g g g
) -
p1 p2 .,l p j
i n o
G
(G G
-
n l k
o j m
i
o n
G
G +
m o j
p
.,n i p1
p2
G
g g g
-
p1 p2 p j
m
p
i p1 n p2
G
g g g
) -
p1 p2 .,m p j
i n o
G
(-(G G
) +
n k l
o j m
i
o n
G
G -
m o j
p
.,n i p1
p2
G
g g g
+
p1 p2 p j
m
p
i p1 n p2
G
g g g
) +
p1 p2 .,m p j
i n
i n
(G
G - G
G +
l
n j k k n j
l
o
i p p1
G
g g g
-
p p1 .,l o j
k
o
i p p1
G
g g g
) \
p p1 .,k o j
l .,m
i n
+ (-(G
G ) +
m n j k
i
n
G
G -
k n j m
o
i p p1
G
g g g
+
p p1 .,m o j
k
o
i p p1
G
g g g
) \
p p1 .,k o j
m .,l
i n
i n
+ (G
G - G
G +
m n j l l
n j m
o
i p p1
G
g g g
-
p p1 .,m o j
l
o
i p p1
G
g g g
)
p p1 .,l o j
m .,k
%//Index[gx,SimplifyAllIndex[SymmApply]]
CPU Time=292.15 s Memory in use=2.561 Mb
0
It is not necessary to convert Chistoffel symbols to metric (GtoM)
. Only symmetry properties of Christoffel's are necessary.
This page is maintained by XavierJaén and Albert Balfagón.