# SECTION 9.5# Example 1with(linalg);A := matrix([[2,-3],[1,-2]]);I2 := matrix([[1,0],[0,1]]);# 2 by 2 identity matrix# Use I, as in text:interface(imaginaryunit=j); #Changes I from a reserved symbol to a valid variable nameI := evalm(I2);A-r*I;evalm(%);det(%);solve(%,r);# Solve for eigenvectors:r1 := 1:evalm(A-r1*I);u := vector(2);(A-r1*I)&*u; evalm(%);eq := %[1] = 0;u[2] := s;u[1] := solve(eq,u[1]);u1 := evalm(u);r2 := -1;u := vector(2);(A-r2*I)&*u;evalm(%);eq := %[1] = 0;u[2] := s;u[1] := solve(eq,u[1]);u2 := evalm(u);# Example 2A := matrix([[1,2,-1],[1,0,1],[4,-4,5]]);I := matrix([[1,0,0],[0,1,0],[0,0,1]]);# Alternatively, we can obtain I as follows:?Idwith(Student[LinearAlgebra]);Id(3);I := %;A-r*I;evalm(%);det(%)=0;factor(%);solve(%%,r);r1 := 1;u := vector(3);(A-r1*I)&*u;eq := evalm(%);eq1 := eq[1]=0; eq2 := eq[2]=0; eq3 := eq[3]=0; # Interchange equations 1 and 2:temp := eq2; eq2 := eq1; eq1 := temp; eq1;eq2;eq3;eq3 := eq3 - 4*eq1;eq1;eq2;eq3;u[2] := s; u[3] := solve(eq2,u[3]);u[1] := solve(eq1,u[1]);u1 := evalm(u);r2 := 2;u := vector(3);(A-r2*I)&*u;eq := evalm(%);eq1 := eq[1]=0; eq2 := eq[2]=0; eq3 := eq[3]=0; # Solving by using elementary row operations (Gaussian elimination):eq2 := eq2 + eq1; eq3 := eq3 +4*eq1;eq1;eq2;eq3;u[2] := s;u[3] := solve(eq3,u[3]);u[1] := solve(eq1,u[1]);u2 := evalm(u);r3 := 3;u := vector(3);(A-r3*I)&*u;eq := evalm(%);eq1 := eq[1]=0; eq2 := eq[2]=0; eq3 := eq[3]=0;# Solving as before:eq2 := eq2 +eq1/2;eq3 := eq3 + 2*eq1;eq1 := eq1 + eq2;eq1;eq2;eq3;u[2] := s;u[3] := solve(eq2,u[3]);u[1] := solve(eq1,u[1]);u3 := evalm(u);# Here's another way to find the eigenvalue-eigenvector pairs:eigenvects(A);# Example 3A := matrix([[2,-3],[1,-2]]);eigenvects(A);x := c1*exp(1*t)*[3,1] + c2 *exp(-1*t)*[1,1];# Check that dx/dt = Ax:dxdt := map(diff,x,t);evalm(%);evalm(A&*x);# Example 4x := c1*exp(t)*[-1,1,2] + c2*exp(2*t)*[-2,1,4] + c3*exp(3*t)*[-1,1,4];subs(t=0,%);evalm(%) = [-1,0,0];B := matrix([[-1,-2,-1],[1,1,1],[2,4,4]]);b := [-1,0,0];# Use Maple's linsolve command to solve Bc=b:linsolve(B,b);subs({c1=0,c2=1,c3=-1},x); evalm(%);# Example 5A := matrix([[1,-2,2],[-2,1,2],[2,2,1]]);evalm(A-r*I);det(%)=0;factor(%);r1 := 3;u := vector(3);(A-r1*I)&*u;eq := evalm(%);eq1 := eq[1]=0; eq2 := eq[2]=0; eq3 := eq[3]=0;u[2] := v; u[3] := s;u[1] := solve(eq1,u[1]);evalm(u);u1 := evalm(subs({s=1,v=0},evalm(u)));u2 := evalm(subs({s=0,v=1},evalm(u)));r3 := -3;u := vector(3);(A-r3*I)&*u;eq := evalm(%);eq1 := eq[1]=0; eq2 := eq[2]=0; eq3 := eq[3]=0;# Solve by Gaussian elimination:eq2 := eq2 + eq1/2;eq3 := eq3-eq1/2;eq3 := eq3-eq2; eq1;eq2;eq3;u[3] := s;u[2] := solve(eq2,u[2]);u[1] := solve(eq1,u[1]);evalm(u);u3 := evalm(subs(s=1,%));c1*exp(r1*t)*u1 + c2*exp(r2*t)*u2 + c3*exp(r3*t)*u3;x := evalm(%);# Check that dx/dt = Ax:evalm(map(diff,x,t));evalm(A&*x);TTdSMApJNlJUQUJMRV9TQVZFLzEzNjUxNTI1MlgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIyoiJCIkIiIiIiIhRihGKEYnRihGKEYoRic2Ig==TTdSMApJNlJUQUJMRV9TQVZFLzEzNTU5NzA1MlgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIyoiJCIkLCQlInJHISIiIiIhRipGKkYnRipGKkYqCkYnNiI=