Chương III - SửdụngMaple 1. Tạo vectơ Để tạo ra vectơ v =(x 1 ,x 2 , ,x n ), ta sửdụng một trong các lệnh sau: > v:= vector([x1,x2 , xn]); > v:= vector(n,[x1,x2,. . . ,xn]); Ngoài ra • vector(n,element): Tạo ra vectơ n chiều với các phần tử có giá trò là ele- ment. • randvector(n): Tạo ngẫu nhiên vectơ n chiều với các phần tử có giá trò nguyên nằm trong [−99, 99]. • v[i]: Xác đònh thành phần thứ i của vectơ v. > u := vector(4, [1, 2, -1, 2]); u := [1 2 − 12] >v:= vector(4, 2); v := [2 2 2 2] > u[3]; −1 2. Các phép toán trên vectơ • u+v: Cộng hai vectơ u và v. • c*v: Nhân c với vectơ v. • dotprod(u,v): Tính tích vô hướng hai vectơ u và v. Lưu ý: Để in ra giá trò của vectơ v ta dùng lệnh evalm(v). > u := vector(4,[1, 2, -1, 2]); u := [1 2 − 12] >v := vector(4,[2, 3, 1, -2]); [231 − 2] > evalm(3*u); [3 6 − 36] 1 > evalm(u+v); [3500] > dotprod(u,v); 3 Ví dụ 1. Xét xem các vectơ sau là độc lập tuyến tính hay phụ thuộc tuyến tính? a) (0, 1, 1), (1, 2, 1) và (1, 5, 3); b) (0, 3, 3, 6), (2, 2, 0, 2) và (−3, 0, 3, 3). > A:= matrix(3,3,[0,1,1,1,2,1,1,5,3]); A := 011 121 153 > rank(A); 3 > B:=matrix(3,4,[0,3,3,6 ,2,2,0,2,-3,0,3,3]); B := 0336 2202 −3033 > rank(B); 2 Dựa vào kết quả tính toán, chúng ta so sánh giữa số vectơ và hạng của ma trận ta có : - Các vectơ (0, 1, 1), (1, 2, 1), (1, 5, 3) độc lập tuyến. - Các vectơ (0, 3, 3, 6), (2, 2, 0, 2) và (−3, 0, 3, 3) phụ thuộc tuyến tính. 3. Cở sở của không gian con • basis(S): Tìm cơ sở của không gian sinh bởi các vectơ của tập hợp S. Kết quả trả về là các vectơ thuộc S. • basis(A, 'rowspace'): Tìm cơ sở của không gian sinh bởi các vectơ dòng của ma trận A. Kết quả trả về là danh sách các vectơ dòng của ma trận A. • basis(A, 'colspace'): Tìm cơ sở của không gian sinh bởi các vectơ cột của ma trận A. Kết quả trả về là danh sách các vectơ cột của ma trận A. • rowspan(A): Tìm cơ sở của không gian sinh bởi các dòng của ma trận A. Kết quả trả về là các vectơ khác 0 của ma trận dạng bậc thang của A. 2 • rowspace(A): Tìm cơ sở của không gian sinh bởi các dòng của ma trận A. Kết quả trả về là các vectơ khác 0 của ma trận dạng bậc thang rút gọn của A. • nullspace(A): Tìm cơ sở của không gian nghiệm của hệ phương trình tuyến tính AX =0. • sumbasis(S 1 ,S 2 , ): Tìm cơ sở của không gian tổng các không gian sinh bởi các tập hợp S 1 ,S 2 , Ví dụ 2. Trong không gian vectơ K 4 xét các vectơ sau đây: u 1 =(1, 2, 0, 1),u 2 =(2, 1, 3, 1),u 3 =(7, 8, 9, 5), u 4 =(1, 2, 1, 0),u 5 =(2, −1, 0, 1),u 6 =(−1, 1, 1, 1), u 7 =(1, 1, 1, 1). Đặt U = u 1 ,u 2 ,u 3 ,W = u 4 ,u 5 ,u 6 ,u 7 . Hãy tìm một cơ sở cho mỗi không gian con U, U + W. > u1:= vector(4,[1,2,0,1]): #Nhập 7 vectơ u2:= vector(4,[2,1,3,1]): u3:= vector(4,[7,8,9,5]): u4:= vector(4,[1,2,1,0]): u5:= vector(4,[2,-1,0,1]): u6:= vector(4,[-1,1,1,1]): u7:= vector(4,[1,1,1,1]): > A := matrix([u1,u2,u3]); #Lập ma trận A từ u1, u2, u3 A := 1201 2131 7895 > rowspan(A); {[0, −3, 3, −1], [0, 0, −9, 0], [1, 2, 0, 1]} > B := matrix([u1,u2,u3,u4,u5,u6,u7]): > rowspan(B); {[1, 2, 0, 1], [0, −3, 3, −1], [0, 0, −9, 0], [0, 0, 0, 9]} Từ kết quả tính toán, ta có: • Không gian U có cơ sở (0, −3, 3, −1), (0, 0, −9, 0), (1, 2, 0, 1) . • Không gian tổng U + W có cơ sở (1, 2, 0, 1), (0, −3, 3, −1), (0, 0, −9, 0), (0, 0, 0, 9) . 3 Ví dụ 3. Tìm số chiều và một cơ sở của không gian nghiệm của hệ phương trình tuyến tính sau: 2x 1 − 4x 2 +5x 3 +3x 4 =0; 3x 1 − 6x 2 +4x 3 +2x 4 =0; 4x 1 − 8x 2 +17x 3 +11x 4 =0. >A := matrix(3,4,[2,-4,5,3,3,-6,4,2,4,-8,17, 11]); 2 −45 3 3 −64 2 4 −8 17 11 > nullspace(A); [2, 1, 0, 0], [ −2 5 , 0, 1, −7 5 ] Vậy không gian nghiệm có số chiều là 2, và có cơ sở: (2, 1, 0, 0), − 2 5 , 0, 1, − 7 5 . 4. Tọa độ và ma trận chuyển cơ sở Bài toán. Cho V là không gian con của K n , B := {u 1 ,u 2 , , u m } là cơ sở của V và u ∈ V . Tính [u] B . Giải. Tọa độ của u trong B chính là nghiệm của hệ phương trình (u 1 u 2 u m | u ). Trong Maple, để tìm [u] B ta dùng các lệnh sau: > B:=matrix([u1,u2, ,u n]); > B:=transpose(B); > linsolve(B,u); Ngoài ra, nếu B := {u 1 ,u 2 , ,u m } và B := {v 1 ,v 2 , , v m } là hai cơ sở của V thì việc tìm ma trận (B→B ) được thực hiện thông qua việc tính [v 1 ] B , [v 2 ] B [v m ] B . Ví dụ 4. Trong K 4 , cho u 1 =(1, 1, −1, 0),u 2 =(−2, 3, 4, 1),u 3 =(−1, 4, 3, 2), v 1 = (1, 1, −1, −1), v 2 =(2, 7, 0, 3), v 3 =(2, 7, 0, 2). Đặt A = {u 1 ,u 2 ,u 3 }, B = {v 1 ,v 2 ,v 3 }. a) Kiểm tra A và B là hai cơ sở của một không gian vectơ W . b) Tìm [u] B nếu biết [u] A = 5 1 4 c) Tính (B→B ). 4 > with(linalg): > u1 := vector(4,[1,1,-1,0]): #Nhập 6 vectơ u2 := vector(4,[-2,3,4,1]): u3 := vector(4,[-1,4,3,2]): v1 := vector(4,[1,1,-1,-1]): v2 := vector(4,[2,7,0,3]): v3 := vector(4,[2,7,0,2]): > A:=matrix([u1,u2,u3]); 11−10 −23 41 −14 32 > rank(A); 3 > B := matrix([v1,v2,v3]): > equal(gaussjord(A),gau ssjord(B)); true Từ kết quả trên ta được r(A)=3nên A độc lập tuyến tính, và do đó A là cơ sở của W . Ma trận A và ma trận B có cùng ma trận rút gọn nên không gian dòng của B chính là không gian dòng của A. > A:=transpose(A); 1 −2 −1 134 −143 012 > B := transpose(B); B := 122 277 100 032 > uA := vector(3,[5,1,4]); uA := [5 1 4] > u := evalm(A.uA) u := [−1 24 11 9] 5 > uB:=linsolve(B,u); uB := [−11 − 12 17] Từ kết quả tính toán trên ta có: [u] B = −11 −12 17 . > v1A:= linsolve(A,v1):#Tính các tọa độ v i theo A v2A:= linsolve(A,v2): v3A:= linsolve(A,v3): > P := matrix([v1A,v2A,v3A]): P := transpose(P); P := 223 1 −10 −121 Từ kết quả tính toán trên ta có: P =(B→B )= 223 1 −10 −121 . 6 . Chương III - Sử dụng Maple 1. Tạo vectơ Để tạo ra vectơ v =(x 1 ,x 2 , ,x n ), ta sử dụng một trong các lệnh sau: > v:= vector([x1,x2 , xn]); >. [u] B . Giải. Tọa độ của u trong B chính là nghiệm của hệ phương trình (u 1 u 2 u m | u ). Trong Maple, để tìm [u] B ta dùng các lệnh sau: > B:=matrix([u1,u2, ,u n]); > B:=transpose(B); >