- 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:
- zvolíme libovolný jednotkový vektor
(můžeme zvolit libovolný nenulový vektor)
- vypočteme vektor
![{\displaystyle z_{i}=\mathbf {A} q_{i-1}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/702eba841d225659f32f53449487986128afc2ee)
kde
označuje euklidovskou normu vektoru
.
- vypočteme vektor
(tj.
je normovaný vektor
)
- 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ší ]