Professional Documents
Culture Documents
SRP - Matrixregning - Danish
SRP - Matrixregning - Danish
SRP - Matrixregning - Danish
STUDIERETNINGSPROJEKT 2011-12
Udarbejdet af: A - J Klasse: 2011 Fag: Matematik A & Informationsteknologi B Dato: 2011-2012
Abstract
This study is about matrix calculation; especially the calculation rules of matrices. It also includes the use of matrix in mathematics and information technology by giving examples of every rules and a developed Javaprogram which has the ability to convert 3 equations with 3 unknown variables into total matrix form. The content has been written with the use of books and internet websites, which were reliable and trustworthy. However, some of the content has been made based on own programming skills. Matrix calculation is one of the most interesting topics for engineers such as software developers etc. mostly because it can be used to encrypt and decrypt codes. Matrices can also be used to display networks allowing mathematical calculations to be worked out more easily with relation to problems such as traffic flow and plumbing.
Indholdsfortegnelse_Toc314650710
Indledning ............................................................................................................................................ 3 Matricer ................................................................................................................................................ 4 Regneregler for matricer .................................................................................................................. 4 Lighed ........................................................................................................................................... 4 Multiplikation ............................................................................................................................... 5 Addition og Subtraktion ............................................................................................................... 6 Determinantmetoden (Cramers stning).......................................................................................... 6 Transponeret matrix ......................................................................................................................... 7 Linere ligningssystemer ................................................................................................................. 7 Enhedsmatrix ................................................................................................................................ 8 Invers matrix ................................................................................................................................. 8 Rkkeoperationer ......................................................................................................................... 9 Echelon matrix ........................................................................................................................... 9 Gauss elimination ........................................................................................................................ 9 Eksempel p 3 ligninger med 3 ubekendte ..................................................................................... 10 Matricer i informationsteknologi ....................................................................................................... 11 Analyse af matrixregning i IT ............................................................................................................ 12 Konklusion ......................................................................................................................................... 13 Litteraturliste ...................................................................................................................................... 14 Bilag ................................................................................................................................................... 16 Totalmatrix ..................................................................................................................................... 16
Indledning
Indledningsvis vil jeg i denne opgave gre rede for matrixregning. Matrixregning er et interessantog voksende emne, indenfor matematik samt informationsteknologi og generelt indenfor ingeniruddannelsen. Matrixregning er ogs helt ndvendig for dagens teknologiske lsninger indenfor linere ligningssystemer. Eksempelvis ved problemer, hvor man opererer med et strre antal sammenhrende linere ligninger (frstegradsligninger), kan man med fordel anvende matrixregning. Det kunne f.eks. vre en matrix A:
I denne opgave vil jeg redegre for matricer i linere ligningssystemer. Jeg vil ogs programmere et Javaprogram, som kan omskrive tre ligninger med tre ubekendte til totalmatrix form. Til sidst vil jeg analysere et informationsteknologisk produkt, der har anvendt matrixregning.
Matricer
Begrebet matrix spiller en stor rolle i den linere algebra, specielt i teorien for lsning af linere ligningssystemer. En matrix er en tabel af tal eller bogstavsymboler. Matrix kan vre en meget nyttig mde at prsentere sit data op i en tabel. En matrix kan have en eller flere rkker og sjler med tal opstillet i en tabel. De enkelte symboler i matricen kaldes for matricens elementer. Der findes forskellige type matricer, for eksempel: En matrix A med tre rkker og tre sjler er en tre gange 3 (3 x 3) matrix.
1.sjle 1.rkke 2.rkke 3.rkke 2.sjle 3.sjle
Eksempel: Matricen A=
A Matricer kan ogs skrives som en m x n matrix, hvor m er rkkenummer og n er sjlenummer. Det vil sige, at matricen A kan ogs skrives som 3A 3. x En sdan matrix, der har lige mange rkker og sjler kaldes for en kvadratisk matrice. En matrix B med tre rkker og n sjle er en (3 x 1) matrix.
Eksempel: Matricen B= En sdan matrix, der har et rektangulrform kaldes for en rektangulr matrice. Matricer som B B ( 3x1 ), kan ogs kaldes for sjlematricer.
3. Addition og Subtraktion
Lighed
Hvis der er to ens m x n matricer og tilsvarende elementer i de to matricer er ens, s er A = B. De to matricer kaldes for hinandens lighedsmatricer.
Eksempel: Matricen A=
Multiplikation
og matricen B=
er ens.
For et tilfldig reelt tal k og en tilfldig matrix A, defineres der k . A som en ny matrix, som er fremkommet ved at multiplicere As elementer med k. Eksempel: ,
S fr vi: En sdan matrix, hvor du multiplicerer k med en matrix, kaldes for skalarmultiplikation.
Multiplikation af matricer
Hvis vi har to matricer A og B, og antallet af sjler i A er lig med antallet af rkker i B, s betyder det at matricerne kan godt multipliceres med hinanden.
Eksempelvis:
Matricen A har to rkker og tre sjler, hvor matricen B har tre rkker og tre sjler. Dvs. at antallet af sjler i A er lig med antallet af rkker i B. Nr man skal multiplicere to matricer sammen, skal frste rkke i matricen A, multipliceres med frste sjle i matricen B og s skal frste rkke multipliceres med anden sjle osv. Efter hver multiplikation skal produkterne lgges sammen. Vi prver at multiplicere A med B (Multiplikation af
matricerne kan ogs ses ved farverne):
Dvs.
Addition og Subtraktion
Addition (eller subtraktion) af to matricer sker ved at tilfje (eller trkke) elementerne i tilsvarende stillinger i matricer. Derfor skal de to matricer vre af samme strrelse. Det produkt man fr ud af addition eller subtraktion af de to matricer, bliver en anden matrix af samme strrelse. Eksempel p Addition af to matricer:
Determinanten af matricen
og s trkke
fra:
Transponeret matrix
Den transponerede matrix er en ny matrix, hvor rkkerne af den oprindelige matrix bliver til sjlerne i den ny matrix. Vi bruger hvet T til den nye transponerede matrix. Eksempel: Matrix
Hvis vi betragter et par af de elementer, kan vi se at vrdien i position (3,1) er nu flyttet til position (3,1), og at vrdien i position (4,3) er nu flyttet til position (3,4). En sdan transponering af en matrix kaldes for den transponerede matrix.
Linere ligningssystemer
Linere ligningssystemer kan basalt betegnes som tre ligninger med tre ubekendte, eller rettet sagt hvor der er lige mange antal ligninger og ubekendte. Nedenunder fremgr et eksempel p et ligningssystem:
samt
Lsning af en sdan ligning, krver en bekendtgrelse af den inverse matrix (reciprok) A-1 Hvor:
Enhedsmatrix
Nr der er tale om en enhedsmatrix, s skal der forsts at der er tale om en kvadratisk n x n matrix, hvor alle elementer i diagonalen er 1 og alle de andre elementer udenfor diagonalen er 0. Enhedsmatrix skrives som E eller En.
Eksempelvis er
en 3 x 3 enhedsmatrix.
Invers matrix
Hvis determinanten for en matrix A er forskellige fra nul, findes der en matrix A-1, som opfylder:
Matrix A-1 kaldes As inverse matrix. For at finde den inverse matrix til en (2x2)-matrix A, hvis determinanten ikke er nul.:
Det vil sige, at A-1 er den inverse matrix til matricen A, som er sandt.
Rkkeoperationer
Et linert ligningssystems lsningsmngde ndrer sig ikke, hvis: a) To ligninger ombyttes svarende til rkkeombytning i totalmatricen T. b) En ligning multipliceres med en konstant med c) En ligning den pte rkke - svarende til at den qte rkke i T multipliceres med k og adderes til . Dette kaldes en rkkeoperation i T og skrives kort . - svarende til en rkke i T multipliceres
eller flere af de i punkterne a), b) og c) nvnte ndringer. Ved brug af rkkeoperationer kan man omforme totalmatricen til en matrix med lutter 0er under diagonalen. Det giver et ligningssystem, der er forholdsvis simpelt at lse ved baglns regninger.
Eksempel til rkkeoperationen kan ses under afsnit Eksempel tre ligninger med tre ubekendte. Echelon matrix
Echelon matrix betyder trinvis opstilling med skr front. En sdan matrix er karakteriseret ved: 1) at rkker, som bestr af lutter 0er er placeret nederst i matricen, og for de vrige rkker glder 2) at i en rkke er det frste fra 0 forskellige tal i rkken et 1-tal. Tallet kaldes for rkkens ledende 1tal, 3) at for to p hinanden flgende rkker vil det ledende 1-tal i den nederste af de to rkker st lngere til hjre end det ledende 1-tal i den verste af de to rkker. Andre eksempler p echelon matricer er:
Det frstetrin i Gauss elimination er at eliminere en variabel i hver ligning, som indeholder den samme variabel. Denne eliminationsmetode kaldes for Gauss elimination
Eksempel p Gauss elimination kan ses under afsnit Eksempel 3 ligninger med 3 ubekendte.
I slutning af opgaven, skal jeg kontrollere min lsning. For at lse opgaven bruger jeg Gauss Elimination. Da der er lige mange ligninger og ubekendte, beregner jeg dens inverse matrix. Jeg skriver ligningerne til totalmatrixform. (1. ligning) (2. ligning) (3. ligning) Jeg reducerer nu totalmatrix til Echelon form:
Vi multiplicere 2.rkke (r2) med -2, og lgger den til 1.ligning (r1), s kan man eliminere x (x2), dvs.:
For at isloere x (x3) i tredje rkke (r3), indstter jeg z-vrdien i tredje ligning (r3):
10
For at kontrollere min lsning, kan jeg indstte x-, y- og z-vrdierne i de tre ligninger med tre ubekendte og de skal give henholdsvis 11, 1 og 0:
Matricer i informationsteknologi
Der er mange anvendelsesmuligheder for matricer i hverdagen. Et eksempel p, hvordan matricer kan anvendes, er kryptering. Nr en programmr krypterer eller koder en besked, kan han bruge matricer og dens inverse matrix. Handel p nettet ville heler ikke vre sikkert nok med betalingskort, da det ogs virker under samme princip. Matricer bruges ogs til at tegne grafer og statistikker. Matricer bruges ogs til at beregne bruttonationalproduktet (BNP) i konomi, og dermed hjlpe i beregning af at producere varer mere effektivt. Matricer er ogs blevet undertiden en meget nyttige mde til computer animation (3D-animation). De kan ogs bruges som etiketter for eleverne at holde styr p. For eksempel til at udfylde skemaet, til at lave meningsmlinger, til
11
afrunding af tid til hele tal, fx videnskabsmnd kan bruge matricer til at registrere data fra deres eksperimenter osv. Jeg har produceret et matrixberegningsprogram. Det programmet kan, er at omforme de indtastede elementvrdierne til totalmatrixform. Programmet kan ogs vise, hvor mange rkker og kolonner matricen indeholder. Eksempel:
public static void outputArray(int[][] array) { for(int i = 0; i <= 1; i++) { System.out.print("["); for(int j = 0; j <= 2; j++) { System.out.print(" " + array[i][j]); } System.out.println(" ]"); } System.out.println(); }
Figur 1: Dette er et billede af den totalmatrixformet matrix, hvor der bliver bde vist antal rkker og antal kolonner.
Analyse af matrixregning i IT
Jeg har valgt at analysere et spil, der hedder Doom 3. Her er del af koderne til den fysiskbevgelse af selve spilleren, fx at hovedpersonen skal samle et vben op eller lbe osv.
void idPhysics_RigidBody::ReadFromSnapshot( const idBitMsgDelta &msg ) { idCQuat quat, localQuat; current.atRest = msg.ReadLong(); current.i.position[0] = msg.ReadFloat(); current.i.position[1] = msg.ReadFloat(); current.i.position[2] = msg.ReadFloat(); quat.x = msg.ReadFloat();
12
quat.y = msg.ReadFloat(); quat.z = msg.ReadFloat(); current.i.linearMomentum[0] = msg.ReadFloat( RB_MOMENTUM_EXPONENT_BITS, RB_MOMENTUM_MANTISSA_BITS ); current.i.linearMomentum[1] = msg.ReadFloat( RB_MOMENTUM_EXPONENT_BITS, RB_MOMENTUM_MANTISSA_BITS ); current.i.linearMomentum[2] = msg.ReadFloat( RB_MOMENTUM_EXPONENT_BITS, RB_MOMENTUM_MANTISSA_BITS ); current.i.angularMomentum[0] = msg.ReadFloat( RB_MOMENTUM_EXPONENT_BITS, RB_MOMENTUM_MANTISSA_BITS ); current.i.angularMomentum[1] = msg.ReadFloat( RB_MOMENTUM_EXPONENT_BITS, RB_MOMENTUM_MANTISSA_BITS ); current.i.angularMomentum[2] = msg.ReadFloat( RB_MOMENTUM_EXPONENT_BITS, RB_MOMENTUM_MANTISSA_BITS ); current.localOrigin[0] = msg.ReadDeltaFloat( current.i.position[0] ); current.localOrigin[1] = msg.ReadDeltaFloat( current.i.position[1] ); current.localOrigin[2] = msg.ReadDeltaFloat( current.i.position[2] ); localQuat.x = msg.ReadDeltaFloat( quat.x ); localQuat.y = msg.ReadDeltaFloat( quat.y ); localQuat.z = msg.ReadDeltaFloat( quat.z ); current.pushVelocity[0] = msg.ReadDeltaFloat( 0.0f, }
I fysikkens verden, er et RigidBody en idealisering af en solidekrop endelig strrelse. Det betyder at afstanden forbliver mellem to givne punkter af en stiv krop konstant i tiden. Det der sker i koden er at der bliver indhentet tre konstant talvrdier udefra nogle punkter (const) idBitMsgDelta, som fx:
localQuat.x = msg.ReadDeltaFloat( quat.x ); localQuat.y = msg.ReadDeltaFloat( quat.y ); localQuat.z = msg.ReadDeltaFloat( quat.z );
Konklusion
Hermed kan jeg konkludere at jeg har redegjort for matrixregning, hvor jeg udfrligt har vist med eksempler. Jeg kan ogs konkludere, at det er meget nemmere, at bruge matricer til at beregne tre ligninger med tre ubekendte. Jeg har ogs fundet ud af at matricer bl.a. kan bruges til at samle data. Matrixregning kan bruges til bl.a. programmering, s som omforme ligninger til totalmatrix form vha. mit Javaprogram.
13
Litteraturliste
Bger: Forfattere: M. Etter, Delores og A. Ingber, Jeanine Titel: Engineering Problem Solving with C++ Forlag: Pearson International Inc. Udgave: 2. Udgave rstal: 2008 Sidenumre: 316 335 Bger: Forfattere: Hansen, Frank og Nrgaard Olesen, Mogens Titel: Liner Algebra Forlag: Akademisk Forlag Kbenhavn Udgave: 1. udgave rstal: 2007 Sidenumre: 43 56, 59 64, 185 188. Bger: Forfattere: Hellesen, Bjarne og Oddershede Larsen, Mogens Titel: Matematik for ingenirer Forlag: Danmarks Tekniske Universitet Udgave: 1. udgave rstal: 2008 Sidenumre: 170 191
14
Internet Websites
Navn
Khan Academy Khan Academy Khan Academy Khan Academy Khan Academy Khan Academy Khan Academy Khan Academy Khan Academy Khan Academy Khan Academy
Links
http://www.khanacademy.org/video/introduction-tomatrices?playlist=Linear%20Algebra http://www.khanacademy.org/video/matrix-multiplication--part1?playlist=Linear%20Algebra http://www.khanacademy.org/video/matrix-multiplication--part2?playlist=Linear%20Algebra http://www.khanacademy.org/video/inverse-matrix--part1?playlist=Linear%20Algebra http://www.khanacademy.org/video/inverting-matrices--part2?playlist=Linear%20Algebra http://www.khanacademy.org/video/inverting-matrices--part3?playlist=Linear%20Algebra http://www.khanacademy.org/video/matrices-to-solve-a-system-ofequations?playlist=Linear%20Algebra http://www.khanacademy.org/video/matrices-to-solve-a-vectorcombination-problem?playlist=Linear%20Algebra http://www.khanacademy.org/video/singularmatrices?playlist=Linear%20Algebra http://www.khanacademy.org/video/3-variable-linear-equations--part1?playlist=Linear%20Algebra http://www.khanacademy.org/video/solving-3-equations-with-3unknowns?playlist=Linear%20Algebra
Udgivet
07/06/2008
07/06/2008
07/06/2008
08/06/2008
08/06/2008
08/06/2008
14/06/2008
14/06/2008
15/06/2008
07/02/2008
11/04/2009
15
Bilag
Totalmatrix
public class TotalMatrix { /** * @param args */ public static void main(String[] args) { int array[][]= {{1,2,5},{9,4,6}}; System.out.println("Antal Rkker= " + array.length); System.out.println("Antal Kolonner = " + array[1].length); outputArray(array); } public static void outputArray(int[][] array) { for(int i = 0; i <= 1; i++) { System.out.print("["); for(int j = 0; j <= 2; j++) { System.out.print(" " + array[i][j]); } System.out.println(" ]"); } System.out.println(); } }
16