From 7804c7eccc5627cd8badb9d87b78ffa2b11e1d49 Mon Sep 17 00:00:00 2001 From: sairate Date: Sun, 1 Sep 2024 16:36:15 +0800 Subject: [PATCH] Signed-off-by: sairate --- README.md | 5 +- notebook/docs/basic/math/矩阵运算.md | 82 +++++++++++++++++++++++++++ notebook/mkdocs.yml | 1 + static/image/issues.jpg | Bin 0 -> 48217 bytes 4 files changed, 87 insertions(+), 1 deletion(-) create mode 100644 notebook/docs/basic/math/矩阵运算.md create mode 100644 static/image/issues.jpg diff --git a/README.md b/README.md index ef970cef..f3e03504 100644 --- a/README.md +++ b/README.md @@ -19,5 +19,8 @@ $ mkdocs serve # 在本地启动服务器预览 ## 贡献 -我们欢迎和鼓励所有人贡献自己的知识和经验!请阅读我们的 [贡献指南](CONTRIBUTING.md) 以了解如何开始。 +我们欢迎和鼓励所有人贡献自己的知识和经验! +- 在工单中提交需求 + +![issues](.\static\image\issues.jpg) diff --git a/notebook/docs/basic/math/矩阵运算.md b/notebook/docs/basic/math/矩阵运算.md new file mode 100644 index 00000000..a9f55f72 --- /dev/null +++ b/notebook/docs/basic/math/矩阵运算.md @@ -0,0 +1,82 @@ +矩阵运算在数学和计算机科学中是一个重要的概念,尤其在线性代数、图形处理、机器学习等领域应用广泛。下面我来介绍一些基本的矩阵运算,包括加法、减法、乘法和转置等。 + +### 1. 矩阵加法和减法 +矩阵加法和减法要求两个矩阵的维度相同。矩阵中的对应元素进行逐元素相加或相减。 + +**例如:** +设有两个矩阵 \( A \) 和 \( B \),如下: +\[ A = \begin{pmatrix} 1 & 2 \\ 3 & 4 \end{pmatrix}, \quad B = \begin{pmatrix} 5 & 6 \\ 7 & 8 \end{pmatrix} \] + +**加法:** +\[ A + B = \begin{pmatrix} 1+5 & 2+6 \\ 3+7 & 4+8 \end{pmatrix} = \begin{pmatrix} 6 & 8 \\ 10 & 12 \end{pmatrix} \] + +**减法:** +\[ A - B = \begin{pmatrix} 1-5 & 2-6 \\ 3-7 & 4-8 \end{pmatrix} = \begin{pmatrix} -4 & -4 \\ -4 & -4 \end{pmatrix} \] + +### 2. 矩阵乘法 +矩阵乘法是矩阵运算中最常见的一种操作。矩阵 \( A \) 的列数必须等于矩阵 \( B \) 的行数。结果矩阵的维度为 \( A \) 的行数和 \( B \) 的列数。 + +**例如:** +设有矩阵 \( A \) 和 \( B \),如下: +\[ A = \begin{pmatrix} 1 & 2 \\ 3 & 4 \end{pmatrix}, \quad B = \begin{pmatrix} 5 & 6 \\ 7 & 8 \end{pmatrix} \] + +**乘法:** +\[ A \times B = \begin{pmatrix} 1\times5 + 2\times7 & 1\times6 + 2\times8 \\ 3\times5 + 4\times7 & 3\times6 + 4\times8 \end{pmatrix} = \begin{pmatrix} 19 & 22 \\ 43 & 50 \end{pmatrix} \] + +### 3. 矩阵转置 +矩阵的转置是将矩阵的行和列互换。对于矩阵 \( A \) 的转置矩阵记作 \( A^T \)。 + +**例如:** +设矩阵 \( A \) 如下: +\[ A = \begin{pmatrix} 1 & 2 & 3 \\ 4 & 5 & 6 \end{pmatrix} \] + +**转置:** +\[ A^T = \begin{pmatrix} 1 & 4 \\ 2 & 5 \\ 3 & 6 \end{pmatrix} \] + +### 4. 单位矩阵和逆矩阵 +- **单位矩阵** \( I \) 是一个对角线上全为1,其余元素为0的方阵。它在矩阵乘法中起着类似于数字1在数乘中的作用。 + + **例如:** + \[ I = \begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix} \] + +- **逆矩阵** \( A^{-1} \) 是一个矩阵,使得 \( A \times A^{-1} = I \)。只有方阵(行数等于列数)并且行列式不为零的矩阵才有逆矩阵。 + +### 5. 矩阵行列式 +行列式是一个标量值,可以用于判断矩阵是否可逆。对于 \( 2 \times 2 \) 的矩阵 \( A = \begin{pmatrix} a & b \\ c & d \end{pmatrix} \),行列式 \( \det(A) \) 计算如下: +\[ \det(A) = ad - bc \] + +如果行列式不为零,矩阵 \( A \) 可逆。 + +### 6. Python 中的矩阵运算 +在 Python 中,NumPy 是一个常用的库来进行矩阵运算。 + +```python +import numpy as np + +# 定义矩阵 +A = np.array([[1, 2], [3, 4]]) +B = np.array([[5, 6], [7, 8]]) + +# 矩阵加法 +C = A + B + +# 矩阵乘法 +D = np.dot(A, B) + +# 矩阵转置 +E = A.T + +# 矩阵的行列式 +det_A = np.linalg.det(A) + +# 矩阵的逆 +inv_A = np.linalg.inv(A) + +print("矩阵加法结果:\n", C) +print("矩阵乘法结果:\n", D) +print("矩阵转置结果:\n", E) +print("矩阵的行列式:", det_A) +print("矩阵的逆:\n", inv_A) +``` + +这些基本运算为许多复杂的线性代数问题打下了基础。如果你对更高级的矩阵运算或应用有兴趣,可以继续深入学习特征值分解、奇异值分解等内容。 \ No newline at end of file diff --git a/notebook/mkdocs.yml b/notebook/mkdocs.yml index b4aee63c..415bd05e 100644 --- a/notebook/mkdocs.yml +++ b/notebook/mkdocs.yml @@ -15,6 +15,7 @@ nav: - 信息学发展史(近代版): basic/program/信息学发展史(近现代).md - 数学基础: - 进制转换: basic/math/进制转换.md + - 矩阵运算: basic/math/矩阵运算.md theme: name: material diff --git a/static/image/issues.jpg b/static/image/issues.jpg new file mode 100644 index 0000000000000000000000000000000000000000..49ea98743037ecfa2a8ddac337e6cfe54e4fae03 GIT binary patch literal 48217 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 literal 0 HcmV?d00001