SRP - Matrixregning - Danish

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 17

MATRIXREGNING

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.

Regneregler for matricer


Regneregler for matricer er flgende: 1. Lighed
2. Multiplikation

Multiplikation af en matrix med tal (skalarmultiplikation) Multiplikation af matricer

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.

Multiplikation af en matrix med tal (skalarmultiplikation)

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: ,

Dvs. at 2 skal multipliceres med matricens elementer:

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:

Eksempel p subtraktion af matrice A og B:

Determinantmetoden (Cramers stning)


Determinanten af en matrix er en vrdi beregnet ud fra indgangene i matricen. Determinant metoden har forskellige anvendelser inden for ingenirarbejde, herunder invers (reciprokke) matricer og lse systemer af samtidige ligninger. Determinanten for en 2 x 2 matrix A, er defineret som:

Determinanten af matricen

, findes ved at multiplicere

og s trkke

fra:

Det vil sige, at determinanten af matricen A er lig med 13.

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

Og dens transponerede matrix bliver:

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:

Ligningssystemet kan nu opskrives sledes:

For nemheds skyld implementeres de alle i en tabel (A . X = B)

Dette ligningssystem kaldes for koefficientmatrix

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.:

. S er den inverse matrix A-1

For at vise, at dette er sandt, udregnes

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

To matricer A og B er rkkekvivalente (Skrives

), hvis de overfres i hinanden ved en

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:

Bemrk, at ethvert ledende 1-tal har lutter 0er under sig.


Gauss elimination

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.

Eksempel p 3 ligninger med 3 ubekendte


Som et eksempel skal jeg lse nedenstende ligningssystem ved brug af matrixregning (x, y og z er ukendte reelle tal):

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.:

Nu kan jeg isolere z (z2) i anden ligning (r2).

For at isloere x (x3) i tredje rkke (r3), indstter jeg z-vrdien i tredje ligning (r3):

For at finde y (y1), indstter vi x- og z-vrdierne ind i frste ligning (r1):

10

Det vil sige, at de tre ubekendte reelle tal (x, y og z) er:

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:

Dvs. at de tre ukendte reelle tal x, y og z er beregnet rigtige.

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.

(Javakoden til beregningsprogrammet kan ses under bilaget p side 16)

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 );

Til sidst bliver der dannet en kropbevgelse til 2 gange 3 matricer.


current.i.orientation = quat.ToMat3(); current.localAxis = localQuat.ToMat3();

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

You might also like