1twovar.mac is from the book "Perturbation Methods, Bifurcation Theory 2and Computer Algebra" by Rand & Armbruster (Springer 1987) 3 4This maxima routine applies the two variable expansion method to a 5non-autonomous (forced) system of n differential equations. This 6sample run from p 93 applies the method to the van der Pol equation. 7 8The routine is case sensitive. When I enter the inputs in lower case 9I get different (wrong) answers. 10 11(C1) load("./twovar.mac"); 12Warning - you are redefining the MACSYMA function SETIFY 13(D1) ./twovar.mac 14(C2) twovar(); 15DO YOU WANT TO ENTER NEW DATA (Y/N) 16Y; 17NUMBER OF D.E.'S 181; 19THE 1 D.E.'S WILL BE IN THE FORM: 20X[I]'' + W[I]^2 X[I] = E F[I](X[1],...,X[ 1 ],T) 21ENTER SYMBOL FOR X[ 1 ] 22X; 23ENTER W[ 1 ] 241; 25ENTER F[ 1 ] 26(1-X^2)*'DIFF(X,T); 27THE D.E.'S ARE ENTERED AS: 28 2 dX 29X '' + X = E (1 - X ) -- 30 dT 31THE METHOD ASSUMES A SOLUTION IN THE FORM: 32X[I] = X0[I] + E X1[I] 33WHERE X0[I] = A[I](ETA) COS W[I] XI + B[I](ETA) SIN W[I] XI 34WHERE XI = T AND ETA = E T 35REMOVAL OF SECULAR TERMS IN THE X1[I] EQS. GIVES: 36 2 3 37 A B A 38 d 1 1 1 392 (---- (A )) + ----- + -- - A = 0 40 dETA 1 4 4 1 41 3 2 42 B A B 43 d 1 1 1 44- 2 (---- (B )) - -- - ----- + B = 0 45 dETA 1 4 4 1 46DO YOU WANT TO TRANSFORM TO POLAR COORDINATES (Y/N) 47Y; 48 3 49 R R 50 d 1 1 d 51[[---- (R ) = -- - --, ---- (THETA ) = 0]] 52 dETA 1 2 8 dETA 1 53DO YOU WANT TO SEARCH FOR RESONANT PARAMETER VALUES (Y/N) 54N; 55 56 57The second example is from pp 100-103. The system of equations is 58 59 x'' + (1+e*delx) x + e nu x^3 = e k y 60 61 y'' + (1+e*dely) y + e mu cos(w*t) = 0 62 63First we use the two variable method to find a list of resonant 64frequencies w, then we set W to one of the frequencies and determine 65the slow flow equations for W:2. 66 67(C3) twovar(); 68DO YOU WANT TO ENTER NEW DATA (Y/N) 69Y; 70NUMBER OF D.E.'S 712; 72THE 2 D.E.'S WILL BE IN THE FORM: 73X[I]'' + W[I]^2 X[I] = E F[I](X[1],...,X[ 2 ],T) 74ENTER SYMBOL FOR X[ 1 ] 75X; 76ENTER SYMBOL FOR X[ 2 ] 77Y; 78ENTER W[ 1 ] 791; 80ENTER W[ 2 ] 811; 82ENTER F[ 1 ] 83-DELX*X-NU*X^3+K*Y; 84ENTER F[ 2 ] 85-DELY*Y-MU*Y*COS(W*T); 86THE D.E.'S ARE ENTERED AS: 87 3 88X '' + X = E (K Y - NU X - DELX X) 89Y '' + Y = E (- MU COS(T W) Y - DELY Y) 90THE METHOD ASSUMES A SOLUTION IN THE FORM: 91X[I] = X0[I] + E X1[I] 92WHERE X0[I] = A[I](ETA) COS W[I] XI + B[I](ETA) SIN W[I] XI 93WHERE XI = T AND ETA = E T 94REMOVAL OF SECULAR TERMS IN THE X1[I] EQS. GIVES: 95 3 2 96 3 B NU 3 A B NU 97 1 1 1 d 98- ------- - ---------- + B K - B DELX + 2 (---- (A )) = 0 99 4 4 2 1 dETA 1 100 2 3 101 3 A B NU 3 A NU 102 1 1 1 d 103- ---------- - ------- + A K - A DELX - 2 (---- (B )) = 0 104 4 4 2 1 dETA 1 105 d 1062 (---- (A )) - B DELY = 0 107 dETA 2 2 108 d 109- A DELY - 2 (---- (B )) = 0 110 2 dETA 2 111DO YOU WANT TO TRANSFORM TO POLAR COORDINATES (Y/N) 112N; 113DO YOU WANT TO SEARCH FOR RESONANT PARAMETER VALUES (Y/N) 114Y; 115X EQ'S RESONANT FREQ = 1 116FREQS ON RHS = [1, 3] 117Y EQ'S RESONANT FREQ = 1 118FREQS ON RHS = [1, W - 1, W + 1] 119WHICH PARAMETER TO SEARCH FOR ? 120W; 121[W = - 2, W = 0, W = 2] 122DO YOU WANT TO SEARCH FOR ANOTHER PARAMETER (Y/N) ? 123N; 124(D3) 125(C4) W:2; 126(D4) 2 127(C5) twovar(); 128DO YOU WANT TO ENTER NEW DATA (Y/N) 129N; 130THE D.E.'S ARE ENTERED AS: 131 3 132X '' + X = E (K Y - NU X - DELX X) 133Y '' + Y = E (- MU COS(2 T) Y - DELY Y) 134THE METHOD ASSUMES A SOLUTION IN THE FORM: 135X[I] = X0[I] + E X1[I] 136WHERE X0[I] = A[I](ETA) COS W[I] XI + B[I](ETA) SIN W[I] XI 137WHERE XI = T AND ETA = E T 138REMOVAL OF SECULAR TERMS IN THE X1[I] EQS. GIVES: 139 3 2 140 3 B NU 3 A B NU 141 1 1 1 d 142- ------- - ---------- + B K - B DELX + 2 (---- (A )) = 0 143 4 4 2 1 dETA 1 144 2 3 145 3 A B NU 3 A NU 146 1 1 1 d 147- ---------- - ------- + A K - A DELX - 2 (---- (B )) = 0 148 4 4 2 1 dETA 1 149B MU 150 2 d 151----- - B DELY + 2 (---- (A )) = 0 152 2 2 dETA 2 153 A MU 154 2 d 155- ----- - A DELY - 2 (---- (B )) = 0 156 2 2 dETA 2 157DO YOU WANT TO TRANSFORM TO POLAR COORDINATES (Y/N) 158Y; 159 R SIN(THETA - THETA ) K R SIN(2 THETA ) MU 160 d 2 2 1 d 2 2 161[[---- (R ) = - -------------------------, ---- (R ) = - -------------------, 162 dETA 1 2 dETA 2 4 163 164 2 165 3 R NU R COS(THETA - THETA ) K 166 d 1 2 2 1 DELX 167---- (THETA ) = - ------- + ------------------------- - ----, 168dETA 1 8 2 R 2 169 1 170 171 COS(2 THETA ) MU 172 d 2 DELY 173---- (THETA ) = - ---------------- - ----]] 174dETA 2 4 2 175DO YOU WANT TO SEARCH FOR RESONANT PARAMETER VALUES (Y/N) 176N; 177 178 179Local Variables: *** 180mode: Text *** 181End: ***