Description of maxima_unicode_display in reference manual,
[maxima.git] / share / tensor / ademo.dem
blob6cbc001e48de9a81c734109ed6b85301e115700e
1 /* Copyright (C) 2003 Valerij Pipin <pip@iszf.irk.ru>
2  *
3  * This program is free software; you can redistribute it and/or
4  * modify it under the terms of the GNU General Public License as
5  * published by the Free Software Foundation; either version 2 of
6  * the License, or (at your option) any later version.
7  *
8  * This program is distributed in the hope that it will be
9  * useful, but WITHOUT ANY WARRANTY; without even the implied
10  * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  * PURPOSE.  See the GNU General Public License for more details.
12  *
13  * The double divergence of the Riemann tensor
14  *
16 /* THE FINAL RESULT SHOULD BE ZERO--THE DOUBLE DIVERGENCE OF THE
17  RIEMANN TENSOR ON ANTISYMMETRIC INDICES VANISHES IDENTICALLY */
20 The double divergence of the Riemann-tensor on its antisymmetric
21 indices should vanish. We can prove this in geodesic coordinates:")$
22 showtime:true;
23 if get('itensor,'version)=false then load(itensor);
24 remcomps(g);
25 imetric(g);
26 covdiff(icurvature([r,s,t],[u])*g([],[s,i])*g([],[t,j]),i)$
27 nterms(%);
28 rename(expand(%th(2)))$
29 igeodesic_coords(canform(rename(expand(ev(%)))),g)$
30 ishow(%)$
31 canform(covdiff(%,j))$
32 nterms(%);
33 rename(expand(igeodesic_coords(%th(2),g)));
34 showtime:false;
36 /* Old version. Longer, faster, but uses suspect simplifications.
37 load(itensor)$
38 showtime:true;
39 allsym:true;
40 q:covdiff(covdiff(icurvature([r,s,t],[u])*g([],[s,i])*g([],[t,j]),i),j)$
41 nterms(q);
42 h:canform(expand(rename(igeodesic_coords(q,g))))$
43 nterms(%);
44 imetric:g$
45 h2:igeodesic_coords(canform(ev(h)),g)$
46 nterms(%);
47 conmetderiv(h2,g)$
48 h3:igeodesic_coords(%,g)$
49 nterms(%);
50 h4:canform(rename(expand(rename(h3))))$
51 h6:canform(ev(h4))$
52 nterms(%);
53 conmetderiv(h6,g)$
54 h8:igeodesic_coords(%,g)$
55 nterms(%);
56 ishow(canten(rename(h8)))$ */