rtest4: in tests for SF bug #2905, invert case of all-upper and all-lower symbols...
[maxima.git] / share / tensor / ctensor1.dem
blob327002084c2242fe7439a0c58bcee0356e5f5280
1 /* Copyright (C) 2004 Viktor T. Toth <http://www.vttoth.com/>
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  * CTENSOR basics
14  */
16 if get('ctensor,'version)=false then load(ctensor);
17 ("To select a stock metric, use ct_coordsys")$
18 verbose:false;
19 ct_coordsys(spherical);
21 ("The metric tensor is stored in the array lg")$
22 lg;
24 ("A call to cmetric() sets up the inverse and other properties")$
25 cmetric();
26 ug;
27 diagmetric;
29 ("Most metrics are available also as a frame base")$
30 cframe_flag:true;
31 ct_coordsys(spherical);
33 ("The inverse frame base is in the array fri; lfg is the frame metric")$
34 fri;
35 lfg;
37 ("Now, cmetric computes the frame base, and also the metric")$
38 cmetric();
39 fr;
40 ufg;
41 lg;
43 ("You can also supply a set of transformation rules to ct_coordsys")$
44 ct_coordsys([r*cos(theta)*cos(phi),r*cos(theta)*sin(phi),
45              r*sin(theta),[r,theta,phi]]);
46 cmetric();
47 fri;
48 lg:trigsimp(lg);
50 /* End of demo -- comment line needed by MAXIMA to resume demo menu */