线性代数(基于python)
(一) 线性方程组与向量
1.1 线性方程组
二元一次方程组的未知数的阶数都是一次,式子两边都是用等式相连,因此我们给这个方程组起另一个名字:线性方程组.
什么是向量
矩阵的简介
例如,求解如下二元一次方程组,(方程组可以用向量形式表示成)
我们尝试使用python解线性方程组,Numpy
中已经封装了求解线性方程组的函数,我们仅需要传入对应的系数矩阵 A \mathbf{A} A以及常数向量 b b b,程序就会算出相应的结果.
import numpy as np
A = np.array([[1, 1],
[2, 4]]) # 将系数所有向量拼在一起
b = np.array([10,
28]) # 常数向量
x = np.linalg.solve(A,b) # 解线性方程组
print("线性方程组的解为:\n",x)
(二) 向量空间、矩阵、行列式以及范数
2.1 向量的运算法则
- 一个数乘一个向量;
- 一个向量加一个向量;
显然,当变量个数变多之后,也会满足上面这两种运算法则,因此我们接下来正式引入向量的基本运算法则:
给定 n n n维向量
x = [ x 1 x 2 ⋮ x n ] , y = [ y 1 y 2 ⋮ y n ] x= \begin{bmatrix} {x_1}\\ {x_2}\\ {\vdots}\\ {x_n} \end{bmatrix}, y= \begin{bmatrix} {y_1}\\ {y_2}\\ {\vdots}\\ {y_n} \end{bmatrix} x=⎣⎢⎢⎢⎡x1x2⋮xn⎦⎥⎥⎥⎤,y=⎣⎢⎢⎢⎡y1y2⋮yn⎦⎥⎥⎥⎤
-
向量的加法定义为:
x + y = [ x 1 + y 1 x 2 + y 2 ⋮ x n + y n ] , x+y = \begin{bmatrix} {x_1 + y_1}\\ {x_2 + y_2}\\ {\vdots}\\ {x_n + y_n} \end{bmatrix}, x+y=⎣⎢⎢⎢⎡x1+y1x2+y2⋮xn+yn⎦⎥⎥⎥⎤,
即两个向量对应的分量相加. -
向量的数乘定义为:
对于 k ∈ R k \in \mathbf{R} k∈R,
k x = [ k x 1 k x 2 ⋮ k x n ] , kx = \begin{bmatrix} {kx_1 }\\ {kx_2}\\ {\vdots}\\ {kx_n} \end{bmatrix}, kx=⎣⎢⎢⎢⎡kx1kx2⋮kxn⎦⎥⎥⎥⎤,
即每个分量都乘上 k k k.
关于向量与向量的乘法,我们约定一个使用习惯,我们默认所有的向量都采用列向量的形式,当我们在文中书写时,为了排版优美,通常将向量由列向量转成行向量进行书写,向量的行列交换的称为向量的转置,记做 x T = ( x 1 , x 2 , ⋯ , x n ) x^T = (x_1, x_2, \cdots, x_n) xT=(x1,x2