Ma trận

Một ma trận là tập hợp các Số .

Ma trận là một Mảng hình chữ nhật .

Một ma trận được sắp xếp theo HàngCột .

Kích thước ma trận

Ma trận này 1 hàng và 3 cột:

C =  
2 5 3

Kích thước của ma trận là ( 1 x 3 ).


Ma trận này có 2 hàng và 3 cột:

C =  
2 5 3
4 7 1

Số chiều của ma trận là ( 2 x 3 ).


Ma trận vuông

Ma trận vuông là ma trận có cùng số hàng và số cột.

Ma trận n x được gọi là ma trận vuông bậc n.

Ma trận 2 x 2 (Ma trận vuông bậc 2):

C =  
1 2
3 4

Ma trận 4 x 4 (Ma trận vuông bậc 4):

C =  
1 -2 3 4
5 6 -7 số 8
4 3 2 -1
số 8 7 6 -5

Ma trận đường chéo

Ma trận đường chéo có các giá trị trên các mục nhập đường chéo và bằng không trên các phần còn lại:

C =   
2 0 0
0 5 0
0 0 3

Ma trận vô hướng

Ma trận vô hướng có các mục nhập theo đường chéo bằng nhau và 0 trên các phần còn lại:

C =   
3 0 0 0
0 3 0 0
0 0 3 0
0 0 0 3

Ma trận nhận dạng

Ma trận Nhận dạng1 trên đường chéo và 0 trên phần còn lại.

Đây là ma trận tương đương với 1. Ký hiệu I.

Tôi =   
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1

Nếu bạn nhân bất kỳ ma trận nào với ma trận nhận dạng, kết quả bằng ban đầu.


Ma trận số 0

Ma trận số 0 (Null Matrix) chỉ có các số không.

C =   
0 0 0
0 0 0

Ma trận bằng

Các ma trận là Bằng nhau nếu mỗi phần tử tương ứng:

2 5 3
4 7 1
  =  
2 5 3
4 7 1

Ma trận phủ định

Âm của ma trận rất dễ hiểu:

  -  
-2 5 3
-4 7 1
  =  
2 -5 -3
4 -7 -1

Đại số tuyến tính trong JavaScript

Trong đại số tuyến tính, đối tượng toán học đơn giản nhất là Vô hướng :

const scalar = 1;

Một đối tượng toán học đơn giản khác là Array :

const array = [ 1, 2, 3 ];

Ma trận là Mảng 2 chiều :

const matrix = [ [1,2],[3,4],[5,6] ];

Vectơ có thể được viết dưới dạng Ma trận chỉ có một cột:

const vector = [ [1],[2],[3] ];

Vectơ cũng có thể được viết dưới dạng Mảng :

const vector = [ 1, 2, 3 ];

Hoạt động ma trận JavaScript

Lập trình hoạt động ma trận trong JavaScript, có thể dễ dàng trở thành một spaghetti của các vòng lặp.

Sử dụng thư viện JavScript sẽ giúp bạn đỡ phải đau đầu.

Một trong những thư viện phổ biến nhất để sử dụng cho các phép toán ma trận được gọi math.js.

Nó có thể được thêm vào trang web của bạn bằng một dòng mã:

Sử dụng math.js

<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjs/9.3.2/math.js"></script>

Thêm ma trận

Nếu hai ma trận có cùng thứ nguyên, chúng ta có thể thêm chúng vào:

2 5 3
4 7 1
 + 
4 7 1
2 5 3
 = 
6 12 4
6 12 4

Thí dụ

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] ]


Trừ ma trận

Nếu hai ma trận có cùng thứ nguyên, chúng ta có thể trừ chúng:

2 5 3
4 7 1
 - 
4 7 1
2 5 3
 = 
-2 -2 2
2 2 -2

Thí dụ

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] ]

Để cộng hoặc trừ ma trận, chúng phải có cùng thứ nguyên.


Nhân bản vô tính

Trong khi các số trong hàng và cột được gọi là Ma trận , các số đơn được gọi là Vô hướng .

Dễ dàng nhân một ma trận với một vô hướng. Chỉ cần nhân từng số trong ma trận với vô hướng:

2 5 3
4 7 1
   x 2 =   
4 10 6
số 8 14 2

Thí dụ

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] ]

Thí dụ

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] ]


Chuyển đổi một ma trận

Để chuyển một ma trận, có nghĩa là thay thế các hàng bằng các cột.

Khi bạn hoán đổi hàng và cột, bạn xoay ma trận xung quanh nó theo đường chéo.

A =   
1 2
3 4
    A T =  
1 3
2 4

Nhân ma trận

Nhân ma trận khó hơn.

Chúng ta chỉ có thể nhân hai ma trận nếu số hàng trong ma trận A bằng số cột trong ma trận B.

Sau đó, chúng ta cần biên dịch một "sản phẩm chấm":

Chúng ta cần nhân các số trong mỗi hàng của A với các số trong mỗi cột của B , rồi cộng các tích:

Thí dụ

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] ]

Giải thích:

MỘT B C C
1
2
3
 x 
1 1 1
2 2 2
3 3 3
 = 
1x1 + 2x1 + 3x1
1x2 + 2x2 + 3x2
1x3 + 2x3 + 3x3
 = 
6
12
18

Nếu bạn biết cách nhân ma trận, bạn có thể giải được nhiều phương trình phức tạp.

Thí dụ

Bạn bán hoa hồng.

  • Hoa hồng đỏ là $ 3 mỗi cái
  • Hoa hồng trắng là $ 4 mỗi cái
  • Hoa hồng vàng là $ 2 mỗi cái
  • Thứ hai bạn đã bán được 260 bông hồng
  • Thứ ba bạn đã bán được 200 bông hồng
  • Thứ tư bạn đã bán được 120 bông hồng

Giá trị của tất cả các lần bán hàng là bao nhiêu?

Bông hồng đỏ$ 3 trắng$ 4 Màu vàng$ 2
Thứ hai1208060
Thứ ba907040
Thứ Tư604020
MỘT B C C
$ 3
$ 4
$ 2
 x 
120 80 60
90 70 40
60 40 20
 = 
$ 800
$ 630
$ 380
 = 
$ 1810

Thí dụ

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] ]

Giải thích:

MỘT B C C
$ 3
$ 4
$ 2
 x 
120 80 60
90 70 40
60 40 20
 = 
$ 3x120 + $ 4x80 + $ 2x60
$ 3x90 + $ 4x70 + $ 2x40
$ 3x60 + $ 4x40 + $ 2x20
 = 
$ 800
$ 630
$ 380

Dữ liệu hóa ma trận

Với AI, bạn cần biết cách phân tích nhân tử của một ma trận.

Phân tích nhân tử ma trận là một công cụ quan trọng trong đại số tuyến tính, đặc biệt là trong Hình vuông nhỏ nhất tuyến tính.