qrxq.m
来自「Matlab语言常用算法程序集.rar 里面有很多有用的Matlab数值运」· M 代码 · 共 18 行
M
18 行
function [x,Q,R]=qrxq(A,b)
N = size(A);
n = N(1);
B = A; %保存系数矩阵
A(1:n,1)=A(1:n,1)/norm(A(1:n,1)); %将A的第一列正规化
for i=2:n
for j=1:(i-1)
A(1:n,i)= A(1:n,i)-dot(A(1:n,i),A(1:n,j))*A(1:n,j);
%使A的第i列与前面所有的列正交
end
A(1:n,i)=A(1:n,i)/norm(A(1:n,i));
%将A的第i列正规化
end
Q = A; %分解出来的正交矩阵
R = transpose(Q)*B;
x=SolveUpTriangle(R,transpose(Q)*b); %求解方程
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?