Linjära ekvationssystem

Relevanta dokument
Linjära ekvationssystem

TMA 671 Linjär Algebra och Numerisk Analys. x x2 2 1.

Numerisk Analys, MMG410. Exercises 2. 1/33

Block 2: Lineära system

Föreläsning 14: Exempel på randvärdesproblem. LU-faktorisering för att lösa linjära ekvationssystem.

2D1250 Tillämpade numeriska metoder II Läsanvisningar och repetitionsfrågor:

2D1240 Numeriska metoder gk II för T2, VT Störningsanalys

Subtraktion. Räkneregler

LÖSNINGAR TILL UPPGIFTER TILL RÄKNEÖVNING 1

TANA09 Föreläsning 5. Matrisnormer. Störningsteori för Linjära ekvationssystem. Linjära ekvationssystem

1 Positivt definita och positivt semidefinita matriser

Matriser. En m n-matris A har följande form. Vi skriver också A = (a ij ) m n. m n kallas för A:s storlek. 0 1, 0 0. Exempel 1

TMV166 Linjär Algebra för M. Tentamen

November 6, { b1 = k a

Föreläsningsanteckningar Linjär Algebra II Lärarlyftet

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

1. (Dugga 1.1) (a) Bestäm v (3v 2u) om v = . (1p) and u =

t Möjliga lösningar? b

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Vectorer, spannet av vektorer, lösningsmängd av ett ekvationssystem.

Vektorrum. EX. Plan och linjer i rummet genom origo. Allmänt; mängden av lösningar till AX = 0.

2 Matrisfaktorisering och lösning till ekvationssystem

MVE022 Urval av bevis (på svenska)

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

5.7. Ortogonaliseringsmetoder

SF1624 Algebra och geometri Lösningsförslag till tentamen DEL A

NUMPROG, 2D1212, vt Föreläsning 9, Numme-delen. Stabilitet vid numerisk behandling av diffekvationer Linjära och icke-linjära ekvationssystem

6. Matriser Definition av matriser 62 6 MATRISER. En matris är ett rektangulärt schema av tal: a 11 a 12 a 13 a 1n a 21 a 22 a 23 a 2n A =

M0043M Integralkalkyl och Linjär Algebra, H14, Linjär Algebra, Föreläsning 11

Fö4: Kondition och approximation. Andrea Alessandro Ruggiu

Moment 5.5 Övningsuppgifter I 5.60a. 5.60b, 5.60.c, 61

Linjär Algebra M/TD Läsvecka 3

15 september, Föreläsning 5. Tillämpad linjär algebra

Avsnitt 2. Matriser. Matriser. Vad är en matris? De enkla räknesätten

Lösningsförslag till tentamen i SF1861 Optimeringslära för T. Torsdag 28 maj 2010 kl

Linjär Algebra M/TD Läsvecka 2

Determinanter, egenvectorer, egenvärden.

1 Linjära ekvationssystem. 2 Vektorer

TMV166 Linjär algebra för M. Datorlaboration 2: Matrisalgebra och en mekanisk tillämpning

Laboration: Vektorer och matriser

SF1624 Algebra och geometri Lösningsförslag till tentamen DEL A

SF1624 Algebra och geometri Lösningsförsag till modelltentamen

TMV141. Fredrik Lindgren. 22 januari 2013

Norm och QR-faktorisering

LINJÄR ALGEBRA II LEKTION 6

Moment 6.1, 6.2 Viktiga exempel Övningsuppgifter T6.1-T6.6

Enhetsvektorer. Basvektorer i två dimensioner: 1 1 Basvektorer i tre dimensioner: Enhetsvektor i riktningen v: v v

TENTAMEN I LINJÄR ALGEBRA OCH NUMERISK ANALYS F1, TMA671

1 Grundläggande kalkyler med vektorer och matriser

Teorifrågor. 6. Beräkna konditionstalet för en diagonalmatris med diagonalelementen 2/k, k = 1,2,...,20.

Stora bilden av Linjära algebran. Vektorrum, linjära transformationer, matriser (sammanfattning av begrepp)

Föreläsning 5. Approximationsteori

SF1624 Algebra och geometri Lösningsförslag med bedömningskriterier till kontrollskrivning 1 Onsdagen den 8 december, 2010

Tentamen i Beräkningsvetenskap I och KF, 5.0 hp,

Denna föreläsning. DN1212 Numeriska metoder och grundläggande programmering FN Standardform för randvärdesproblem

Mat Grundkurs i matematik 1, del I

SKRIVNING I VEKTORGEOMETRI

Moment Viktiga exempel Övningsuppgifter

SF1624 Algebra och geometri Lösningsförslag till tentamen DEL A

Uppsala Universitet Matematiska Institutionen Thomas Erlandsson

Uppsala Universitet Matematiska Institutionen Bo Styf. Sammanfattning av föreläsningarna 1-4.

Konvergens för iterativa metoder

NUMPROG, 2D1212, vt Föreläsning 1, Numme-delen. Linjära ekvationssystem Interpolation, Minstakvadratmetoden

SF1624 Algebra och geometri Lösningsförslag till tentamen Lördagen den 5 juni, 2010 DEL A

Uppsala Universitet Matematiska Institutionen Bo Styf. Sammanfattning av föreläsningarna

Tentamen i Beräkningsvetenskap I/KF, 5.0 hp,

Preliminärt lösningsförslag

TMV166/186 Linjär Algebra M/TD 2011/2012 Läsvecka 1. Omfattning. Innehåll Lay, kapitel , Linjära ekvationer i linjär algebra

Iterativa metoder för linjära ekvationssystem

Linjär Algebra M/TD Läsvecka 1

SF1624 Algebra och geometri Lösningsförslag till modelltentamen DEL A

Linjär Algebra, Föreläsning 8

. (2p) 2x + 2y + z = 4 y + 2z = 2 4x + 3y = 6

SF1624 Algebra och geometri Lösningsförslag till tentamen DEL A. (1 p) (c) Bestäm avståndet mellan A och linjen l.

Dagens ämnen. Linjära ekvationssystem: Successiv elimination Vektorer Definitionen Grundläggande räkneoperationer Bas och koordinater Ortsvektorer

Frågorna 1 till 6 ska svaras med ett kryss för varje korrekt påstående. Varje uppgift ger 1 poäng. Använd bifogat formulär för dessa 6 frågor.

ax + y + 2z = 3 ay = b 3 (b 3) z = 0 har (a) entydig lösning, (b) oändligt många lösningar och (c) ingen lösning.

MULTIPLIKATION AV MATRISER, BASER I RUMMET SAMT FÖRSTA MÖTET MED MATRISINVERSER = = =

SF1624 Algebra och geometri Lösningsförslag till tentamen Fredagen den 23 oktober, 2009 DEL A

SKRIVNING I VEKTORGEOMETRI Delkurs

Egenvärdesproblem för matriser och differentialekvationer

5B1146 med Matlab. Laborationsr. Laborationsgrupp: Sebastian Johnson Erik Lundberg, Ann-Sofi Åhn ( endst tal1-3

SF1624 Algebra och geometri Lösningsförslag med bedömningskriterier till kontrollskrivning 1 Måndagen den 29 november, 2010

Lite Linjär Algebra 2017

Rangordning av internetsidor - ett egenvärdesproblem för positiva matriser

November 17, 2015 (1) en enda lsg. Obs det A = 1 0. (2) k-parameter lsg. Obs det A = 0. k-kolonner efter sista ledande ettan

Mat Grundkurs i matematik 1, del I

8(x 1) 7(y 1) + 2(z + 1) = 0

FMNF15 HT18: Beräkningsprogrammering Numerisk Analys, Matematikcentrum

Matriser och vektorer i Matlab

Välkomna till Numme och MATLAB, 9 hp, för Materialdesign och Energi&Miljö, årskurs 2

Vektorerna är parallella med planet omm de är vinkelräta mot planets normal, dvs mot

Veckoblad 4, Linjär algebra IT, VT2010

12. SINGULÄRA VÄRDEN. (u Av) u v

TANA17 Matematiska beräkningar med Matlab

Sammanfattninga av kursens block inför tentan

TAMS79: Föreläsning 10 Markovkedjor

Minsta kvadratmetoden

SF1624 Algebra och geometri Tentamen med lösningsförslag onsdag, 11 januari 2017

TANA17 Matematiska beräkningar med Matlab

Transkript:

Linjära ekvationssystem Gausselimination Vanlig gausselimination för det linjära ekvationssystemet Ax = b utgår från den utökade matrisen [A b] och applicerar elementära radoperationer på denna för att transformera den till [U b] där U är övertriangulär Detta motsvarar ett nytt ekvivalent övertriangulärt ekvationssystem Ux = b som är enkelt att lösa med bakåtsubstitution Exempel : Vi vill lösa 2 3 x 4 5 6 y = 5 7 8 0 z 9 Vi bildar den utökade matrisen [A b] och reducerar i två steg: 2 3 2 3 4 5 6 5 0 3 6 7 8 0 Ny rad 2 = rad 2-4 rad 9 Ny rad 3 = rad 3-7 rad 0 6 2 2 3 0 3 6 Ny rad 3 = rad 3-6 rad 2 3 0 0 0 Detta ger det ekvivalenta ekvationssystemet 2 3 x 0 3 6 y = 0 0 z 0 I bakåtsubstitution startar vi på sista raden, vilken direkt ger att z = 0 Vi arbetar oss sedan bakåt rad för rad Vi sätter in värdet för z i rad två och får och sedan värdena för z och y i rad ett, 3y 6z = 3y 6 0 = y = 3, x + 2y + 3z = x + 2 ( ) + 3 0 = x = 5 3 3 2 LU-faktorisering Resultatet av gausselimination kan också beskrivas i matristermer Det man får fram är i själva verket en faktorisering av ursprungsmatrisen A i en produkt av två enklare matriser, nämligen A = LU där U är övertriangulär och L är undertriangulär med ettor på diagonalen, dvs (6)

schematiskt L =, U = Detta kallas LU-faktoriseringen av A Matrisen U är samma matris som står till vänster i den utökade matrisen efter gausselimination Matrisen L utgörs av de faktorer som multiplicerar den rad som subtraheras bort i varje steg Dessa kan enkelt bokföras under gausseliminationen utan extra kostnad För vektorn b i den utökade matrisen gäller slutligen att L b = b Lösningsalgoritmen för Ax = b kan därför skrivas i matrisform som: LU-faktorisera A LUx = b, 2 Lös det undertriangulära systemet L b = b Ux = b, 3 Lös det övertriangulära systemet Ux = b x Punkt ) görs med gausselimination och löpande bokföring av L-matrisens element Punkterna 2) och 3) är enkla triangulära ekvationssystem som löses med bakåtsubstitution (för övertriangulära) och framåtsubstitution (för undertriangulära) En poäng med detta synsätt är att det visar hur man kan snabba upp beräkningar när man behöver lösa ett ekvationssystem med med många olika högerled, Ax = b j, j =,2, Se Exempel 4 nedan Exempel 2: LU-faktoriseringen av matrisen 2 3 A = 4 5 6 7 8 0 ges direkt av gausseliminationen i Exampel ovan Den är 0 0 2 3 L = 4 0, U = 0 3 6 7 2 0 0 Notera hur matriselementen i L dyker upp i gausseliminationens olika steg Verifiera att A = LU Kommentar: En komplikation är att LU-faktorisering och gausselimination inte fungerar för alla icke-singulära matriser Det finns problem Ax = b som har en väldefinierad lösning men där vår vanliga lösningsalgoritm inte går att använda, tex ( )( ) 0 x 0 y ( ) = Lösningen är x = y = men gausselimination bryter samman direkt i steg ett eftersom faktorn som ska multiplicera rad ett blir "/0" Följande sats ger de precisa villkoren för när A kan LU-faktoriseras, dvs när gausselimination fungerar Detta är inte helt uppenbart! På sid 80-8 i Sauer ges en informell härledning 2 (6)

