Nummeriske Metoder. 1 Indledning. 2 Davidson metoden. Bo Thomsen, juni 2009

Relaterede dokumenter
LiA 5 Side 0. Lineær algebra Kursusgang 5

Besvarelser til Lineær Algebra Ordinær Eksamen - 5. Januar 2018

Chapter 3. Modulpakke 3: Egenværdier. 3.1 Indledning

Diagonalisering. Definition (diagonaliserbar)

Besvarelser til Lineær Algebra Ordinær eksamen - 6. Juni 2016

Besvarelser til Lineær Algebra Ordinær Eksamen Juni 2017

Besvarelser til Lineær Algebra Reeksamen August 2016

DesignMat. Preben Alsholm. September Egenværdier og Egenvektorer. Preben Alsholm. Egenværdier og Egenvektorer

Egenværdier og egenvektorer

LinAlgDat 2014/2015 Google s page rank

Besvarelser til Lineær Algebra Ordinær Eksamen Juni 2018

Besvarelse af Eksamensopgaver Juni 2005 i Matematik H1

Matricer og lineære ligningssystemer

Oversigt [LA] 1, 2, 3, [S] 9.1-3

Oversigt [LA] 10, 11; [S] 9.3

Symmetriske og ortogonale matricer Uge 7

DesignMat Uge 1 Gensyn med forårets stof

Besvarelser til Lineær Algebra med Anvendelser Ordinær Eksamen 2016

Modulpakke 3: Lineære Ligningssystemer

Det Ingeniør-, Natur- og Sundhedsvidenskabelige basisår Matematik 2A, Forår 2007, Hold 4 Opgave A Kommenteret version

Skriftlig eksamen Vejledende besvarelse MATEMATIK B (MM02)

Eksempel på 2-timersprøve 2 Løsninger

Matematisk modellering og numeriske metoder. Lektion 13

Lineær algebra: Egenværdier, egenvektorer, diagonalisering

Besvarelser til Calculus og Lineær Algebra Globale Forretningssystemer Eksamen - 8. Juni 2015

Symmetriske og ortogonale matricer Uge 6

Oversigt [LA] 1, 2, 3, [S] 9.1-3

Differentialligninger Hvad beskriver en differentialligning? Hvordan noget ændrer sig (oftest over tid). Tangenthældninger langs en kurve.

Newton-Raphsons metode

Nøgleord og begreber. Definition 15.1 Den lineære 1. ordens differentialligning er

Oversigt [S] 7.3, 7.4, 7.5, 7.6; [LA] 15, 16, 17

Symmetriske matricer

Matrx-vektor produkt Mikkel H. Brynildsen Lineær Algebra

Eksamen i Lineær Algebra

Lineær algebra Kursusgang 6

Vejledende besvarelse på august 2009-sættet 2. december 2009

Polynomier. Indhold. Georg Mohr-Konkurrencen. 1 Polynomier 2. 2 Polynomiumsdivision 4. 3 Algebraens fundamentalsætning og rødder 6

EKSAMENSOPGAVELØSNINGER CALCULUS 2 (2005) JANUAR 2006 AARHUS UNIVERSITET.. Beregn den retningsafledede D u f(0, 0).

13.1 Matrixpotenser og den spektrale radius

Matematik A. Studentereksamen. Forberedelsesmateriale. Digital eksamensopgave med adgang til internettet

Definition multiplikation En m n-matrix og en n p-matrix kan multipliceres (ganges sammen) til en m p-matrix.

Nøgleord og begreber. Definition multiplikation En m n-matrix og en n p-matrix kan multipliceres (ganges sammen) til en m p-matrix.

LINALG JULENØD 2013 SUNE PRECHT REEH

Uge 11 Lille Dag. Opgaver til OPGAVER 1. Det ortogonale komplement

Kursusgang 3 Matrixalgebra fortsat

Oversigt [LA] 3, 4, 5

Lineær Algebra eksamen, noter

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Lokalt ekstremum DiploMat 01905

Om første og anden fundamentalform

Matematik for økonomer 3. semester

Kursusgang 3 Matrixalgebra Repetition

2010 Matematik 2A hold 4 : Prøveeksamen juni 2010

Lineære 1. ordens differentialligningssystemer

Eksamen i Lineær Algebra

Ugeseddel 12( )

Fejlkorligerende køder Fejlkorrigerende koder

Tidligere Eksamensopgaver MM505 Lineær Algebra

Ekstremum for funktion af flere variable

12.1 Cayley-Hamilton-Sætningen

Kursusgang 3 Matrixalgebra Repetition

