C++ Bc. 2

Z GeoWikiCZ
(přesměrováno z C plus plus Bc. 2)
Skočit na navigaci Skočit na vyhledávání
Mocninná metoda

Napište funkci, která pro zadanou čtvercovou diagonalizovatelnou matici vypočítá odhad jejího dominantního vlastního čísla .

double dominantni_vlastni_cislo_matice(const GNU_gama::Mat<>& A, double rel_chyba = 1e-5);

Algoritmus:

  1. zvolíme libovolný jednotkový vektor   (můžeme zvolit libovolný nenulový vektor)
  2. vypočteme vektor
  3. kde označuje euklidovskou normu vektoru .
  4. vypočteme vektor (tj. je normovaný vektor )
  5. posloupnost konverguje k hodnotě Opakujeme krok 2, dokud není dosažena požadovaná relativní přesnost odhadu (např. na 4 dekadické cifry).


Příklad:

Pro matici je

Pro matici je

[ Zpět | C++ | Další ]