Mátrixhatvány-vektor szorzatok hatékony számítása

Hasonló dokumentumok
I. Fejezetek a klasszikus analízisből 3

Tartalomjegyzék. Typotex Kiadó, 2010

Bevezetés az algebrába 2 Differencia- és differenciálegyenlet-rendszerek

Baran Ágnes, Burai Pál, Noszály Csaba. Gyakorlat Differenciálegyenletek numerikus megoldása

Alap-ötlet: Karl Friedrich Gauss ( ) valószínűségszámítási háttér: Andrej Markov ( )

Sajátértékek és sajátvektorok. mf1n1a06- mf1n2a06 Csabai István

Keresztmetszet másodrendű nyomatékainak meghatározása

Numerikus módszerek 1.

Explicit hibabecslés Maxwell-egyenletek numerikus megoldásához

A KroneckerCapelli-tételb l következik, hogy egy Bx = 0 homogén lineáris egyenletrendszernek

Vektorok, mátrixok, lineáris egyenletrendszerek

VIK A2 Matematika - BOSCH, Hatvan, 3. Gyakorlati anyag. Mátrix rangja

NUMERIKUS MÓDSZEREK FARAGÓ ISTVÁN HORVÁTH RÓBERT. Ismertet Tartalomjegyzék Pályázati támogatás Gondozó

Mátrixok 2017 Mátrixok

Numerikus matematika vizsga

Testek. 16. Legyen z = 3 + 4i, w = 3 + i. Végezzük el az alábbi. a) (2 4), Z 5, b) (1, 0, 0, 1, 1) (1, 1, 1, 1, 0), Z 5 2.

Differenciálegyenletek gyakorlat december 5.

Saj at ert ek-probl em ak febru ar 26.

Differenciálegyenletek numerikus megoldása

CSATOLT REZGÉSEK Kedves barátom, Skrapits Lajos tanár úr emlékére

Strukturált Generátorrendszerek Online Tanulása és Alk-ai

Problémás regressziók

Vektorterek. =a gyakorlatokon megoldásra ajánlott

7. gyakorlat megoldásai

Peremérték-feladatok numerikus megoldása Galjorkin-módszerekkel

Lineáris leképezések. 2. Lineáris-e az f : R 2 R 2 f(x, y) = (x + y, x 2 )

Számítási módszerek a fizikában 1. (BMETE90AF35) tárgy részletes tematikája

Feladatok a Gazdasági matematika II. tárgy gyakorlataihoz

Bevezetés az algebrába 2

Példa: Háromszög síkidom másodrendű nyomatékainak számítása

Matematika (mesterképzés)

Simított részecskedinamika Smoothed Particle Hydrodynamics (SPH)

9. Előadás. (9. előadás) Lineáris egyr.(3.), Sajátérték április / 35

Lineáris algebra Gyakorló feladatok

Parciális differenciálegyenletek numerikus módszerei számítógépes alkalmazásokkal Karátson, János Horváth, Róbert Izsák, Ferenc

Példa keresztmetszet másodrendű nyomatékainak számítására

Numerikus módszerek. 9. előadás

Gyakorló feladatok. Agbeko Kwami Nutefe és Nagy Noémi

Nem teljesen kitöltött páros összehasonlítás mátrixok sajátérték optimalizálása Newton-módszerrel p. 1/29. Ábele-Nagy Kristóf BCE, ELTE

1. feladatsor Komplex számok

1.1. Vektorok és operátorok mátrix formában

Bevezetés az algebrába 2 Vektor- és mátrixnorma

Shor kvantum-algoritmusa diszkrét logaritmusra

A TANTÁRGY ADATLAPJA

Fourier transzformáció

Numerikus módszerek I. zárthelyi dolgozat (2017/18. I., A. csoport) Megoldások

Diszkrét idej rendszerek analízise az id tartományban

Általánosan, bármilyen mérés annyit jelent, mint meghatározni, hányszor van meg

A Richardson-extrapoláció és alkalmazása a Dániai Euleri Modellben

Numerikus módszerek 1.

Robotok inverz geometriája


Differenciálegyenletek numerikus integrálása április 9.

Gyakorló feladatok I.

LNM folytonos Az interpoláció Lagrange interpoláció. Lineáris algebra numerikus módszerei

