matrices
Een matrix is een verzameling getallen .
Een matrix is een rechthoekige matrix .
Een matrix is gerangschikt in rijen en kolommen .
Matrix-afmetingen
Deze Matrix heeft 1 rij en 3 kolommen:
De afmeting van de matrix is ( 1 x 3 ).
Deze matrix heeft 2 rijen en 3 kolommen:
De afmeting van de matrix is ( 2 x 3 ).
Vierkante matrices
Een vierkante matrix is een matrix met hetzelfde aantal rijen en kolommen.
Een n-by-n matrix staat bekend als een vierkante matrix van orde n.
Een 2-bij-2 matrix (Vierkante matrix van orde 2):
Een 4-bij-4 matrix (Vierkante matrix van orde 4):
C = |
1 |
-2 |
3 |
4 |
5 |
6 |
-7 |
8 |
4 |
3 |
2 |
-1 |
8 |
7 |
6 |
-5 |
|
Diagonale matrices
Een diagonale matrix heeft waarden op de diagonale invoeren en nul op de rest:
scalaire matrices
Een scalaire matrix heeft gelijke diagonale ingangen en nul op de rest:
C = |
3 |
0 |
0 |
0 |
0 |
3 |
0 |
0 |
0 |
0 |
3 |
0 |
0 |
0 |
0 |
3 |
|
De identiteitsmatrix
De identiteitsmatrix heeft 1 op de diagonaal en 0 op de rest.
Dit is het matrixequivalent van 1. Het symbool is I .
ik = |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
|
Als je een willekeurige matrix vermenigvuldigt met de identiteitsmatrix, is het resultaat gelijk aan het origineel.
De nulmatrix
De nulmatrix (nulmatrix) heeft alleen nullen.
Gelijke matrices
Matrices zijn gelijk als elk element overeenkomt:
Negatieve matrices
Het negatief van een matrix is gemakkelijk te begrijpen:
Lineaire algebra in JavaScript
In lineaire algebra is het meest eenvoudige wiskundige object de scalaire :
Een ander eenvoudig wiskundig object is de Array :
const array = [ 1, 2, 3 ];
Matrices zijn 2-dimensionale arrays :
const matrix = [ [1,2],[3,4],[5,6] ];
Vectoren kunnen worden geschreven als matrices met slechts één kolom:
const vector = [ [1],[2],[3] ];
Vectoren kunnen ook worden geschreven als arrays :
const vector = [ 1, 2, 3 ];
JavaScript-matrixbewerkingen
Het programmeren van matrixbewerkingen in JavaScript kan gemakkelijk een spaghetti van lussen worden.
Het gebruik van een JavScript-bibliotheek bespaart u veel kopzorg.
Een van de meest gebruikte bibliotheken voor matrixbewerkingen is math.js .
Het kan met één regel code aan uw webpagina worden toegevoegd:
math.js gebruiken
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjs/9.3.2/math.js"></script>
Matrices toevoegen
Als twee matrices dezelfde dimensie hebben, kunnen we ze optellen:
Voorbeeld
const mA = math.matrix([[1, 2], [3, 4], [5, 6]]);
const mB = math.matrix([[1,-1], [2,-2], [3,-3]]);
// Matrix Addition
const matrixAdd = math.add(mA, mB);
// Result [ [2, 1], [5, 2], [8, 3] ]
Matrices aftrekken
Als twee matrices dezelfde afmeting hebben, kunnen we ze aftrekken:
Voorbeeld
const mA = math.matrix([[1, 2], [3, 4], [5, 6]]);
const mB = math.matrix([[1,-1], [2,-2], [3,-3]]);
// Matrix Subtraction
const matrixSub = math.subtract(mA, mB);
// Result [ [0, 3], [1, 6], [2, 9] ]
Om matrices op te tellen of af te trekken, moeten ze dezelfde dimensie hebben.
Scalaire vermenigvuldiging
Terwijl getallen in rijen en kolommen matrices worden genoemd , worden enkele getallen scalaires genoemd .
Het is gemakkelijk om een matrix te vermenigvuldigen met een scalair. Vermenigvuldig gewoon elk getal in de matrix met de scalaire waarde:
Voorbeeld
const mA = math.matrix([[1, 2], [3, 4], [5, 6]]);
// Matrix Multiplication
const matrixMult = math.multiply(2, mA);
// Result [ [2, 4], [6, 8], [10, 12] ]
Voorbeeld
const mA = math.matrix([[0, 2], [4, 6], [8, 10]]);
// Matrix Division
const matrixDiv = math.divide(mA, 2);
// Result [ [0, 1], [2, 3], [4, 5] ]
Een matrix transponeren
Een matrix transponeren betekent rijen vervangen door kolommen.
Wanneer u rijen en kolommen verwisselt, roteert u de matrix rond zijn diagonaal.
Matrices vermenigvuldigen
Matrices vermenigvuldigen is moeilijker.
We kunnen alleen twee matrices vermenigvuldigen als het aantal rijen in matrix A gelijk is aan het aantal kolommen in matrix B.
Vervolgens moeten we een "dot-product" compileren:
We moeten de getallen in elke rij van A vermenigvuldigen met de getallen in elke kolom van B en dan de producten optellen:
Voorbeeld
const mA = math.matrix([[1, 2, 3]]);
const mB = math.matrix([[1, 2, 3], [1, 2, 3], [1, 2, 3]]);
// Matrix Multiplication
const matrixMult = math.multiply(mA, mB);
// Result [ [6, 12, 18] ]
uitgelegd:
EEN |
|
B |
|
C |
|
C |
|
x |
|
= |
1x1 + 2x1 + 3x1 |
1x2 + 2x2 + 3x2 |
1x3 + 2x3 + 3x3 |
|
= |
|
Als je weet hoe je matrices moet vermenigvuldigen, kun je veel complexe vergelijkingen oplossen.
Voorbeeld
Je verkoopt rozen.
- Rode rozen zijn $3 per stuk
- Witte rozen zijn $4 per stuk
- Gele rozen zijn $ 2 per stuk
- Maandag heb je 260 rozen verkocht
- Dinsdag heb je 200 rozen verkocht
- Woensdag heb je 120 rozen verkocht
Wat was de waarde van alle verkopen?
|
$3 |
$ 4 |
$2 |
maandag | 120 | 80 | 60 |
di | 90 | 70 | 40 |
wo | 60 | 40 | 20 |
EEN |
|
B |
|
C |
|
C |
|
x |
120 |
80 |
60 |
90 |
70 |
40 |
60 |
40 |
20 |
|
= |
|
= |
|
Voorbeeld
const mA = math.matrix([[3, 4, 2]]);
const mB = math.matrix([[120, 90, 60], [80, 70, 40], [60, 40, 20]);
// Matrix Multiplication
const matrixMult = math.multiply(mA, mB);
// Result [ [800, 630, 380] ]
uitgelegd:
EEN |
|
B |
|
C |
|
C |
|
x |
120 |
80 |
60 |
90 |
70 |
40 |
60 |
40 |
20 |
|
= |
$3x120 + $4x80 + $2x60 |
$3x90 + $4x70 + $2x40 |
$3x60 + $4x40 + $2x20 |
|
= |
|
Matrixfactorisatie
Met AI moet je weten hoe je een matrix ontbindt.
Matrixfactorisatie is een belangrijk hulpmiddel in lineaire algebra, vooral in lineaire kleinste kwadraten.