Faktoryzacja QR macierzy metodą Grama-Schmidta

0

Witam.

Muszę zaimplementować w C++ algorytm - taki jak w temacie.
Niestety zawsze z matematyki byłem kiepski, więc nie bardzo
wiem jak się do tego zabrać

Posiadam taki oto pseudo-kod:
DSCN7410 - Kopia.JPG

a, q oraz r to macierze (tablice dwuwymiarowe typu double)
ak oznacza k-tą kolumnę macierzy wejściowej "a"

Czy ktoś mógłby mi podpowiedzieć jak go zinterpretować i zaimplementować ?
Ewentualnie wskazać inny sposób implementacji metody Grama-Schmidta ?

Pozdrawiam serdecznie.

0

Tam jest dokladnie napisane co masz zrobic. Kod w matlabie:

a = magic(10);
n = size(a, 2);
q = zeros(n);
r = zeros(n);
disp(a);
for k=1:n
    r(k, k) = norm(a(:, k));
    q(:, k) = a(:, k)./r(k, k);
    for j=k+1:n
        r(k, j) = q(:, k)'*a(:, j);
        a(:, j) = a(:, j) - r(k, j)*q(:, k);
    end
end

disp(q)
disp(r)
disp(q*r)

Wystarczy to przepisac na C.

1 użytkowników online, w tym zalogowanych: 0, gości: 1