Theorem Låt A j vara den ledande principala undermatrisen av storlek j j till A R n n, med j n Med detta menas det övre vänstra hörnet av A, i Matlab-notation A j =A(:j,:j) Matrisen A har en unik LU-faktorisering (med ettor på diagonalen till L) om och endast om alla A j är icke-singulära, j =,,n Ett exempel på matriser som uppfyller villkoren i satsen är symmetrisk positivt definita matriser (dvs A = A T och x T Ax > 0 för alla x 0) Att standard gausselimination inte fungerar för alla matriser är dock i praktiken ett mindre problem, eftersom det enkelt går att åtgärda genom så kallad pivotering, där man systematiskt kastar om raderna i varje steg för att undvika division med små tal Läs mer om pivotering i Sauer kap 24 Gausselimination med pivotering ger den modifierade LU-faktoriseringen P A = LU, där P är en permutationsmatris (identitetsmatrisen med omkastade rader) Man kan visa att denna modifierade LU-faktorisering existerar för alla icke-singulära matriser Med pivotering undviks också problem med utskiftning som kan uppstå till följd av avrundningsfel, se Sauer kap 232 3 Beräkningskostnader Beräkningskostnaden för en numerisk algoritm brukar räknas som antalet enkla flyttalsoperationer (flop) den inbegriper, där flop = multiplikation, division, addition eller subtraktion Det ger ofta en god bild av hur snabb en algoritm är, men man ska samtidigt vara medveten om att många andra faktorer också spelar in, tex antal minnesaccesser, hur mycket data som måste skickas mellan processorer i en multicore-dator, storleken på cache-minnet, etc Speciellt intressant är hur kostnaden beror på problemets storlek, typiskt antal obekanta, eller storleken på en matris/vektor Detta brukar också kallas problemets komplexitet Exempel 3: Matris-vektormultiplikation Låt A R n n och b R n Om Ax = b, n b i = a ij x j, i =,,n j= För varje element b i krävs alltså n multiplikationer och n additioner Totala kostnaden för att beräkna samtliga element blir då n(2n ) = 2n 2 n flops Normalt är vi bara intresserade av den högsta potensen (n 2 ) eftersom den helt dominerar när n är stort Konstanten framför (2) är ibland också av intresse, men ofta bortser vi även från den och säger att komplexiteten i detta fall är O(n 2 ) för matris-vektormultiplikation I listan nedan sammanfattas beräkningskostnader för några vanliga operationer i linjär algebra Multiplikation matris-vektor: O(n 2 ) 2 Multiplikation matris-matris: O(n 3 ) 3 Lösa övertriangulärt system med bakåtsubstitution: O(n 2 ) 4 Lösa undertriangulärt system med framåtsubstitution: O(n 2 ) 5 LU-faktorisera en matris med gausselimination: O(n 3 ) Punkterna 3-5) visar att kostnaden att lösa ekvationssystemet Ax = b är O(n 3 ) Se kaptiel 32 i Sauer för en härledning av detta viktiga resultat 3 (6)

