Hoofdstuk 2 Matrices, determinanten en stelsels lineaire vergelijkingen 2.1 R Matrix : definitie en bijzondere gevallen DEFINITIE 2.1 m × n matrix Een reële (resp. complexe) m × n−matrix, of matrix van de orde (m, n) is een rechthoekig schema met m horizontale rijen en n verticale kolommen van reële (resp. complexe) getallen. De getallen in de matrix, noemt men de elementen van de matrix. Men stelt een matrix meestal voor in de gedaante : a11 a21 .. . am1 a12 a22 .. . ··· ··· am2 · · · a1n a11 a2n a21 of .. .. . . amn am1 a12 a22 .. . ··· ··· am2 · · · a1n a2n .. . amn of kortweg als (aij ) of [aij ] waarbij 1 ≤ i ≤ m en 1 ≤ j ≤ n of d.m.v.een hoofdletter A. Twee matrices A = (aij ) en B = (bij ) zijn gelijk als ze dezelfde orde hebben én als hun overeenkomstige elementen gelijk zijn, dus aij = bij voor alle i en j . De verzameling van alle reële (resp. complexe) matrices van de orde (m, n) noteert men als Mat(m,n,R) (resp. als Mat(m,n,C)). De term matrix werd voor het eerst ingevoerd door James Sylvester in 1850 en de eerste systematische studie van matrices werd verricht door Arthur Cayley die in 1858 Memoir on the theory of matrices publiceerde. 2–1 2–2 Matrices, determinanten en lineaire stelsels Figuur 2.1: James Sylvester (1814–1897) en Arthur Cayley (1821–1895) Bijzondere matrices : • Een matrix met slechts één rij (m = 1) noemt men een rijmatrix. ¡ ¢ Deze heeft de vorm : a11 a12 · · · a1n • Een matrix met slechts één kolom (n = 1) noemt men een kolommatrix. a11 a21 Deze heeft de vorm : .. . am1 • Een matrix waarvan het aantal rijen gelijk is aan het aantal kolommen (m = n) noemt men een vierkante matrix (van de orde n). De hoofddiagonaal van zulke matrix wordt gevormd door de elementen a11 , a22 , . . . , ann (van linksboven naar rechtsonder) en de nevendiagonaal door de elementen a1n , a2,n−1 , . . . , an1 (van rechtsboven naar linksonder). • Een vierkante matrix wordt een diagonaalmatrix genoemd als alle elementen die niet op de hoofddiagonaal gelegen zijn, nul zijn, dus aij = 0 voor alle i 6= j (notatie : diag(a11 , . . . , ann )). Zijn in het bijzonder alle elementen op de hoofddiagonaal van een diagonaalmatrix gelijk aan 1, dan noemt men deze een eenheidsmatrix, notatie In×n of In . • Een vierkante matrix waarvan alle elementen boven of onder de hoofddiagonaal nul zijn, noemt men ook een driehoeksmatrix (men spreekt van bo- vendriehoeksmatrix resp. van onderdriehoeksmatrix als de elementen onder resp. boven de hoofddiagonaal nul zijn). • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2.2 2.2.1 2–3 Getransponeerde en toegevoegde van een matrix Getransponeerde van een matrix Is A = (aij ) een m × n−matrix, dan noemt men de n × m−matrix AT = (aji ) die men uit A bekomt door de rijen als kolommen te schrijven, de getransponeerde matrix van A. µ voorbeeld : A = 1 3 −2 4 −1 0 ¶ 1 4 en AT = 3 −1 −2 0 Het is duidelijk dat (AT )T = A. De getransponeerde van een vierkante matrix is uiteraard opnieuw een vierkante matrix. Een vierkante matrix A wordt symmetrisch genoemd als AT = A, m.a.w. als aij = aji voor elke i, j ∈ {1, 2, . . . , n} Een vierkante matrix A wordt anti–symmetrisch of scheef–symmetrisch genoemd als AT = −A, m.a.w. als aij = −aji voor elke i, j ∈ {1, 2, . . . , n} . Uit deze definitie volgt onmiddellijk dat alle elementen op de hoofddiagonaal van een anti–symmetrische matrix nul zijn. 2.2.2 Complex toegevoegde en hermitisch toegevoegde van een matrix Is A = (aij ) een (complexe) matrix, dan noemt men de matrix Ā = (āij ) met āij het complex toegevoegde van aij , de complex toegevoegde matrix van A. Er geldt : Ā¯ = A en voor een reële matrix is vanzelfsprekend Ā = A. Men toont gemakkelijk aan dat de volgorde van complex toevoegen en transponeren mag omgewisseld worden : AT = ĀT Men noteert AT = ĀT meestal als A∗ of A† en men noemt dit de hermitisch toegevoegde matrix van A. Is voor een vierkante complexe matrix voldaan aan A = A∗ dan noemt men A hermitisch. Voor een reële matrix komt dit neer op het symmetrisch zijn van A. Hoofdstuk 2 • Algebra voor ingenieurs • 2–4 2.3 2.3.1 Matrices, determinanten en lineaire stelsels Bewerkingen met matrices Optelling van matrices Zijn A = (aij ) en B = (bij ) beide m × n−matrices (dus van dezelfde orde !), dan definieert men de sommatrix A + B als de m × n−matrix met algemeen element aij + bij Dus : A + B= (aij ) + (bij ) = (aij + bij ) De som van matrices van verschillende orde is niet gedefinieerd. Deze optelling van matrices bezit volgende eigenschappen : • A + B = B + A (de optelling is commutatief) • A + (B + C) = (A + B) + C (de optelling is associatief) • (A + B)T = AT + B T • A + B = Ā + B̄ • (A + B)∗ = A∗ + B ∗ Voor iedere matrix A bestaat er steeds een unieke matrix B waarvoor de sommatrix A + B enkel nulelementen heeft (men noemt A + B dan een nulmatrix van de orde m × n). Deze unieke matrix noemt men de tegengestelde matrix van A en men noteert deze als −A = (−aij ) Voor m × n−matrices A en B definieert men nu ook het verschil A − B als de som van A en −B, dus A − B = A + (−B). voorbeeld : 2 0 −1 1 −1 2 3 −3 1 2 2 1 en B = Voor A = −1 −1 2 3 2 −1 0 2 1 1 2 −2 2.3.2 3 −1 1 3 3 is A + B = 0 1 1 2 1 4 −1 Vermenigvuldiging van een matrix met een getal Is A = (aij ) een m × n−matrix en is λ een reëel of complex getal, dan definieert men de matrix λA als de m × n−matrix met algemeen element λaij Dus : λA= λ(aij ) = (λaij ) • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–5 Om een matrix te vermenigvuldigen met een getal, moet men dus ieder element ervan vermenigvuldigen met dat getal. In het bijzonder is (−1) A = −A De vermenigvuldiging van een matrix met een getal bezit volgende eigenschappen : • λ(A + B) = λA + λB • (λ + µ)A = λA + µA • λ(µA) = (λµ)A • (λA)T = λAT • λA = λ̄ Ā • (λA)∗ = λ̄ A∗ 2.3.3 Vermenigvuldiging van matrices Zij A = (aij ) een m × p−matrix en B = (bij ) een p × n−matrix, dan definieert men de productmatrix A · B als de m × n−matrix met algemeen element cij = p P aik bkj k=1 Dus : A · B= (aij ) · (bij ) = ( p P aik bkj ) k=1 of schematisch : a11 a12 · · · a21 a22 · · · .. . .. . ai1 ai2 · · · .. . a1k · · · a2k · · · .. . aik · · · .. . .. . am1 am2 · · · | amk · · · {z m×p a1p a2p .. . aip .. . amp b11 b12 b 21 b22 . .. .. . • bk1 bk2 .. .. . . bp1 bp2 } | ··· ··· b1j b2j ··· ··· ··· bkj ··· ··· bpj ··· .. . .. . {z b1n b2n .. . bkn .. . bpn } p×n Het product A · B is slechts gedefinieerd als het aantal rijen van B gelijk is aan het aantal kolommen van A. Als A · B gedefinieerd is, dan is B · A niet altijd gedefinieerd. Zo is bvb. voor A een 3 × 4−matrix en B een 4 × 3−matrix zowel A · B als B · A gedefinieerd (resp. een 3 × 3−matrix en een 4 × 4−matrix) terwijl voor A een 3 × 4−matrix en B een 4 × 2−matrix enkel A · B gedefinieerd is. Hoofdstuk 2 • Algebra voor ingenieurs • 2–6 Matrices, determinanten en lineaire stelsels In het bijzonder zijn A · B en B · A beide gedefinieerd én van dezelfde orde als A en B vierkante matrices zijn. De vermenigvuldiging van matrices bezit volgende eigenschappen : • A · (B · C) = (A · B) · C (de vermenigvuldiging is associatief) • (A · B)T = B T · AT (volgorde keert om !) • A · B = Ā · B̄ • (A · B)∗ = B ∗ · A∗ (volgorde keert om !) • λ(A · B) = (λA) · B = A · (λB) • A · (B + C) = A · B + A · C (de vermenigvuldiging is links distributief t.o.v. de optelling) • (A + B) · C = A · C + B · C (de vermenigvuldiging is rechts distributief t.o.v. de optelling) Eén van de opvallendste kenmerken van de matrixvermenigvuldiging van (vierkante) matrices is de niet–commutativiteit, d.w.z. dat over het algemeen A · B 6= B · A µ voorbeeld : 1 2 3 4 ¶ µ ¶ µ ¶ µ ¶ µ ¶ µ ¶ 1 0 3 2 1 0 1 2 1 2 · = terwijl · = 1 1 7 4 1 1 3 4 4 6 Als A · B = B · A, dan zeggen we dat de matrices A en B met elkaar commuteren. Twee diagonaalmatrices van dezelfde orde commuteren steeds met elkaar. De eenheidsmatrix In en de nulmatrix On commuteren met elke vierkante matrix van de orde n. Er geldt : In × A = A × In = A voor elke A ∈ Mat(n, F) en On × A = A × On = On voor elke A ∈ Mat(n, F) Meer algemeen kan men aantonen dat een scalaire matrix (dit is een diagonaalmatrix met alle elementen op de hoofddiagonaal gelijk) commuteert met elke vierkante matrix van dezelfde orde. Een andere merkwaardige eigenschap van de matrixvermenigvuldiging is het bestaan van nuldelers. Het product van twee vierkante matrices van de orde n kan gelijk zijn aan de n × n−nulmatrix zonder dat één van beide matrices zelf een nulmatrix is. Dus A · B = 0 6=⇒ A = 0 of B = 0. Men noemt dergelijke matrices nuldelers. • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels µ voorbeeld : 1 1 1 1 ¶ µ · 1 1 −1 −1 ¶ µ = 0 0 0 0 2–7 ¶ Een gevolg van het bestaan van nuldelers is ook dat uit de gelijkheid A · C = B · C over het algemeen niet mag besloten worden dat A = B. Macht van een vierkante matrix Voor een vierkante matrix A definieert men het kwadraat A2 als het product van A met zichzelf. Een matrix waarvoor A2 = A wordt idempotent genoemd. Algemeen definieert men An (met n > 1) als het product A · A · . . . · A (n factoren) Een matrix A heet nilpotent als Ap = 0 voor zekere p ∈ N, p > 1. Het kleinste natuurlijk getal p waarvoor dit geldt, noemt men de index van nilpotentie. voorbeelden : µ A= µ A= 2.4 1 0 0 0 0 1 0 0 ¶ is idempotent (A2 = A). ¶ is nilpotent met index 2 (A2 = O). Blokmatrices Wanneer men te maken heeft met grote matrices, dan kan het interessant zijn om de matrix op te splitsen in deelmatrices. Een matrix die verdeeld wordt in deelmatrices noemt men een gepartitioneerde matrix of een blokmatrix. Zo is bijvoorbeeld de matrix M = µ µ 0 1 3 3 3 1 1 9 9 9 2 2 9 9 9 3 3 9 9 9 te schrijven als ¶ A B M= of M = C D µ ¶ µ ¶ 2 3 9 9 9 1 0 1 2 3 met de blokken A = ,B= , C = 2 3 en D = 9 9 9 0 1 1 2 3 2 3 9 9 9 A B C D ¶ 1 0 2 2 2 Een bijzonder type van blokmatrix is een blokdiagonaalmatrix. Hoofdstuk 2 • Algebra voor ingenieurs • 2–8 Matrices, determinanten en lineaire stelsels Zulk een vierkante n × n–matrix heeft de gedaante A = diag(A1 , A2 , . . . , Ap ) waarbij elk blok Ai een ni × ni –matrix is met voorbeeld : 1 3 0 0 0 0 0 2 4 0 0 0 0 0 0 0 1 2 9 0 0 0 0 3 4 8 0 0 0 0 5 6 7 0 0 0 0 0 0 0 5 5 0 0 0 0 0 5 5 p X ni = n i=1 Bewerkingen met blokmatrices Zijn twee m × n–matrices A en B op dezelfde wijze verdeeld in blokken, dan kan men de som A + B eveneens op deze wijze in blokken verdelen en dan is elk blok van A + B de matrixsom van de corresponderende blokken van A en B . Ook het product van twee blokmatrices kan soms worden bepaald door de afzonderlijke blokken te vermenigvuldigen. Is A een m × p–matrix en B een p × n–matrix die beide verdeeld zijn in blokken zó dat het aantal blokken vermenigvuldiging toelaat, dan zijn de blokken waarin de productmatrix A · B kan worden verdeeld te vinden als producten van de blokken van A met de blokken van B . voorbeeld : 2 −3 zij A = 1 5 0 −4 µ Dan is A · B = 6 4 −2 1 µ µ ¶ ¶ 1 0 −4 A11 A12 B1 −2 3 −1 = en B = −3 7 = A21 A22 B2 −1 3 −2 7 −1 5 2 ¶ µ ¶ µ ¶ −5 4 A11 A12 B1 A11 B1 + A12 B2 · = = . . . = −6 2 A21 A22 B2 A21 B1 + A22 B2 2 1 Door het gebruik van blokmatrices kan men het product van twee matrices op verschillende wijzen interpreteren. Interpreteert men de m×p–matrix A als een£ blokmatrix [A] met één ¤ blok en de p×n– matrix B als een blokmatrix met n blokken B∗1 B∗2 . . . £ B∗n (de blokken zijn de¤ kolommen van B ), dan bekomt men A·B als de blokmatrix AB∗1 AB∗2 . . . AB∗n . A1∗ A2∗ Anderzijds kan men A opvatten als een blokmatrix .. (de blokken zijn de . Am∗ • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–9 rijen van A) en B als een blokmatrix [B] met één blok. A1∗ B A2∗ B Het product A · B wordt dan bekomen als de blokmatrix .. . Am∗ B 2.5 2.5.1 Determinant van een vierkante matrix Definitie van determinant Historisch gezien werd het begrip determinant veel eerder ingevoerd dan het begrip matrix. Een determinant was aanvankelijk een getal dat bepaalde (= determineerde) of een stelsel van n lineaire vergelijkingen met n onbekenden al dan niet een unieke oplossing bezat. In die gedaante werden determinanten al gebruikt door de Japanse wiskundige Takakazu Seki en door Leibniz in 1683, lang voor dat het matrixbegrip was gekend. Het is pas veel later dat determinanten geassocieerd werden met vierkante matrices. Eén van de grootste autoriteiten op het vlak van determinanten was de Schotse wiskundige Thomas Muir (1844–1934) die in 1882 “Treatise on the theory of determinants ” publiceerde en in 1890 het eerste deel van het vijfdelige levenswerk “History of determinants ”. Figuur 2.2: Takakazu Seki (1642–1708) en Gottfried Wilhelm von Leibniz (1646–1716) Er zijn verschillende definities voor determinant mogelijk. De eenvoudigste is een recursieve definitie. Hoofdstuk 2 • Algebra voor ingenieurs • 2–10 R Matrices, determinanten en lineaire stelsels DEFINITIE 2.2 determinant : eerste definitie (recursief ) De determinant van een 1 × 1–matrix A = (a µ 11 ) is het ¶element a11 . a11 a12 De determinant van een 2 × 2–matrix A = is het getal a11 a22 − a12 a21 a21 a22 De determinant van een n × n–matrix A = (aij ) is het getal n X aij Aij j=1 met i ∈ {1, 2, . . . , n} vast gekozen en Aij = (−1)i+j maal de determinant van Mij , waarbij Mij de (n − 1) × (n − 1)−matrix is die men bekomt uit A door schrappen van de i−de rij en de j−de kolom. De matrix Mij in deze definitie, bekomen uit A door het schrappen van de i–de rij en de j –de kolom, noemt men de minor van het element aij en Aij = (−1)i+j · det Mij heet de cofactor van het element aij . De determinant van A wordt meestal genoteerd als det A, maar ook |A| en |aij | zijn gangbare notaties. ¯ ¯ ¯ ¯ ¯ ¯ In det A = ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ .. .. .. ¯¯ spreekt men ook van de rijen en kolommen, zoals . . . ¯ an1 an2 · · · ann ¯ dat het geval is bij de matrix A. a11 a12 · · · a21 a22 · · · a1n a2n De hier gegeven recursieve definitie staat in de literatuur meestal gekend als de ontwikkelingsformule van Laplace. Door i vast te kiezen, zegt men dat de determinant van A berekend wordt door ontwikkeling naar de i−de rij. De determinant is dan de som van alle producten van de elementen van die rij met hun bijhorende cofactor. Men kan bewijzen dat det A onafhankelijk is van de keuze van i. Men kan de determinant van A dus berekenen door te ontwikkelen naar om het even welke rij. Bovendien kan men ook aantonen dat det A even goed kan berekend worden door te sommeren over alle elementen van een vaste kolom (ontwikkeling van de determinant volgens kolom j ), waarbij de keuze van die kolom ook vrij is. Er geldt dus ook : det A = n P aij Aij met j ∈ {1, 2, . . . , n} vast gekozen. 1 −2 0 voorbeeld : bereken de determinant van A = 2 −1 1 1 3 −2 i=1 We berekenen det A door ontwikkeling naar de 1ste rij (dus i = 1 vast gekozen). We hebben dus : det A = 3 P a1j A1j met A1j = (−1)1+j det M1j . j=1 • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels µ Daarbij is M11 = µ −1 1 3 −2 2–11 ¶ en A11 = (−1)1+1 · (2 − 3) = −1 ¶ 2 1 M12 = en A12 = (−1)1+2 · (−4 − 1) = 5 1 −2 µ ¶ 2 −1 M13 = en A13 = (−1)1+3 · (6 + 1) = 7 1 3 zodat dus det A = 1 · (−1) + (−2) · 5 + 0 · 7 = −11 De berekeningswijze van een determinant door ontwikkeling naar een rij of kolom is vooral interessant wannneer de matrix veel nullen bevat. De cofactoren van die nulelementen moeten dan niet berekend worden. Bijzonder geval : Met de ontwikkelingsformule leidt men gemakkelijk af dat de determinant van een bovendriehoeksmatrix en van een onderdriehoeksmatrix gelijk is aan het product van de elementen op de hoofddiagonaal. a11 a12 . . . a1n a22 . . . a2n Dus : det .. = det . . . . ann a11 a21 a22 .. . .. . ... an1 an2 . . . ann n Y aii = i=1 Dat geldt ook voor een diagonaalmatrix : det(diag(a11 , a22 , . . . , ann )) = n Y aii i=1 Heel in het bijzonder is det In = 1 met In de n × n eenheidsmatrix. 2.5.2 Eigenschappen van determinanten In de twee volgende stellingen die we formuleren zonder bewijs, worden de belangrijkste eigenschappen van determinanten verwoord. ¥ STELLING 2.1 multilineariteitseigenschap van determinanten Zijn A1 t.e.m. An de kolommen van een n × n–matrix A (dus A = (A1 A2 . . . An )) en is de i– de kolom te schrijven als Ai = β Bi + γ Ci met β, γ ∈ R dan geldt : det(A1 . . . Ai . . . An ) = β det(A1 . . . Bi . . . An ) + γ det(A1 . . . Ci . . . An ) ¥ STELLING 2.2 alterneringseigenschap van determinanten Zijn A1 t.e.m. An de kolommen van een n × n–matrix A (dus A = (A1 A2 . . . An )) dan geldt : det(A1 . . . Ai . . . Aj . . . An ) = − det(A1 . . . Aj . . . Ai . . . An ) Hoofdstuk 2 • Algebra voor ingenieurs • 2–12 Matrices, determinanten en lineaire stelsels De alterneringseigenschap houdt dus in dat de determinant van teken verandert bij verwisseling van twee kolommen. Opmerking : De eigenschappen van de determinant die verwoord zijn in de stellingen 2.1 en 2.2 (multilineariteit (d.i. lineariteit voor iedere kolom) en alterneringseigenschap) kunnen worden gebruikt om de determinant van een matrix op een andere manier te definiëren. Men kan namelijk stellen : R DEFINITIE 2.3 determinant : tweede definitie De determinantfunctie det is de unieke afbeelding van de verzameling Mat(n, F) van de n × n–matrices met elementen in F naar F die multilineariteit in de kolom– men vertoont en alternerend is en waarvoor det In = 1 met In de n × n eenheids– matrix. Gevolgen van de stellingen 2.1 en 2.2 1. De determinant van een vierkante matrix met twee gelijke kolommen is nul. 2. Als men de elementen van een willekeurige kolom van A vermenigvuldigt met een getal λ dan wordt de determinant met λ vermenigvuldigd. Gevolg : det(λA) = λn det A en in het bijzonder det(−A) = (−1)n det A voor een n × n−matrix A 3. De waarde van een determinant verandert niet als men bij een willekeurige kolom een veelvoud van een andere kolom optelt. bewijs : 1. Uit de alterneringseigenschap volgt dat de determinant van teken verandert bij omwisseling van die twee kolommen en anderzijds blijft de determinant onveranderd omdat deze kolommen gelijk zijn. Dus det A = det(−A) zodat det A = 0. 2. Is een bijzonder geval van de multilineariteitseigenschap. 3. Met de multilineariteitseigenschap bekomt men : det(A1 . . . Ai +λAj . . . Aj . . . An ) = det(A1 . . . Ai . . . Aj . . . An )+λ det(A1 . . . Aj . . . Aj . . . An ). Daaruit volgt het gestelde omdat de laatste determinant nul is (twee gelijke kolommen). ¤ • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–13 De hierboven geformuleerde eigenschappen blijven geldig wanneer men ze herformuleert voor rijen i.p.v. voor kolommen. Dat is het gevolg van de volgende eigenschap : ¥ STELLING 2.3 determinant van een getransponeerde Is A een vierkante matrix met getransponeerde AT dan geldt : det(AT ) = det A bewijs (door volledige inductie) : Voor een 1 × 1 matrix is de stelling triviaal. Onderstel nu dat de stelling geldig is voor determinanten van k × k –matrices en beschouw een (k + 1) × (k + 1)–matrix A. De cofactor van een element a1j van A is gelijk aan de cofactor van het element aj1 in AT omdat de cofactoren berekend worden met k × k –determinanten waarvoor de stelling geldt (inductiehypothese). Bijgevolg is de waarde van det A berekend door ontwikkeling naar de eerste rij gelijk aan de waarde van det AT berekend door ontwikkeling naar de eerste kolom, dus det A = det AT voor matrices A van de orde k + 1. Door het principe van volledige inductie is de stelling waar voor determinanten van matrices van elke orde. ¤ De determinantafbeelding is een multiplicatieve afbeelding zoals blijkt uit volgende stelling (zonder bewijs) : ¥ STELLING 2.4 multiplicatieve eigenschap van determinant Zijn A en B vierkante matrices, dan geldt : det(A · B) = det A · det B Opmerking : Stelling 2.4 heeft geen analogon voor sommen van matrices. M.a.w. de determinantafbeelding is niet additief wat betekent dat over het algemeen det(A + B) 6= det A + det B . Naast de reeds gegeven recursieve definitie en de definitie van determinant als multilineaire alternerende afbeelding, kan het determinantbegrip nog op een derde wijze worden ingevoerd. We geven hier deze definitie voor de volledigheid, maar we zullen er verder geen gebruik van maken. Hoofdstuk 2 • Algebra voor ingenieurs • 2–14 R Matrices, determinanten en lineaire stelsels DEFINITIE 2.4 determinant : derde definitie De Xdeterminant van een n × n–matrix A = (aij ) is per definitie het getal sgn(σ)a1σ(1) a2σ(2) . . . anσ(n) waarbij gesommeerd wordt over alle permutaties σ σ∈Sn van {1, 2, . . . , n} en waarbij sgn(σ) de signatuur van de permutatie σ is (+1 voor een even permutatie (d.i. bestaande uit een even aantal omwisselingen van twee elementen) en -1 voor een oneven permutatie. Passen we deze definitie bvb. toe om de determinant van een 3 × 3–matrix te berekenen. Er zijn zes permutaties µvan de verzameling ¶ {1, 2, 3} mogelijk. Stellen we zo’n per1 2 3 mutatie kort voor door , dan zijn deze zes permutaties : µ 1 2 3 1 2 3 ¶ µ , P (1) P (2) P (3) ¶ µ ¶ µ ¶ µ ¶ µ ¶ 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 , , , en 2 1 3 3 2 1 1 3 2 2 3 1 3 1 2 Deze hebben als signatuur +1, −1, −1, −1, +1 en +1 zodat we bekomen : a11 a12 a13 det a21 a22 a23 = a11 a22 a33 −a12 a21 a33 −a13 a22 a31 −a11 a23 a32 +a12 a23 a31 +a13 a21 a32 a31 a32 a33 2.5.3 Determinant van een 3 × 3−matrix : de regel van Sarrus De regel van Sarrus, genoemd naar de Franse wiskundige Pierre Sarrus (1798–1861), is een eenvoudig mnemotechnisch middel dat toelaat om snel een 3×3−determinant te berekenen. Daartoe schrijft men de eerste twee kolommen nogmaals rechts naast de determinant. De waarde van de determinant krijgen we nu door de drie “hoofddiagonaalproducten” op te tellen en daarvan de drie “nevendiagonaalproducten” af te trekken. det A = a11 a22 a33 + a12 a23 a31 + a13 a21 a32 − a13 a22 a31 − a11 a23 a32 − a12 a21 a33 • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–15 ¯ ¯ ¯ 1 0 2 ¯ ¯ ¯ voorbeeld : bereken ¯¯ 5 1 4 ¯¯ ¯ 1 2 3 ¯ ¯ ¯ ¯ 1 0 2 ¯ 1 0 ¯ ¯ We herschrijven : ¯¯ 5 1 4 ¯¯ 5 1 en berekenen : ¯ 1 2 3 ¯ 1 2 det A = 1 · 1 · 3 + 0 · 4 · 1 + 2 · 5 · 2 − 1 · 1 · 2 − 2 · 4 · 1 − 3 · 5 · 0 = 13 Het is niet mogelijk om deze regel eenvoudig uit te breiden voor determinanten van hogere orde. 2.5.4 Meetkundige toepassingen van de determinant Determinanten vinden o.a. toepassingen in de analytische meetkunde. µ ¶ a11 a12 Zo is | det A| met A de 2 × 2–matrix , de oppervlakte van het parala21 a22 lellogram bepaald door de vectoren a11~1x +a21~1y en a21~1x +a22~1y (de kolomvectoren). Analoog is voor een 3 × 3–matrix | det A| gelijk aan het volume van het parallellepipedum bepaald door de vectoren gevormd met de kolommen van A. 2.6 2.6.1 R Inverse matrix van een vierkante matrix Definitie van inverse matrix DEFINITIE 2.5 inverteerbare of reguliere matrix Zij In de n × n−eenheidsmatrix. Als voor de n × n–matrix A een matrix X kan gevonden worden waarvoor geldt : A · X = X · A = In dan noemt men A inverteerbaar (of regulier). Opmerking : Als een matrix A inverteerbaar is, dan is de matrix X uit bovenstaande definitie uniek. Immers is ook A · Y = In , dan volgt X · (A · Y ) = X · In = X en dan ook (X · A) · Y = X en dus In · Y = X waaruit Y = X . Hoofdstuk 2 • Algebra voor ingenieurs • 2–16 Matrices, determinanten en lineaire stelsels De unieke matrix X waarvoor A · X = X · A = In (voor zover die bestaat), wordt dan de inverse matrix van A genoemd en genoteerd als A−1 . Men kan bewijzen dat het bestaan van een linksinverse alleen (X · A = In ) of van een rechtsinverse alleen (A · X = In ) voldoende is om hieruit de inverteerbaarheid van A te kunnen besluiten. Men toont ook gemakkelijk volgende eigenschappen aan : • Als A inverteerbaar is met inverse A−1 dan is ook A−1 inverteerbaar met inverse A • Het product van twee inverteerbare n × n–matrices is inverteerbaar en er geldt (A · B)−1 = B −1 · A−1 • Als A inverteerbaar is dan is de getransponeerde AT ook inverteerbaar met inverse (AT )−1 = (A−1 )T • Als A inverteerbaar is en λ 6= 0 dan is λA ook inverteerbaar met inverse (λA)−1 = λ1 A−1 Merk op dat de som van twee inverteerbare matrices niet noodzakelijk een inverteerbare matrix is en zelfs wanneer dat toch het geval is dat dan over het algemeen (A + B)−1 6= A−1 + B −1 2.6.2 Criterium voor inverteerbaarheid van een matrix Niet iedere vierkante matrix is inverteerbaar. µ Zo is bvb. de 2 × 2–matrix A = µ van een matrix X = x y z u ¶ 1 0 0 0 ¶ niet inverteerbaar, omdat het bestaan waarvoor A · X = I2 leidt tot 0 = 0 y + 0 u = 1 wat onmogelijk is. Een vierkante matrix die niet–inverteerbaar is wordt ook een singuliere matrix genoemd. De in voorgaande paragraaf ingevoerde determinant blijkt een handig criterium op te leveren om de inverteerbaarheid van een vierkante matrix te onderzoeken. We hebben namelijk volgende stelling : • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels ¥ STELLING 2.5 2–17 criterium voor inverteerbaarheid Zij A een vierkante matrix met reële of complexe elementen. Dan geldt : A is inverteerbaar als en slechts als det A 6= 0 bewijs : Als A inverteerbaar is, dan bestaat er een matrix X waarvoor A·X = In . Met de multiplicatieve eigenschap van determinant (stelling 2.4) volgt hieruit dat det A·det X = det In = 1 zodat noodzakelijk det A 6= 0. Omgekeerd, onderstel dat det A 6= 0, dan moeten we bewijzen dat A inverteerbaar is. We kunnen dit bijvoorbeeld aantonen door de inverse matrix van A expliciet te construeren (zie stelling 2.6). ¤ Gevolgen : Elke nilpotente matrix is singulier. Elke bovendriehoeksmatrix (benedendriehoeksmatrix, diagonaalmatrix) met alle elementen op de hoofddiagonaal verschillend van nul, is inverteerbaar. 2.6.3 Berekening van de inverse matrix In de volgende stelling wordt een formule bewezen die toelaat om de inverse matrix van een inverteerbare matrix te bepalen. Meteen wordt daarmee aangetoond dat een vierkante matrix met determinant verschillend van nul, inverteerbaar is. We definiëren eerst : R DEFINITIE 2.6 geadju(n)geerde matrix Zij A = (aij ) een n × n−matrix. De geadjungeerde matrix adj A (ook geadjugeerde of adjunct genaamd) is de getransponeerde van de matrix (Aij ) met Aij de cofactor van het element aij , dus adj A = (Aij )T = (Aji ) ¥ STELLING 2.6 formule voor inverse matrix Als A een inverteerbare matrix is, dan wordt de inverse A−1 gegeven door : 1 A−1 = adj A det A Hoofdstuk 2 • Algebra voor ingenieurs • 2–18 Matrices, determinanten en lineaire stelsels bewijs : We berekenen adj A · A Stellen we B = adj A, dan is het element op de i–de rij en de j –de kolom van het product B · A gelijk aan cij = Voor i = j is dus cii = de i–de kolom van A) Pn k=1 n X k=1 bik akj = n X Aki akj . k=1 Aki aki = det A (det A berekend door ontwikkeling naar We tonen nu aan dat cij = 0 voor i 6= j (m.a.w. de som van de producten van de elementen van een kolom met de cofactoren van de overeenkomstige elementen van een andere kolom is steeds nul). Beschouw daarvoor de matrix à die uit A ontstaat door de i–de kolom te vervangen door een copie van de j –de kolom. Omdat à twee gelijke kolommen bezit, is det à = 0. Wanneer P we det à berekenen door ontwikkeling naar de i– kolom dan bekomen we precies nk=1 akj Aki . We hebben dus dat adj A · A gelijk is aan de diagonaalmatrix met op de hoofddiagonaal telkens det A, dit is de matrix det A · In . Daaruit volgt het gestelde. ¤ 1 −2 0 voorbeeld : bepaal de inverse matrix van A = 2 −1 1 1 3 −2 Vermits det A = −11 6= 0, is A inverteerbaar. We berekenen de cofactoren van alle elementen van A : A11 = (−1)1+1 · (2 − 3) = −1, A12 = (−1)1+2 · (−4 − 1) = 5, A13 = (−1)1+3 · (6 + 1) = 7, A21 = (−1)2+1 · (4 − 0) = −4, A22 = (−1)2+2 · (−2 − 0) = −2, A23 = (−1)2+3 · (3 + 2) = −5, A31 = (−1)3+1 · (−2 − 0) = −2, A32 = (−1)3+2 · (1 − 0) = −1, A33 = (−1)3+3 · (−1 + 4) = 3 T −1 5 7 −1 −4 −2 Dus adj A = −4 −2 −5 = 5 −2 −1 −2 −1 3 7 −5 3 1 −1 −4 −2 11 1 5 en bijgevolg A−1 = − 5 −2 −1 = − 11 11 7 7 −5 3 − 11 • Algebra voor ingenieurs • 4 11 2 11 5 11 2 11 1 11 3 − 11 Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–19 Inverse van een 2 × 2–matrix µ Met de formule uit voorgaande stelling vindt men voor de inverse van A = 1 de matrix ad − bc µ d −b −c a ¶ a b c d ¶ . Dat levert ons een mnemotechnisch middel voor de bepaling van de inverse van een inverteerbare 2 × 2–matrix : verwissel de elementen op de hoofddiagonaal, verander de elementen op de nevendiagonaal van teken en vermenigvuldig de aldus bekomen matrix met het omgekeerde van de determinant. 2.6.4 Determinant en inverse van een blokmatrix ¶ A B waarbij A een Onderstel dat M een blokmatrix is van de vorm M = C D p × p–matrix en D een q × q –matrix is (en B een p × q en C een q × p–matrix). µ Men kan zich afvragen of er een verband is tussen de determinant van M en de determinanten van de vierkante blokken die deel uitmaken van de blokverdeling van M (als p = q dan zijn alle blokken vierkant). Een antwoord op deze vraag wordt gegeven door de volgende regel : µ Is A inverteerbaar, dan is det A B C D ¶ = det A · det(D − CA−1 B) Het bewijs van deze regel steunt op de ontbinding µ M= A B C D ¶ µ = A O O Iq ¶ ¶ µ ¶ µ Ip O Ip A−1 B · · C Iq O D − CA−1 B waaruit volgt det M = det A · 1 · det(D − CA−1 B) De matrix D − CA−1 B die voorkomt in de tweede factor, wordt het Schurcomplement van A genoemd, naar de wiskundige Issai Schur (1875–1941). Is in het bijzonder B = O of C = O dan is det M = det A · det D. Er geldt dus dat de determinant van een blokdiagonaalmatrix, een blokbovendriehoeksmatrix en een blokbenedendriehoeksmatrix gelijk is aan het product van de determinanten van de blokken op de hoofddiagonaal. µ det Hoofdstuk 2 A O C D ¶ µ = det A B O D ¶ µ = det A O O D ¶ = det A · det D • Algebra voor ingenieurs • 2–20 Matrices, determinanten en lineaire stelsels µ Onderstel nu dat M = A B O D ¶ een inverteerbare blokbovendriehoeksmatrix is (de blokken A en D zijn dan noodzakelijk inverteerbare matrices). µ We stellen de inverse M −1 ook voor als een blokmatrix X Y Z U ¶ en we bepalen de blokken daarvan door uit te drukken dat M · M −1 = I : µ A B O D ¶ µ ¶ µ ¶ X Y Ip O · = Z U O Iq Hieruit volgen de voorwaarden AX + BZ = Ip AY + BU = O DZ = O DU = Iq Daaruit volgt : U = D−1 , Z = O, X = A−1 en Y = −A−1 BD−1 µ We besluiten dus dat A B O D µ ¶−1 = A−1 −A−1 BD−1 O D−1 ¶ Op analoge wijze vindt men een uitdrukking voor de inverse van een blokbenedendriehoeksmatrix. 2.7 2.7.1 (Determinanten)rang van een matrix Definitie van determinantenrang Een deelmatrix van een m × n−matrix A is elke matrix die men uit A bekomt door het schrappen van een aantal p (met 0 ≤ p < m) rijen en/of een aantal q (met 0 ≤ q < n) kolommen van A. Vanzelfsprekend is A zelf een deelmatrix van A (voor p = q = 0). We definiëren nu de determinantenrang van A. R DEFINITIE 2.7 determinantenrang van een matrix Zij A een m × n−matrix De determinantenrang (kortweg rang) van A is het grootste natuurlijk getal r waarvoor er een vierkante r × r–deelmatrix van A bestaat met determinant verschillend van nul. De determinant van een r × r–deelmatrix van A met rang r wordt ook een hoofddeterminant van A genoemd. We noteren : rang A = r • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–21 Opmerking : In hoofdstuk 3 zullen we de begrippen kolommenrang en rijenrang van een matrix definiëren en we zullen een stelling formuleren die zegt dat kolommenrang = rijenrang = determinantenrang, zodat de afgekorte benaming “rang”gerechtvaardigd is. Eigenschappen : • Voor een m × n−matrix is vanzelfsprekend 0 ≤ r ≤ min {m, n} en in het bijzonder is voor een vierkante matrix van de orde n de rang kleiner dan of gelijk aan n. Een nulmatrix heeft rang 0. • Is A een vierkante matrix van de orde n dan is A inverteerbaar (m.a.w. det A 6= 0) als en slechts als r = n • rang AT = rang A • voor A, B ∈ Mat(m, n, F) geldt : rang (A + B ) ≤ rang A + rang B • voor A ∈ Mat(m, n, F) en B ∈ Mat(n, p, F) geldt : rang A + rang B − n ≤ rang (A · B ) ≤ min{rang A, rang B} (ongelijkheid van Sylvester) • voor A, B ∈ Mat(n, n, F) geldt : rang (A · B ) = rang A als B inverteerbaar is • voor A, B ∈ Mat(n, n, F) geldt : rang (B · A) = rang A als B inverteerbaar is 2.7.2 Elementaire rij-operaties en elementaire matrices Het bepalen van de rang van een matrix met behulp van de definitie is een rekenintensieve bezigheid indien de orde van de matrix groot is. Daarom zullen we de matrix eerst herleiden naar een eenvoudiger gedaante door het uitvoeren van elementaire bewerkingen op de rijen en/of kolommen ervan waarbij de rang van de matrix behouden blijft. Onder een elementaire rijbewerking op een matrix A verstaan we één van volgende bewerkingen : • Het onderling verwisselen van twee rijen. • Het vermenigvuldigen van een rij met een van nul verschillend getal. • Het optellen van een veelvoud van een rij bij een andere rij. Hoofdstuk 2 • Algebra voor ingenieurs • 2–22 Matrices, determinanten en lineaire stelsels Analoog kan men elementaire kolombewerkingen van een matrix beschouwen. In het bijzonder kan men de n × n−eenheidsmatrix In onderwerpen aan elementaire rijbewerkingen. Elke matrix die wordt bekomen uit de eenheidsmatrix door toepassing van een enkele elementaire rijbewerking noemt men een elementaire matrix. Omdat det In = 1 6= 0 heeft ook elke elementaire matrix een determinant verschillend van nul (omdat een determinant enkel van teken verandert bij verwisseling van twee rijen, ongewijzigd blijft wanneer een rij bij een andere wordt opgeteld en met een constante wordt vermenigvuldigd wanneer een rij met een constante wordt vermenigvuldigd). Elementaire matrices zijn dus inverteerbaar. Als E een elementaire matrix is (geassocieerd aan een elementaire rijbewerking), dan is de inverse F = E −1 ook een elementaire matrix (geassocieerd met de omgekeerde rijbewerking). De matrix die men bekomt door op een matrix A een elementaire rijbewerking uit te voeren is niets anders dan het product E · A waarbij E de elementaire matrix is die correspondeert met de elementaire rijbewerking. Opmerking : Analoog kan men elementaire kolombewerkingen op een matrix A voorstellen door rechtse vermenigvuldiging van A met elementaire matrices (bekomen door die kolombewerkingen uit te voeren op de eenheidsmatrix). Men definieert nu : R DEFINITIE 2.8 (rij)equivalente matrices Zij A en B m × n−matrices. Dan heten A en B rijequivalent als en slechts B uit A kan worden bekomen door toepassing van een eindig aantal elementaire rijbewerkingen op A, dus a.s.a. B = C · A met C = Ek · . . . · E1 het product van een eindig aantal elemen– taire matrices. A en B heten equivalent als en slechts als B uit A kan worden bekomen door toepassing van een eindig aantal elementaire rij– en kolombewerkingen op A, dus a.s.a. B = C · A · D met C en D elk het product van een eindig aantal elementaire matrices. r Notatie : als A en B rijequivalent (resp. equivalent) zijn, dan noteert men A ∼ B (resp. A ∼ B ). • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–23 Omdat de rang van een matrix niet verandert bij linkse of rechtse vermenigvuldiging met een inverteerbare matrix, kan men volgende stelling formuleren : ¥ STELLING 2.7 ranggelijkheid van (rij)equivalente matrices Zijn A en B (rij)equivalente m × n–matrices, dan geldt : rang A = rang B Bovenstaande stelling geeft een methode om de rang van een matrix te bepalen. Men zoekt een matrix die (rij)equivalent is met de gegeven matrix en waarvan de rang eenvoudig kan worden gevonden. Dat geeft dan meteen ook de rang van de oorspronkelijke matrix. In de volgende paragraaf bespreken we enkele belangrijke soorten van matrices die (rij)equivalent zijn met een gegeven matrix en waarvan de rang snel kan worden gevonden. Men noemt deze matrices ook gereduceerde vormen van de oorspronkelijke matrix. 2.8 2.8.1 R Gereduceerde vormen van een matrix Echelonmatrix of Gauss–normale vorm DEFINITIE 2.9 echelonmatrix Een m × n−matrix U wordt een echelonmatrix genoemd als U = O of als aan volgende twee voorwaarden is voldaan : (i) De rijen waarvan alle elementen nul zijn, staan lager dan de rijen waarvan niet alle elementen nul zijn. (ii) Noemen we het eerste van nul verschillend element in een niet–nulrij de leider van die rij, dan bevindt de leider van rij i zich steeds links van de leider van rij i + 1. voorbeeld : een echelonmatrix (met aanduiding van de pivot–elementen) Hoofdstuk 2 2 0 0 0 0 0 1 0 0 0 0 0 0 3 0 0 0 0 0 0 2 0 0 0 1 1 3 0 0 0 2 2 1 2 0 0 1 0 2 1 0 0 • Algebra voor ingenieurs • 2–24 Matrices, determinanten en lineaire stelsels De leiders staan ook gekend onder de naam spilelementen of pivotelementen. ¥ STELLING 2.8 Gauss–normale vorm Elke m × n–matrix A is rijequivalent met een echelonmatrix U . Deze matrix is niet uniek. bewijs : Door middel van onderstaand algoritme wordt een matrix herleid naar een echelonmatrix : stap 1 : stel dat j1 de eerste kolom is die een niet–nulelement bevat. Verwissel nu de rijen zó dat dit element optreedt in de eerste rij, m.a.w. a1j1 = 6 0. stap 2 : pas voor elke i > 1 de volgende elementaire rijbewerking toe : rij i vervangen door a1j1 maal rij i min aij1 maal rij 1. Herhaal de stappen 1 en 2 met de deelmatrix bestaande uit alle rijen behalve de eerste rij. Herhaalt men dit procédé, dan bekomt men een echelonmatrix. ¤ Het algoritme waarmee een matrix wordt herleid naar een echelonmatrix staat gekend als de Gauss–reductie van die matrix. De bekomen echelonmatrix is niet uniek en wordt ook een Gauss–normale vorm van de matrix genoemd. voorbeeld : 2 4 2 4 2 0 ∼ 0 0 3 0 0 2 6 −1 9 −1 3 −12 0 0 1 1 2 3 0 4 0 0 6 8 7 13 1 −2 −12 0 2 3 0 1 6 2 3 0 −12 0 −12 4 −2 −8 ∼ ∼ 0 6 −2 2 2 0 0 0 6 −2 2 2 0 0 6 −8 24 0 • Algebra voor ingenieurs • 0 1 6 4 −2 −8 0 −12 24 0 −12 24 Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2.8.2 R 2–25 Gereduceerde echelonvorm of Hermite–normale vorm DEFINITIE 2.10 gereduceerde rijechelonmatrix Een m × n−matrix U wordt een gereduceerde (rij)echelonmatrix genoemd als U = O of als aan volgende voorwaarden is voldaan : (i) De rijen waarvan alle elementen nul zijn, staan lager dan de rijen waarvan niet alle elementen nul zijn. (ii) Noemen we het eerste van nul verschillend element in een niet–nulrij de leider van die rij, dan bevindt de leider van rij i zich steeds links van de leider van rij i + 1. (iii) Alle leiders zijn gelijk aan 1. (iv) Elke kolom die een leider bevat, bevat daarnaast alleen nullen. Een gereduceerde echelonmatrix is dus een bijzondere echelonmatrix. Het algoritme van Gauss kan worden verfijnd om een matrix te herleiden naar een gereduceerde echelonmatrix zoals wordt aangetoond in de volgende stelling. ¥ STELLING 2.9 Hermite–normale vorm Elke m × n–matrix A is rijequivalent met een gereduceerde echelonmatrix H . Deze matrix is uniek. bewijs : Onderstel dat de matrix A reeds werd herleid naar een echelonmatrix met het algoritme van Gauss. Zij u1j1 , . . . , urjr de leiders van deze matrix U . Voer nu de elementaire rijbewerkingen uit waarbij de k –de rij Rk vervangen wordt door −akji Ri +aiji Rk voor k = 1, . . . , i − 1 voor achtereenvolgens i = 2, i = 3, . . . , i = r. Dan bekomt men een echelonmatrix waarbij de leiders de enige niet–nulelementen zijn in hun kolom. Vervolgens vermenigvuldigen we elke rij Ri met 1 voor 1 ≤ i ≤ r zodat alle leiders aiji gelijk worden aan 1. De bekomen matrix is dan een gereduceerde echelonmatrix. Het bewijs van de uniciteit laten we achterwege. ¤ Het algoritme om een matrix ter herleiden naar een gereduceerde echelonmatrix staat ook gekend als de Gauss–Jordanreductie van die matrix, naar de wiskundige Carl Friedrich Gauss (1777–1855) en de landmeter Wilhelm Jordan (1842-1899) Hoofdstuk 2 • Algebra voor ingenieurs • 2–26 Matrices, determinanten en lineaire stelsels (niet te verwarren met de wiskundige Camille Jordan die ook belangrijke bijdragen leverde tot de matrixalgebra). De unieke gereduceerde (rij)echelonmatrix wordt ook de Hermite normale vorm, de Gauss–Jordanvorm of de rijcanonieke vorm van de matrix genoemd. voorbeeld : We hernemen het voorbeeld van hierboven. 2 4 2 4 3 0 0 2 6 −1 9 −1 1 1 2 3 6 8 7 13 2 3 0 −12 waarbij reeds de echelonmatrix 0 0 0 0 0 1 6 4 −2 −8 was gevonden. 0 −12 24 0 0 0 Door verdere reductie met het algoritme uit het bewijs bekomt men hieruit : −24 0 −12 0 −12 4 0 0 0 0 0 0 1 1 0 2 0 1 − 13 ∼ 0 0 0 0 0 0 −6 −2 −12 0 5 0 2 0 1 1 −2 0 0 −48 288 0 −8 ∼ 24 0 0 0 0 144 0 144 −48 0 0 0 −12 0 0 0 720 144 24 0 Deze laatste is de gereduceerde echelonvorm van A. Figuur 2.3: Charles Hermite (1822–1901) en Wilhelm Jordan (1842–1899) • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2.8.3 2–27 Rang van een matrix via de echelonvorm De twee gereduceerde vormen, Gauss—normale vorm en Hermite–normale vorm, die hierboven werden ingevoerd zijn van praktisch nut om de rang van een matrix te bepalen. Omdat de matrix A rijequivalent is met haar echelonvorm UA en met haar gereduceerde echelonvorm HA geldt immers dat : rang A = rang UA = rang HA Omdat de rang van een echelonmatrix en van een gereduceerde echelonmatrix gelijk is aan het aantal spilelementen, of dus ook gelijk aan het aantal niet–nulrijen, kunnen we de rang van A zo bepalen. Dus : rang A = r = aantal leiders in UA of HA = aantal niet–nulrijen in UA of HA We kunnen nu ook nog een andere karakterisering geven voor een inverteerbare matrix. ¥ STELLING 2.10 karakterisering van inverteerbare matrix Volgende uitspraken zijn gelijkwaardig (i) De n × n–matrix A is inverteerbaar (ii) A is rijequivalent met de eenheidsmatrix In (iii) A is een product van elementaire matrices (iv) De rang van A is gelijk aan n bewijs : Zij A inverteerbaar. Dan is det A 6= 0 zodat A determinantenrang n heeft. De gereduceerde echelonmatrix van A bevat bijgevolg geen nulrijen en de n spilelementen liggen op de hoofddiagonaal zodat deze matrix enkel de n×n eenheidsmatrix kan zijn. Uit A ∼ In volgt dat er een matrix C bestaat die een product is van een eindig aantal elementaire matrices en waarvoor A = C · In = C . We hebben dus reeds aangetoond dat uit (i) ook (ii), (iii) en (iv) volgt. Omgekeerd, uit (iv) volgt (i) vermits rang A = n voor een n × n–matrix betekent dat det A 6= 0. Uit (iii) volgt (i), want een product van inverteerbare matrices (elementaire matrices zijn inverteerbaar) is inverteerbaar. Uit (ii) volgt (i), want als A ∼ In dan is rang A = n waaruit reeds volgt dat A inverteerbaar is. ¤ Hoofdstuk 2 • Algebra voor ingenieurs • 2–28 Matrices, determinanten en lineaire stelsels Het volgend algoritme voor de bepaling van de inverse A−1 van een inverteerbare matrix A is gebaseerd op voorgaande stelling : Algoritme voor inverse matrix Vorm de blokmatrix [A | In ] en reduceer het A–gedeelte tot de eenheidsmatrix In (de gereduceerde echelonvorm van A) en voer terzelfdertijd de gebruikte elementaire rijbewerkingen uit op het rechterblok In . Dan bekomt men de blokmatrix [In | A−1 ] met als rechterblok de inverse van A. Met dit algoritme kan dus de inverse van een inverteerbare matrix worden gevonden zonder gebruik van determinant en adjunctmatrix. voorbeeld : We bepalen 2 1 −1 4 1 2 8 2 −2 2 0 0 −1 ∼ 0 0 2.8.4 2 1 −1 de inverse van A = 4 1 2 8 2 −2 2 1 −1 1 0 0 1 0 1 0 0 −1 4 −2 ∼ 0 0 1 0 −2 2 −4 1 0 −1 1 0 0 0 2 1 2 0 −2 − 3 3 0 1 0 ∼ −6 0 −2 1 0 0 1 2 0 3 −1 0 0 1 0 1 0 ∼ 0 −1 4 −2 1 0 0 1 0 −6 0 −2 1 0 1 1 1 − 21 0 −2 0 4 4 2 31 − 23 zodat A−1 = 2 13 − 23 0 31 − 16 0 13 − 16 Smith–normale vorm Wanneer men een m × n–matrix door middel van elementaire rijbewerkingen herleid tot haar gereduceerde echelonvorm, dan kan men deze nog verder reduceren d.m.v. elementaire kolombewerkingen. We vermelden in dit verband zonder bewijs volgende stelling : ¥ STELLING 2.11 Smith–normale vorm µ Elke m × n–matrix A met rang r is equivalent met de blokmatrix S = Ir O O O ¶ Deze (unieke) blokmatrix S wordt de Smith normale vorm van A genoemd, naar de Engelse wiskundige Henry Smith. De stelling zegt dus dat er inverteerbare matrices (producten van een eindig aantal elementaire matrices) C en D bestaan waarvoor geldt : S = C · A · D. • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–29 Figuur 2.4: Henry Smith (1826–1883) 2.8.5 LU– en PLU–ontbinding van een matrix De LU –ontbinding van een matrix is een veel gebruikte methode in de numerieke wiskunde voor het oplossen van stelsels. Zij A een m × n–matrix. Een LU –ontbinding of LU –factorisatie van A bestaat uit een m × m benedendriehoeksmatrix L met alle diagonaalelementen 1 en een m × n–matrix U dewelke een echelonvorm is van A en zó dat A = L · U . Een LU –ontbinding van een matrix is nauw verbonden met het algoritme van Gauss om die matrix te herleiden naar een echelonvorm. De matrix L uit de ontbinding “registreert” in zekere zin de opeenvolgende elementaire rijbewerkingen die zijn uitgevoerd om de matrix A te herleiden naar haar echelonvorm U . Is A = LU een LU –ontbinding van A en is L = (Lij ), dan bestaat de reductie van A tot echelonvorm U uit de volgende elementaire rijbewerkingen : Rj → 7 Rj − Lj1 R1 voor j = 2 . . . n, Rj 7→ Rj − Lj2 R2 voor j = 3 . . . n, . . . enzoverder. Daarbij zorgen de eerste n − 1 stappen voor het herleiden van de eerste kolom, de volgende n − 2 stappen voor het herleiden van de tweede kolom, enzoverder. Het algoritme om een LU –ontbinding te vinden staat ook gekend als het algoritme van Doolittle . Niet elke matrix bezit een LU –ontbinding. Men kan bewijzen dat zo’n ontbinding slechts bestaat als en slechts als A kan herleid worden naar een echelonmatrix zonder gebruik van rijverwisselingen. Hoofdstuk 2 • Algebra voor ingenieurs • 2–30 Matrices, determinanten en lineaire stelsels Een nodige en voldoende voorwaarde voor het bestaan (en de uniciteit) van een LU –ontbinding van een inverteerbare vierkante matrix A is dat alle hoofdminoren van A een niet–nul determinant hebben. In de unieke LU –ontbinding van A is U dan een bovendriehoeksmatrix. Over het algemeen zullen bij het herleiden van een m × n–matrix A naar echelonvorm U ook rijverwisselingen moeten gebeuren. Men kan bewijzen dat er dan (minstens één) m × m permutatiematrix P bestaat (dit is een product van een eindig aantal elementaire matrices die elk corresponderen met een rijverwisseling) en een m × m–benedendriehoeksmatrix L met alle diagonaalelementen gelijk aan 1, waarvoor A = P · L · U. Men noemt dit ook een P LU –ontbinding van A. In tegenstelling tot de LU –ontbinding, bestaat de P LU –ontbinding van een matrix altijd, maar ze is niet uniek. voorbeeld : 2 4 −1 5 −2 −4 −5 3 −8 1 bezit een LU –ontbinding : De matrix 2 −5 −4 1 8 −6 0 7 −3 1 2 4 −1 5 −2 1 0 0 0 2 4 −1 −4 −5 −2 0 3 −8 1 1 0 0 3 1 = · 2 −5 −4 1 8 1 −3 1 0 0 0 0 −6 0 7 −3 1 −3 4 2 1 0 0 0 5 −2 2 −3 2 1 0 5 Opmerking : Naast de hierboven beschreven LU –ontbinding waarin de matrix L een benedendriehoeksmatrix is met alle elementen op de hoofddiagonaal gelijk aan 1 (algoritme van Doolittle), ontmoet men in de literatuur nog twee andere “LU –ontbindingen”. Is het mogelijk om A te schrijven als product van een benedendriehoeksmatrix met een bovendriehoeksmatrix waarbij de elementen op de hoofddiagonaal van deze laatste allemaal 1 zijn, dan spreekt men van het algoritme van Crout. Kan men A schrijven als product van een benedendriehoeksmatrix met een bovendriehoeksmatrix die de getransponeerde is van die benedendriehoeksmatrix, dan spreekt men van het algoritme van Choleski. • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2.9 2.9.1 2–31 Stelsels lineaire vergelijkingen Basisbegrippen Een stelsel (S) van m lineaire vergelijkingen in n onbekenden, is een stelsel van de vorm : a11 x1 + a12 x2 + . . . + a1n xn = b1 a21 x1 + a22 x2 + . . . + a2n xn = b2 .. . a x + a x + ... + a x = b m1 1 m2 2 mn n m De getallen a11 t.e.m. amn noemt men de coëfficiënten van het stelsel. a11 a21 De m × n−matrix A = .. . am1 a12 a22 .. . ··· ··· am2 · · · a1n a2n heet de coëfficiëntenmatrix van .. . amn het stelsel. Schrijven we de onbekenden x xn en de bekende termen (rechterleden) 1 , . . . , resp. in een n × 1−kolommatrix X = x1 b1 x2 b2 .. en in een m × 1 kolommatrix B = .. . . xn bm dan kan het stelsel (S) ook voorgesteld worden in matriciële gedaante : A · X = B Als alle bekende termen nul zijn, dan noemt men het stelsel homogeen en de matrixgedaante is dan : A · X = O met O de m × 1 nulmatrix. Het zoeken van alle n–tallen (x1 , x2 , . . . , xn ) die aan het stelsel voldoen, noemen we het stelsel oplossen en elk dergelijk n–tal wordt een oplossing genoemd. Een homogeen stelsel bezit steeds de triviale oplossing x1 = . . . = xn = 0 De verzameling van alle oplossingen van het stelsel, heet de oplossingsverzameling. Bevat deze minstens één element, dan heet het stelsel oplosbaar of niet–strijdig, is ze ledig dan heet het stelsel strijdig. Twee stelsels heten gelijkwaardig of equivalent als ze dezelfde oplossingsverzameling bezitten. Twee vergelijkingen van plaats verwisselen, een vergelijking vermenigvuldigen met een van nul verschillend getal en bij een vergelijking een veelvoud van een andere vergelijking optellen, zijn bewerkingen die leiden tot een gelijkwaardig stelsel. Hoofdstuk 2 • Algebra voor ingenieurs • 2–32 Matrices, determinanten en lineaire stelsels In wat volgt zullen we nagaan onder welke voorwaarden een stelsel oplossingen bezit en hoe we deze oplossingen kunnen bepalen. Dankzij het feit dat stelsels lineaire vergelijkingen een matrixvoorstelling bezitten, zullen we daarbij gebruik kunnen maken van matrixmethoden. Daarbij zal de aangevulde of verhoogde coëfficiëntenmatrix a11 a21 (A|B) = .. . am1 a12 a22 .. . ··· ··· am2 · · · ¯ a1n ¯ b1 ¯ a2n ¯ b2 ¯ .. ¯ . ¯ amn ¯ bm een belangrijke rol spelen. Dit is de blokmatrix die ontstaat door de coëfficiëntenmatrix A rechts te randen met de kolommatrix B van de bekende termen. 2.9.2 Oplosbaarheidscriterium voor een lineair (m, n)−stelsel In deze paragraaf formuleren we een nodige en voldoende voorwaarde opdat een stelsel van m lineaire vergelijkingen met n onbekenden niet–strijdig zou zijn. Beschouw het stelsel A · X = B (in matrixgedaante). Voert men elementaire rijbewerkingen uit op de verhoogde matrix (A|B), dan is het bijhorende stelsel gelijkwaardig met het oorspronkelijke. In het bijzonder zijn de oplossingen van het stelsel geassocieerd met (UA |B̃) waarbij UA een echelonvorm is van A, dezelfde als de oplossingen van het oorspronkelijk stelsel geassocieerd met (A|B). Onderstel nu dat (UA |B̃) de volgende gedaante aanneemt : ã11 ã12 0 ã22 0 0 . .. (UA |B̃) = .. . 0 0 . .. .. . 0 0 ··· ··· ã1r · · · ã2r · · · ··· ãrr · · · 0 ··· ãrn 0 ··· 0 0 . . . .. . .. . ... ã1n ã2n .. . .. . ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ b̃1 b̃2 b̃r b̃r+1 .. . b̃m waarbij elk van de eerste r rijen van het linkerblok minstens één niet–nulelement bevat (een pivot) en de laatste m − r rijen van het linkerblok zijn nulrijen. • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–33 Het is nu duidelijk dat het stelsel UA · X = B̃ (en dus ook het gelijkwaardig oorspronkelijk stelsel A·X = B ) enkel oplosbaar is indien de elementen b̃r+1 , b̃r+2 , . . . , b̃m allemaal nul zijn. Zoniet zijn de laatste m−r vergelijkingen van het stelsel U˜A ·X = B̃ strijdig. Anders gezegd : opdat het stelsel niet–strijdig zou zijn, moet elke nulrij in UA aanleiding geven tot een nulrij in (UA |B̃). Aangezien het aantal niet–nulrijen precies de rang van de matrix is, betekent dit dat het stelsel dan en alleen dan niet–strijdig is wanneer rang UA = rang (UA |B̃) of dus ook rang A = rang (A|B) We hebben dus volgend oplosbaarheidscriterium aangetoond : ¥ STELLING 2.12 stelling van Rouché–Fontené–Capelli Een stelsel van m lineaire vergelijkingen met n onbekenden is niet–strijdig als en slechts als de rang van de coëfficiëntenmatrix gelijk is aan de rang van de verhoogde matrix, dus als en slechts als rang A = rang (A|B) Deze stelling van Rouché–Fontené–Capelli werd bewezen door de Franse wiskundige Eugène Rouché (1832–1910) en onafhankelijk van hem door de Fransman Georges Fontené (1848–19??) en de Italiaan Alfredo Capelli (1855–1910). De stelling kan ook in een tweede versie worden geformuleerd. Daarvoor eerst nog volgende beschouwingen en een definitie : Beschouw een stelsel van m lineaire vergelijkingen met n onbekenden en stel dat de rang van de coëfficiëntenmatrix A gelijk is aan r. Een hoofddeterminant is de niet–nuldeterminant van een vierkante deelmatrix van A van de orde r. De vergelijkingen van het stelsel die betrokken zijn bij de vorming van een hoofddeterminant, noemt men hoofdvergelijkingen en de onbekenden waarvan de coëfficiënten voorkomen in de gekozen hoofddeterminant, noemt men hoofdonbekenden. R DEFINITIE 2.11 karakteristieke determinanten Is de i–de vergelijking van een stelsel niet betrokken bij de vorming van een hoofddeterminant, dan heet de determinant ∆i die wordt verkregen door de hoofddeterminant onderaan te randen met de overeenkomstige coëfficiënten van de hoofdonbekenden uit de i−de vergelijking en rechts te randen met de overeenkomstige bekende termen van de hoofdvergelijkingen en de i−de vergelijking, een karakteristieke determinant. Hoofdstuk 2 • Algebra voor ingenieurs • 2–34 Matrices, determinanten en lineaire stelsels De stelling van Rouché kan nu worden geformuleerd in termen van karakteristieke determinanten. ¥ STELLING 2.13 stelling van Rouché (tweede versie) Een stelsel van m lineaire vergelijkingen met n onbekenden is niet–strijdig als en slechts als alle m − r (r= rang) karakteristieke determinanten ∆i horende bij een gekozen hoofddeterminant, gelijk zijn aan nul. x+y+z =0 2x − y − z = 1 voorbeeld : Ga na of volgend stelsel oplosbaar is : x − 2y − 2z = 1 4x − 2y − 2z = 8 1 1 1 2 −1 −1 De coëfficiëntenmatrix is gelijk aan A = 1 −2 −2 4 −2 −2 De rang van deze matrix gelijk ¯is aan 2.¯ ¯ 1 1 ¯¯ Een hoofddeterminant is bvb. ¯¯ ¯ (de eerste twee vergelijkingen zijn hoofd2 −1 vergelijkingen en x en y zijn hoofdonbekenden). De bijhorende karakteristieke determinanten ¯ ¯ ¯ ¯ zijn : ¯ 1 1 0 ¯ ¯ ∆3 = ¯ 2 −1 1 ¯ 1 −2 1 ¯ ¯ 1 1 0 ¯ ¯ ¯ = 0 en ∆4 = ¯ 2 −1 1 ¯ ¯ ¯ ¯ 4 −2 8 ¯ ¯ ¯ = −18 6= 0 ¯ ¯ We besluiten met de tweede versie van de stelling van Rouché dat het stelsel niet oplosbaar is. Dit besluit kan ook getrokken worden met de eerste versie van de stelling van Rouché vermits rang A = 2 terwijl rang (A|B) = 3 • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2.9.3 2–35 Aantal oplossingen van een niet–strijdig lineair stelsel Als een stelsel niet–strijdig is, dan is het zinvol om te weten hoeveel oplossingen het stelsel bezit. Men kan twee gevallen onderscheiden : • rang gelijk aan aantal onbekenden (r = n) In dit geval is een echelonmatrix UA een vierkante matrix, meer bepaald een bovendriehoeksmatrix. Het oorspronkelijke stelsel is dan gelijkwaardig met het stelsel ã11 x1 + ã12 x2 + . . . + ã1n xn = b̃1 ã22 x2 + . . . + ã2n xn = b̃2 .. . ãnn xn = b̃n waaruit de onbekenden opeenvolgend kunnen worden berekend, beginnend bij de laatste vergelijking. Uit die laatste vergelijking vindt men xn die men vervolgens substitueert in de voorlaatste vergelijking waaruit dan xn−1 kan worden bepaald, enzoverder tot men eindigt bij de eerste vergelijking. Deze oplossingsmethode staat gekend als de eliminatiemethode van Gauss. We besluiten : is de rang r van A gelijk aan het aantal onbekenden n, dan bezit een niet–strijdig stelsel A · X = B juist één oplossing. • rang kleiner dan aantal onbekenden (r < n) In dit geval zal de echelonmatrix UA een rechthoekige matrix zijn. Het oorspronkelijke stelsel is dan gelijkwaardig met het stelsel ã11 x1 + ã12 x2 + . . . + ã1r xr + . . . + ã1n xn = b̃1 ã22 x2 + . . . + ã2r xr + . . . + ã2n xn = b̃2 .. . ãrr xr + . . . + ãrn xn = b̃r Er zijn nu n − r vrije onbekenden die willekeurige waarden mogen aannemen, bvb. xr+1 , . . . , xn . De overige r (hoofd)onbekenden kunnen in functie van deze vrije onbekenden worden bepaald door te beginnen bij de laatste vergelijking. We besluiten : is de rang r van A kleiner dan het aantal onbekenden n, dan bezit een niet–strijdig stelsel A · X = B oneindig veel oplossingen (n − r vrijheidsgraden). Hoofdstuk 2 • Algebra voor ingenieurs • 2–36 Matrices, determinanten en lineaire stelsels 2.9.4 De regel van Cramer Beschouwen we een lineair stelsel met evenveel vergelijkingen als onbekenden (dus m = n). Gelet op de resultaten bekomen in voorgaande paragraaf, bezit zo’n stelsel, als het niet–strijdig is, precies één oplossing indien r = n en oneindig veel oplossingen indien r < n. Vermits de coëfficiëntenmatrix A een vierkante matrix van de orde n is, betekent r = n ook dat det A 6= 0. zodat A inverteerbaar is. Het stelsel A · X = B is dan ook gelijkwaardig met het stelsel A−1 · A · X = A−1 · B of dus X = A−1 · B waarmee de oplossing X volledig is bepaald. Samengevat : Een lineair stelsel met evenveel vergelijkingen als onbekenden heeft een unieke oplossing als en slechts als de determinant van de coëfficiëntenmatrix niet nul is. Is de determinant van de coëfficiëntenmatrix wel nul, dan is het stelsel ofwel strijdig ofwel bezit het oneindig veel oplossingen. We zullen nu een methode aangeven om de unieke oplossing te bepalen in het geval det A 6= 0 zonder dat de inverse matrix A−1 moet worden bepaald. Deze methode staat gekend als de regel van Cramer en deze verscheen voor het eerst in een appendix van het werk Introduction à l’analyse des lignes courbes algébraiques van de Zwitserse wiskundige Gabriel Cramer. Schrijven we de oplossing X = A−1 · B expliciet uit : x1 x2 1 .. = . det A xn A11 A21 . . . An1 A12 A22 . . . An2 · .. .. .. . . . A1n A2n . . . Ann b1 A11 + b2 A21 + . . . + bn An1 b1 b2 1 b1 A12 + b2 A22 + . . . + bn An2 .. .. = . . det A b1 A1n + b2 A2n + . . . + bn Ann bn waarin Aij de cofaktor is van aij (zie inverse van een vierkante matrix). We vinden dus : xi = b1 A1i + b2 A2i + . . . + bn Ani voor i = 1, 2, . . . , n det A In de noemer van deze uitdrukking staat de determinant van de coëfficiëntenmatrix van het stelsel. Ook de teller kan als een determinant voorgesteld worden. Vervangen we immers de i−de kolom in de coëfficiëntenmatrix A door de kolom met de bekende termen, dan bekomen we : a11 a12 . . . a21 a22 . . . Di = .. .. . . an1 an2 . . . a1,i−1 b1 a1,i+1 . . . a1n a2,i−1 b2 a2,i+1 . . . a2n .. .. .. .. . . . . an,i−1 bn an,i+1 . . . ann • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–37 Berekent men det Di door ontwikkeling naar de i−de kolom, dan bekomt men precies b1 A1i + b2 A2i + . . . + bn Ani zodat we dus kunnen schrijven : xi = det Di voor i = 1, 2, . . . , n det A Deze manier om de onbekenden xi te bepalen, staat gekend als de regel van Cramer. voorbeeld : Beschouw een stelsel van twee lineaire vergelijkingen met twee onbekenden ½ ¯ ¯ ¯ a b ¯ ax + by = c ¯ waarbij ¯ 0 0 ¯¯ = 6 0. a0 x + b0 y = c0 a b Met de regel van Cramer bekomt men de oplossing : ¯ ¯ ¯ ¯ x = ¯¯ ¯ ¯ c c0 a a0 b b0 b b0 ¯ ¯ ¯ ¯ a ¯ ¯ 0 ¯ ¯ a ¯ en y = ¯ ¯ a ¯ ¯ 0 ¯ ¯ a ¯ c c0 b b0 ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ Figuur 2.5: Gabriel Cramer (1704–1752) Opmerking : Een niet–strijdig stelsel met m vergelijkingen en n onbekenden waarbij de rang r kleiner is dan het aantal onbekenden, is gelijkwaardig met het stelsel gevormd door de r hoofdvergelijkingen. Men kan dat stelsel oplossen naar de r hoofdonbekenden (in functie van de n−r vrije onbekenden) met de regel van Cramer nadat de vrije onbekenden zijn overgebracht naar het rechterlid. Hoofdstuk 2 • Algebra voor ingenieurs • 2–38 2.9.5 Matrices, determinanten en lineaire stelsels Homogene stelsels Beschouw een homogeen stelsel van m lineaire vergelijkingen met n onbekenden. Zulk stelsel is nooit strijdig want het bezit steeds de nuloplossing. Dat volgt trouwens ook uit het oplosbaarheidscriterium vermits rang A = rang (A|B) waarin B gelijk is aan de m × 1−kolommatrix met alle elementen gelijk aan nul. Een belangrijke vraag is nu : wanneer bezit een homogeen stelsel niet–triviale oplossingen ( = oplossingen verschillend van de nuloplossing) ? De bespreking in § 2.9.3 maakt duidelijk dat dit het geval is als en slechts als r < n omdat bij r = n het stelsel een unieke oplossing bezit. We besluiten dus : Een homogeen stelsel van m lineaire vergelijkingen in n onbekenden bezit steeds een oplossing (de nuloplossing). Het bezit oplossingen verschillend van de nuloplossing als en slechts als r < n met r de rang van de coëfficiëntenmatrix. Bijzonder geval : homogeen lineair stelsel met evenveel vergelijkingen als onbe- kenden. Een homogeen stelsel van n lineaire vergelijkingen in n onbekenden bezit steeds een oplossing (de nuloplossing). Het bezit oplossingen verschillend van de nuloplossing als en slechts als det A = 0 met A de coëfficiëntenmatrix. • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2.10 2–39 Toepassingen van matrices en determinanten Het voornaamste toepassingsgebied van matrices vindt men ongetwijfeld bij het oplossen van stelsels lineaire vergelijkingen, waarover we hierboven reeds een en ander hebben gezien. Een welbekend voorbeeld uit de ingenieurswetenschappen waarin lineaire stelsels optreden treft men aan bij de knooppuntmethode om een elektrisch netwerk op te lossen. Door toepassing van de wetten van Kirchhoff en de wet van Ohm bekomt men een lineair stelsel waaruit de stromen in de verschillende takken van het netwerk kunnen worden berekend. Figuur 2.6: voorbeeld van een elektrisch netwerk −i1 + i2 − i3 = 0 4i1 + 2i2 + 0i3 = 28 waaruit In bovenstaand voorbeeld bekomt men het stelsel 0i1 − 2i2 − i3 = −7 de oplossing i1 = 5, i2 = 4 en i3 = −1 Daarnaast heeft het gebruik van matrices ingang gevonden in diverse domeinen zoals in de economie en speltheorie, in de grafentheorie en codeertheorie, in de biologie, en natuurlijk ook in de ingenieurswetenschappen. 2.10.1 Matrices en economie : Leontiefmodel Een toepassing van matrices in de economie vindt men bij het input–outputmodel van Leontief (waarvoor Wassily Leontief in 1973 de Nobelprijs kreeg). Onderstel dat de economie van een land kan worden onderverdeeld in n sectoren die goederen produceren (bvb. landbouwsector, chemische sector, metaalsector, . . .). Elk van deze sectoren heeft voor de aanmaak van zijn producten nood aan producten uit andere sectoren. Hoofdstuk 2 • Algebra voor ingenieurs • 2–40 Matrices, determinanten en lineaire stelsels Het basisidee van het model van Leontief is gebaseerd op een matrix C die consumptiematrix wordt genoemd waarvan de elementen als volgt zijn bepaald : wanneer sector j één eenheid wil produceren, dan zijn daarvoor cij geproduceerde eenheden van sector i nodig. Men definieert nu ook een productiematrix P waarvan de elementen het aantal geproduceerde eenheden van elke sector zijn (een kolommatrix) : x1 x2 P = .. . xn met xi het aantal eenheden geproduceerd door sector i. De consumptie van geproduceerde goederen door de industriële sectoren zelf is dan het product C ·P en P −C ·P = (I −C)·P is de productiehoeveelheid die beschikbaar blijft voor externe consumptie. Tenslotte definieert men de vraagmatrix D die de externe vraag naar producten weergeeft : d1 d2 d = .. . dn met di de externe vraag naar goederen geproduceerd door sector i. Wanneer (I − C) · P = D dan is er een perfect evenwicht tussen vraag en aanbod. Leontief vroeg zich af wanneer het mogelijk is om, gegeven C en D, een matrix P (met enkel positieve elementen) te vinden die oplossing is van de matrixvergelijking X = C · X + D met onbekende X . Als (I − C) inverteerbaar is , dan is de oplossing P = (I − C)−1 · D. Vermits D enkel positieve elementen bezit, moet dus (I − C)−1 ook enkel positieve elementen hebben. Leontief bewees volgend resultaat : als de som van de elementen van iedere kolom van C kleiner is dan 1, dan is (I − C) inverteerbaar en de inverse (I − C)−1 bezit enkel positieve elementen. Zo bekomt men dus een voldoende voorwaarde voor het bestaan van een productiematrix die zorgt voor een evenwicht in vraag en aanbod. • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2.10.2 2–41 Matrices en biologie : Lesliemodel Om voorspellingen te kunnen maken over de samenstelling van bepaalde dierenpopulaties, maakte de Engelse zoöloog Patrick Leslie in 1945 gebruik van een matrixmodel in zijn artikel “ On the Use of Matrices in Certain Population Mathematics”. Het gebruik van een Leslie–matrix is erg populair in de ecologie bij de beschrijving van de groei van populaties die niet onderhevig zijn aan migratie en waarbij slechts één sexe, meestal de vrouwelijke, wordt beschouwd. In een Leslie–model wordt een populatie verdeeld in n leeftijdsklassen of generaties van elk bvb. k jaar (meestal k = 1) en men wil bepalen hoeveel individuen tot iedere klasse zullen behoren na een periode van k jaar. Daarvoor moet men beschikken over volgende informatie : fi , de fertiliteit (dit is het gemiddeld aantal nakomelingen per vrouwelijk individu in leeftijdsklasse i) met 1 ≤ i ≤ n si , de fractie individuen van leeftijdsklasse i die leeftijdsklasse i + 1 bereiken na k jaar, met 1 ≤ i ≤ n − 1 Men definieert nu de n × n Leslie–matrix L als volgt : f1 f2 s1 0 0 s2 L= 0 0 0 0 f3 0 0 ... ... ... ... ... . . . sn−1 fn 0 0 .. . 0 Het element `ij op de i–de rij (i ≥ 2) en de j –de kolom van L geeft aan wat de overlevingskans is voor een individu om na één overgangsperiode van leeftijdsklasse j in leeftijdsklasse i te geraken. Vanzelfsprekend is `ij = 0 voor i ≤ j (eventueel met uitzondering van cnn wanneer de laatste leeftijdsklasse een open klasse is). ¡ ¢T Is nu Pt = p1 p2 . . . pn de populatiematrix op het ogenblik t. Elk element pi van deze kolommatrix stelt het aantal individuen voor in leeftijdsklasse i op dat ogenblik. Men kan nu de populatiematrix Pt+1 bepalen door het product L · Pt te bepalen. Is P0 de initiële populatiematrix dan zal de populatiematrix na k jaar dus gelijk zijn aan Pk = Lk · P0 wanneer men werkt met tijdsstappen van 1 jaar. Het model van Leslie werd in 1966 door de Britse ecoloog Michael Usher aangepast om de evolutie van een bomenpopulatie te beschrijven. In plaats van een model gebaseerd op leeftijdsklassen, voerde hij een model in gebaseerd op grootte–klassen (waarbij een boom behoort tot een bepaalde klasse volgens Hoofdstuk 2 • Algebra voor ingenieurs • 2–42 Matrices, determinanten en lineaire stelsels de dikte van zijn stam). Het belangrijkste verschil met het Leslie–model is dat de elementen op de hoofddiagonaal van de matrix niet meer gelijk zijn aan nul (een boom kan gedurende opeenvolgende jaren tot dezelfde dikteklasse blijven behoren, terwijl bij Leslie een individu geen twee opeenvolgende jaren tot dezelfde leeftijdsgroep kan behoren). Een Usher–matrix heeft bijgevolg de vorm : R1 R2 R3 b1 a2 0 0 b2 a3 U = 0 0 G 0 0 ... ... ... ... ... . . . bn−1 Rn 0 0 .. . an G waarin bi = σi i en ai = σi (1 − i ) met σi de jaarlijkse overlevingskans van een S S boom uit dikteklasse i, S de klassebreedte van elke dikteklasse en Gi de groeisnelheid van een boom uit dikteklasse i. 2.10.3 Matrices en stochastische processen : Markov–ketens In heel wat toepassingen in de biologie, de scheikunde, de economie, de sociologie, e.a. maakt men gebruik van stochastische processen. Dat zijn processen die mee bepaald zijn door toevallige gebeurtenissen. Een belangrijke klasse van zulke processen zijn de Markov–ketens : rijen van toevalsveranderlijken waarin de waarde van de volgende veranderlijke enkel bepaald is door de waarde van de huidige veranderlijke en niet door de wijze waarop die huidige waarde werd bekomen uit de voorgaande waarden. Anders geformuleerd, met gebruik van voorwaardelijke kansen : een (diskrete) Markov–keten is een rij toevalsveranderlijken X0 , X1 , X2 , . . . met de eigenschap : P (Xi = xi |Xi−1 = in−1 , Xi−2 = xi−2 , ..., X1 = x1 , X0 = x0 ) = P (Xi = xi |Xi−1 = xi−1 ) Zulke processen werden voor het eerst bestudeerd door de Rus Andrei Markov (1856 – 1922). De mogelijke waarden van de toevalsveranderlijken heten de toestanden van de keten. Men spreekt van een discrete keten wanneer de toevalsveranderlijken enkel waarden kunnen aannemen in een aftelbare verzameling zoals bijvoorbeeld N of een deelverzameling ervan zoals bvb. {1, 2, . . . , n}. De evolutie van een eindige diskrete Markov–keten kan worden beschreven door gebruik te maken van een overgangsmatrix M . • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–43 Dat is een vierkante matrix van de orde n (= het aantal mogelijke toestanden) waarin het element mij op de i–de rij, j –de kolom de kans aangeeft dat de toestand op tijdstip t gelijk aan j zal zijn, gegeven dat de toestand op tijdstip t − 1 gelijk aan i was: mij = P (Xt = j | Xt−1 = i) Men noemt zulk een matrix M waarvan alle elementen begrepen zijn tussen 0 en 1 en waarbij de som van de elementen van iedere kolom gelijk is aan 1 ook een stochastische matrix. Beschouw de toestandsvector xt−1 op tijdstip t − 1 = (x1 (t − 1), x2 (t − 1), . . . , xn (t − 1))T . De elementen van deze kolommatrix geven de waarschijnlijkheden aan waarmee de toevalsveranderlijke Xt−1 de mogelijke toestanden 1, 2, . . . , n aanneemt (dus xi (t − 1) = P (Xt−1 = i). Al deze elementen zijn dus begrepen tussen 0 en 1 en de som van de elementen is gelijk aan 1. Zulk een kolomvector wordt ook een probabiliteitsvector genoemd. Om de toestandsvector xt = (x1 (t), x2 (t), . . . , xn (t))T op tijdstip t te kennen, vermenigvuldigt men de toestandsvector xt−1 op tijdstip t − 1 links met de overgangsmatrix M . xt = M · xt−1 Een van de belangrijkste vraagstukken bij de studie van Markov–ketens is het langetermijngedrag, m.a.w. lim xt . t→+∞ Daarbij kan het optreden van evenwichtstoestanden een rol spelen. Een evenwichtstoestandsvector q is een kolomvector (probabliteitsvector) die ongewijzigd blijft tijdens het Markov–proces, m.a.w. waarvoor M · q = q . Een fundamentele stelling uit de theorie van Markov–ketens is nu de volgende : Als M de overgangsmatrix is van een Markov–keten en als er een macht M k bestaat die enkel strikt positieve elementen bezit (M wordt dan een reguliere stochastische matrix genoemd), dan bestaat er een unieke evenwichtstoestandsvector q. Bovendien convergeert de rij x0 , x1 , . . . naar q bij iedere begintoestand x0 . Opvallend in deze stelling is het feit dat de initiële toestand geen enkel effect heeft op het langetermijngedrag van de Markov–keten. Het bepalen van een evenwichtstoestandsvector q kan gebeuren op de volgende wijze : q is oplossing van M · X = X of dus van het homogeen stelsel (M − I) · X = O. Hoofdstuk 2 • Algebra voor ingenieurs • 2–44 Matrices, determinanten en lineaire stelsels Dit stelsel kan worden opgelost met de methode van Gauss waarbij de uitgebreide matrix (M − I | O) wordt herleid naar een echelonvorm. Stel dat w = (w1 w2 . . . wn )T een bekomen oplossing is, dan bekomt men daaruit een evenwichtstoestandsvector P door elk element van w te delen door de som van de elemten wi . voorbeeld : De migratiebewegingen van de bevolking kunnen worden beschreven d.m.v. een Markov–model. Stel dat men jaarlijks nagaat welk deel van de bevolking verhuist van de stad naar het platteland en omgekeerd. Deze migratiebeweging wordt uitgedrukt in een migratiematrix M ,µ ¶ bijvoorbeeld M = 0.95 0.03 0.05 0.97 . Dat betekent dat elk jaar 5 % van de bevolking verhuist van de stad naar het platteland en dat 3 % verhuist van het platteland naar de stad. Stel dat er op t = 0 600000 inwoners in de steden woonden en 400000 op het platteland, of dus procentueel 0, 6 en 0, 4. Dan kan men de procentuele inwonersaantallen op latere tijdstippen beschouwen als toestandsvectoren xt van een Markov–keten met x0 als aanvangstoestandsvector. Na één jaar µ is de toestand ¶ xµ1 = M¶· x0 µ ¶ 0.95 0.03 0, 6 0, 582 of dus M = · = 0.05 0.97 0, 4 0, 418 µ ¶ 0, 375 Men verifieert dat q = een evenwichtstoestandvector is voor deze keten. 0, 625 Wanneer er 375000 inwoners in de stad wonen en 625000 op het platteland dan is er een migratie uit de stad naar het platteland van 375000 · 0.05 = 18750 en omgekeerd een migratie van 625000 · 0.03 = 18750 personen van het platteland naar de stad. De nettopopulatie in stad en platteland blijft dus gelijk. Figuur 2.7: Andrei Markov (1856–1922) • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2.10.4 2–45 Matrices en grafentheorie De grafentheorie is een tak van de combinatorische wiskunde die de eigenschappen van grafen bestudeert. Deze structuren worden gebruikt in heel wat praktische toepassingen zoals bij het maken van printplaten voor elektronische schakelingen, bij het opstellen van vluchtschema’s voor vliegtuigen en treinen, bij het aanleggen van computernetwerken, bij het aanleggen van buizenstelsels, bij de studie van relaties tussen verschillende groepen in de sociologie enz. De Zwitserse wiskundige Euler was de eerste die een grafentheoretisch probleem oploste : het probleem van de bruggen van Knigsberg. Daarbij vroeg men zich af of het mogelijk zou zijn een wandeling te maken over de vier delen van de stad die verbonden zijn door zeven bruggen, en wel zo, dat iedere brug precies eenmaal werd gebruikt. Euler bewees dat dit niet mogelijk is. Een graaf G = (V, E) is een geordend paar bestaande uit een verzameling V van punten die knopen of toppen worden genoemd (in het Engels : vertices) en een verzameling E van paren elementen uit V die bogen, zijden of kanten (in het Engels : edges) worden genoemd. Twee toppen die door een boog verbonden zijn noemt men ook adjacent. Toppen kunnen door meer dan één boog verbonden zijn. Een boog die een top verbindt met zichzelf noemt men een lus. Een graaf zonder lussen en met het aantal verbindingsbogen voor elk tweetal toppen hoogstens gelijk aan 1, wordt een enkelvoudige graaf genoemd. Een graaf waarin ieder tweetal knopen verbonden is door precies één boog, wordt een complete graaf genoemd. Onder de valentie of de graad van een top verstaat men het aantal toppen waarmee die top is verbonden. Een enkelvoudig graaf zonder lussen waarvoor de valentie van alle toppen gelijk is aan hetzelfde getal k , noemt men een k–regulier graaf of kortweg een regulier graaf. De studie van eigenschappen van grafen is in grote mate verbonden met de studie van eigenschappen van matrices die aan grafen kunnen worden geassocieerd. Het al dan niet verbonden zijn van de toppen in een graaf kan worden weergegeven in een matrix die men verbindingsmatrix of adjacentiematrix noemt. Bestaat een graaf G uit n toppen P 1, P2 , . . . Pn , dan wordt deze matrix n × n–matrix A gedefinieerd door aij = 0 als Pi en Pj niet verbonden zijn en door aij = 1 als Pi verbonden is met Pj door tenminste 1 boog. Voor een niet–gerichte graaf is de adjacentiematrix steeds een symmetrische matrix. Een graaf met één of meer eenrichtingswegen wordt een gerichte graaf genoemd. Indien in zulk een graaf Pi wel verbonden is met Pj , maar Pj niet met Pi , dan is Hoofdstuk 2 • Algebra voor ingenieurs • 2–46 Matrices, determinanten en lineaire stelsels dus aij = 1 terwijl aji = 0. De adjacentiematrix van een gerichte graaf is meestal niet symmetrisch. De adjacentiematrix van een compleet graaf met n toppen is gelijk aan A = Jn − In waarin In de n×n–eenheidsmatrix is en Jn de n×n–matrix met alle elementen gelijk aan 1. Een sterk regulier graaf (dat is een k –regulier graaf waarvoor geldt dat voor elk paar adjacente toppen er λ toppen adjacent zijn met beide en voor elk paar niet– verbonden toppen zijn er µ toppen adjacent met beide) wordt gekarakteriseerd door een adjacentiematrix die volgende eigenschappen bezit : A J = kJ en A2 + (µ − λ)A + (µ − k) I = µ J . Figuur 2.8: grafen met adjacentiematrix Ook het aantal wegen tussen de toppen van een graaf kan in een vierkante matrix worden weergegeven. Men noemt deze ook de directe–wegenmatrix. Bestaat een graaf G uit n toppen P1 , P2 , . . . Pn , dan wordt de directe–wegenmatrix W gedefinieerd door wij = aantal bogen van van Pi naar Pi naar Pj (voor i = j is dat het aantal lussen). Via matrixvermenigvuldiging kan men het aantal meerstapsverbindingen in een graaf berekenen. Het element op de i–de rij en j –de kolom van de matrix W r (waarin W de directe– wegenmatrix) geeft het aantal r–stapsverbindingen tussen de toppen Pi en Pj . Dat is het aantal wegen met r − 1 tussenstops tussen de twee beschouwde toppen. voorbeeld : Zij n steden gegeven. Men wil een vluchtschema ontwerpen waarbij volgende voorwaarden voldoen moeten zijn : voor elke stad is er een directe vlucht van en naar hetzelfde aantal andere steden en tussen elke twee steden is er juist één vlucht met hoogstens één tussenstop. Voor n = 2 is de oplossing voor de hand liggend : een directe vlucht tussen de twee steden. Voor n = 3 en n = 4 bestaat er geen oplossing. Voor n = 5 is er een oplossing : voor elke stad zijn er directe vluchten naar en van 2 steden en tussen elke twee steden is er een unieke vlucht met ofwel geen ofwel juist • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–47 één tussenstop. Voor n = 6, 7, 8 en 9 zijn er geen oplossingen mogelijk. Voor n = 10 is er een oplossing die gegeven wordt door het zogeheten Petersen graaf (een sterk regulier graaf). Figuur 2.9: Het Petersen–graaf 2.10.5 Matrices en codeertheorie Codeertheorie is een tak van de wiskunde waarin methodes worden ontwikkeld om op een efficiënte manier data door te sturen langs kanalen met ruis. Wanneer een bericht wordt verstuurd onder de vorm van strings met nullen en enen, dan zal het ontvangen bericht meestal fouten bevatten tengevolge van storingen bij het doorsturen (sommige nullen zijn veranderd in enen en vice versa). Het is de bedoeling om deze fouten te detecteren en te corrigeren zodat de ontvanger het oorspronkelijk verzonden bericht krijgt. De eenvoudigste methode om fouten te detecteren in een binaire datastroom is de pariteitscode waarbij een extra “pariteitsbit”wordt meegezonden na elke 7 bits van het verzonden bericht. De toegevoegde bit geeft aan of er in dat woord een even dan wel een oneven aantal bits de waarde 1 hebben. Een enkelvoudige bitfout bij het verzenden verandert de pariteit, waardoor de fout gedetecteerd wordt. Een even aantal bitfouten wordt hierdoor echter niet opgemerkt. Met deze methode kunnen de fouten echter niet gecorrigeerd worden zonder dat het bericht opnieuw wordt verzonden. Een van de oudste en eenvoudigste werkwijzen om fouten te detecteren en in bepaalde gevallen te corrigeren berust op repetitie waarbij elke verzonden bit een aantal keer wordt herhaald. Foutdetectie treedt op wanneer de ontvangen reeks geen identieke bits bevat. Nadeel van deze methode is dat de verzonden boodschap op die manier erg lang wordt en bovendien kunnen niet alle fouten correct worden gecorrigeerd. In 1948 legde Claude Shannon, werkzaam bij Bell Laboratories in de VS, de basis van de wiskundige codeertheorie door aan te tonen dat het mogelijk is om berichten te coderen met een minimaal aantal extra toe te voegen bits waarmee de ontvanger in staat is fouten te detecteren en te corrigeren. Hoofdstuk 2 • Algebra voor ingenieurs • 2–48 Matrices, determinanten en lineaire stelsels Twee jaar later beschreef Richard Hamming, eveneens werkzaam bij Bell, voor het eerst expliciet zo’n code waarin 4 data bits werden gevolgd door 3 check bits en waarmee 1 fout kon worden gedetecteerd en verbeterd : de (7, 4)–Hamming–code. Wiskundig gezien is een code een deelverzameling C van de vectorruimte Fq n van de n–tallen met elementen in het eindig veld Fq (codewoorden) (in het bijzonder is F2 het veld met twee elementen 0 en 1). Een belangrijke klasse van codes zijn de lineaire codes. Een code heet lineair wanneer C een deelruimte (met dimensie k ) vormt van de vectorruimte Fq n . Een lineaire code wordt dus voortgebracht door een basis van codewoorden. Deze basisvectoren kunnen worden weergegeven in een matrix G die men de generatormatrix of voortbrengende matrix van de lineaire code noemt. Een generatormatrix van een k –dimensionale lineaire code met woordlengte n over F2 is een k × n–matrix van rang k waarvan de rijen de codewoorden zijn die de code voortbrengen. Voor de hierboven vermelde (7, 4)–Hammingcode met codewoorden van lengte 7 (4 databits + 3 check bits) is een generatormatrix gegeven door : 1 0 G= 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 0 1 1 1 1 0 1 1 1 1 0 De zogenaamde parity check matrix of pariteitscontrolematrix H is een (n−k)×n– matrix. De rijen van H zijn codewoorden die “loodrecht”staan op alle rijen van G, en dus op alle codewoorden. Voor ieder codewoord c geldt dus dat de vermenigvuldiging c · H T een nulmatrix oplevert. Omgekeerd geldt ook dat als een ontvangen woord vermenigvuldigd met H T geen nulmatrix oplevert, het ontvangen woord noodzakelijkerwijs geen codewoord kan zijn, en er dus 1 of meer bitfouten moeten zijn opgetreden. Voor de (7, 4)–Hammingcode is de parity check matrix gegeven door 1 0 1 1 1 0 0 H= 1 1 0 1 0 1 0 1 1 1 0 0 0 1 Verschillende bijzondere matrices spelen een rol bij het construeren van codes. Een belangrijke klasse van voorbeelden zijn de Hadamard–matrices die gebruikt worden om de Reed–Muller code te construeren. • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–49 Een n × n matrix H = (hij ) heet een Hadamard matrix van orde n als de elementen van H ofwel +1 of −1 zijn en als H · H T = nI . £ ¤ Voorbeelden van Hadamard matrices zijn : 1 , · 1 1 1 −1 ¸ 1 1 1 1 1 −1 1 −1 . , 1 1 −1 −1 1 −1 −1 1 Deze matrices werden voor het eerst bestudeerd door Hadamard in de context van een vraagstuk over determinanten. Een Hadamard–matrix van de orde n is de matrix die een gelijkheid oplevert in de determinantenstelling van Hadamard : als X = (xij ) een matrix is van de orde n met |xij | ≤ 1 voor alle i en j, dan is det(X) ≤ nn/2 Hadamard bewees ook dat Hadamard matrices van orde n slechts kunnen bestaan voor n = 1, n = 2, of n = 4k . Men vermoedt dat er voor al deze n–waarden ook daadwerkelijk Hadamard–matrices van die orde bestaan, maar dit vermoeden is nog niet bewezen. 2.10.6 Matrices en beeldverwerking Een digitaal beeld is opgebouwd uit een groot aantal kleine pixels (picture elements). Aan iedere pixel wordt een getal geassocieerd. Wanneer een computers beschikt over 8 bits opslagruimte per pixel dan kan men dus 28 = 256 verschillende getalwaarden toekennen aan een pixel, bvb. grijswaarden van 0 (zwart) tot 255 (wit)). Dat betekent dat een digitaal beeld dus in feite een m × n–matrix is waarvan de elementen gehele getallen zijn tussen 0 en 255. De orde van de matrix wordt bepaald door het aantal pixels dat wordt gebruikt om het digitaal beeld weer te geven (hoe meer pixels men gebruikt voor een beeld, hoe scherper het beeld). Beeldverwerking komt wiskundig neer op het manipuleren van de matrix. Zo zal bvb. het “negatief”van een digitaal beeld (met 256 grijswaarden) bekomen worden door elke element mij van de beeldmatrix te vervangen door het element 255 − mij . Ook allerhande types van beeldcorrecties kunnen worden beschreven door bewerkingen uit te voeren op de elementen van de matrix. Een veel gebruikte techniek daarbij bestaat erin om de waarde van een pixel te herberekenen m.b.v. de waarden van de 8 omliggende pixels (gebruik van een filter). Hoofdstuk 2 • Algebra voor ingenieurs • 2–50 Matrices, determinanten en lineaire stelsels Figuur 2.10: Voorbeelden van digitale beelden 2.10.7 Matrices en eindige meetkunde In de eindige meetkunde bestudeert men configuraties van een eindig aantal meetkundige objecten zoals punten en rechten. Een incidentiestructuur is een geordend drietal (P, L, I) met P de puntenverzameling, L de rechtenverzameling en I een incidentierelatie waarbij (p, `) ∈ I betekent dat het punt p op de rechte ` is gelegen. Met elke incidentiestructuur correspondeert een incidentiematrix. Wanneer |P | = p en |L| = q dan is de incidentiematrix A een p × q –matrix waarbij aij = 1 of 0 naargelang het punt pi al dan niet incident is met de rechte `j . voorbeeld : Het vlak van Fano is het kleinste eindig projectief vlak bestaande uit 7 punten en 7 rechten. Elke twee punten zijn incident met juist één rechte en elke twee rechten zijn incident met juist één punt. Elke rechte is incident met juist drie punten. Figuur 2.11: Het Fano–vlak • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2.10.8 2–51 Toeplitz– en Hankel–matrices Een aantal speciale matrices spelen een belangrijke rol in de numerieke wiskunde en de bij analyse van tijdreeksen. Een Toeplitz–matrix heeft de vorm a0 a−1 a−2 · · · a1 a0 a1 a2 . . .. .. .. . an−1 · · · ··· a−n+1 a−1 ... ... ... ... ... ... .. . .. . a−1 a−2 a1 a2 a0 a1 a−1 a0 ... ··· Voor een Toeplitz–matrix hangt de waarde van het element aij dus alleen af van het verschil i − j van de indices. De hoofddiagonaal en haar evenwijdigen zijn bijgevolg constant. Toeplitz–matrices zijn genoemd naar de wiskundige Otto Toeplitz (1881-1940). Het belang van Toeplitz–matrices was groot bij de invoering ervan omdat ze slechts 2n−1 verschillende elementen bevatten (i.p.v. n2 ) waardoor minder geheugenruimte wordt ingenomen en omdat er veel minder rekentijd nodig is om bewerkingen uit te voeren met deze matrices. Gelet op de evolutie van computersnelheid en computergeheugen zijn deze voordelen ondertussen wat achterhaald. Een toepassing waarin gebruik wordt gemaakt van Toeplitz–matrices is in de statistiek bij het schatten van de covariantiematrix van een n–tal toevalsveranderlijken (X1 , X2 , . . . , Xn ) met als (i, j)–de element E[(Xi − µi )(Xj − µj )]. Een circulantmatrix is een bijzondere Toeplitz–matrix waarvoor a−k = an−k voor 1 ≤ k ≤ n − 1, m.a.w. een circulantmatrix is een matrix waarin elke rij ontstaat uit de voorgaande rij door de elementen één plaats naar rechts op te schuiven waarbij het laatste element het eerste wordt. Een n × n–circulantmatrix heeft dus volgende gedaante : c1 cn C = cn−1 .. . c2 c2 c3 . . . c1 c2 cn c1 c3 c4 cn cn−1 cn−2 .. ... . . . . c1 De som en het product van twee circulantmatrices is opnieuw een circulantmatrix. Hoofdstuk 2 • Algebra voor ingenieurs • 2–52 Matrices, determinanten en lineaire stelsels Circulantmatrices zijn nauw verbonden met de discrete fouriertransformatie die wordt gebruikt bij de studie van signaalverwerking. Zo geldt o.a. dat circulantmatrices kunnen worden gediagonaliseerd door de Fast Fourier Transform (FFT) die geassocieerd is aan een zogeheten fouriermatrix F (zelf een bijzondere matrix waarin de complexe n–de machtswortels uit 1 voorkomen als elementen). Een Hankel–matrix is een vierkante matrix waarin het (i, j)–de element enkel afhangt van de som i + j , dus aij = ai−1,j+1 Zulk een matrix bezit dus een constante nevendiagonaal en constante evenwijdigen aan deze nevendiagonaal. Hankel–matrices zijn genoemd naar de wiskundige Hermann Hankel (1839–1873). Oneindige Hankel–matrices zijn verbonden met de zogeheten Hankeloperatoren van hilbertruimten, belangrijk voor benaderingen in de analyse. Een ander probleem dat verbonden is met Hankel–matrices is het zogeheten Hamburger moment probleem, genoemd naar Hans Ludwig Hamburger. Daarin wordt de vraag gesteld naar nodige R ∞ ennvoldoende voorwaarden opdat een n geven rij (µ1 , µ2 , . . . , µn ) met µn = E[X ] = −∞ x ϕ(x) dx de momenten zouden voorstellen van een toevalsveranderlijke X met kansdichtheidsfunctie ϕ(x). Beschouw de (n + 1) × (n + 1) Hankel–matrix 1 µ1 µ2 µ1 µ2 µ3 µ2 µ3 µ4 ∆n = .. .. .. . . . µn µn+1 µn+2 µn µn+1 µn+2 . .. ... . · · · µ2n ··· ··· ··· Dan is (µ1 , . . . , µn ) een rij momenten als en slechts als voldaan is aan (i) det(∆n ) ≥ 0 voor elke n en (ii) als det(∆n ) = 0 voor zekere n, dan is ook det(∆m ) = 0 voor alle m > n. Een heel bijzondere klasse van Hankelmatrices wordt gevormd door de Hilbertmatrices. 1 1 2 1 Hn = 3 .. . 1 n • Algebra voor ingenieurs • 1 2 1 3 1 4 1 3 1 4 1 5 ··· ··· ··· 1 n 1 n+1 1 n+2 1 n+1 1 n+2 ··· 1 2n−1 .. . .. . ... .. . Hoofdstuk 2 Matrices, determinanten en lineaire stelsels De elementen zijn dus hij = 2–53 1 . i+j−1 Deze matrices werden voor het eerst beschreven door de Duitse wiskundige David Hilbert in 1894 in verband met de theorie van de polynomen van Legendre. Hilbertmatrices zijn inverteerbaar. Het probleem met deze matrices is echter dat ze “slecht geconditioneerd”zijn. Bij het bepalen van de inverse met een computer kunnen zeer grote afrondingsfouten gemaakt worden bij het gebruik van bepaalde algoritmes. Precies door deze eigenschap vormen Hilbertmatrices het klassieke testgeval voor alle computerprogramma’s die matrices inverteren om stelsels van lineaire vergelijkingen op te lossen zoals bijvoorbeeld Gauss–eliminatie, LU–decompositie, Cholesky– decompositie, enzovoort. Doordat de inverse matrix exact gekend is, namelijk (Hn−1 )i,j = (−1)i+j (n + i − 1)!(n + j − 1)! (i + j − 1) ((i − 1)!(j − 1)!)2 (n − i)!(n − j)! of nog, door gebruik van binomiaalcoëfficiënten : (Hn−1 )i,j i+j = (−1) µ ¶µ ¶µ ¶2 n+i−1 n+j−1 i+j−2 (i + j − 1) n−j n−i i−1 kunnen de numerieke afwijkingen die in het computerprogramma bij het inverteren van de matrix ontstaan met het exacte resultaat vergeleken worden. Figuur 2.12: Toeplitz en Hankel Hoofdstuk 2 • Algebra voor ingenieurs • 2–54 Matrices, determinanten en lineaire stelsels 2.10.9 Vandermonde–matrices Een Vandermonde–matrix, genoemd naar Alexandre-Théophile Vandermonde (1735– 1796), is een matrix waarbij de elementen van elke rij behoren tot een meetkundige rij. M.a.w. : 1 1 V = 1 .. . 1 α1 α2 α3 .. . α12 α22 α32 .. . 2 αm αm . . . α1n−1 . . . α2n−1 . . . α3n−1 .. ... . n−1 . . . αm De determinant Y van een n × n Vandermonde–matrix kan geschreven worden als : det(V ) = (αj − αi ) 1≤i<j≤n Als αj 6= αi voor i 6= j dan is dus det V 6= 0. Deze matrices zijn nuttig bij veelterminterpolatie. Stel dat we een veelterm p(x) zoeken waarvoor geldt dat p(xi ) = yi met (xi , yi ) n gegeven punten. Deze veelterm is van de vorm p(x) = an xn + an−1 xn−1 + · · · + a2 x2 + a1 x + a0 Invullen van de voorwaarden p(xi ) = yi leidt tot een lineair stelsel xn0 xn−1 xn−2 . . . x0 0 0 xn xn−1 xn−2 . . . x1 1 1 1 .. .. .. .. . . . . n−2 xnn xn−1 x . . . x n n n 1 an y0 1 an−1 y1 .. · .. = .. . . . 1 a0 yn De matrix van dat stelsel is een Vandermonde–matrix met determinant verschillend van nul, zodat het stelsel een unieke oplossing bezit. De unieke veelterm die we aldus bekomen heet de interpolerende veelterm van Lagrange • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–55 2.11 Maple–commando’s voor matrices, determinanten en stelsels lineaire vergelijkingen 2.11.1 De lineaire algebra–bibliotheek laden De bibliotheek LinearAlgebra bevat een groot aantal commando’s voor het werken met matrices. Ze vervangt de oude linalg–bibliotheek uit vroegere versies van Maple. De commando’s uit die oude bibliotheek zijn nog steeds toegankelijk, maar we zullen er hier geen gebruik van maken. Bij de aanvang van iedere werksessie met Maple over matrices, determinanten, stelsels of lineaire afbeeldingen tussen vectorruimten, laden we dus altijd de LinearAlgebra– bibliotheek. De commando’s uit die bibliotheek beginnen allemaal met een hoofdletter (en bevatten in veel gevallen ook nog hoofdletters verder in de naam). > with(LinearAlgebra); [&x , Add , Adjoint, BackwardSubstitute, BandMatrix , Basis, BezoutMatrix , BidiagonalForm, BilinearForm, CharacteristicMatrix , CharacteristicPolynomial , Column, ColumnDimension, ColumnOperation, ColumnSpace, CompanionMatrix , ConditionNumber , ConstantMatrix , ConstantVector , Copy, CreatePermutation, CrossProduct, DeleteColumn, DeleteRow , Determinant, Diagonal , DiagonalMatrix , Dimension, Dimensions, DotProduct, EigenConditionNumbers, Eigenvalues, Eigenvectors, Equal , ForwardSubstitute, FrobeniusForm, GaussianElimination, GenerateEquations, GenerateMatrix , GetResultDataType, GetResultShape, GivensRotationMatrix , GramSchmidt, HankelMatrix , HermiteForm, HermitianTranspose, HessenbergForm, HilbertMatrix , HouseholderMatrix , IdentityMatrix , IntersectionBasis, IsDefinite, IsOrthogonal , IsSimilar , IsUnitary, JordanBlockMatrix , JordanForm, LA Main, LUDecomposition, LeastSquares, LinearSolve, Map, Map2 , MatrixAdd , MatrixExponential , MatrixFunction, MatrixInverse, MatrixMatrixMultiply, MatrixNorm, MatrixPower , MatrixScalarMultiply, MatrixVectorMultiply, MinimalPolynomial , Minor , Modular , Multiply, NoUserValue, Norm, Normalize, NullSpace, OuterProductMatrix , Permanent, Pivot, PopovForm, QRDecomposition, RandomMatrix , RandomVector , Rank , RationalCanonicalForm, ReducedRowEchelonForm, Row , RowDimension, RowOperation, RowSpace, ScalarMatrix , ScalarMultiply, ScalarVector , SchurForm, SingularValues, SmithForm, SubMatrix , SubVector , SumBasis, SylvesterMatrix , ToeplitzMatrix , Trace, Transpose, TridiagonalForm, UnitVector , VandermondeMatrix , VectorAdd , VectorAngle, VectorMatrixMultiply, VectorNorm, VectorScalarMultiply, ZeroMatrix , ZeroVector , Zip] Hoofdstuk 2 • Algebra voor ingenieurs • 2–56 Matrices, determinanten en lineaire stelsels 2.11.2 Een matrix invoeren Een matrix kan worden ingevoerd met het commando Matrix(...). Dit commando kan een hele reeks argumenten bezitten, maar het meest gebruikt is Matrix(m,n,[[...],[...],...,[...]]) waarbij m en n het aantal rijen, resp. kolommen van de matrix aangeeft en waarbij de elementen worden opgesomd in een lijst van lijsten (iedere lijst binnen de hoofdlijst somt de elementen van een rij op). In principe is het zelfs niet nodig om de orde van de matrix (de getallen m en n) op te geven, omdat deze automatisch vastliggen door de manier waarop de elementen van de matrix zijn opgegeven. voorbeeld : > > A:=Matrix(3,5,[[1,2,3,4,5],[9,8,7,6,5],[4,4,4,4,4]]); 1 2 3 4 5 A := 9 8 7 6 5 4 4 4 4 4 A:=Matrix([[1,2,3,4,5],[9,8,7,6,5],[4,4,4,4,4]]); 1 2 3 4 5 A := 9 8 7 6 5 4 4 4 4 4 Het is ook mogelijk om enkel een matrix van een bepaalde orde in te voeren waarbij de elementen nog niet nader bepaald zijn, maar achteraf zullen worden ingevuld. Dat kan met Matrix(m,n). Er wordt dan een m × n–matrix gegenereerd met alle elementen gelijk aan nul. De elementen die men een andere waarde dan nul wenst te geven, kunnen nu worden toegewezen met B[i,j]:=waarde. voorbeeld : > > > B:=Matrix(4,4); 0 0 0 0 0 0 0 0 B := 0 0 0 0 0 0 0 0 B[1,1]:=5;B[2,2]:=10;B[3,4]:=7;B[1,4]:=-6; B1, 1 := 5 B2, 2 := 10 B3, 4 := 7 B1, 4 := −6 B; • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–57 5 0 0 −6 0 10 0 0 0 0 0 7 0 0 0 0 Het is ook mogelijk om een matrix van een bepaalde orde met een bepaalde bijkomende eigenschap te construeren met Matrix(m,n,shape=eigenschap). Voorbeelden van bijkomende eigenschappen zijn : symmetric, diagonal, scalar[n], constant[n], triangular[upper], triangular[lower], identity, zero, ... voorbeelden : G:=Matrix(5,5,Vector([1,10,-2,5,-4]),shape=diagonal); 1 0 0 0 0 0 10 0 0 0 0 G := 0 0 −2 0 0 0 0 5 0 0 0 0 0 −4 > S:=Matrix(4,4,shape=scalar[k]); k 0 0 0 0 k 0 0 S := 0 0 k 0 0 0 0 k In plaats van shape = zero of shape = identity of shape = diagonal kan men ook gebruik maken van IdentityMatrix(n), ZeroMatrix(m,n), DiagonalMatrix([...]) . > voorbeeld : > N:=ZeroMatrix(2,4); · N := > > E:=IdentityMatrix(3); 0 0 0 0 0 0 0 0 ¸ 1 0 0 E := 0 1 0 0 0 1 G:=DiagonalMatrix([a,b,c,d]); a 0 0 0 0 b 0 0 G := 0 0 c 0 0 0 0 d Een willekeurige matrix kan gegenereerd worden met RandomMatrix(m,n) . De elementen zijn daarbij lukraak gekozen gehele getallen uit het interval [−99, 99]. Hoofdstuk 2 • Algebra voor ingenieurs • 2–58 Matrices, determinanten en lineaire stelsels Men kan dat aanpassen door een optie toe te voegen generator=a..b. > W1:=RandomMatrix(3,4); > W2:=RandomMatrix(3,4,generator=1..10); 2 7 2 4 W2 := 8 1 4 4 5 4 6 10 25 −2 −16 −22 45 W1 := 94 50 −9 12 10 −50 −81 W3:=RandomMatrix(3,3,generator=0..1.0,outputoptions=[shape=triangular [upper]]); 0.442678269775446331 0.106652770180584388 0.961898080855053683 0 0.00463422413406744394 0.774910464711502378 W3 := 0 0 0.817303220653432970 > > Bijzondere matrices kunnen ook worden geconstrueerd door gebruik te maken van een indexfunctie. Dat is een functie die aangeeft hoe het element aij op de i–de rij en j –de kolom afhangt van de indices i en j . voorbeeld : > f:=(i,j)->i+j; f := (i, j) → i + j > A:=Matrix(3,f); > g:=(i,j)->piecewise(i=j,0,i<j,-1,i>j,1); g := (i, j) → piecewise(i = j, 0, i < j, −1, j < i, 1) > B:=Matrix(4,g); > h:=(i,j)->piecewise(i=1,5,i=2,4,0); h := (i, j) → piecewise(i = 1, 5, i = 2, 4, 0) > C:=Matrix(5,h); 2 3 4 A := 3 4 5 4 5 6 0 −1 −1 −1 1 0 −1 −1 B := 1 1 0 −1 1 1 1 0 • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels C := 2.11.3 5 4 0 0 0 5 4 0 0 0 5 4 0 0 0 2–59 5 4 0 0 0 5 4 0 0 0 (Blok)matrices opbouwen met bestaande matrices Hierboven hebben we enkele mogelijkheden aangegeven om een matrix in te voeren. Met aldus ingevoerde matrices kan men nu meer ingewikkelde blokmatrices opbouwen door samenvoeging van eerder gedefinierede matrices op verschillende manieren. Zijn A en B eerder ingevoerde matrices, dan bekomt men met Matrix([A,B]) de blokmatrix (A|B) µ ¶ A en met Matrix([[A],[B]]) de blokmatrix . B Met DiagonalMatrix([A,B]) wordt een blokdiagonaalmatrix gevormd met de matrices A en B als blokken op de hoofddiagonaal. voorbeelden : > A:=IdentityMatrix(2); · A := 1 0 0 1 ¸ > B:=Matrix(2,2,shape=constant[4]); · ¸ 4 4 B := 4 4 > C:=Matrix([A,B]); · C := > E:=Matrix([[A],[B]]); 1 0 4 4 0 1 4 4 1 0 E := 4 4 > F:=DiagonalMatrix([A,B]); 1 0 F := 0 0 Hoofdstuk 2 0 1 0 0 ¸ 0 1 4 4 0 0 4 4 0 0 4 4 • Algebra voor ingenieurs • 2–60 Matrices, determinanten en lineaire stelsels 2.11.4 Manipulatie van rijen en kolommen van een matrix Een bepaalde rij of kolom of een ander onderdeel van een matrix kan worden geselecteerd, verwijderd of toegevoegd. Met Row(A,k) wordt de k –de rij van de matrix A geselecteerd en anallog met Column(A,k) de k –de kolom van A. Met diezelfde commando’s kunnen ook meerdere al dan niet opeenvolgende rijen of kolommen worden geselecteerd. voorbeelden : > > A:=RandomMatrix(4,5,generator=1..10); 10 7 6 9 1 1 10 3 8 5 A := 6 5 2 3 4 4 3 3 8 10 Row(A,2); [1, 10, 3, 8, 5] > Column(A,3); > Row(A,1..2); 6 3 2 3 [10, 7, 6, 9, 1], [1, 10, 3, 8, 5] > > Column(A,[3,5]); 6 1 3 5 , 2 4 3 10 Row(A,[1..2,4]); [10, 7, 6, 9, 1], [1, 10, 3, 8, 5], [4, 3, 3, 8, 10] Uit een bestaande matrix kunnen ook één of meerdere, al dan niet op elkaar volgende, rijen of kolommen worden verwijderd. Dat gebeurt met DeleteRow(A,...) of DeleteColumn(A,...) . voorbeelden : > B:=RandomMatrix(4,3,generator=1..10); • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 7 7 B := 8 6 > DeleteRow(B,2); > DeleteColumn(B,2..3); > DeleteRow(B,[1,3..4]); 7 6 7 9 2–61 1 2 7 9 7 7 1 8 7 7 6 9 9 7 7 8 6 £ 7 6 2 ¤ Naast het selecteren en verwijderen van rijen en kolommen kunnen ook elementaire rij– en/of kolombewerkingen worden uitgevoerd op een matrix. Daarvoor gebruikt men de commando’s RowOperation(A,...) en ColumnOperation(A,...) . Met RowOperation(A, [k,l]) worden rij k en rij l verwisseld in A. Met RowOperation(A, k, r) wordt rij k in A vermenigvuldigd met het getal r. Met RowOperation(A,[k,l], r) wordt rij k vervangen door rij k + r keer rij l. Analoog voor kolombewerkingen. voorbeelden : > > > > A:=RandomMatrix(3,4,generator=0..10); 0 4 8 6 A := 2 8 2 4 4 3 8 3 B:=RowOperation(A,[1,3]); 4 3 8 3 B := 2 8 2 4 0 4 8 6 C:=ColumnOperation(B,[3,1],-2); 4 3 0 3 C := 2 8 −2 4 0 4 8 6 E:=RowOperation(C,3,1/4); Hoofdstuk 2 • Algebra voor ingenieurs • 2–62 Matrices, determinanten en lineaire stelsels 4 3 0 3 E := 2 8 −2 4 3 0 1 2 2 2.11.5 Getransponeerde van een matrix bepalen Met het commando Transpose(A) wordt de getransponeerde matrix AT van A bepaald. > > A:=Matrix(3,5,[[1,2,3,4,5],[0,2,4,6,8],[1,3,5,7,9]]); 1 2 3 4 5 A := 0 2 4 6 8 1 3 5 7 9 Transpose(A); 1 0 1 2 2 3 3 4 5 4 6 7 5 8 9 Voor een complexe matrix wordt de hermitisch toegevoegde gevonden met HermitianTranspose(A) . > > B:=Matrix(3,2,[[I,1-I],[3-I,-I],[0,2+I]]); I 1−I B := 3 − I −I 0 2+I HermitianTranspose(B); · ¸ −I 3 + I 0 1+I I 2−I 2.11.6 Bewerkingen uitvoeren met matrices Twee matrices van dezelfde orde kunnen worden opgeteld. Dit gebeurt met de gebruikelijke + of door gebruik te maken van Add(A,B) of MatrixAdd(A,B) . voorbeeld : > > A:=Matrix(2,3,[[1,-4,0],[2,1,-3]]); · ¸ 1 −4 0 A := 2 1 −3 B:=Matrix(2,3,[[-1,2,-3],[0,-1,4]]); • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels · B := > > > > > A+B; −1 2 −3 0 −1 4 2–63 ¸ · ¸ 0 −2 −3 2 0 1 C:=Matrix(2,3,shape=constant[k]); · ¸ k k k C := k k k Add(A,C); · ¸ 1 + k −4 + k k 2 + k 1 + k −3 + k MatrixAdd(A,C); · ¸ 1 + k −4 + k k 2 + k 1 + k −3 + k Add(A,B); ¸ · 0 −2 −3 2 0 1 Een matrix kan ook vermenigvuldigd worden met een getal. Daarvoor gebruikt men de gewone (commutatieve) vermenigvuldiging ∗ of men gebruikt het commando ScalarMultiply(A,r) of MatrixScalarMultiply(A,r) . > > > A:=Matrix(2,3,[[1,-4,0],[2,1,-3]]); · ¸ 1 −4 0 A := 2 1 −3 2*A; · ¸ 2 −8 0 4 2 −6 ScalarMultiply(A,2); · ¸ 2 −8 0 4 2 −6 Wenst men de lineaire combinatie rA + sB te berekenen, dan kan dat door het ingeven van r ∗ A + s ∗ B, maar ook door Add(A,B,r,s) of MatrixAdd(A,B,r,s). > > > > A:=Matrix(2,3,[[1,-4,0],[2,1,-3]]): B:=Matrix(2,3,[[-1,4,0],[-1,-1,3]]): 2*A+3*B; · ¸ −1 4 0 1 −1 3 Add(A,B,2,3); Hoofdstuk 2 • Algebra voor ingenieurs • 2–64 Matrices, determinanten en lineaire stelsels · −1 4 0 1 −1 3 ¸ Voor de vermenigvuldiging van twee matrices (waarbij de orde vermenigvulding toelaat) kan men geen gebruik maken van de ∗ omdat matrixvermenigvuldiging niet commutatief is. Men gebruikt ofwel · als vermenigvuldigingsbewerking ofwel het commando Multiply(A,B) of MatrixMatrixMultiply(A,B) . > > > > > > > > A:=Matrix(3,3,[[1,-4,0],[2,1,-3],[3,2,1]]); 1 −4 0 1 −3 A := 2 3 2 1 B:=Matrix(3,3,[[2,0,3],[1,1,2],[1,2,-3]]); 2 0 3 2 B := 1 1 1 2 −3 A.B; −2 −4 −5 2 −5 17 9 4 10 B.A; 11 −2 3 9 1 −1 −4 −8 −9 Multiply(A,B); −2 −4 −5 2 −5 17 9 4 10 G:=ConstantMatrix(b,3,3,outputoptions=[shape=triangular[lower]]); b 0 0 G := b b 0 b b b H:=ConstantMatrix(a,3,3,outputoptions=[shape=triangular[upper]]); a a a H := 0 a a 0 0 a MatrixMatrixMultiply(G,H); ba ba ba ba 2ba 2ba ba 2ba 3ba • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels > 2–65 MatrixMatrixMultiply(H,G); 3ba 2ba ba 2ba 2ba ba ba ba ba De niet–commutatieve vermenigvuldiging kan ook worden weergegeven met behulp van &∗. Daardoor wordt het resultaat van het product van A met B niet weergegeven. Daarvoor is nodig om evalm(A&∗B) te gebruiken. > H&*G; > evalm(%); 2.11.7 a a a b 0 0 0 a a &∗ b b 0 0 0 a b b b 3ba 2ba ba 2ba 2ba ba ba ba ba De determinant van een vierkante matrix berekenen De determinant van een vierkante matrix A wordt berekend met Determinant(A) . voorbeeld : > > A:=RandomMatrix(5,5,generator=0..5); 4 2 5 5 4 4 4 5 A := 4 1 4 4 4 5 3 2 3 4 2 3 2 2 1 3 4 Determinant(A); 84 > B:=Matrix(3,3,[[1,a,b],[1,a^2,b^2],[1,a^3,b^3]]); 1 a b B := 1 a2 b2 1 a3 b3 > Determinant(B); a2 b3 − b2 a3 + a3 b − a b3 + a b2 − b a2 > factor(%); −b a (b − 1) (−1 + a) (a − b) Hoofdstuk 2 • Algebra voor ingenieurs • 2–66 Matrices, determinanten en lineaire stelsels 2.11.8 De inverse van een vierkante matrix bepalen De inverse matrix van een vierkante matrix A met determinant verschillend van nul wordt bepaald met MatrixInverse(A) . Als de determinant van A nul is, bestaat A−1 niet en dit wordt duidelijk gemaakt met een foutmelding. voorbeeld : > > > > A:=Matrix(3,3,[[1,2,3],[3,2,1],[2,1,3]]); 1 2 3 A := 3 2 1 2 1 3 MatrixInverse(A); 1 −5 1 12 4 3 7 1 −2 12 4 3 1 −1 1 12 4 3 B:=Matrix(3,3,[[1,2,3],[3,2,1],[4,4,4]]); 1 2 3 B := 3 2 1 4 4 4 MatrixInverse(B); Error, (in LinearAlgebra:-LA_Main:-MatrixInverse) singular matrix 2.11.9 Minoren en adjunct van een matrix bepalen Met het commando Minor(A,i,j,output=matrix) wordt de minor van het element aij van de matrix A bepaald. De determinant van deze minor (dit is, op het teken na, de cofactor van het element aij ) wordt gevonden met Minor(A,i,j,output=determinant) of zonder toevoeging van de optie Minor(A,i,j) . voorbeeld : > A:=Matrix(3,3,[[1,2,3],[4,5,6],[7,8,9]]); 1 2 3 A := 4 5 6 7 8 9 • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels > Minor(A,1,3,output=matrix); 2–67 · ¸ 4 5 7 8 > Minor(A,1,3,output=determinant); −3 > Minor(A,1,3); −3 De adjunct van A wordt bepaald met Adjoint(A) voorbeeld : > Adjoint(A); 2.11.10 −3 6 −3 6 −12 6 −3 6 −3 De rang van een matrix bepalen De rang van een matrix A wordt bepaald met Rank(A) . voorbeeld : > > A:=Matrix(5,4,[[3,5,0,1],[1,-2,4,2],[4,3,4,3],[2,7,-4,1],[1,3,0,2]]); 3 5 0 1 1 −2 4 2 4 3 4 3 A := 2 7 −4 1 1 3 0 2 Rank(A); 4 2.11.11 Gereduceerde vormen van een matrix bepalen Met GaussianElimination(A) wordt een matrix A herleid tot een echelonvorm door toepassing van het algoritme van Gauss (Gauss–normale vorm). voorbeeld : > A:=Matrix(4,5,[[2,-2,3,1,0],[4,0,-3,1,2],[1,1,3,3,4],[2,-1,0,-1,3]]); 2 −2 3 1 0 4 0 −3 1 2 A := 1 1 3 3 4 2 −1 0 −1 3 Hoofdstuk 2 • Algebra voor ingenieurs • 2–68 > Matrices, determinanten en lineaire stelsels GaussianElimination(A); 2 −2 3 0 4 −9 0 0 6 1 0 −1 2 3 3 −11 23 0 0 0 8 8 De unieke rijcanonieke vorm van een matrix A, ook Gauss–Jordanvorm of Hermite normale vorm genoemd, wordt in Maple bepaald met ReducedRowEchelonForm(A) . voorbeeld : > ReducedRowEchelonForm(A); 1 0 0 1 0 0 0 0 0 0 1 0 8 17 14 17 29 51 0 10 17 26 17 32 51 0 7 17 25 17 2 51 0 De Smith normale vorm van een matrix A wordt bepaald met SmithForm(A) . voorbeeld : > SmithForm(A); 1 0 0 0 2.11.12 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 Een LU – of P LU –ontbinding van een matrix bepalen Voor een matrix A wordt een P LU –ontbinding gevonden met het commando LUDecomposition(A) . De output van dit commando geeft de matrices P , L en U (in deze volgorde). Wanneer de matrix P de eenheidsmatrix is, dan vormen matrices L en U een LU – ontbinding van A. Merk op dat LUDecomposition(A,output=U) hetzelfde doet als GaussianElimination(A) en dus de Gauss–normale vorm van A oplevert. voorbeeld : • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–69 > A :=Matrix(4,5,[[0,-2,0,3,1],[1,3,0,1,2],[1,1,0,0,0],[-3,4,1,0,1]]); 0 −2 0 3 1 1 3 0 1 2 A := 1 1 0 0 0 −3 4 1 0 1 > (p,l,u):=LUDecomposition(A); 1 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 −13 p, l, u := , −3 1 0 0 0 0 1 2 0 0 1 0 1 1 0 1 > p.l.u; 2.11.13 1 3 0 1 2 0 −2 0 3 1 45 27 , 0 0 1 2 2 0 0 0 −4 −3 0 −2 0 3 1 1 3 0 1 2 1 1 0 0 0 −3 4 1 0 1 Een lineair stelsel oplossen Het algemene solve(...) commando kan worden gebruikt voor het oplossen van lineaire stelsels. Daarnaast kan men gebruik maken van een specifiek commando uit de LinearAlgebra– bibliotheek : LinearSolve(...). De syntax van dat commando luidt : LinearSolve(A,B,opties) waarbij A de coëfficiëntenmatrix is van het stelsel en B de matrix van de bekende termen. Wanneer men een stelsel ingeeft als een lijst van vergelijkingen (tussen vierkante haken), dan bekomt men de matrices A en B door gebruik te maken van GenerateMatrix(stelsel,[x,y,..]) waarvan het tweede argument de lijst van de onbekenden is. voorbeeld : > stelsel:=[x-y+2*z+u=2,3*x-y-2*z+u=1,x-y+z-2*u=0]; stelsel := [x − y + 2 z + u = 2, 3 x − y − 2 z + u = 1, x − y + z − 2 u = 0] > solve(stelsel,{x,y,z,u}); > 11 7 − 11 u, x = − 6 u, u = u} 2 2 (A,B):=GenerateMatrix(stelsel,[x,y,z,u]); {z = 2 − 3 u, y = Hoofdstuk 2 • Algebra voor ingenieurs • 2–70 Matrices, determinanten en lineaire stelsels > 1 −1 2 1 2 1 , 1 A, B := 3 −1 −2 1 −1 1 −2 0 LinearSolve(A,B); 7 2 − 6 t4 11 2 − 11 t 4 2 − 3 t4 t4 Wanneer het stelsel meerdere oplossingen bezit (vrije onbekenden) zoals in bovenstaand voorbeeld, dan kan men desgewenst de naam van de vrije variabele kiezen door in het LinearSolve–commando de optie free=naam toe te voegen. > LinearSolve(A,B,free=k); 7 − 6 k4 2 11 − 11 k4 2 2 − 3 k4 k4 Het is ook mogelijk om een lineair stelsel op te lossen met LinearSolve(Aplus) waarbij de matrices A en B werden samengevoegd tot de verhoogde matrix A+ . Deze matrix kan vanuit een stelsel worden gegenereerd met GenerateMatrix(stelsel, onbekendenlijst, augmented =true). voorbeeld : > > Aplus:=GenerateMatrix(stelsel,[x,y,z,u],augmented=true); 1 −1 2 1 2 1 1 Aplus := 3 −1 −2 1 −1 1 −2 0 LinearSolve(Aplus,free=s); 7 2 − 6 s4 11 2 − 11 s4 2 − 3 s4 s4 • Algebra voor ingenieurs • Hoofdstuk 2 Matrices, determinanten en lineaire stelsels 2–71 Zoals men met GenerateMatrix(...) de matrix die overeenkomt met een stelsel bepaalt, zo kan men omgekeerd met GenerateEquations(Aplus,onbekendenlijst) het stelsel bekomen dat geassocieerd is met de coëfficiëntenmatrix A en de bekenden B waarbij (A|B) = Aplus en met de opgegeven lijst als onbekenden. voorbeeld : > > > Aplus:=RandomMatrix(3,4,generator=1..20); 7 5 2 9 Aplus := 3 13 11 3 10 4 11 6 GenerateEquations(Aplus,[x,y,z]); [7 x + 5 y + 2 z = 9, 3 x + 13 y + 11 z = 3, 10 x + 4 y + 11 z = 6] GenerateEquations(Aplus,[a,b,c]); [7 a + 5 b + 2 c = 9, 3 a + 13 b + 11 c = 3, 10 a + 4 b + 11 c = 6] Tenslotte wijzen we nog op het feit dat bij het oplossen van een stelsel met parameters door Maple geen rekening wordt gehouden met bijzondere gevallen waarbij bvb. noemers nul worden. Anders gezegd, bespreking van een stelsel met parameters gebeurt niet door het computeralgebrasysteem. Deze gevallen moeten door de gebruiker zelf apart worden opgemerkt en behandeld ! voorbeeld : > > > stelsel:=[x+y+z=1,m*x+y-z=0,x-m*y+z=1]; stelsel := [x + y + z = 1, m x + y − z = 0, x − m y + z = 1] (A,B):=GenerateMatrix(stelsel,[x,y,z]); 1 1 1 1 A, B := m 1 −1 , 0 1 −m 1 1 LinearSolve(A,B); 1 1+m 0 m 1+m Het geval waarbij m = −1 moet afzonderlijk worden onderzocht ! De determinant van A wordt dan nul. > Determinant(A); −2 m − 1 − m2 > solve(Determinant(A)=0); −1, −1 Hoofdstuk 2 • Algebra voor ingenieurs • 2–72 > > Matrices, determinanten en lineaire stelsels subs(m=-1,stelsel); [x + y + z = 1, −x + y − z = 0, x + y + z = 1] solve(%); 1 1 {y = , x = − z, z = z} 2 2 • Algebra voor ingenieurs • Hoofdstuk 2