C++ Bc. 2: Porovnání verzí
Bez shrnutí editace |
Bez shrnutí editace |
||
Řádek 1: | Řádek 1: | ||
'''Mocninná metoda''' | '''Mocninná metoda''' | ||
Napište funkci, která pro zadanou čtvercovou diagonalizovatelnou matici <math>\mathbf{A}</math> vypočítá odhad jejího dominantního vlastního čísla <math>\lambda_\max</math>. | Napište funkci, která pro zadanou čtvercovou diagonalizovatelnou matici <math>\mathbf{A} \in R^{n\times n} </math> vypočítá odhad jejího dominantního vlastního čísla <math>\lambda_\max</math>. | ||
'''Algoritmus:''' | '''Algoritmus:''' | ||
# zvolíme libovolný nenulový vektor <math>v_0 | # zvolíme libovolný nenulový, vektor <math>v_0 \in R^n</math> | ||
# vypočteme vektor <math>w_i = \mathbf{A}v_{i-1}</math> vypočteme vektor | # vypočteme vektor <math>w_i = \mathbf{A}v_{i-1}</math> vypočteme vektor | ||
# vypočteme euklidovskou normu <math>\lambda_i = ||w_i||</math> | # vypočteme euklidovskou normu <math>\lambda_i = ||w_i||</math> | ||
Řádek 14: | Řádek 14: | ||
Pro matici | Pro matici | ||
-261 209 -49 | |||
-530 422 -98 | |||
-800 631 -144 | |||
je <math>\lambda_\max = 10</math> | |||
je <math>\lambda_\max = |
Verze z 25. 2. 2006, 10:54
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