Oversigt Matematik Alfa 1, August 2002

Københavns Universitet, Det naturvidenskabelige Fakultet. DATALOGI V - Introduktion til Scientific Computing. Ugeseddel 3

x 2 + y 2 dx dy. f(x, y) = ln(x 2 + y 2 ) + 2 1) Angiv en ligning for tangentplanen til fladen z = f(x, y) i punktet

Biologisk model: Epidemi

Reaktionskinetik - 1 Baggrund. lineære og ikke-lineære differentialligninger. Køreplan

Lineære 1. ordens differentialligningssystemer

Matematisk modellering og numeriske metoder. Lektion 5

Reeksamen i Lineær Algebra. Første Studieår ved Det Tekniske Fakultet for IT og Design samt Det Ingeniør- og Naturvidenskabelige Fakultet

Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel:

Mat10 eksamensspørgsmål

Egenværdier og egenvektorer

Oversigt [LA] 1, 2, 3, [S] 9.1-3

Reeksamen i Lineær Algebra

LiA 2 Side 0. Lineær algebra 3. kursusgang

DesignMat Uge 5 Systemer af lineære differentialligninger II

To find the English version of the exam, please read from the other end! Eksamen i Lineær Algebra

Eksamen i Lineær Algebra. Første Studieår ved Det Tekniske Fakultet for IT og Design samt Det Ingeniør- og Naturvidenskabelige Fakultet

DesignMat Uge 4 Systemer af lineære differentialligninger I

Calculus Uge

Nøgleord og begreber

Matematisk modellering og numeriske metoder. Lektion 17

Operationsanalyse, Ordinær Eksamen 2017I Rettevejledning

Kvadratrodsberegning ved hjælp af de fire regningsarter

De fire elementers kostbare spejl

Ligningssystemer - nogle konklusioner efter miniprojektet

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Affine rum. a 1 u 1 + a 2 u 2 + a 3 u 3 = a 1 u 1 + (1 a 1 )( u 2 + a 3. + a 3. u 3 ) 1 a 1. Da a 2

Aflevering 4: Mindste kvadraters metode

Michael Jokil

Besvarelser til Calculus Ordinær Eksamen Juni 2019

Lineære ligningssystemer og Gauss-elimination

Sortering. Eksempel: De n tal i sorteret orden

Besvarelser til Calculus og Lineær Algebra Globale Forretningssystemer Eksamen - 3. Juni 2014

Algebra - Teori og problemløsning

Københavns Universitet, Det naturvidenskabelige Fakultet. Afleveringsopgave 4

Note om interior point metoder

Eksamen i Lineær Algebra

F i l o s o f i e n o g m at e m at i k k e n b ag G o o g l e. M e d fo k u s på Pag e R a n k.

9.1 Egenværdier og egenvektorer

Transkript:

Nummeriske Metoder Bo Thomsen, 20050885 25. juni 2009 1 Indledning I denne opgave søges løsninger på et relativt stort egenværdiproblem. I mit tilfælde er dette fremkommet ved at konstruere hamilton matricen for vibrational conguration interaction(vci) egenværdiproblemet for molekylet HSiF. De tilstande som udgør basis for dette problem er beregnet ved vibrational selfconsistent eld(vscf) teori. Selve egenværdi ligningen ser således ud Hvor H matricen er deneret som HC = E i C (1.1) H µν = µ H ν (1.2) µ og ν er her VSCF modals. H matricen og VSCF beregningen er beregnet med MIDAS, der endvidere udfører en VCI beregning som resultaterne fra algoritmerne kan benchmarkes imod. Derefter er de mindste elementer fra H matricen blevet sorteret fra for at fjerne elementer som er så små at de reelt ingen betydning for det endelige resultat, i vores tilfælde alle indgange der har nummerisk værdi under 10 7. Dette resulterer i at H bliver en sparse matrix, hvilket dog kun udnyttes i Davidson algoritmen. 2 Davidson metoden Davidson metoden benytter sig af projektion for at reducerer dimmensionerne af egenværdiproblemet. Ved at udføre en orthogonal projektion af H matricen bevares egenværdierne approximativt, og egenvektorene for det reducerede problem kan projekteres ved hjælp af samme projektion til at blive egenvektorene for H matricen selv. Måden den orthogonale projektion konstrures på er; der vælges først et antal orthogonale vektorer. I dette tilfælde vælges der 25 orthogonale vektorer der alle svarer til de 25 laveste VSCF tilstande, da det er rimeligt at antage at disse 25 tilstande højst sandsynligt allerede er meget tæt på de ønskede 20 VCI tilstande. Projektionen V T HV = T j udføres nu og egenværdier og egenvektorer for T j ndes, her tæller j op over søjler, det vil sige vektorer i projektionen, i V. Efter at egenvektorerne og egenværdierne for T j er fundet, bliver disse undersøgt med hensyn til H. r i = AV y i λ i V y i (2.3) 1

