# Section 9.6# Example 1 interface(imaginaryunit=i);NiNeIyIiIg==with(linalg):Warning, the protected names norm and trace have been redefined and unprotected with(Student[LinearAlgebra]):I := Id(2);NiM+JSJJRy0lJ1JUQUJMRUc2JSIqV2xmTyItJSdNQVRSSVhHNiM3JDckIiIiIiIhNyRGL0YuJSdNYXRyaXhHA := matrix([[-1,2],[-1,-3]]);NiM+JSJBR0slJ21hdHJpeEc2IzckNyQhIiIiIiM3JEYqISIkUSlwcHJpbnQxNDYievalm(A-r*I);NiNLJSdtYXRyaXhHNiM3JDckLCYiIiIhIiIlInJHRioiIiM3JEYqLCYiIiRGKkYrRipRKXBwcmludDE1NiI=det(%);NiMsKCIiJiIiIiomIiIlRiUlInJHRiVGJSokKUYoIiIjRiVGJQ==solve(%=0,r);NiReJCEiIyIiIl4kRiQhIiI=r1 := %[1];NiM+JSNyMUdeJCEiIyIiIg==z := vector(2);NiM+JSJ6Ry0lJmFycmF5RzYkOyIiIiIiIzcieq := evalm((A-r1*I)&*z);NiM+JSNlcUdLJSd2ZWN0b3JHNiM3JCwmKiZeJCIiIiEiIkYsJiUiekc2I0YsRixGLComIiIjRiwmRi82I0YyRixGLCwmRi5GLSomXiRGLUYtRixGM0YsRixRKHBwcmludDM2Ig==eq1 := eq[1]=0; eq2 := eq[2]=0;NiM+JSRlcTFHLywmKiZeJCIiIiEiIkYpJiUiekc2I0YpRilGKSomIiIjRikmRiw2I0YvRilGKSIiIQ==NiM+JSRlcTJHLywmJiUiekc2IyIiIiEiIiomXiRGK0YrRiomRig2IyIiI0YqRioiIiE=# Although they don't look like it, these equations are actually multiples of each other.#If we apply Gaussian elmination, we geteq2 := eq2 + eq1/(1-i);NiM+JSRlcTJHLywoJiUiekc2IyIiIiEiIiomXiRGK0YrRiomRig2IyIiI0YqRioqJl4kI0YqRjBGM0YqLCYqJl4kRipGK0YqRidGKkYqKiZGMEYqRi5GKkYqRipGKiIiIQ==eq2 := simplify(%);NiM+JSRlcTJHLyIiIUYmeq1;eq2;NiMvLCYqJl4kIiIiISIiRicmJSJ6RzYjRidGJ0YnKiYiIiNGJyZGKjYjRi1GJ0YnIiIhNiMvIiIhRiQ=# This is easily solved by letting z[1] = 2s and solving for z[2]:z[1] := 2*s;NiM+JiUiekc2IyIiIiwkKiYiIiNGJyUic0dGJ0Ynz[2] := solve(eq1,z[2]);NiM+JiUiekc2IyIiIywmJSJzRyEiIiomRikiIiJeI0YsRixGLA==evalm(z);NiNLJSd2ZWN0b3JHNiM3JCwkKiYiIiMiIiIlInNHRipGKiwmRishIiIqJkYrRipeI0YqRipGKlEocHByaW50NDYisubs(s=1,%);NiNLJSd2ZWN0b3JHNiM3JCIiI14kISIiIiIiUShwcHJpbnQ1NiI=z1 := evalm(%); #Eigenvector corresponding to r1NiM+JSN6MUdLJSd2ZWN0b3JHNiM3JCIiI14kISIiIiIiUShwcHJpbnQ2NiI=alpha := Re(r1); beta := Im(r1); a := evalm(Re(z1)); b := evalm(Im(z1));NiM+JSZhbHBoYUchIiM=NiM+JSViZXRhRyIiIg==NiM+JSJhR0slJ3ZlY3Rvckc2IzckIiIjISIiUShwcHJpbnQ3NiI=NiM+JSJiR0slJ3ZlY3Rvckc2IzckIiIhIiIiUShwcHJpbnQ4NiI=x := exp(alpha*t)(c1*(cos(beta*t)*a-sin(beta*t)*b) + c2*(sin(beta*t)*a+cos(beta*t)*b));NiM+JSJ4Ry0tJSRleHBHNiMsJComIiIjIiIiJSJ0R0YsISIiNiMsJiomJSNjMUdGLCwmKiYtJSRjb3NHNiNGLUYsJSJhR0YsRiwqJi0lJHNpbkdGN0YsJSJiR0YsRi5GLEYsKiYlI2MyR0YsLCYqJkY6RixGOEYsRiwqJkY1RixGPEYsRixGLEYsevalm(%);NiNLJSd2ZWN0b3JHNiM3JC0tJSRleHBHNiMsJComIiIjIiIiJSJ0R0YuISIiNiMsJiooRi1GLiUjYzFHRi4tJSRjb3NHNiNGL0YuRi4qKEYtRi4lI2MyR0YuLSUkc2luR0Y3Ri5GLi1GKDYjLCYqJkY0Ri4sJkY1RjBGOkYwRi5GLiomRjlGLiwmRjpGMEY1Ri5GLkYuUShwcHJpbnQ5NiI=# Finding the eigen-pairs another way:eigenvects(A);NiQ3JV4kISIjIiIiRiY8I0slJ3ZlY3Rvckc2IzckXiQhIiJGLUYmUSlwcHJpbnQxMDYiNyVeJEYlRi1GJjwjS0YpNiM3JF4kRi1GJkYmUSlwcHJpbnQxMUYv#Using dsolve to find the general solution:de1 := diff(x1(t),t) = -x1(t)+2*x2(t);NiM+JSRkZTFHLy0lJWRpZmZHNiQtJSN4MUc2IyUidEdGLCwmRikhIiIqJiIiIyIiIi0lI3gyR0YrRjFGMQ==de2 := diff(x2(t),t) = -x1(t)-3*x2(t);NiM+JSRkZTJHLy0lJWRpZmZHNiQtJSN4Mkc2IyUidEdGLCwmLSUjeDFHRishIiIqJiIiJCIiIkYpRjNGMA==dsolve({de1,de2});NiM8JC8tJSN4Mkc2IyUidEcqJi0lJGV4cEc2IywkKiYiIiMiIiJGKEYwISIiRjAsJiomJSRfQzFHRjAtJSRzaW5HRidGMEYwKiYlJF9DMkdGMC0lJGNvc0dGJ0YwRjBGMC8tJSN4MUdGJywkKiZGKkYwLCpGM0YwKiZGNEYwRjlGMEYwRjdGMComRjhGMEY1RjBGMUYwRjE=# Notice that if _C1 is changed to 2*c2 and _C2 is changed to 2*c1, dsolve's answer is# the same as the first answer above.# Example 2 A := matrix([[0,1,0,0],[-(k1+k2)/m1,0,k2/m1,0],[0,0,0,1],[k2/m2,0,-(k2+k3)/m2,0]]);NiM+JSJBR0slJ21hdHJpeEc2IzcmNyYiIiEiIiJGKkYqNyYsJComLCYlI2sxR0YrJSNrMkdGK0YrJSNtMUchIiJGM0YqKiZGMUYrRjJGM0YqNyZGKkYqRipGKzcmKiZGMUYrJSNtMkdGM0YqLCQqJiwmRjFGKyUjazNHRitGK0Y4RjNGM0YqUSlwcHJpbnQxMjYievalm(subs({m1=1,m2=1,k1=1,k2=2,k3=3},evalm(A)));NiNLJSdtYXRyaXhHNiM3JjcmIiIhIiIiRihGKDcmISIkRigiIiNGKDcmRihGKEYoRik3JkYsRighIiZGKFEpcHByaW50MTM2Ig==A_Ex2 := (%);NiM+JSZBX0V4MkdLJSdtYXRyaXhHNiM3JjcmIiIhIiIiRipGKjcmISIkRioiIiNGKjcmRipGKkYqRis3JkYuRiohIiZGKlEpcHByaW50MTQ2Ig==I := Id(4);NiM+JSJJRy0lJ1JUQUJMRUc2JSIrWzF5ITMiLSUnTUFUUklYRzYjNyY3JiIiIiIiIUYvRi83JkYvRi5GL0YvNyZGL0YvRi5GLzcmRi9GL0YvRi4lJ01hdHJpeEc=evalm(A_Ex2 - r*I);NiNLJSdtYXRyaXhHNiM3JjcmLCQlInJHISIiIiIiIiIhRiw3JiEiJEYoIiIjRiw3JkYsRixGKEYrNyZGL0YsISImRihRKXBwcmludDE2NiI=det(%);NiMsKCokKSUickciIiUiIiJGKComIiIpRigpRiYiIiNGKEYoIiM2Rig=subs(r=sqrt(z),%);NiMsKCokKSUiekciIiMiIiJGKComIiIpRihGJkYoRigiIzZGKA==rsquared := solve(%,z);NiM+JSlyc3F1YXJlZEc2JCwmIiIlISIiKiQiIiYjIiIiIiIjRiwsJkYnRihGKUYobeta1 := sqrt(-rsquared[1]);beta2 := sqrt(-rsquared[2]);NiM+JSZiZXRhMUcqJCwmIiIlIiIiKiQiIiYjRigiIiMhIiJGKw==NiM+JSZiZXRhMkcqJCwmIiIlIiIiKiQiIiYjRigiIiNGKEYrf1 := evalf(beta1/(2*Pi));NiM+JSNmMUckIit5aHk4QCEjNQ==f2 := evalf(beta2/(2*Pi));NiM+JSNmMkckIista1Z1UiEjNQ==TTdSMApJNlJUQUJMRV9TQVZFLzEzNjU5NjU0NFgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIyUiIyIjIiIiIiIhRihGJzYiTTdSMApJN1JUQUJMRV9TQVZFLzEwODA3ODA2NDhYLCUpYW55dGhpbmdHNiI2IltnbCEiJSEhISMxIiUiJSIiIiIiIUYoRihGKEYnRihGKEYoRihGCidGKEYoRihGKEYnNiI=