Báo cáo bài tập lớn Matlab - Môn: Đại số tuyến tính thực hiện đề tài: Cho một họ véc tơ M. Kiểm tra M có độc lập tuyến tính hay không? Nếu có hãy trực chuẩn họ véc tơ M. Không được dùng lệnh “qr”. Mời các bạn cùng tham khảo.
Trang 1BÁO CÁO BÀI TẬP LỚN
MATLAB
MÔN: ĐẠI SỐ TUYẾN TÍNH
GVHD: Phan Thị Khánh Vân
Đề tài 3:
Cho một họ véc tơ M Kiểm tra M có độc lập tuyến tính hay không? Nếu có hãy trực chuẩn họ véc tơ M
Không được dùng lệnh “qr”
STT HỌ VÀ TÊN MSSV LỚP
1 Đoàn Lê Mạnh Cường 1510353 DC1504
TP.HCM, Ngày 1, Tháng 6, 2016
Trang 2Mục lục
I Lời mở đầu ……… 2
II Đề tài và phân tích……… 3
III Báo cáo đề tài ……… 4
IV Nhận xét của giảng viên hướng dẫn ……… 6
Trang 3I LỜI MỞ ĐẦU…
Ngày nay khoa học ngày càng phát triển, với đà phát triển này việc ứng dụng khoa học và sáng chế khoa học ở trường học là rất thiết thực và quan trọng Chính vì vậy, ngay từ năm đầu các giảng viên trường ĐH Bách Khoa TP.HCM đã giúp cho
các sinh viên ngành kỹ thuật làm quen với các ứng dụng lập trình, ví dụ như Chương
trình Matlab
MATLAB là một môi trường tính toán số và lập trình cho phép tính toán số
với ma trận, vẽ đồ thị hàm số hay biểu diễn thông tin, thực hiện thuật toán, tạo các giao diện người dùng và liên kết với nhiều máy tính viết trên nhiều ngôn ngữ lập
trình khác Với thư viện Toobox, MATLAB cho phép mô phỏng tính toán, thực
nghiệm nhiều mô hình trong thực tế và kỹ thuật Với hơn 40 năm hình thành và phát
triển, ngày nay với thiết kế sử dụng tương đối đơn giản và phổ thông, MATLAB là
công cụ tính toán hữu hiệu để giải quyết các bài toán kỹ thuật
Vì vậy, đối với những bài toán trong môn Đại số, đặc biệt là những bài toán
Ma trận, hệ phương trình, ánh xạ tuyến tính,… MATLAB có thể giúp ta giải quyết
những bài toán đó một cách đơn giản và hiệu quả, phần mềm trở thành một trợ thủ
Trang 4II ĐỀ TÀI VÀ PHÂN TÍCH
Đề tài 3:
Cho một họ véc tơ M Kiểm tra M có độc lập tuyến tính hay không? Nếu có hãy trực chuẩn họ véc tơ M
Không được dùng lệnh “qr”
Phân tích:
Input: Cho phép nhập vào một họ véc tơ M
Output: Nếu M độc lập tuyến tính thì trực chuẩn họ véc tơ M
Cơ sở lí thuyết :
Kiểm tra các véc tơ x1, x2,…, xm có độc lập tuyến tính hay không?
Đặt A = ( x𝑇
1 x
𝑇
2 … x
𝑇
𝑚) và xác định r(A) Nếu r(A) = m thì x1, x2,…, xm độc lập tuyến tính
Hai véc tơ x1 , x2 trực chuẩn nếu { < 𝑥1 , 𝑥2 > = 0
‖𝑥1‖ = ‖𝑥2‖ = 1
Thuật toán:
Nhập họ véc tơ M từ bàn phím
Kiểm tra M có độc lập tuyến tính
Trực chuẩn họ vector M (nếu M độc lập tuyến tính)
Trang 5III BÁO CÁO ĐỀ TÀI
Đề tài 3:
Cho một họ véc tơ M Kiểm tra M có độc lập tuyến tính hay không? Nếu có hãy trực chuẩn họ véc tơ M
Không được dùng lệnh “qr”
Đoạn CODE:
function tracchuan
f=input( 'nhap ho vecto M: ' );
[m,~]=size(f);
if rank(f)~=m
disp( 'M phu thuoc tuyen tinh' )
return
end
fc=zeros(size(f));
fc(1,:)=f(1,:);
if m==1
fc=fc/(sqrt(f*f'));
else
alpha=zeros(m-1,1);
for i=1:m-1
fc(i+1,:)=f(i+1,:);
for j=1:i
alpha(j,1)=(f(i+1,:)*fc(j,:)')/(fc(j,:)*fc(j,:)');
fc(i+1,:)=fc(i+1,:)-alpha(j,1)*fc(j,:);
end
end
for i=1:m
fc(i,:)=fc(i,:)/(sqrt(fc(i,:)*fc(i,:)'));
end
end
disp( 'M doc lap tuyen tinh,truc chuan M:' )
disp(fc)
end
Trang 6Ví dụ 1:
Ví dụ 2:
Trang 7IV NHẬN XÉT CỦA G.VIÊN HƯỚNG DẪN