Định dạng số
Bình luận giải pháp
Không có mô tả (chỉ hiển thị kết quả)
a
b
c
d
x
y
z
clear
i
Randomize
3131313131351515151515≈83137
Cách tính phân tích QR bằng phép quay Givens
Áp dụng chuỗi phép quay phẳng 2×2 để xóa các phần tử dưới đường chéo lần lượt. Mỗi phép quay Givens được xác định bởi hai phần tử nó tác động. Tích tích lũy của phép quay là Q, ma trận quay là R.
Ví dụ phép quay Givens — (3×3)
Viết ma trận ban đầu
A
:
A
=
1
1
0
1
0
1
0
1
1
Phân rã
QR
là một biểu diễn của ma trận
A
dưới dạng:
A
=
Q
*
R
;
Ma trận
Q
là một ma trận trực góc;
Ma trận
R
là một ma trận tam giác trên;
Chúng ta có thể sử dụng phép quay Givens để làm cho tất cả các phần tử dưới đường chéo chính của ma trận
A
bằng 0;
Phương pháp này là lặp và trong một lần lặp, chúng ta sẽ chuyển đổi một phần tử thành 0;
Ở lần lặp cuối cùng, khi tất cả các phần tử dưới đường chéo chính được chuyển thành 0, chúng ta sẽ có được ma trận
R
;
Trong quá trình tính toán ma trận
R
tại mỗi lần lặp, chúng ta sẽ tính toán ma trận
G
để chuyển các phần tử dưới đường chéo chính thành 0;
Chúng ta có thể tính toán ma trận
Q
bằng cách nhân tất cả các ma trận chuyển vị
G
;
Chúng ta sẽ đặt các phần tử thành 0 theo thứ tự từ trên xuống dưới từ trái sang phải;
Tại mỗi lần lặp, chúng ta cần xác định các biến sau:
a
là phần tử của ma trận Aₖ₋₁, nằm trên đường chéo chính trong cùng cột với phần tử mà chúng ta muốn chuyển thành 0a
=
a
0
k - 1
0
i,i
;
b
là phần tử của ma trận Aₖ₋₁ mà chúng ta muốn chuyển thành 0b
=
a
0
k - 1
0
j,i
;
// trong đó
j
là số thứ tự của dòng dòng trong đó có phần tử mà chúng ta muốn chuyển thành 0i
là số thứ tự của dòng cột trong đó có phần tử mà chúng ta muốn chuyển thành 0k
là số lần lặpAₖ₋₁
là ma trận được tính toán ở lần lặp trướcTiếp theo, chúng ta cần tính toán các giá trị sau:
r
=
a
2
0
+
b
2
0
;
c
=
a
r
;
s
= -
b
r
;
Bây giờ chúng ta có thể xây dựng ma trận
G
:
1)
Ma trận G có cơ sở là ma trận đơn vị kích thước n x n// trong đó
n
Là số lượng hàng của ma trận A2)
Phần tử dưới chỉ số [i,i] bằng cg
0
i,i
=
c
;
3)
Phần tử dưới chỉ số [j,j] bằng cg
0
j,j
=
c
;
4)
Phần tử dưới chỉ số [j,i] bằng sg
0
j,i
=
s
;
5)
Phần tử dưới chỉ số [i,j] bằng -sg
0
i,j
=
-s
;
Sau khi xây dựng ma trận
G
, chúng ta có thể nhân nó với ma trận
A
0
k - 1
từ bên trái, và chúng ta sẽ có được ma trận
A
0
k
;
Trong bước này, chúng ta sẽ đặt phần tử dưới chỉ số
j,i
thành 0;
Chúng ta cũng sẽ nhân ma trận
Q
0
k - 1
với ma trận
G
T
0
và có được ma trận
Q
0
k
;
2
Lặp lại lần 1Ở lần lặp đầu tiên, ma trận
A
0
0
bằng với ma trận ban đầu
A
:
A
0
0
=
1
1
0
1
0
1
0
1
1
Viết ma trận ban đầu
Q
0
0
, bằng với ma trận đơn vị:
Q
0
0
=
1
0
0
0
1
0
0
0
1
i
=
1
;
j
=
2
;
a
=
a
0
k - 1
0
i,i
=
a
0
0
0
1,1
=
1
;
b
=
a
0
k - 1
0
j,i
=
a
0
0
0
2,1
=
1
;
r
=
a
2
0
+
b
2
0
=
1
2
0
+
1
2
0
=
1
41
100
;
c
=
a
r
=
1
1
41
100
=
71
100
;
s
= -
b
r
= -
1
1
41
100
=
-
71
100
;
G
=
c
s
0
-s
c
0
0
0
1
=
71
100
-
71
100
0
71
100
71
100
0
0
0
1
;
Ma trận
A
0
1
A
0
1
=
G
0
·
A
0
0
=
71
100
-
71
100
0
71
100
71
100
0
0
0
1
·
1
1
0
1
0
1
0
1
1
=
1
41
100
0
0
71
100
-
71
100
1
71
100
71
100
1
Ma trận
G
T
0
G
T
0
=
71
100
71
100
0
-
71
100
71
100
0
0
0
1
Ma trận
Q
0
1
Q
0
1
=
Q
0
0
·
G
T
0
=
1
0
0
0
1
0
0
0
1
·
71
100
71
100
0
-
71
100
71
100
0
0
0
1
=
71
100
71
100
0
-
71
100
71
100
0
0
0
1
3
Lặp lại lần 2i
=
2
;
j
=
3
;
a
=
a
0
k - 1
0
i,i
=
a
0
1
0
2,2
=
-
71
100
;
b
=
a
0
k - 1
0
j,i
=
a
0
1
0
3,2
=
1
;
r
=
a
2
0
+
b
2
0
=
-
71
100
2
0
+
1
2
0
=
1
11
50
;
c
=
a
r
=
-
71
100
1
11
50
=
-
29
50
;
s
= -
b
r
= -
1
1
11
50
=
-
41
50
;
G
=
1
0
0
0
c
s
0
-s
c
=
1
0
0
0
-
29
50
-
41
50
0
41
50
-
29
50
;
Ma trận
A
0
2
A
0
2
=
G
0
·
A
0
1
=
1
0
0
0
-
29
50
-
41
50
0
41
50
-
29
50
·
1
41
100
0
0
71
100
-
71
100
1
71
100
71
100
1
=
1
41
100
0
0
71
100
1
11
50
0
71
100
41
100
-1
3
20
Ma trận
G
T
0
G
T
0
=
1
0
0
0
-
29
50
41
50
0
-
41
50
-
29
50
Ma trận
Q
0
2
Q
0
2
=
Q
0
1
·
G
T
0
=
71
100
71
100
0
-
71
100
71
100
0
0
0
1
·
1
0
0
0
-
29
50
41
50
0
-
41
50
-
29
50
=
71
100
71
100
0
41
100
-
41
100
41
50
29
50
-
29
50
-
29
50
4
Ma trận Q, RQ
=
Q
0
2
=
71
100
71
100
0
41
100
-
41
100
41
50
29
50
-
29
50
-
29
50
R
=
A
0
2
=
1
41
100
0
0
71
100
1
11
50
0
71
100
41
100
-1
3
20
Answer
A = Q · RQ
=
71
100
71
100
0
41
100
-
41
100
41
50
29
50
-
29
50
-
29
50
R
=
1
41
100
0
0
71
100
1
11
50
0
71
100
41
100
-1
3
20
Kích thước3×3Phương phápXoay Givens