Rename specvar integer-info to *integer-info*
[maxima.git] / share / contrib / rand / transfor.usg
blobb2053e1b89c22cf0f4cec4a292f6d3c204ff341f
1 transfor.mac is from the book "Perturbation Methods, Bifurcation
2 Theory and Computer Algebra" by Rand & Armbruster (Springer 1987)
4 The procedure transform() performs an arbitrary (not necessarily
5 linear) coordinate transformation on a system of differential
6 equations.
8 The example is from p43.  maxima-5.9.0 cvs reproduces the
9 results from the book.
11 (C1) load("./transfor.mac");
12 (D1)                            ./transfor.mac
13 (C2) transform();
14 ENTER NUMBER OF EQUATIONS
16 ENTER SYMBOL FOR ORIGINAL VARIABLE 1
18 ENTER SYMBOL FOR ORIGINAL VARIABLE 2
20 ENTER SYMBOL FOR ORIGINAL VARIABLE 3
22 ENTER SYMBOL FOR TRANSFORMED VARIABLE 1
24 ENTER SYMBOL FOR TRANSFORMED VARIABLE 2
26 ENTER SYMBOL FOR TRANSFORMED VARIABLE 3
28 THE RHS'S OF THE D.E.'S ARE FUNCTIONS OF THE ORIGINAL VARIABLES:
29 ENTER RHS OF x D.E.
30 D x /DT =
31 s*(y-x);
32 D x /DT = s (y - x)
33 ENTER RHS OF y D.E.
34 D y /DT =
35 r*x-y-x*z;
36 D y /DT = - x z - y + r x
37 ENTER RHS OF z D.E.
38 D z /DT =
39 -b*z+x*y;
40 D z /DT = x y - b z
41 THE TRANSFORMATION IS ENTERED NEXT:
42 ENTER x AS A FUNCTION OF THE NEW VARIABLES
43 x =
44 u+v;
45 x = v + u
46 ENTER y AS A FUNCTION OF THE NEW VARIABLES
47 y =
48 u-v/s;
49         v
50 y = u - -
51         s
52 ENTER z AS A FUNCTION OF THE NEW VARIABLES
53 z =
55 z = w
56        du     s (u w + (1 - r) u) + s v (w - r + 1)
57 (D2) [[-- = - -------------------------------------,
58        dT                     s + 1
60                                                    2
61 dv     s ((r - 1) u - u w) + v (s (- w + r + 1) + s  + 1)
62 -- = - --------------------------------------------------,
63 dT                           s + 1
65                  2     2
66 dw     s (b w - u ) + v  + (u - s u) v
67 -- = - -------------------------------]]
68 dT                    s
70 Local Variables: ***
71 mode: Text ***
72 End: ***