Test stabilitate EG si QR

exemplu de matrice bine conditionata pentru care EG este instabila

Contents

Generare A si b

A are o forma speciala

n=100;
A=[-tril(ones(n,n-1),-1)+eye(n,n-1),ones(n,1)];
b=A*ones(n,1);

Rezolvare cu LUP

utilizeaza \

x=A\b;
reshape(x,10,10)
norm(b-A*x)/norm(b)
cond(A)
ans =

     1     1     1     1     1     1     0     0     0     0
     1     1     1     1     1     1     0     0     0     0
     1     1     1     1     1     1     0     0     0     0
     1     1     1     1     1     0     0     0     0     0
     1     1     1     1     1     0     0     0     0     0
     1     1     1     1     1     0     0     0     0     0
     1     1     1     1     1     0     0     0     0     0
     1     1     1     1     1     0     0     0     0     0
     1     1     1     1     1     0     0     0     0     0
     1     1     1     1     1     0     0     0     0     1


ans =

    0.3191


ans =

   44.8023

Rezolvare cu QR

utilizeaza qr si \

[Q,R]=qr(A);
x2=R\(Q'*b);
reshape(x2,10,10)
ans =

  Columns 1 through 7

    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000    1.0000

  Columns 8 through 10

    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000
    1.0000    1.0000    1.0000