Exempel 4: Antag att vi behöver lösa samma ekvationssystem med många högerled Mer precist, antag att vi har m högerled och att A R n n, Ax j = b j, j =,,m Ett naivt angreppssätt vore att lösa dessa system med gausselimination ett efter ett Den totala kostnaden skulle då bli O(mn 3 ) eftersom varje problem kostar O(n 3 ) flops Ett bättre sätt vore istället att LU-faktorisera A, 2 För varje j lös de triangulära systemen: L b j = b j, Ux j = b j Kostnaden för steg ) är O(n 3 ) Kostnaden för steg 2) är O(n 2 ) per j eftersom systemen är triangulära Totalkostnaden blir alltså O(n 3 + mn 2 ), vilket är betydligt mindre än O(mn 3 ) när n och antalet högerled m är stora 4 Glesa matriser Glesa matriser (sparse matrices) är matriser som nästan bara innehåller nollor En mycket vanlig typ av glesa matriser är bandade matriser där alla element utanför ett smalt band runt diagonalen är noll: 0 0 n, m n } m Här kallas m bandbredden För tridiagonala matriser är tex m = 2 Matris-vektor- och matrismatris-multiplikationer med glesa matriser kan göras betydligt snabbare än för vanliga fulla matriser genom att utnyttja strukturen av nollor För vissa typer av glesa matriser (men inte alla!) kan även gausselimination och LU-faktorisering göras snabbare, tex för bandade matriser För dessa blir en avsevärd andel av mellanresultaten bara noll och behöver inte räknas ut För bandade matriser är komplexiteten för alla de fem operationerna som listas i Sektion 3 ovan tex bara O(n), om vi antar att m är fixt när n varierar Att lösa ett tridiagonalt ekvationssystem med en bandad version av gausselimination har alltså kostnaden O(n) istället för O(n 3 ) (Se tex kap 6 i NAM) I Matlab kan matriser och vektorer lagras och hanteras i ett speciellt "sparse"-format Matlab kan då utnyttja bättre, snabbare algoritmer och använda mindre minne Se tex help sparse 4 (6)