11. Előadás. 11. előadás Bevezetés a lineáris programozásba

6. gyakorlat. Gelle Kitti. Csendes Tibor Somogyi Viktor. London András. jegyzetei alapján

Végeselem modellezés alapjai 1. óra

10. Előadás. 1. Feltétel nélküli optimalizálás: Az eljárás alapjai

Norma Determináns, inverz Kondíciószám Direkt és inverz hibák Lin. egyenletrendszerek A Gauss-módszer. Lineáris algebra numerikus módszerei

Numerikus módszerek 1.

Példa: Tartó lehajlásfüggvényének meghatározása végeselemes módszer segítségével

Lineáris algebra numerikus módszerei

Bevezetés az algebrába 2

Mátrix-exponens, Laplace transzformáció

YBL - SGYMMAT2012XA Matematika II.

Parciális differenciálegyenletek numerikus módszerei február 5.

Saj at ert ek-probl em ak febru ar 22.

Konjugált gradiens módszer

Kvadratikus alakok és euklideszi terek (előadásvázlat, október 5.) Maróti Miklós, Kátai-Urbán Kamilla

Gauss-Seidel iteráció

Hajlított tartó elmozdulásmez jének meghatározása Ritz-módszerrel

Nagy Gábor compalg.inf.elte.hu/ nagy

Szinguláris értékek. Wettl Ferenc április 3. Wettl Ferenc Szinguláris értékek április 3. 1 / 28

3. előadás Stabilitás

9. Előadás. Megyesi László: Lineáris algebra, oldal. 9. előadás Mátrix inverze, mátrixegyenlet

Az impulzusnyomatékok általános elmélete

1 Lebegőpontos számábrázolás

Egyesített funkcionális renormálási csoport egyenlet

LINEÁRIS ALGEBRA. matematika alapszak. Euklideszi terek. SZTE Bolyai Intézet, őszi félév. Euklideszi terek LINEÁRIS ALGEBRA 1 / 40

x 2 e x dx c) (3x 2 2x)e 2x dx x sin x dx f) x cosxdx (1 x 2 )(sin 2x 2 cos 3x) dx e 2x cos x dx k) e x sin x cosxdx x ln x dx n) (2x + 1) ln 2 x dx

A Poisson-egyenletre alkalmazott multigrid mo dszer

Normák, kondíciószám

Mátrixok, mátrixműveletek

Végeselem analízis. 1. el adás

Gráfelmélet/Diszkrét Matematika MSc hallgatók számára. 13. Előadás

I. feladatsor. 9x x x 2 6x x 9x. 12x 9x2 3. 9x 2 + x. x(x + 3) 50 (d) f(x) = 8x + 4 x(x 2 25)

Tartalomjegyzék. Typotex Kiadó III. Tartalomjegyzék

ACM Snake. Orvosi képdiagnosztika 11. előadás első fele

Szinguláris értékek. Wettl Ferenc április 12. Wettl Ferenc Szinguláris értékek április / 35

1. Transzformációk mátrixa

Szinguláris érték felbontás Singular Value Decomposition

Első zárthelyi dolgozat megoldásai biomatematikából * A verzió

GROVER-algoritmus. Sinkovicz Péter. ELTE, MSc II dec.15.

1.1. Feladatok. x 0 pontban! b) f(x) = 2x + 5, x 0 = 2. d) f(x) = 1 3x+4 = 1. e) f(x) = x 1. f) x 2 4x + 4 sin(x 2), x 0 = 2. általános pontban!

Numerikus módszerek 2.

Geometria II gyakorlatok

Diplomamunkám felépítése

A DIFFÚZIÓ MATEMATIKAI MODELLJEI

Átírás:

Mátrixhatvány-vektor szorzatok hatékony számítása Izsák Ferenc ELTE TTK, Alkalmazott Analízis és Számításmatematikai Tanszék & ELTE-MTA NumNet Kutatócsoport munkatárs: Szekeres Béla János Alkalmazott Analízis és Számításmatematikai Tanszék Szemináriuma Budapest, 2018. március 5.