I det tilfælde hvor r i er mindre end en given tærskel accepteres V y i som egenvektor og λ i som egenværdi. Hvis dette ikke er tilfældet kan r enten orthogonaliseres og inkluderes som den er i V, eller en passende preconditioner kan vælges. I dette tilfælde vælges en relativ simpel preconditioner der er deneret som M = (Diag(H) λ i I) 1 (2.4) Operationen r = M r udføres og r orthogonaliseres herefter og indsættes i V. Ved at benytte en preconditioner stiger hastigheden hvorved algoritmen konvergerer. Selve algoritmen bliver således til følgende pseudokode: (1) Lav et start gæt på et antal approximative egenvektorer eller vælg tilfældige vektorer. Orthogonaliser disse og indsæt dem i V (2) Indtil konvergens( r i < tolerance i){ (3) Udfør projektionen V T HV = T j (4) Find egenværdier(λ i ) og vektorer(y i ) for T j (5) Beregn residual vektor (2.3) (6) Test residual vektors længde, hvis > tolerance{ (7) Brug preconditioner, r=m r (8) Orthogonaliser r iforhold til V (9) Indsæt r i V (10) } (11) } (12) Udskriv egenværdier og egenvektorer/ udfør andre operationer på dem som nødvendigt for problemet Det eneste problem der nu står tilbage er at nde egenværdierne og egenvektorerne for T j, til dette benyttes invers power iteration. 3 Invers power iteration for mere end en egenværdi Vores problem er nu reduceret til at nde egenværdier i en relativ lille matrix, og til dette formål vil jeg i dette tilfælde benytte invers power ( iteration. ) Denne algoritme konvergerer n λmin+1 mod den rigtige egenvektor og egenværdi med hvor n er antallet af iterationer. Det eneste problem med denne metode er hvis der er degenerede egenværdier vil metoden konvergere meget langsomt. Dog ved jeg at de første 20 egenværdier ikke er degenerede, men dette er dog ikke altid tilfældet. Envidere kan næsten degenerede egenværdier også skabe problemer, men igen indeholder problemet jeg ser på ikke disse. Derfor antager jeg at for de egenværdier jeg er intereseret i gælder λ min Algorimen i sig selv er i psedukode: (1) Indtil konvergeret(y k 1 = y k ){ (2) y k 1 = T 1 j y k (y k ndes ved at løse T j y k = y k 1 ) (3) θ k = y k 1 y k (4) y k = y k y k λ min < λ 2 <... < λ max (3.5) 2

(5) } (6) λ i = θ k, e i = y k Dette nder dog kun den laveste egenværdi, for at få de m laveste egenværdier bliver egenværdierne skiftet op som de ndes. For at være sikker på at de er skiftet tilstrækkeligt op bliver alle egenværdierne skiftet op med den højeste egenværdi som ndes med en lignende algoritme hvor (2) i den ovenstående er erstatet af (2) y j = T j y j 1 Selve skiftet af egenværdien følger følgende formel A = A + λ max e 1 e T 1 e T 1 e 1 (3.6) Der resulterer i at egenværdien tilhørende den før fundne egenvektor, e min, bliver λ ny = λ min + λ max, som vist nedenfor, hvor det antages at e 1 er normaliseret. A e 1 = ( A + λ max e 1 e T 1 ) e1 = A e 1 + λ max e 1 = λ 1 e 1 + λ max e 1 = (λ 1 + λ max ) e 1 (3.7) Denne procedure gentages indtil det ønskede antal egenværdier er fundet. Dog skal man dog overveje numerisk stabilitet under denne operation, især hvis λ min << λ max, da dette kan lede til ustabilitet på de sidst fundne egenværdier på grund af tab af decimaler på matrix indgangene når skiftet adderes til den oprindelige matrix. Alt i alt skal denne metode bruges med meget forsigtighed, men givet min viden om problemet skulle denne metode virke. En ting som ikke vil blive behandlet i denne opgave er måden løsningerne ndes for ligningssystemerne, dette gøres ved hjælp af QR decomposition af matricen og backsubstitution. Denne algoritme er specielt god fordi den kan paralleliseres og derved gøre beregningerne hurtigere, det er dog ikke gjort her og derfor kan algoritmen være et problem hvis T j bliver for stor. 4 Lanczos algoritmen Lanczos algoritmen er ikke så anvendt som Davidson af mange grunde, et af de store problemer er at den kan være numerisk ustabil hvilket jeg vil komme tilbage til senere. Denne algoritme er dog også undersøgt for problemet, for at se hvor god denne algoritme er i forhold til Davidson. Algoritmen ligner Davidson da denne også søger at reducere matricen til en mindre matrix der har de samme egenværdier som den store matrix har. Dog vil den mindre matrix have en hessenberg form for en reel matrix, og som i mit tilfælde med en hermitisk matrix en tridiagonal form. Denne tridiagonale form giver mange fordele med hensyn til beregningen af egenværdierne som vil blive diskuteret senere. Lanczos algoritmen er som udgangspunkt deneret for at nde de største egenværdier, jeg vil dog benytte invers iteration og i stedet for at lave et Krylow rum for H vil jeg konstrurere det for H 1, Krylov rummet der er deneret som Span (v, Av, A 2 v,..., A n v). Invers iteration er ikke så udforsket for Lanczos metoden endnu, men metoden skal benyttes for at nde de mindste egenværdier i H, der er dem jeg er interresseret i at nde. Projektionen som vil bringe H 1 på tridiagonal form er Krylov rummets orthogonormale form. Da matrix multiplication er en n 3 operation vil projektionen dog ikke blive 3

