Matlab中的QR分解编程

时间:2018-05-13 10:28:23

标签: matlab least-squares

我试图构建一个程序来计算QR方法的误差,并将数据点与实际解决方案进行比较。我已经坚持基本的初稿,因为矩阵尺寸不同意,我不知道如何解决这个问题我仍然可以使用它,因为我在下面使用它。任何有关如何为此问题构建程序的一般提示的帮助将不胜感激!

代码:

for i=1:21
x(i) = (i-1)/20;
y(i) = x(i)^8;
end

A = makeVandermondeMatrix(x,8)
[Q,R] = qr(A,0);
c = Q' .*y .* inv(R);

makeVandermondeMatrix是:

function A = makeVandermondeMatrix(x, r)
n = size(x,2);
A = ones(n,r);

for i=1:r+1
    A(:,i) = x.^(r-i+1);
end

1 个答案:

答案 0 :(得分:0)

Matlab中已经有一个函数可以生成https://graphs2.coinmarketcap.com/currencies/bitcoin/。如下所示。

UpdateCommand="UPDATE [Customers] SET [CustomerName] = @CustomerName, [Details] = @Details WHERE [CustomerID] = 4">

A = 5×5

v = 1:.5:3
A = vander(v)

16.0000 8.0000 4.0000 2.0000 1.0000    39.0625 15.6250 6.2500 2.5000 1.0000    81.0000 27.0000 9.0000 3.0000 1.0000

通过QR方法解决它。您需要执行以下代码Vandermonde matrix

1.0000    1.0000    1.0000    1.0000    1.0000
5.0625    3.3750    2.2500    1.5000    1.0000