C++ Bc. 2: Porovnání verzí
Bez shrnutí editace |
Bez shrnutí editace |
||
Řádek 6: | Řádek 6: | ||
# zvolíme libovolný nenulový, vektor <math>q_0 \in R^n</math> | # zvolíme libovolný nenulový, vektor <math>q_0 \in R^n</math> | ||
# vypočteme vektor <math> | # vypočteme vektor <math>z_i = \mathbf{A}q_{i-1}</math> vypočteme vektor | ||
# vypočteme euklidovskou normu <math>\lambda_i = || | # vypočteme euklidovskou normu <math>\lambda_i = ||z_i||</math> | ||
# vypočteme vektor <math>q_i = | # vypočteme vektor <math>q_i = z_i /\lambda_i, </math> tj. normujeme wektor <math>z_i</math> na velikost 1 | ||
# posloupnost <math>\lambda_1, \lambda_2, \lambda_3, ... </math> konverguje k hodnotě <math>\lambda_\max.</math> Opakujeme krok 2, dokud neni dosažena požadovaná relativní přesnost odhadu (např. na 4 dekadické cifry). | # posloupnost <math>\lambda_1, \lambda_2, \lambda_3, ... </math> konverguje k hodnotě <math>\lambda_\max.</math> Opakujeme krok 2, dokud neni dosažena požadovaná relativní přesnost odhadu (např. na 4 dekadické cifry). | ||
Verze z 25. 2. 2006, 10:57
Mocninná metoda
Napište funkci, která pro zadanou čtvercovou diagonalizovatelnou matici vypočítá odhad jejího dominantního vlastního čísla .
Algoritmus:
- zvolíme libovolný nenulový, vektor
- vypočteme vektor vypočteme vektor
- vypočteme euklidovskou normu
- vypočteme vektor tj. normujeme wektor na velikost 1
- posloupnost konverguje k hodnotě Opakujeme krok 2, dokud neni dosažena požadovaná relativní přesnost odhadu (např. na 4 dekadické cifry).
Příklad: Pro matici
-261 209 -49 -530 422 -98 -800 631 -144
je