share/tensor/itensor.lisp: make X and D shared lexical variables for the functions...
[maxima.git] / share / tensor / ctensor2.dem
blob5acbd7b8ad906dd8fa729ba1ec46246b8414f890
1 /* 
2  * This program is free software; you can redistribute it and/or
3  * modify it under the terms of the GNU General Public License as
4  * published by the Free Software Foundation; either version 2 of
5  * the License, or (at your option) any later version.
6  *
7  * This program is distributed in the hope that it will be
8  * useful, but WITHOUT ANY WARRANTY; without even the implied
9  * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
10  * PURPOSE.  See the GNU General Public License for more details.
11  *
12  * Differential geometry in CTENSOR
13  */
15 if get('ctensor,'version)=false then load(ctensor);
16 ("Prove that the Schwarzschild line element is of an empty metric")$
17 ("The dimension of the manifold")$
18 dim:4;
19 ("The coordinate labels")$
20 ct_coords:[x,y,z,t];
21 ("Rational simplification of geometrical objects")$
22 (ratwtlvl:false,ratfac:true);
23 ("Here is the Schwarzschild metric in standard coordinates:")$
24 lg:matrix([1/(1-2*m/x),0,0,0],[0,x^2,0,0],
25           [0,0,x^2*sin(y)^2,0],[0,0,0,2*m/x-1]);
26 ("Compute metric inverse and determine diagonality")$
27 cmetric();
28 ("Compute and display mixed Christoffel symbols")$
29 christof(mcs);
30 ("Compute and rationally simplify the mixed-index Ricci tensor")$
31 uricci(true);
32 ("Computes scalar curvature")$
33 scurvature();
34 ("Compute the (3,1) Riemann tensor")$
35 riemann(true);
36 ("Compute the covariant Riemann tensor")$
37 lriemann(true);
38 ("Compute the contravariant Riemann tensor")$
39 uriemann(true);
40 ("Compute the Kretchmann invariant Rijkl^2")$
41 rinvariant();
43 /* End of demo -- comment line needed by MAXIMA to resume demo menu */