TRƯỜNG ĐẠI HỌC BÁCH KHOA Đại Học Quốc Gia Thành Phố Hồ Chí Minh BÁO CÁO BÀI TẬP LỚN ĐẠI SỐ TUYẾN TÍNH Nhóm 2 Lớp L13 ĐỀ TÀI PHÂN TÍCH QR BẰNG 3 PHƯƠNG PHÁP GRAM SMITH, HOUSEHOLDER, GIVEN GVHD NGUYỄ.
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA
Đại Học Quốc Gia Thành Phố Hồ Chí Minh
BÁO CÁO BÀI TẬP LỚN ĐẠI SỐ TUYẾN TÍNH
Nhóm 2 Lớp L13
ĐỀ TÀI : PHÂN TÍCH QR BẰNG 3 PHƯƠNG PHÁP:
GRAM-SMITH, HOUSEHOLDER, GIVEN
GVHD: NGUYỄN HỮU HIỆP
Trang 2
TRƯỜNG ĐẠI HỌC BÁCH KHOA
Đại Học Quốc Gia Thành Phố Hồ Chí Minh
ĐỀ TÀI : PHÂN TÍCH QR BẰNG 3 PHƯƠNG PHÁP:
GRAM-SMITH, HOUSEHOLDER, GIVEN
GVHD: NGUYỄN HỮU HIỆP
DANH SÁCH THÀNH VIÊN NHÓM 2-LỚP L13
MỤC LỤC
PHẦN 1: PHÂN TÍCH QR BẰNG PHƯƠNG PHÁP GRAM-SCHMIDT
2
Trang 31.1 Cơ sở lý thuyết của A=QR bằng phương pháp Gram-Schmidt
1.2 Phân rã A=QR với ma trận cụ thể
1.3 Giải hệ pttt bằng phân rã A=QR
2.2 Hình chiếu vuông góc
2.3 Phép biến đổi householder
2.4 Phân tích A=QR bằng biến đổi HOUSEHOLDER
2.5 Viết chương trình dùng để phân tích A=QR bằng phương pháp
Householder
PHẦN 3: PHÂN TÍCH QR BẰNG PHƯƠNG PHÁP GIVEN
3.1 Yêu cầu đặt ra:
Trang 41.1 Cơ sở lý thuyết của A=QR bằng phương pháp Gram-Schmidt:Định nghĩa 4.2.3: Tập hợp con M được gọi là họ trực giao, nếu x ⊥ y, ∀x, y ∈ M
và x , y
Theo cách xây dựng họ trực giao, ma trận R là ma trận phía trên.
Mặt khác ma trận chuyển cơ sở từ Q sang E là Q-1E = QTE = QT A
4
Trang 5Ở đâu:
5
Trang 91.5 Viết chương trình phân tích A = QR bằng phương pháp Schmidt.
Gram-9
Trang 1010
Trang 12PHẦN 2: PHÂN TÍCH QR BẰNG PHƯƠNG PHÁP
HOUSEHOLDER
12
Trang 132.1 Cơ sở lí thuyết
- Gram-Schmidt có thể không ổn định về mặt số học, có nghĩa là đầu vào hay
thay đổi nhỏ có thể dẫn đến sự thay đổi tương đối lớn trong đầu ra (nguồn) Cách ổn định hơn là sử dụng phép biến đổi Householder Householder chiếu véc tơ qua một “tấm gương”
2.3 Phép biến đổi householder
13
Trang 142.4 Phân tích A=QR bằng biến đổi Householder
14
Trang 152.5 Viết chương trình dùng để phân tích A=QR bằng phương pháp Householder
15
Trang 1717
Trang 18PHẦN 3: PHÂN TÍCH QR BẰNG PHƯƠNG PHÁP GIVEN
Nhập vào một ma trận A có các vectơ cột độc lập tuyến tính, viết chương trình dựavào phương pháp phép quay Given xuất ra hai ma trận Q và R thỏa A=Q*R với Q
là ma trận vuông có các vectơ cột độc lập tuyến tính và trực giao, R là ma trận tam giác trên
18
Trang 203.3 Thuật toán cơ bản:
BƯỚC 1:
-kiểm tra xem ma trận A có các vectơ cột độc lập tuyến tính với nhau hay không Nếu không sẽ xuất ra màn hình: “ma trận A có các vectơ cột không độc lập tuyến tính với nhau” Nếu có thì ta tiếp tục với bước tiếp theo
BƯỚC 2:
a11 a12 a13 a1n
a21 a22 a23 a2n Vòng lặp chạy theo hướng mũi
Amn = a31 a32 a33 a3n tên qua những phần tử màu
xanh
am1 am2 am3 amn
-Như hình trên ta chạy vòng lặp từ hàng h=2 đến hàng h=m từ cột k=1 đến cột
k=i-1 từ trên xuống dưới, từ trái qua phải Trường hợp tại vị trí số hàng lớn hơn số
cột hai đơn vị trở lên ta sẽ cho chạy từ cột k=1 đến k=n để tránh xét thiếu trường
hợp, có thể xem ma trận dưới đây để rõ hơn:
Trang 21ma trận vuông bậc m được tạo thành từ việc thay 4 phần tử cos(a), sin(a), -sin(a),
cos(a) vào 4 vị trí thích hợp của ma trận đơn vị ban đầu Theo như cơ sở lý thuyết
phía trên thì: tại phần tử có vị trí (h,k) của ma trận A, ta có:
i=k [ta khử v j dựa vào vi với v i là phần tử nằm trên đường
Trang 24VD3) Chạy chương trình với ma trận: