Témata navíc
Section outline
-
Téma hodiny: Aproximace singulárního rozkladu
- výpočet vlastních vektorů
- QR algoritmus ve variantě pro SVD
- bidiagonální preprocesing
Cvičení MATLAB:
- Stáhněte si funkci EIGSVDGUI, která vizualizuje výpočet vlastních (a singulárních) čísel implicitním QR algoritmem https://www.mathworks.com/matlabcentral/mlc-downloads/downloads/submissions/37976/versions/7/previews/eigsvdgui.m/index.html
- Spusťte funkci příkazem run eigsvdgui a procházejte přednastavené experimenty (symetrická/obecná čtvercová/obdélníková matice).
- Sledujte preprocesing na tridiagonální/Hessenbergův/bidiagonální tvar a konvergenci nežádoucích prvků matice k nule.
- Zkonstruujte testovací matici A = [ 0 2 0 -1; 1 0 0 0; 0 1 0 0; 0 0 1 0]. Ukažte matematicky, že má dvě dvojnásobná reálná vlastní čísla. Odvoďte její Jordanův tvar.
- Spusťte eigsvdgui(A) -> metoda vrací komplexní čísla -> důvod: matice má citlivá vlastní čísla, nelze je spolehlivě aproximovat.
- Použijte eigtool (z předchozích cvičení) k studiu citlivosti přes pseudospektrum, podmíněnost A, podmíněnost vl. čísel a vektorů atd.
- Zopakujte experiment s maticí gallery('frank', 32), randn(40), wilkinson(40).