DiploMat Uge 5 Dag 1Preben Alsholm, 3/3 2008Pakkerrestart;libname:="h:/MatematikPakke/libDMat",libname;with(DMat);with(LinearAlgebra):BeskrivProc(Det);Describe(Det);Determinantens definitionLad A v\303\246re en kvadratisk matrix (her 4x4):A:=Matrix(4,symbol=a);Undermatricen LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYlLUklbXN1YkdGJDYlLUkjbWlHRiQ2JVEiQUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYnLUkjbW5HRiQ2JFEiMUYnL0Y2USdub3JtYWxGJy1JI21vR0YkNi1RIixGJ0Y+LyUmZmVuY2VHUSZmYWxzZUYnLyUqc2VwYXJhdG9yR0Y0LyUpc3RyZXRjaHlHRkYvJSpzeW1tZXRyaWNHRkYvJShsYXJnZW9wR0ZGLyUubW92YWJsZWxpbWl0c0dGRi8lJ2FjY2VudEdGRi8lJ2xzcGFjZUdRJjAuMGVtRicvJSdyc3BhY2VHUSwwLjMzMzMzMzNlbUYnLUYvNiVRImpGJ0YyRjUvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYnRj4vJS9zdWJzY3JpcHRzaGlmdEdRIjBGJ0ZmbkY+ er den matrix, der fremkommer ved i matricen A at stryge f\303\270rste r\303\246kke og j'te s\303\270jle.Dette kan g\303\270res s\303\245ledes i Maple. Vi viser LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYlLUklbXN1YkdGJDYlLUkjbWlHRiQ2JVEiQUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYnLUkjbW5HRiQ2JFEiMUYnL0Y2USdub3JtYWxGJy1JI21vR0YkNi1RIixGJ0Y+LyUmZmVuY2VHUSZmYWxzZUYnLyUqc2VwYXJhdG9yR0Y0LyUpc3RyZXRjaHlHRkYvJSpzeW1tZXRyaWNHRkYvJShsYXJnZW9wR0ZGLyUubW92YWJsZWxpbWl0c0dGRi8lJ2FjY2VudEdGRi8lJ2xzcGFjZUdRJjAuMGVtRicvJSdyc3BhY2VHUSwwLjMzMzMzMzNlbUYnLUY7NiRRIjNGJ0Y+LyUrYmFja2dyb3VuZEdRLlsyNTUsMjU1LDI1NV1GJ0Y+LyUvc3Vic2NyaXB0c2hpZnRHUSIwRidGZm5GPg==:Minor(A,1,3,output=matrix);eller i to tempi:DeleteRow(A,1);DeleteColumn(%,3);Definitionen af determinanten er nu (Lay, p. 187 nederst):Det(A);Vi tager nu et konkret eksempel.A:=RandomMatrix(4,generator=-9..9);Definitionen af determinanten:Det(A);Hver af underdeterminanterne p\303\245 h\303\270jre side defineres p\303\245 lignende vis. Her tager vi for eksemplets skyld den f\303\270rste:op([1,2,1],%);Det(%);Det(%);expand(%);G\303\270r vi dette p\303\245 alle, f\303\245s successiveDet(A);Det(%);expand(%);Det(%);expand(%);Kontrol med Maples indbyggede:Determinant(A);For at udregne determinanten af A i vores eksempel skal vi udregne 4 * 3 = 12 determinanter af st\303\270rrelse 2x2.For at udregne determinanten af en 10x10-matrix efter denne definition skal beregnes 10 * 9 * 8 * ... * 3 = 1 814 400 determinanter af st\303\270rrelse 2x2.H\303\245bl\303\270st langsom!Nedenfor er Line\303\246r Algebra-bogens definition af determinanten implementeret som en procedure i Maple.Det er en rekursiv procedure, da den refererer til sig selv:det:=proc(A::Matrix(square))
local n;
uses LinearAlgebra;
n:=RowDimension(A);
if n=1 then
A[1,1]
else
add((-1)^(1+j)*A[1,j]*det(Minor(A,1,j,output=matrix)),j=1..n)
end if
end proc:Vi afpr\303\270ver vores procedure p\303\245 eksemplet ovenfor:det(A);Vi kontrollerer resultatet med den indbyggede determinantfunktion:Determinant(A);For store matricer er vores procedure det h\303\245bl\303\270st langsom!!!Pr\303\270v blot med en tilf\303\246ldig 8x8-matrix:A:=RandomMatrix(8);time(det(A));Til sammenligning tager den indbyggede ikke megen tid:time(Determinant(A));%%/%;Udvikling langs en anden r\303\246kkeDet kan vises, at der kan udvikles langs en vilk\303\245rlig r\303\246kke eller s\303\270jle:A:=Matrix(3,symbol=a);res1:=Det(A);Giver det samme som:res2:=Det(A,r\303\246kke(2));Her pr\303\270ver vi p\303\245standen:Det(res1)-Det(res2);expand(%);Her udvikles langs 3. s\303\270jleres3:=Det(A,s\303\270jle(3));Samme resultat som det f\303\270rste:Det(res3)-Det(res1);expand(%);At man liges\303\245 godt kan udvikle langs en s\303\270jle som en r\303\246kke, betyder, at LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYnLUkjbWlHRiQ2I1EhRictRiM2KUYrLUYjNictRiw2JVEkZGV0RicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUkjbW9HRiQ2LVEwJkFwcGx5RnVuY3Rpb247RicvRjpRJ25vcm1hbEYnLyUmZmVuY2VHUSZmYWxzZUYnLyUqc2VwYXJhdG9yR0ZELyUpc3RyZXRjaHlHRkQvJSpzeW1tZXRyaWNHRkQvJShsYXJnZW9wR0ZELyUubW92YWJsZWxpbWl0c0dGRC8lJ2FjY2VudEdGRC8lJ2xzcGFjZUdRJjAuMGVtRicvJSdyc3BhY2VHRlMtSShtZmVuY2VkR0YkNiQtRiM2JS1JJW1zdXBHRiQ2JS1GLDYlUSJBRidGNkY5LUYsNiVRIlRGJ0Y2RjkvJTFzdXBlcnNjcmlwdHNoaWZ0R1EiMEYnLyUrYmFja2dyb3VuZEdRLlsyNTUsMjU1LDI1NV1GJ0ZARkBGYW9GQC1GPTYtUSI9RidGQEZCRkVGR0ZJRktGTUZPL0ZSUSwwLjI3Nzc3NzhlbUYnL0ZVRmhvLUYjNidGM0Y8LUZXNiQtRiM2JUZobkZhb0ZARkBGYW9GQEYrRmFvRkBGK0Zhb0ZA.A:=RandomMatrix(4);Det(A);Underdeterminanterne beder vi Determinant om at udregne (value er udvidet til at omdanne DET til Determinant):value(%);Det(A,s\303\270jle(1));value(%);Det(A,r\303\246kke(2));value(%);Alle p\303\245 en gang:seq(value(Det(A,r\303\246kke(k))),k=1..4);seq(value(Det(A,s\303\270jle(k))),k=1..4);Determinant(A);Determinant(Transpose(A));R\303\246kkeoperationernes indflydelse p\303\245 determinantenLad A v\303\246re en kvadratisk matrix (her 3x3):A:=Matrix(3,symbol=a);Bem\303\246rk f\303\270rst, at en ombytning af to r\303\246kker blot \303\246ndrer fortegnet p\303\245 determinanten. Abyt12:=RowOperation(A,[1,2]);DET(Abyt12)=Det(Abyt12,r\303\246kke(2));Men de her optr\303\246dende undermatricer svarende til udvikling langs r\303\246kke 2 er de samme som undermatricerne svarende til r\303\246kke 1 for den oprindelige matrix: DET(A)=Det(A,r\303\246kke(1));Heraf f\303\270lger alts\303\245, at de to determinanter kun afviger med et fortegn, som det da ogs\303\245 fremg\303\245r ved direkte udregning i Maple:Determinant(A)+Determinant(Abyt12);Det er umiddelbart klart, at multiplikation af en r\303\246kke med et tal k, g\303\270r determinanten k gange st\303\270rre, som det ogs\303\245 fremg\303\245r her:A2k:=RowOperation(A,2,k);DET(A2k)=Det(A2k,r\303\246kke(2));k*DET(A)=k*Det(A,r\303\246kke(2));simplify(Determinant(A2k)-k*Determinant(A));Nu betragter vi den vigtigste r\303\246kkeoperation LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYnLUkjbWlHRiQ2I1EhRictRiM2KC1JJW1zdWJHRiQ2JS1GLDYlUSJSRicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUYjNiUtRiw2JVEiaUYnRjdGOi8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRicvRjtRJ25vcm1hbEYnLyUvc3Vic2NyaXB0c2hpZnRHUSIwRictSSNtb0dGJDYtUSM6PUYnRkUvJSZmZW5jZUdRJmZhbHNlRicvJSpzZXBhcmF0b3JHRlAvJSlzdHJldGNoeUdGUC8lKnN5bW1ldHJpY0dGUC8lKGxhcmdlb3BHRlAvJS5tb3ZhYmxlbGltaXRzR0ZQLyUnYWNjZW50R0ZQLyUnbHNwYWNlR1EsMC4yNzc3Nzc4ZW1GJy8lJ3JzcGFjZUdGaW4tRiM2KEYxLUZLNi1RIitGJ0ZFRk5GUUZTRlVGV0ZZRmVuL0ZoblEsMC4yMjIyMjIyZW1GJy9GW29GYm8tRiM2Jy1GLDYlUSJrRidGN0Y6LUZLNi1RMSZJbnZpc2libGVUaW1lcztGJ0ZFRk5GUUZTRlVGV0ZZRmVuL0ZoblEmMC4wZW1GJy9GW29GXXAtRjI2JUY0LUYjNiUtRiw2JVEiakYnRjdGOkZCRkVGR0ZCRkVGK0ZCRkVGK0ZCRkVGK0ZCRkU= hvor LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYnLUkjbWlHRiQ2I1EhRictRiM2Jy1GLDYlUSJpRicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUkjbW9HRiQ2LVElJm5lO0YnL0Y4USdub3JtYWxGJy8lJmZlbmNlR1EmZmFsc2VGJy8lKnNlcGFyYXRvckdGQi8lKXN0cmV0Y2h5R0ZCLyUqc3ltbWV0cmljR0ZCLyUobGFyZ2VvcEdGQi8lLm1vdmFibGVsaW1pdHNHRkIvJSdhY2NlbnRHRkIvJSdsc3BhY2VHUSwwLjI3Nzc3NzhlbUYnLyUncnNwYWNlR0ZRLUYsNiVRImpGJ0Y0RjcvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYnRj5GK0ZXRj4=. Vi skal vise, at denne slet ikke \303\246ndrer determinantens v\303\246rdi!Vi betragter som eksempel i = 2, og j = 1, alts\303\245 r\303\246kkeoperationen LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYnLUkjbWlHRiQ2I1EhRictRiM2KC1JJW1zdWJHRiQ2JS1GLDYlUSJSRicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUYjNiUtSSNtbkdGJDYkUSIyRicvRjtRJ25vcm1hbEYnLyUrYmFja2dyb3VuZEdRLlsyNTUsMjU1LDI1NV1GJ0ZDLyUvc3Vic2NyaXB0c2hpZnRHUSIwRictSSNtb0dGJDYtUSM6PUYnRkMvJSZmZW5jZUdRJmZhbHNlRicvJSpzZXBhcmF0b3JHRlEvJSlzdHJldGNoeUdGUS8lKnN5bW1ldHJpY0dGUS8lKGxhcmdlb3BHRlEvJS5tb3ZhYmxlbGltaXRzR0ZRLyUnYWNjZW50R0ZRLyUnbHNwYWNlR1EsMC4yNzc3Nzc4ZW1GJy8lJ3JzcGFjZUdGam4tRiM2KEYxLUZMNi1RIitGJ0ZDRk9GUkZURlZGWEZaRmZuL0ZpblEsMC4yMjIyMjIyZW1GJy9GXG9GY28tRiM2Jy1GLDYlUSJrRidGN0Y6LUZMNi1RMSZJbnZpc2libGVUaW1lcztGJ0ZDRk9GUkZURlZGWEZaRmZuL0ZpblEmMC4wZW1GJy9GXG9GXnAtRjI2JUY0LUYjNiUtRkA2JFEiMUYnRkNGRUZDRkhGRUZDRitGRUZDRitGRUZDRitGRUZD . N\303\245r denne er udf\303\270rt har vi matricen Aa:Aa:=RowOperation(A,[2,1],k);Vi udvikler langs anden r\303\246kke:DET(Aa)=Det(Aa,r\303\246kke(2));Men underdeterminanterne for Aa langs r\303\246kke 2 er de samme som for A, s\303\245 vi f\303\245rDET(A)=Det(A,r\303\246kke(2));k-bidraget er imidlertid det vi f\303\245r ved at udvikle determinanten afRowOperation(<Row(A,[1,1,3])>,2,k);langs anden r\303\246kkeDet(%,r\303\246kke(2));Dette er imidlertid k gange determinanten af matricen<Row(A,[1,1,3])>;Her er to r\303\246kker ens. En s\303\245dan matrix m\303\245 have determinant lig med 0, da ombytning af de to ens r\303\246kker skal \303\246ndre fortegnet og samtidigt ikke!Vi illustrerer nu disse egenskaber ved determinanten ved et konkret eksempel.Lad A v\303\246re en tilf\303\246ldigt valgt 4x4-matrix:A:=RandomMatrix(4,generator=-9..9);Vi illustrerer f\303\270rst, at determinanten ikke \303\246ndres ved r\303\246kkeoperationen LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYnLUkjbWlHRiQ2I1EhRictRiM2KC1JJW1zdWJHRiQ2JS1GLDYlUSJSRicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUYjNiUtRiw2JVEiaUYnRjdGOi8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRicvRjtRJ25vcm1hbEYnLyUvc3Vic2NyaXB0c2hpZnRHUSIwRictSSNtb0dGJDYtUSM6PUYnRkUvJSZmZW5jZUdRJmZhbHNlRicvJSpzZXBhcmF0b3JHRlAvJSlzdHJldGNoeUdGUC8lKnN5bW1ldHJpY0dGUC8lKGxhcmdlb3BHRlAvJS5tb3ZhYmxlbGltaXRzR0ZQLyUnYWNjZW50R0ZQLyUnbHNwYWNlR1EsMC4yNzc3Nzc4ZW1GJy8lJ3JzcGFjZUdGaW4tRiM2KEYxLUZLNi1RIitGJ0ZFRk5GUUZTRlVGV0ZZRmVuL0ZoblEsMC4yMjIyMjIyZW1GJy9GW29GYm8tRiM2Jy1GLDYlUSJrRidGN0Y6LUZLNi1RMSZJbnZpc2libGVUaW1lcztGJ0ZFRk5GUUZTRlVGV0ZZRmVuL0ZoblEmMC4wZW1GJy9GW29GXXAtRjI2JUY0LUYjNiUtRiw2JVEiakYnRjdGOkZCRkVGR0ZCRkVGK0ZCRkVGK0ZCRkVGK0ZCRkU= n\303\245r blot LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYnLUkjbWlHRiQ2I1EhRictRiM2Jy1GLDYlUSJpRicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUkjbW9HRiQ2LVElJm5lO0YnL0Y4USdub3JtYWxGJy8lJmZlbmNlR1EmZmFsc2VGJy8lKnNlcGFyYXRvckdGQi8lKXN0cmV0Y2h5R0ZCLyUqc3ltbWV0cmljR0ZCLyUobGFyZ2VvcEdGQi8lLm1vdmFibGVsaW1pdHNHRkIvJSdhY2NlbnRHRkIvJSdsc3BhY2VHUSwwLjI3Nzc3NzhlbUYnLyUncnNwYWNlR0ZRLUYsNiVRImpGJ0Y0RjcvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYnRj5GK0ZXRj4=: Determinant(A);RowOperation(A,[3,2],25*a);Determinant(%);Nedenfor ombytter vi r\303\246kke 1 og r\303\246kke 3:RowOperation(A,[1,3]);og vi ser, at fortegnet p\303\245 determinanten \303\246ndres:Determinant(%);Nu ganger vi r\303\246kke 4 i A med 7:RowOperation(A,4,7);Determinanten er nuDeterminant(%);hvilket er det samme som7*Determinant(A);Udregning af determinant ved GausseliminationA;Det er let at udregne determinanten af en triangul\303\246r matrix. Reducerer vi derfor matricen til echelonform, kan determinanten herefter let udregnes.Vi m\303\245 blot holde styr p\303\245 de operationer, der \303\246ndrer determinanten.Lidt Mapleteknisk: Vi laver en kopi af A. Den kalder vi Akopi. Dette betyder, at der to steder i hukommelsen befinder sig matricer med udseende som A, nemlig A og Akopi.Dette g\303\270r, at vi kan \303\246ndre p\303\245 A uden at \303\246ndre p\303\245 Akopi. (Dette forhold er specielt for matricer i Maple).Kopien skal laves af Copy. Det hj\303\246lper ikke at sige Akopi:=A, s\303\245 er der kun i hukommelsen gjort plads til \303\251n matrix.Akopi:=Copy(A);addressof(A),addressof(Akopi);I stedet for her at lave Gausseliminationerne i h\303\245nden, beder vi Maple om at g\303\270re det:En LU-dekomposition af A giver en echelonform for A (nemlig U) og en matrix L, der indeholder oplysninger om de r\303\246kkeoperationer af typen LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYnLUkjbWlHRiQ2I1EhRictRiM2KC1JJW1zdWJHRiQ2JS1GLDYlUSJSRicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUYjNiUtRiw2JVEiaUYnRjdGOi8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRicvRjtRJ25vcm1hbEYnLyUvc3Vic2NyaXB0c2hpZnRHUSIwRictSSNtb0dGJDYtUSM6PUYnRkUvJSZmZW5jZUdRJmZhbHNlRicvJSpzZXBhcmF0b3JHRlAvJSlzdHJldGNoeUdGUC8lKnN5bW1ldHJpY0dGUC8lKGxhcmdlb3BHRlAvJS5tb3ZhYmxlbGltaXRzR0ZQLyUnYWNjZW50R0ZQLyUnbHNwYWNlR1EsMC4yNzc3Nzc4ZW1GJy8lJ3JzcGFjZUdGaW4tRiM2KEYxLUZLNi1RKCZtaW51cztGJ0ZFRk5GUUZTRlVGV0ZZRmVuL0ZoblEsMC4yMjIyMjIyZW1GJy9GW29GYm8tRiM2Jy1GLDYlUSJrRidGN0Y6LUZLNi1RMSZJbnZpc2libGVUaW1lcztGJ0ZFRk5GUUZTRlVGV0ZZRmVuL0ZoblEmMC4wZW1GJy9GW29GXXAtRjI2JUY0LUYjNiUtRiw2JVEiakYnRjdGOkZCRkVGR0ZCRkVGK0ZCRkVGK0ZCRkVGK0ZCRkU=. Faktisk er LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYnLUkjbWlHRiQ2I1EhRictRiM2Jy1GLDYlUSJrRicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUkjbW9HRiQ2LVEiPUYnL0Y4USdub3JtYWxGJy8lJmZlbmNlR1EmZmFsc2VGJy8lKnNlcGFyYXRvckdGQi8lKXN0cmV0Y2h5R0ZCLyUqc3ltbWV0cmljR0ZCLyUobGFyZ2VvcEdGQi8lLm1vdmFibGVsaW1pdHNHRkIvJSdhY2NlbnRHRkIvJSdsc3BhY2VHUSwwLjI3Nzc3NzhlbUYnLyUncnNwYWNlR0ZRLUklbXN1YkdGJDYlLUYsNiVRIkxGJ0Y0RjctRiM2Jy1GLDYlUSJpRidGNEY3LUY7Ni1RIixGJ0Y+RkAvRkRGNkZFRkdGSUZLRk0vRlBRJjAuMGVtRicvRlNRLDAuMzMzMzMzM2VtRictRiw2JVEiakYnRjRGNy8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRidGPi8lL3N1YnNjcmlwdHNoaWZ0R1EiMEYnRmRvRj5GK0Zkb0Y+.Matricen P holder styr p\303\245 evt. r\303\246kkeombytninger. Hvis P er enhedsmatricen, er der ikke foretaget r\303\246kkeombytninger. Ellers er r\303\246kkeombytningerne de samme som kr\303\246ves for at g\303\270re P til en enhedsmatrix:P,L,U:=LUDecomposition(A);Bem\303\246rk, at U er samme matrix, som man f\303\245r ved anvendelse af GaussianElimination:GaussianElimination(A);Produktet PLU giver matricen A:P.L.U;For nu at komme fra A til U begynder vi med evt. ombytninger af r\303\246kkerne (og omdefinerer dermed A). Bem\303\246rk, at der skal bruges den inverse til P, fordi r\303\246kkef\303\270lgen p\303\245 ombytninger ikke er ligegyldig: A:=P^(-1).A;R\303\246kkeoperationen LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYnLUkjbWlHRiQ2I1EhRictRiM2KC1JJW1zdWJHRiQ2JS1GLDYlUSJSRicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUYjNiUtSSNtbkdGJDYkUSIyRicvRjtRJ25vcm1hbEYnLyUrYmFja2dyb3VuZEdRLlsyNTUsMjU1LDI1NV1GJ0ZDLyUvc3Vic2NyaXB0c2hpZnRHUSIwRictSSNtb0dGJDYtUSM6PUYnRkMvJSZmZW5jZUdRJmZhbHNlRicvJSpzZXBhcmF0b3JHRlEvJSlzdHJldGNoeUdGUS8lKnN5bW1ldHJpY0dGUS8lKGxhcmdlb3BHRlEvJS5tb3ZhYmxlbGltaXRzR0ZRLyUnYWNjZW50R0ZRLyUnbHNwYWNlR1EsMC4yNzc3Nzc4ZW1GJy8lJ3JzcGFjZUdGam4tRiM2KEYxLUZMNi1RKCZtaW51cztGJ0ZDRk9GUkZURlZGWEZaRmZuL0ZpblEsMC4yMjIyMjIyZW1GJy9GXG9GY28tRiM2Jy1GLDYlUSJrRidGN0Y6LUZMNi1RMSZJbnZpc2libGVUaW1lcztGJ0ZDRk9GUkZURlZGWEZaRmZuL0ZpblEmMC4wZW1GJy9GXG9GXnAtRjI2JUY0LUYjNiUtRkA2JFEiMUYnRkNGRUZDRkhGRUZDRitGRUZDRitGRUZDRitGRUZD kan nu foretages s\303\245ledes, hvor k tages fra L. Fortegnet -L[2,1] skyldes forskellige fortegnskonventioner i L og RowOperation:RowOperation(A,[2,1],-L[2,1]);Vi lader foretage de n\303\270dvendige r\303\246kkeoperationer i f\303\270rste s\303\270jle. Bem\303\246rk, at vi overskriver A (inplace = true):for k from 2 to 4 do
RowOperation(A,[k,1],-L[k,1],inplace=true)
end do;N\303\246ste s\303\270jle:for k from 3 to 4 do
RowOperation(A,[k,2],-L[k,2],inplace=true)
end do;I tredie s\303\270jle skal der kun laves en r\303\246kkeoperation:RowOperation(A,[4,3],-L[4,3],inplace=true);A;Determinant(A);Determinant(Akopi);S\303\246tning: A invertibel hvis og kun hvis LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYoLUkjbWlHRiQ2I1EhRictRiM2KUYrLUYjNigtRiw2JVEkZGV0RicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUkjbW9HRiQ2LVEwJkFwcGx5RnVuY3Rpb247RicvRjpRJ25vcm1hbEYnLyUmZmVuY2VHUSZmYWxzZUYnLyUqc2VwYXJhdG9yR0ZELyUpc3RyZXRjaHlHRkQvJSpzeW1tZXRyaWNHRkQvJShsYXJnZW9wR0ZELyUubW92YWJsZWxpbWl0c0dGRC8lJ2FjY2VudEdGRC8lJ2xzcGFjZUdRJjAuMGVtRicvJSdyc3BhY2VHRlMtSShtZmVuY2VkR0YkNiQtRiM2Ji1GLDYlUSJBRidGNkY5LyUlc2l6ZUdRIzEyRicvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYnRkBGQEZobkZbb0ZALUY9Ni1RJSZuZTtGJ0ZARkJGRUZHRklGS0ZNRk8vRlJRLDAuMjc3Nzc3OGVtRicvRlVGYm8tSSNtbkdGJDYkUSIwRidGQEZobkZbb0ZARitGaG5GW29GQA==Matricens elementer vil blive valgt tilf\303\246ldig fra denne liste:L:=[$-5..5,a,a];A:=RandomMatrix(3,generator=(()->L[rand(1..nops(L))()]));Determinant(A);LUDecomposition(A);GaussianElimination(A);p:=2: q:=3:
A:=Matrix(3,(i,j)->if i=p and j=q then a else rand(-9..9)() end if);Determinant(A);LUDecomposition(A);det(AB) = det(A) det(B)Vi illustrerer s\303\246tningen: det(AB) = det(A) det(B):A:=RandomMatrix(5);B:=RandomMatrix(5);Determinant(A);
Determinant(B);
Produktet af determinanterne:%*%%;Determinanten af produktet:Determinant(A.B);Som en konsekvens af s\303\246tningen: det(AB) = det(A) det(B) har vi, at LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYnLUkjbWlHRiQ2I1EhRictRiM2KEYrLUYjNictRiw2JVEkZGV0RicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUkjbW9HRiQ2LVEwJkFwcGx5RnVuY3Rpb247RicvRjpRJ25vcm1hbEYnLyUmZmVuY2VHUSZmYWxzZUYnLyUqc2VwYXJhdG9yR0ZELyUpc3RyZXRjaHlHRkQvJSpzeW1tZXRyaWNHRkQvJShsYXJnZW9wR0ZELyUubW92YWJsZWxpbWl0c0dGRC8lJ2FjY2VudEdGRC8lJ2xzcGFjZUdRJjAuMGVtRicvJSdyc3BhY2VHRlMtSShtZmVuY2VkR0YkNiQtRiM2JS1JJW1zdXBHRiQ2JS1GLDYlUSJBRidGNkY5LUYjNiYtRj02LVEqJnVtaW51czA7RidGQEZCRkVGR0ZJRktGTUZPL0ZSUSwwLjIyMjIyMjJlbUYnL0ZVRmFvLUkjbW5HRiQ2JFEiMUYnRkAvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYnRkAvJTFzdXBlcnNjcmlwdHNoaWZ0R1EiMEYnRmdvRkBGQEZnb0ZALUY9Ni1RIj1GJ0ZARkJGRUZHRklGS0ZNRk8vRlJRLDAuMjc3Nzc3OGVtRicvRlVGYXAtSSZtZnJhY0dGJDYoLUYjNiVGY29GZ29GQC1GIzYnRistRiM2J0YzRjwtRlc2JC1GIzYlRmhuRmdvRkBGQEZnb0ZARitGZ29GQC8lLmxpbmV0aGlja25lc3NHUSIxRicvJStkZW5vbWFsaWduR1EnY2VudGVyRicvJSludW1hbGlnbkdGZXEvJSliZXZlbGxlZEdGREZnb0ZARitGZ29GQA==.Det illustrerer vi ogs\303\245.Den inverse af A:A^(-1);Determinanten af den inverse:Determinant(%);Den reciprokke af determinanten:1/Determinant(A);Cramers regelA:=Matrix(3,symbol=a);b:=Vector(3,symbol=beta);If\303\270lge Cramers regel kan Ax = b l\303\270ses s\303\245ledes:F\303\270rst findes LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYlLUklbXN1YkdGJDYlLUkjbWlHRiQ2JVEieEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYlLUkjbW5HRiQ2JFEiMUYnL0Y2USdub3JtYWxGJy8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRidGPi8lL3N1YnNjcmlwdHNoaWZ0R1EiMEYnRkBGPg== som f\303\270lger.Defin\303\251r A1b som den matrix vi f\303\245r ved i A at erstatte s\303\270jle 1 med b:A1b:=<b|DeleteColumn(A,1)>;LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYlLUklbXN1YkdGJDYlLUkjbWlHRiQ2JVEieEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYlLUkjbW5HRiQ2JFEiMUYnL0Y2USdub3JtYWxGJy8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRidGPi8lL3N1YnNjcmlwdHNoaWZ0R1EiMEYnRkBGPg== er s\303\245 givet ved:x[1]=DET(A1b)/DET(A);Tilsvarende findes LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYlLUklbXN1YkdGJDYlLUkjbWlHRiQ2JVEieEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYlLUkjbW5HRiQ2JFEiMkYnL0Y2USdub3JtYWxGJy8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRidGPi8lL3N1YnNjcmlwdHNoaWZ0R1EiMEYnRkBGPg== ved f\303\270rst at bestemme A2b som den matrix vi f\303\245r ved i A at erstatte s\303\270jle 2 med b.A2b:=<Column(A,1)|b|Column(A,3)>;LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYlLUklbXN1YkdGJDYlLUkjbWlHRiQ2JVEieEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYlLUkjbW5HRiQ2JFEiMkYnL0Y2USdub3JtYWxGJy8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRidGPi8lL3N1YnNjcmlwdHNoaWZ0R1EiMEYnRkBGPg== er nu givet ved:x[2]=DET(A2b)/DET(A);A3b findes nedenfor ved f\303\270rst at fjerne s\303\270jle 3, derefter tilf\303\270je b som sidste s\303\270jle:A3b:=<DeleteColumn(A,3)|b>;Endelig findes LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYlLUklbXN1YkdGJDYlLUkjbWlHRiQ2JVEieEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYlLUkjbW5HRiQ2JFEiM0YnL0Y2USdub3JtYWxGJy8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRidGPi8lL3N1YnNjcmlwdHNoaWZ0R1EiMEYnRkBGPg== somx[3]=DET(A3b)/DET(A);Taleksempel p\303\245 brugen af Cramers regel:A:=Matrix([[2,3,-5],[6,-5,2],[0,-1,0]]);b:=<3,2,1>;Vi beder f\303\270rst Maple om selv at l\303\270se systemet (af hensyn til sammenligning med Cramers regel):LinearSolve(A,b);If\303\270lge Cramers regel kan Ax = b l\303\270ses s\303\245ledes:F\303\270rst findes LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYlLUklbXN1YkdGJDYlLUkjbWlHRiQ2JVEieEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYlLUkjbW5HRiQ2JFEiMUYnL0Y2USdub3JtYWxGJy8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRidGPi8lL3N1YnNjcmlwdHNoaWZ0R1EiMEYnRkBGPg== som f\303\270lger.Defin\303\251r A1b som den matrix vi f\303\245r ved i A at erstatte s\303\270jle 1 med b:A1b:=<b|DeleteColumn(A,1)>;LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYlLUklbXN1YkdGJDYlLUkjbWlHRiQ2JVEieEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYlLUkjbW5HRiQ2JFEiMUYnL0Y2USdub3JtYWxGJy8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRidGPi8lL3N1YnNjcmlwdHNoaWZ0R1EiMEYnRkBGPg== er s\303\245 givet ved:x[1]=DET(A1b)/DET(A);value(%);Tilsvarende findes LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYlLUklbXN1YkdGJDYlLUkjbWlHRiQ2JVEieEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYlLUkjbW5HRiQ2JFEiMkYnL0Y2USdub3JtYWxGJy8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRidGPi8lL3N1YnNjcmlwdHNoaWZ0R1EiMEYnRkBGPg== ved f\303\270rst at bestemme A2b som den matrix vi f\303\245r ved i A at erstatte s\303\270jle 2 med b.A2b:=<Column(A,1)|b|Column(A,3)>;LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYlLUklbXN1YkdGJDYlLUkjbWlHRiQ2JVEieEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYlLUkjbW5HRiQ2JFEiMkYnL0Y2USdub3JtYWxGJy8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRidGPi8lL3N1YnNjcmlwdHNoaWZ0R1EiMEYnRkBGPg== er nu givet ved:x[2]=DET(A2b)/DET(A);value(%);A3b findes nedenfor ved f\303\270rst at fjerne s\303\270jle 3, derefter tilf\303\270je b som sidste s\303\270jle:A3b:=<DeleteColumn(A,3)|b>;Endelig findes LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYlLUklbXN1YkdGJDYlLUkjbWlHRiQ2JVEieEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYlLUkjbW5HRiQ2JFEiM0YnL0Y2USdub3JtYWxGJy8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRidGPi8lL3N1YnNjcmlwdHNoaWZ0R1EiMEYnRkBGPg== somx[3]=DET(A3b)/DET(A);value(%);En Cramer-procedure (ikke anbefalelsesv\303\246rdig!) ligger i DMat-pakken: I f\303\270rste omgang f\303\245s en mellemregning:Cramer(A,b);Cramer(A,b,2);men value er bekendt med DET (i DMat-biblioteket vel at m\303\246rke!):value(%);A:=RandomMatrix(9);b:=RandomVector(9);LinearSolve(A,b);value(Cramer(A,b));Tidsstudier (Bem\303\246rk dog, at Cramer + value udnytter Maples evne til at regne determinanter ud hurtigt):A:=RandomMatrix(12);b:=RandomVector(12);time(LinearSolve(A,b));time(value(Cramer(A,b)));Formlen for den inverseA:=RandomMatrix(3);Den transponerede af matricen best\303\245ende af komplementerne til A betegnes i Maple med Adjoint. I Lay bruges ogs\303\245 betegnelsen adjugate. Vi kan kalde den for den (klassiske) adjungerede:Adj:=Adjoint(A);Minor(A,1,2);S\303\245dan f\303\245s den adjungerede efter definitionen. Bem\303\246rk at transponeringen er indbygget ved ombytningen af i og j:Matrix(3,(i,j)->(-1)^(i+j)*Minor(A,j,i));Der g\303\246lder altid, at A.Adj(A) = det(A) I. N\303\245r det(A) <>0 udleder vi heraf en formel for den inverse som den adjungerede divideret med determinanten af A. A.Adj;Determinant(A);