udført, istedet vil den reducerede matrix T blive konstruret samtidigt med Krylov rummet, hvor jeg dog ikke udnytter at T er tridiagonal da orthogonaliten på Krylow rummet kan blive tabt over ere iterationer hvilket gør hele metoden ustabil. For at konstrurere T benyttes Arnoldi iteration, hvilket omsat til pseudokode er: (1) QR faktoriser H (2) Konstrurer tilfældig startvektor, eller et godt gæt på den første egenvektor, V ={q 0 } (3) for k = 1 til k = n{ (4) Løs Aq k = q k 1 ved hjælp at backsubstitution (5) Orthogonaliser q k på alle vektorer i V, og gem q i q k i T i,k 1 (6) Normaliser q k og gem q k i T k,k 1, dog ikke for k'te vektor (7) Indsæt q k i V (8) } Denne algoritme konstrurer kun T og checker ikke for konvergens og udvider som nødvendigt. Dette vender jeg tilbage til senere. Jeg vil nu se på at nde egenværdier for T, der i dette tilfælde er egenværdier for H 1 hvilket betyder at de er en over egenværdierne i H. 5 Omvendt QR iteration Metoden der benyttes til at nde egenværdierne for T er Omvendt QR iteration, der går ud på at QR faktorisere T og derefter gange R og Q sammen. Produktet vil have mere dominante diagonale elementer, og hvis man bliver ved med at QR faktorisere og gange sammen, vil resultatet konvergere mod en diagonal matrix stabilt, men langsomt. Dog er der den fordel at matricen bliver diagonal skridtvist med den højste egenværdi i de øverste venstre hjørne og derved kan den største egenværdi tages ud, og selve matricen kan reduceres med en søjle og række, hvilket gør de næste egenværdier hurtigere at nde. Så Pseudo koden for denne metode bliver: (1) Indtil ønsket antal egenværdier er fundet{ (2) Check om øverste egenværdi er konvegeret, er elementet ved siden af og under diagonalen under tolerancen{ (3) Hvis dette er tilfældet, gem egenværdien og reducer T (4) } (5) QR faktoriser T (6) Sæt T lig R Q (7) } Som nævnt tidligere kan QR faktoriseringen paralleliseres for at gøre beregningstiden mindre, hvilket dog ikke er gjort her. Jeg har dog lavet QR algoritmen så den kun behandler de elementer som skal behandles på grund af matricens specielle form. 6 Resultater Resultaterne for de to metoder er meget mere forskellige end ventet. Davidson ligger sig pænt op ad resultatet fra MIDAS, der netop benytter Davidson algoritmen til at nde 4

egenværdierne. I dette tilfælde benyttes en basis af over 2500 VSCF funktioner, men problemet løses ved at løse egenværdiproblemet for en 97x97 matrix med poweriteration således at længden i anden af residual vektoren er under 10 10. Resultatet fra Lanczos er dog ikke lig med resultatet der kommer fra MIDAS's algoritme. Det skal her bemærkes at lanczos dog langt fra er sat op til at virke optimalt på grund af en række faktorer. For det første er der problemet med tab af orthogonalitet som T konstrurers. Endvidere kan der ikke itereres over Krylov rummet, da det viser sig at enten er der en egenværdi der er lig nul der ødelægger QR faktoriseringen af T eller at Krylov rummet for matricen ikke er så veldeneret som det kunne håbes. Derfor bliver Lanczos algoritmen kørt på en måde hvor at Krylov rummet bliver lavet med 53 vektorer der orthonormaliseres i hver iteration. Dette betyder at T bliver 53x53, og kan få dens egenværdier fundet ved omvendt QR iteration. En større T matrix kan desværre ikke løses med QR iteration, som vist i outputlen lanczos_text/overstep/overstep.txt. Endvidere vises det at metoden virker i lanczos_test/mat10/test.txt. Lanczos MIDAS Davidson MIDAS 0.00694116 0.00693457 0.00693457 0.00693457 0.00936958 0.00933624 0.00933619 0.00933618 0.0107134 0.0107045 0.0107045 0.0107046 0.0117828 0.0116818 0.0116814 0.0116814 0.0131344 0.0130902 0.0130901 0.0130901 0.0137037 0.0136723 0.0136723 0.0136723 0.0141507 0.0139632 0.0139614 0.0139614 0.0144480 0.0144368 0.0144368 0.0144368 0.0155389 0.0154165 0.0154158 0.0154158 0.0158523 0.0157675 0.0157671 0.0157671 0.0164384 0.0161680 0.0161614 0.0161614 0.0168616 0.0168065 0.0168063 0.0168063 0.0174605 0.0174314 0.0174313 0.0174313 0.0178966 0.0176613 0.0176571 0.0176571 0.0179676 0.0177673 0.0177653 0.0177653 0.0186153 0.0181312 0.0181312 0.0181312 0.0192372 0.0182800 0.0182636 0.0182636 0.0198782 0.0189765 0.0189759 0.0189758 0.020017 0.0191146 0.0191133 0.0191134 0.0207104 0.0194958 0.0194924 0.0194924 Som det ses fra den ovenstående tabel giver Davidson algoritmen næsten det samme resultat som MIDAS, hvor imod resultatet som ventet er noget mere usikkert fra Lanczos. Det skal dog bemærkes at Lanczos slet ikke får lov til at konvergere ligesom Davidson som beskrevet ovenfor. Og resultatet er bemærkelsesværdigt præcist nå man tager de dårligere forhold for Lanczos i betragtning. De ting der kunne ændres med implamentationen af Lanczos er den enedelige egenværdi metode, hvor der desværre bliver nødt til at tages en anden metode i brug for at sikre konvergens. Dette er beklageligt idet styrken ved Lanczos netop er at de operationer der skal udføres er meget hurtige, med undtagelse af den indledende QR faktorisering, der 5

dog kan implamenteres mere eektivt en jeg har gjort med blandt andet parellelisering. Grunden til at der er to forskellige værdier fra MIDAS udregningerne er at beregningen for Lanczos algoritmen er udført i en mindre VSCF basis hvor selve H matricen er 729x729 i stedet for over omkring 2500x2500. Dette er begrundet med at den nuværende implamentation af QR faktoriseringen simpelthen er for langsom til at det vil give nogen mening at teste den på så stort et egenproblem af andre grunde en fordi det er muligt. Endvidere er det tydeligt at hvis de to resultater for MIDAS beregningerne sammenlignes at den større basis næsten ikke betyder noget for egenværdierne jeg er interresseret i. 7 Konklusion Konklusionen på arbejdet med disse to nummeriske metoder til beregninger af egenværdier for store matricer, er at begge metoder er andvenddelige til hurtigt og nemt at nde egenværdierne for disse. Dog lider Lanczos under en række problemer som tab af orthogonalitet og at QR algoritmen ikke er helt stabil for den matrix jeg undersøger. Det burde dog være muligt med preconditioning og andre numeriske metoder at kunne konvergere Lanczos algoritmen hårdere. Forbedringer på Lanczos algoritmen vil helt klart kunne gøre at den ville vinde over Davidson, om ikke på nøjagtighed så på hastighed. Davidson algoritmen har det problem at den rent faktisk ganger matricer at samme størrelse som selve H matricen sammen, hvor imod Lanczos holder sig til matrix-vektor produkter hvilket er meget mere tidsbesparende. Alt i alt har begge metoder deres fordele og ulemper, men de burde begge kunne anvendes til at løse egenværdiproblemer på størrelse men dem der er betragtet i denne opgave og endda endnu større problemer hvis de håndteres rigtigt, og nogle optimeringer til parallelisering og måske også med hensyn til ram forbrug bliver indført. 6