problem about using itensor to demonstrate the riemann tensor' symmetry
Subject: problem about using itensor to demonstrate the riemann tensor' symmetry
From: 昕欣
Date: Thu, 9 May 2013 14:40:10 +0800 (CST)
Thanks Toth.
The alternative way you suggested seems to not work.
A strange thing is that when I run the code twice, itensor will give me "0".
load(itensor)$
remcomps(g);
imetric(g);
decsym(g,2,0,[sym(all)],[]);
decsym(g,0,2,[],[sym(all)]);
rt(a,b,c,d) := idiff( ichr1([b,d,a]),c ) - idiff( ichr1([b,c,a]),d )
+ ichr1([a,d,r])*ichr2([b,c],[r]) - ichr1([a,c,r])*ichr2([b,d],[r])$
expr:rt(i,j,k,l) + rt(j,i,k,l)$
ishow(canform(canform(expr)))$
I don't know which email adress should be replied, vttoth at vttoth.com or Maxima at math.utexas.edu , so I emailed both.
I'm sorry if I emailed wrong way .
Regards.
Guo
At 2013-05-07 20:45:58,"Viktor T. Toth" <vttoth at vttoth.com> wrote:
>Hello,
>
>Here is a way to accomplish what you were looking for:
>
>load(itensor)$
>remcomps(g);
>imetric(g);
>decsym(g,2,0,[sym(all)],[]);
>decsym(g,0,2,[],[sym(all)]);
>components(rt([i,j,k,l],[]),idiff(ichr1([j,l,i]),k)-idiff(ichr1([j,k,i]),l)+
>ichr1([i,l,r])*ichr2([j,k],[r])-ichr1([i,k,r])*ichr2([j,l],[r]))$
>expr:ishow(rt([i,j,k,l],[]) + rt([j,i,k,l],[]))$
>canform(expr)$
>flipflag:not flipflag;
>canform(%th(2))$
>flipflag:not flipflag;
>canform(%th(2));
>
>
>Note that I replaced your function definition for rt with a component
>definition. This is not strictly necessary; however, I found that Maxima
>kind of got lost (not an issue specific to the tensor packages, but
>certainly affecting this case) when the function form was used and the names
>of the formal and actual parameters coincided. Another alternative would
>have been to keep your functional form for rt, but use different formal
>parameters (e.g., rt(a,b,c,d):= ...).
>
>Curiously, the flipflag thing is not needed to show the antisymmetry of the
>second pair of indices:
>
>load(itensor)$
>remcomps(g);
>imetric(g);
>decsym(g,2,0,[sym(all)],[]);
>decsym(g,0,2,[],[sym(all)]);
>components(rt([i,j,k,l],[]),idiff(ichr1([j,l,i]),k)-idiff(ichr1([j,k,i]),l)+
>ichr1([i,l,r])*ichr2([j,k],[r])-ichr1([i,k,r])*ichr2([j,l],[r]))$
>expr:ishow(rt([i,j,k,l],[]) + rt([i,j,l,k],[]))$
>canform(canform(expr));
>
>
>Hope this helps.
>
>
>Viktor
>
>
>
>
>
>
>-----Original Message-----
>From: maxima-bounces at math.utexas.edu [mailto:maxima-bounces at math.utexas.edu]
>On Behalf Of 163
>Sent: Thursday, May 02, 2013 10:07 AM
>To: maxima at math.utexas.edu
>Subject: problem about using itensor to demonstrate the riemann
>tensor' symmetry
>
>my code is below. why can't i get the answer zero. thanks.
>
>load(itensor)$
>
>remcomps(g);
>imetric(g);
>
>decsym(g,2,0,[sym(all)],[]);
>
>decsym(g,0,2,[],[sym(all)]);
>
>
>rt(i,j,k,l) := idiff( ichr1([j,l,i]),k ) - idiff( ichr1([j,k,i]),l )
> + ichr1([i,l,r])*ichr2([j,k],[r]) -
>ichr1([i,k,r])*ichr2([j,l],[r])$
>
>expr:rt(i,j,k,l) + rt(j,i,k,l);
>
>expand(expr)$
>
>canform(%)$
>
>nterms(%);
>
>ishow( conmetderiv(simpmetderiv(canform(contract(rename(%th(2))))),g))$
>
>nterms(%);
>
>ishow( conmetderiv(simpmetderiv(canform(contract(rename(%th(2))))),g))$
>
>nterms(%);
>_______________________________________________
>Maxima mailing list
>Maxima at math.utexas.edu
>http://www.math.utexas.edu/mailman/listinfo/maxima
>