A törtrendű diffúzió egyenlete A vizsgált feladat { t u(t, x) = ( D ) α u(t, x) x Ω, t (0, T ) u(0, x) = u 0 x Ω, (1) ahol

A törtrendű diffúzió egyenlete A vizsgált feladat { t u(t, x) = ( D ) α u(t, x) x Ω, t (0, T ) u(0, x) = u 0 x Ω, (1) ahol Ω R d, u 0 L 2 (Ω), α > 0 adottak,

A törtrendű diffúzió egyenlete A vizsgált feladat { t u(t, x) = ( D ) α u(t, x) x Ω, t (0, T ) u(0, x) = u 0 x Ω, (1) ahol Ω R d, u 0 L 2 (Ω), α > 0 adottak, D az Ω-n értelmezett Dirichlet-Laplace operátor.

A törtrendű diffúzió egyenlete A vizsgált feladat { t u(t, x) = ( D ) α u(t, x) x Ω, t (0, T ) u(0, x) = u 0 x Ω, (1) ahol Ω R d, u 0 L 2 (Ω), α > 0 adottak, D az Ω-n értelmezett Dirichlet-Laplace operátor. ( D ) α értelmes.

A törtrendű diffúzió egyenlete A vizsgált feladat { t u(t, x) = ( D ) α u(t, x) x Ω, t (0, T ) u(0, x) = u 0 x Ω, (1) ahol Ω R d, u 0 L 2 (Ω), α > 0 adottak, D az Ω-n értelmezett Dirichlet-Laplace operátor. ( D ) α értelmes. Ez egy lehetséges "jó" modell (SZB, IF; AML 17).

Numerikus megoldás: egy ötlet Mártixtranszformációs módszer (MTM):

Numerikus megoldás: egy ötlet Mártixtranszformációs módszer (MTM): Ha D A, akkor ( D ) α A α.

Numerikus megoldás: egy ötlet Mártixtranszformációs módszer (MTM): Ha D A, akkor ( D ) α A α. Ez jónak látszik (VD és VE disztkretizációra is). [Ilić,.. 05, 06]

Numerikus megoldás: egy ötlet Mártixtranszformációs módszer (MTM): Ha D A, akkor ( D ) α A α. Ez jónak látszik (VD és VE disztkretizációra is). [Ilić,.. 05, 06] VD eset: Ez valóban h szerint másodrendű konzisztenciát biztosít, időben implicit Euler módszerrel pedig O(δ) + O(h 2 ) konvergenciát L 2 -normában minden α R + és max-normában minden α 1 esetén (Sz.B., I.F., CAMWA 16).

Numerikus megoldás: egy ötlet Mártixtranszformációs módszer (MTM): Ha D A, akkor ( D ) α A α. Ez jónak látszik (VD és VE disztkretizációra is). [Ilić,.. 05, 06] VD eset: Ez valóban h szerint másodrendű konzisztenciát biztosít, időben implicit Euler módszerrel pedig O(δ) + O(h 2 ) konvergenciát L 2 -normában minden α R + és max-normában minden α 1 esetén (Sz.B., I.F., CAMWA 16). VE eset: Az f = ( D ) α elliptikus peremérték feladatra L 2 -normában optimális rendben (szuper) konvergál (Sz.B., I.F., JCAM 16).

Numerikus megoldás formulákkal - példa Az eredeti (1) feladatra térben MTM, időben explicit Euler:

Numerikus megoldás formulákkal - példa Az eredeti (1) feladatra térben MTM, időben explicit Euler: un+1 u n δ A α u n u n+1 = u n δa α u n, ahol

Numerikus megoldás formulákkal - példa Az eredeti (1) feladatra térben MTM, időben explicit Euler: un+1 u n δ A α u n u n+1 = u n δa α u n, ahol δ - időlépés, u n - numerikus közelítés nδ-ban.

Numerikus megoldás formulákkal - példa Az eredeti (1) feladatra térben MTM, időben explicit Euler: un+1 u n δ A α u n u n+1 = u n δa α u n, ahol δ - időlépés, u n - numerikus közelítés nδ-ban. Bírálat: nagyon lassú A α nehezen kiszámítható.

Numerikus megoldás formulákkal - példa Az eredeti (1) feladatra térben MTM, időben explicit Euler: un+1 u n δ A α u n u n+1 = u n δa α u n, ahol δ - időlépés, u n - numerikus közelítés nδ-ban. Bírálat: nagyon lassú A α nehezen kiszámítható. Igen: A ritka, A α telt mátrix.

Numerikus megoldás formulákkal - példa Az eredeti (1) feladatra térben MTM, időben explicit Euler: un+1 u n δ A α u n u n+1 = u n δa α u n, ahol δ - időlépés, u n - numerikus közelítés nδ-ban. Bírálat: nagyon lassú A α nehezen kiszámítható. Igen: A ritka, A α telt mátrix. Ötlet: de a fentihez A α nem is kell, számoljunk A α w szorzatokat közvetlenül.

Első próbálkozások Írjuk fel A α értékét Taylor sorral:

Első próbálkozások Írjuk fel A α értékét Taylor sorral: ( ) σ(a) α ( ) 2A α ( ) σ(a) α ( ) ( ) α 2A j A α = = 2 σ(a) 2 j σ(a) I. j=0

Első próbálkozások Írjuk fel A α értékét Taylor sorral: ( ) σ(a) α ( ) 2A α ( ) σ(a) α ( ) ( ) α 2A j A α = = 2 σ(a) 2 j σ(a) I. j=0 Közelítsünk, írjuk be tagonként w-t: ( ) σ(a) α K ( ) ( ) α 2A j A α w 2 j σ(a) I w. j=0

Első próbálkozások Írjuk fel A α értékét Taylor sorral: ( ) σ(a) α ( ) 2A α ( ) σ(a) α ( ) ( ) α 2A j A α = = 2 σ(a) 2 j σ(a) I. j=0 Közelítsünk, írjuk be tagonként w-t: ( ) σ(a) α K ( ) ( ) α 2A j A α w 2 j σ(a) I w. j=0

Első próbálkozások Írjuk fel A α értékét Taylor sorral: ( ) σ(a) α ( ) 2A α ( ) σ(a) α ( ) ( ) α 2A j A α = = 2 σ(a) 2 j σ(a) I. j=0 Közelítsünk, írjuk be tagonként w-t: ( ) σ(a) α K ( ) ( ) α 2A j A α w 2 j σ(a) I w. j=0 Az egyes tagok gyorsan számíthatók: ( ) ( ) α 2A j+1 j + 1 σ(a) I w = α j j + 1 ( 2A σ(a) I )( ) ( ) α 2A j j σ(a) I

Első próbálkozások Írjuk fel A α értékét Taylor sorral: ( ) σ(a) α ( ) 2A α ( ) σ(a) α ( ) ( ) α 2A j A α = = 2 σ(a) 2 j σ(a) I. j=0 Közelítsünk, írjuk be tagonként w-t: ( ) σ(a) α K ( ) ( ) α 2A j A α w 2 j σ(a) I w. j=0 Az egyes tagok gyorsan számíthatók: ( ) ( ) α 2A j+1 j + 1 σ(a) I w = α j j + 1 ( 2A σ(a) I azaz új tag az összegben: egy ritka mátrix-vektor szorzás. )( ) ( ) α 2A j j σ(a) I

Első próbálkozások Írjuk fel A α értékét Taylor sorral: ( ) σ(a) α ( ) 2A α ( ) σ(a) α ( ) ( ) α 2A j A α = = 2 σ(a) 2 j σ(a) I. j=0 Közelítsünk, írjuk be tagonként w-t: ( ) σ(a) α K ( ) ( ) α 2A j A α w 2 j σ(a) I w. j=0 Az egyes tagok gyorsan számíthatók: ( ) ( ) α 2A j+1 j + 1 σ(a) I w = α j j + 1 ( 2A σ(a) I azaz új tag az összegben: egy ritka mátrix-vektor szorzás. )( ) ( ) α 2A j j σ(a) I Izsák Ferenc ELTE De sok TTK, tag kell. Alkalmazott Analízis Mátrixhatvány-vektor és Számításmatematikai szorzatok hatékony számítása Tanszék &

A hiba, javítandó részletek A hiba mérése minden esetben err = Aw A 0.7 A 0.3 w max.

A hiba, javítandó részletek A hiba mérése minden esetben err = Aw A 0.7 A 0.3 w max. A: másodrendű közelítése

A hiba, javítandó részletek A hiba mérése minden esetben err = Aw A 0.7 A 0.3 w max. A: másodrendű közelítése (0, π) 2 100 100-as felosztásán

A hiba, javítandó részletek A hiba mérése minden esetben err = Aw A 0.7 A 0.3 w max. A: másodrendű közelítése (0, π) 2 100 100-as felosztásán homogén Dirichlet- (D) és Neumann-peremfeltétellel (N )

A hiba, javítandó részletek A hiba mérése minden esetben err = Aw A 0.7 A 0.3 w max. A: másodrendű közelítése (0, π) 2 100 100-as felosztásán homogén Dirichlet- (D) és Neumann-peremfeltétellel (N ) K 10 100 1000 10000 100000 err, N 648 56 5, 28 0, 51 0, 0515 err, D 630 54 4, 57 0, 46 7 10 9 idő[s] 0, 005 0, 0167 0, 1255 0, 99 9, 87

A hiba, javítandó részletek A hiba mérése minden esetben err = Aw A 0.7 A 0.3 w max. A: másodrendű közelítése (0, π) 2 100 100-as felosztásán homogén Dirichlet- (D) és Neumann-peremfeltétellel (N ) K 10 100 1000 10000 100000 err, N 648 56 5, 28 0, 51 0, 0515 err, D 630 54 4, 57 0, 46 7 10 9 idő[s] 0, 005 0, 0167 0, 1255 0, 99 9, 87 Nagy és kicsi sajátértékek okozzák: sp A [ 1, 1]

A hiba, javítandó részletek A hiba mérése minden esetben err = Aw A 0.7 A 0.3 w max. A: másodrendű közelítése (0, π) 2 100 100-as felosztásán homogén Dirichlet- (D) és Neumann-peremfeltétellel (N ) K 10 100 1000 10000 100000 err, N 648 56 5, 28 0, 51 0, 0515 err, D 630 54 4, 57 0, 46 7 10 9 idő[s] 0, 005 0, 0167 0, 1255 0, 99 9, 87 Nagy és kicsi sajátértékek okozzák: sp A [ 1, 1] Neumann-peremfeltétel:

Ötlet javításra Válasszuk le a nagy és kicsi sajátértékeket, -vektorokat:

Ötlet javításra Válasszuk le a nagy és kicsi sajátértékeket, -vektorokat: Az általuk kifeszített altérben közvetlen hatványozás.

Ötlet javításra Válasszuk le a nagy és kicsi sajátértékeket, -vektorokat: Az általuk kifeszített altérben közvetlen hatványozás. A kiegészítő altérben a Taylor-közelítés hatékonyabb lesz.

Ötlet javításra Válasszuk le a nagy és kicsi sajátértékeket, -vektorokat: Az általuk kifeszített altérben közvetlen hatványozás. A kiegészítő altérben a Taylor-közelítés hatékonyabb lesz. Formálisan a Q k : R N span { } v 1,..., v j, v N k j+1,..., v N vetítéssel: ( ) σ(a) α (( ) 2A α ( ) 2A α A α w = Q k w + (w Q k w)). 2 σ(a) σ(a)

Az algoritmus A-hoz a legkisebb j db és legnagyobb k j db sajátérték, sajátvektor kiszámítása.

Az algoritmus A-hoz a legkisebb j db és legnagyobb k j db sajátérték, sajátvektor kiszámítása. Q k meghatározása (egy mátrix-összeállítás).

Az algoritmus A-hoz a legkisebb j db és legnagyobb k j db sajátérték, sajátvektor kiszámítása. Q k meghatározása (egy mátrix-összeállítás). A α Q k w meghatározása: Q k w = a 1 v 1 +... a N v N A α Q k w = a 1 λ α 1 v 1 + + a N λ α N v N.

Az algoritmus A-hoz a legkisebb j db és legnagyobb k j db sajátérték, sajátvektor kiszámítása. Q k meghatározása (egy mátrix-összeállítás). A α Q k w meghatározása: Q k w = a 1 v 1 +... a N v N A α Q k w = a 1 λ α 1 v 1 + + a N λ α N v N. A α (w Q k w) közelítése: ( ) σ(a) α K ( ) ( ) α 2A j A α (w Q k w) 2 j σ(a) I (w Q k w). j=0

Az algoritmus A-hoz a legkisebb j db és legnagyobb k j db sajátérték, sajátvektor kiszámítása. Q k meghatározása (egy mátrix-összeállítás). A α Q k w meghatározása: Q k w = a 1 v 1 +... a N v N A α Q k w = a 1 λ α 1 v 1 + + a N λ α N v N. A α (w Q k w) közelítése: ( ) σ(a) α K ( ) ( ) α 2A j A α (w Q k w) 2 j σ(a) I (w Q k w). j=0 A α w = A α Q k w + A α (w Q k w)

Numerikus kísérletek I. Mi legyen K, k, j értéke adott pontossághoz?

Numerikus kísérletek I. Mi legyen K, k, j értéke adott pontossághoz? Milyen pontosság kell? Milyen A struktúrája?

Numerikus kísérletek I. Mi legyen K, k, j értéke adott pontossághoz? Milyen pontosság kell? Milyen A struktúrája? Az analitikus becslés nagyon pesszimista.

Numerikus kísérletek I. Mi legyen K, k, j értéke adott pontossághoz? Milyen pontosság kell? Milyen A struktúrája? Az analitikus becslés nagyon pesszimista. j = k/2 javasolható.

Numerikus kísérletek I. Mi legyen K, k, j értéke adott pontossághoz? Milyen pontosság kell? Milyen A struktúrája? Az analitikus becslés nagyon pesszimista. j = k/2 javasolható. Sajátrendszer legyen pontos!

Numerikus kísérletek I. Mi legyen K, k, j értéke adott pontossághoz? Milyen pontosság kell? Milyen A struktúrája? Az analitikus becslés nagyon pesszimista. j = k/2 javasolható. Sajátrendszer legyen pontos! eigs.m - beépített MATLAB-szubrutin: gyenge.

Numerikus kísérletek I. Mi legyen K, k, j értéke adott pontossághoz? Milyen pontosság kell? Milyen A struktúrája? Az analitikus becslés nagyon pesszimista. j = k/2 javasolható. Sajátrendszer legyen pontos! eigs.m - beépített MATLAB-szubrutin: gyenge. jdcg.m - ez egész jó - 2001.

Numerikus kísérletek I. Mi legyen K, k, j értéke adott pontossághoz? Milyen pontosság kell? Milyen A struktúrája? Az analitikus becslés nagyon pesszimista. j = k/2 javasolható. Sajátrendszer legyen pontos! eigs.m - beépített MATLAB-szubrutin: gyenge. jdcg.m - ez egész jó - 2001. chdav.m - ez a nyerő (jó paraméterrel) -2005.

Numerikus kísérletek II. táblázat: Kísérleti eredmények: d = 2, N, N = 60 α = 0.3. k K számítási idő [s] err r 20 2000 0.568 1.88 10 4 20 20 0.544 13.3 20 200 0.526 9.75 10 3 20 20000 1.23 2.00 10 4 20 200000 8.88 1.96 10 4 40 2000 1.21 1.88 10 4 40 20000 1.78 2.36 10 4 16 2000 0.44 1.72 10 5 12 2000 0.36 2.05 10 5 16 20000 1.16 1.91 10 10

Numerikus kísérletek III. - a lényeg táblázat: A α w kiszámítása a régi és az új módszerrel: d = 3, N, j = 8, α = 0.3; mértékegységek: idő[s], mem[mb]. mpower(a, α)w új módszer N idő:a α idő: w mem err idő:a α w mem err 10 0.28 0.002 16 2 10 11 0.132 0.12 5 10 12 20 145.9 0.80 10 3 5 10 10 0.84 0.99 3 10 11 25 1251 128 2 10 3 4 10 11 3.14 5 7.9 10 12 30 >36h?? > 10 4?? 13.5 16 8.2 10 12

Megfigyelések - MATLAB Ritka mátrix számmal való szorzása lassú.

Megfigyelések - MATLAB Ritka mátrix számmal való szorzása lassú. Volna mit finomítani a sajátrendszerek közelítésén.

Megfigyelések - MATLAB Ritka mátrix számmal való szorzása lassú. Volna mit finomítani a sajátrendszerek közelítésén. Nem érdemes 8-10-nél több sajátértéket meghatározni.

Megfigyelések - MATLAB Ritka mátrix számmal való szorzása lassú. Volna mit finomítani a sajátrendszerek közelítésén. Nem érdemes 8-10-nél több sajátértéket meghatározni. 3 dimenzióban pontosabb a közelítés, mint 2-ben.

Köszönöm a figyelmet!