ĐẠI HỌC BÁCH KHOA THÀNH PHỐ HỒ CHÍ MINH KHOA KỸ THUẬT HÓA HỌC BÀI TẬP LỚN ĐẠI SỐ TUYẾN TÍNH Giáo viên hướng dẫn Lê Nguyễn Hạnh Vy TP HCM, tháng 5 năm 2018 Nhóm thực hiện Nhóm 7 Lớp L12 Tên MSSV 1 Nguy[.]
ĐẠI HỌC BÁCH KHOA THÀNH PHỐ HỒ CHÍ MINH KHOA KỸ THUẬT HÓA HỌC BÀI TẬP LỚN ĐẠI SỐ TUYẾN TÍNH Nhóm thực hiện: Nhóm Lớp: L12 Tên MSSV Nguyễn Tấn Ln 1710184 Nguyễn Chí Bảo 1710590 Ngô Thái Thanh Thư 1710323 Trần Duy Tân 1713082 Mai Thị Thanh Ngân 1712282 Phan Trọng Nhân 1712442 Giáo viên hướng dẫn: Lê Nguyễn Hạnh Vy TP.HCM, tháng năm 2018 Mục Lục………………………………………………………………… I PHẦN BÁO CÁO NHÓM Đề tài tập lớn ……………………………………………………… Cơ sở lý thuyết ………………………………………………………… Các bước chạy chương trình …………………………………………… Đoạn code ……………………………………………………………… Ví dụ minh họa ………………………………………………………… II PHẦN BÁO CÁO CÁ NHÂN PHẦN 1: Ma trận định thức …………………….……………… PHẦN 2: Hệ phương trình…………………………………………… PHẦN 3: Khơng gian vector…………….…………………………… PHẦN 4: Không gian Euclide ……………………………………… PHẦN 5: Ánh xạ tuyến tính – trị riêng – vector riêng……………… I PHẦN BÁO CÁO NHÓM Đề tài tập lớn: Chủ đề 2: Tích hai ma trận Yêu cầu: Input: cho phép nhập hai ma trận A B Chương trình phải kiểm tra xem ma trận có nhân với khơng? Output: ma trận tích ma trận nghịch đảo Chủ đề 14: Tìm sở số chiều khơng gian giao F ∩ G không gian tổng F + G hai không gian F G Yêu cầu: input: nhập vào hai không gian (tập sinh hai không gian F G, hệ phương trình) Output: số chiều sở khơng gian giao tổng Cơ sở lý thuyết: Phép nhân hai ma trận: Cho A = (aij)m x p , B = (bij)p x n Tích ma trận A.B = C = (cij)m x n Cij = ai1b1j + ai2b2j + … + aipbpj ………………… ……… … 𝑏1𝑗 … AB = (𝑎𝑖1 𝑎𝑖2 … 𝑎𝑖𝑝) ( … … … ) = (… 𝑐𝑖𝑗 …) ……………… ……… … 𝑏𝑝𝑗 … Điều kiện phép nhân: Số cột ma trận trước số hàng ma trận sau Cách nhân theo tích vơ hướng: Cij = hi(A) × cj(B) Ma trận nghịch đảo: Ma trận vuông A gọi khả nghịch tồn ma trận B cho BA = AB = I A nghịch đảo det(A) ≠ Cách tìm ma trận nghịch đảo: (𝐴|𝐼) (𝐼|𝐴−1 ) Bdsc theo hàng Cơ sở số chiều F ∩ G (F,G cho dạng tập sinh): - Cho hai không gian F G KGVT V Giao không gian con: F ∩ G = {𝑥 ∈ 𝑉|𝑥 ∈ 𝐹 𝑣à 𝑥 ∈ 𝐺} - Tính chất giao khơng gian con: ( F ∩ G) F (F + G) V ( F ∩ G) G (F + G) V - Cách tìm: + Tìm sở trực giao ma trận sở F, G F1,G1 + Tìm ma trận sở trực tổng hai ma trận F1T, G1T ma trận sở F ∩ G Cơ sở số chiều F + G (F, G cho dạng tập sinh): - Cho hai không gian F G KGVT V Tổng không gian không gian nhỏ chứa hai không gian cho: F + G = {𝑓 + 𝑔|𝑓 ∈ 𝐹 𝑣à 𝑔 ∈ 𝐺} - Tính chất tổng khơng gian con: F = < f1, f2, … , fn > G = Ta có: F + G = - Tìm ma trận sở số chiều cách đưa F + G ma trận bậc thang Các bước chạy trương trình: Tích hai ma trận: B1: Nhập ma trận A, B B2: Kiểm tra A có nhân với B B3: Tính tích ma trận A, B B4: Kiểm tra ma trận A.B có khả nghịch B5: Tính ma trận nghịch đảo A, B Tổng giao hai không gian con: B1: Nhập tập sinh F G B2: Tìm sở F G B3: Tìm ma trận sở số chiều F + G B4: Tìm ma trận sở số chiều F ∩ G Đoạn code: Tích hai ma trận: function tichhaimatran A = input('Nhap ma tran A: '); B = input('nhap ma tran B: '); while size(A,2)~=size(B,1); disp('A khong nhan duoc voi B'); A = input('Nhap lai ma tran A: '); B = input('nhap lai ma tran B: '); end for i = 1:1:size(A,1); m = A(i,:); for j = 1:1:size(B,2); n = B(:,j); h(i,j) = m*n; end end disp('Tich cua ma tran A va B la C:'); disp(h); if size(h,1)~=size(h,2) disp('h khong la ma tran vuong nen khong co ma tran nghich dao') else n=size(h,1); if rank(h) m-1 for j=h:n;%ung voi moi giá tri k ðang chay thi ta cho j(là bien chi cot) chay tu h=1 ->n for i=k:m;%ung voi moi giá tri j ta lai cho i(là bien chi hàng)chay tu k=1 ->m if(N(i,j)~=0)%i j chay cho ðen phan tu ma tran thuoc hàng i cot j khác 0(hieu là:neu quét ma tran tung cot mot tu xuong duoi cho den gap mot phan tu khác thi thoi) break;%neu phan tu hàng i cot j khác thi se dung bo lenh 'for'ðang chua tuc lai bat ðau chay tu 'for j=h:n' end; end; if(N(i,j)~=0); break; end; end; if(i~=k)%truong hop chi xay sau cung i=m va k=m-1 for l=h:n; a=N(k,l); N(k,l)=N(i,l); N(i,l)=a; end; end; if(j~=h) h=j; end; for i=k+1:m; if(N(i,h)~=0) a=N(i,h)/N(k,h);%gán cho a la thuong cua phep chia phan tu duoi cho pt tren for j=h:n; N(i,j)=N(i,j)-a*N(k,j);%sau phan tu ma tran hang i cot j se nhan duoc gia tri moi bang phep tru tren end; end; end; h=h+1; end; N2=N(1:n,:);%lay so hang khac cua N1 T1=null(Q,'r');%cho co so truc giao cua Q T2=null(P,'r');%cho co so truc giao cua P T=[T1'; T2'];%ma tran nghiem R1=null(T,'r');%cho co so truc giao cua T k=rank(R1'); disp(['Chieu cua co so cua F + G la: ',num2str(n)]); disp('Co so cua F + G la: '); disp(N2); disp(['Chieu cua F giao G la: ',num2str(k)]); disp('Co so cua F giao G la: '); disp(R1') Ví dụ minh họa: Tích hai ma trận: 𝟏 Ví dụ 1: Cho ma trận A = ( 𝟒 𝟏 Ví dụ 2: Cho ma trận A = (−𝟏 𝟒 𝟏 𝟏 𝟐 𝟒 ) ma trận B = (𝟑 𝟐 𝟑 𝟐 𝟏 𝟒 𝟐 𝟑 𝟏 𝟏 ma trận B = ) ( 𝟎 𝟏 𝟏 𝟎 𝟓 𝟐 𝟏 𝟒 𝟐 𝟏) 𝟑 𝟏 𝟏) 𝟔 Tổng giao hai khơng gian con: Ví dụ 1: Trong R3 cho hai không gian F = < (-1;1;0), (2;0;1) > , G = < (1;1;0), (-1;0; 1) > (VD 4.45/ Trang 104 sách đại số tuyến tính thầy Hiệp thầy Vinh) Ví dụ 2: Trong R3 cho hai không gian F = < (1;0;1), (1;1;1) > , G = < (1;1;0), (2;1; 1) > (VD 4.47/ Trang 105 sách đại số tuyến tính thầy Hiệp thầy Vinh) II PHẦN BÁO CÁ NHÂN: Phần 1: Ma trận định thức: Sinh viên thực hiện: Họ tên: Trần Duy Tân MSSV: 1713082 Đề bài: Các dòng lệnh: a=[0 -4; -1 -4 5; 7;0 -10]; rank(a) rank(a*a') rank(a'*a) Kết thu được: r(A) = r(AAT) = r(ATA) = Sinh viên thực hiện: Họ tên: Nguyễn Tấn Luôn MSSV: 1710184 Đề bài: Các dòng lệnh: A=[1 1;-1 -2] ; B=[-1 2;0 2;-1 1]; C=[2 0;-1 1;0 -1]; a=2*A*C-(C*B)' 𝟐 𝟏𝟎 Kết thu được: a = ( −𝟏𝟐 −𝟗 𝟏 ) 𝟑 Phần 2: Hệ phương trình: Sinh viên thực hiện: Họ tên: Nguyễn Chí Bảo MSSV: 1710590 Đề bài: 10 Các dòng lệnh: A=[1 4; 2 3;3 2;4 1]; B=[1 7;2 6;3 2 7;4 18]; rank(A) rank(B) %r(A)=r(B) = 4=> hệ có nghiệm Kết thu được: Hệ có nghiệm Phần 3: Không gian vector: Sinh viên thực hiện: Họ tên: Mai Thị Thanh Ngân MSSV: 1712282 Đề bài: Tìm hạng họ ĐLTT cực đại họ vecto M = {(1,1,1,0), (1, −2,1,1), (2,1,2, −1)} Các dòng lệnh: >> M=[1 1 0;1 -2 1;2 -1]; >> rank(M) >> rref(M) 11 >> %ho DLLT cuc dai la (1,0,1,0) (0,1,0,0) (0,0,0,1) Kết thu được: r(M) = 3, họ ĐLTT cực đại M Phần 4: Không gian Euclide: Sinh viên thực hiện: Họ tên: Ngô Thái Thanh Thư MSSV: 1710323 Đề bài: 4) Trong R3, cho tích vơ hướng (x,y) = x1y1 + 2x2y2 + 3x3y3 – x1y3 – x3y1 Tìm góc khoảng cách vecto u = (1,1,2),v = (2,1,-1) Các dòng lệnh: >> A = [1 -1;0 0; -1 3]; >> u = [ 1 2]; v = [2 -1]; w=u-v; goc = acos((u*A*v')/(norm(u)*norm(v))) >> khoangcach = sqrt(w*A*w') Kết thu được: goc(u,v) = 2,559 rad, d(u-v) = 5,831 Phần 5: Ánh xạ tuyến tính – trị riêng – vector riêng: Sinh viên thực hiện: Họ tên: Phan Trọng Nhân MSSV: 1712442 Đề bài: 12 2) Cho axtt f: R3 → R2, biết f(1,1,0) = (2,-1), f(1,1,1) = (1,2), f(1,0,1) = (- 1,1) Tìm f(2,0,3) Các dịng lệnh: >> E=[1 0; 1 1; 1]; >> E=E'; >> F = [2 3]; >> F = F'; >> x=inv(E)*F f = (-1)*[ -1] + 1*[1 2]+ 2*[-1 1] Kết thu được: f(2,0,3) = (-3,5) Cảm ơn cô xem đánh già báo cáo nhóm! 13