Exempel 5: Antag att matrisen A R n n är tridiagonal med elementen α j, β j och γ j, β γ α 2 β 2 γ 2 A = α n β n γ n α n β n Om vi vill lösa Ax = b med b = (b,,b n ) T R n innebär gausselimination följande två steg Först reducerar vi till triangulär form Vi låter β = β, b = b och β j = β j γ j α j β j, b j = b j b j α j β j, j = 2,,n Subtraktion av rader blir här alltså bara subtraktion av skalärer Vi får β γ x b β 2 γ 2 x 2 b = 2 β n γ n x n b β n n x n b n Lösningen ges sedan av bakåtsubstitutionen x n = b n/β n och x j = β j (b j γ jx j+ ), j = n,n 2,, I första reduktionen görs 2 3 operationer för varje rad 2,, n (en multiplikation, en division och en subtraktion) I bakåtsubstitutionen görs 3 operationer för varje rad n,, och en operation på rad n Totalt har vi 9(n ) + operationer, dvs O(n) operationer 5 Vektor- och matrisnormer För att mäta storleken av en vektor eller matris använder vi normer Det kan ses som en generalisering av absolutbeloppet för skalära tal Normen av vektorn x skrivs x Flera olika val av normer är möjliga för vektorer Vanligast är den euklidiska normen (även kallad 2-normen), n x 2 := x 2 j, x = (x,x 2,,x n ) T R n, j= som mäter längden av x i R n Ibland används också Alla normer uppfyller x 0 för alla vektorer x, -normen 2 x = 0 om och endast om x = 0, x := n j= x j, max-normen x := max j x j 5 (6)

3 αx = α x för alla skalära tal α R, 4 x + y x + y för alla vektorer x och y (triangelolikheten) (Dessa fyra villkor kan även ses som axiomen vilka definierar en norm i ett vektorrum) Matrisnormer definieras vanligtvis i termer av vanliga vektornormer enligt Ax A := sup x 0 x () Notera att normerna i högerledet båda är vektornormer För varje vektornorm får man således en motsvarande matrisnorm Låt a ij vara elementet på rad i och kolumn j i A Man kan visa att -, 2-, och max-normen ger följande uttryck för matrisnormerna: -normen 2-normen A = max j n i= a ij, (dvs max kolumnsumma ), A 2 = max j λj (A T A), (där λ j (A T A) är egenvärde j till matrisen A T A), max-normen A = max i n j= a ij, (dvs max radsumma ) Matrisnormerna definierade enligt () uppfyller automatiskt punkterna -4 ovan Efter multiplikation med x på båda sidor ger dessutom () denna viktiga olikhet: Ax A x (2) 6 (6)