计算物理(七)线性代数
矩阵生成、求解特征值与特征向量。
矩阵生成
数组
数组类
Numpy 提供数组类 ndarray
,其定义为
1 | class numpy.ndarray |
ndarray
对象包括以下重要属性
ndarray.ndim
- 数组的维数,例如矩阵的 ndim 为 2 ;ndarray.shape
- 数组的维度/形状,以整数型元组给出。 行 列矩阵的 shape 为(n,m)
;ndarray.size
- 数组的元素个数;ndarray.dtype
- 数组中元素的数据类型;
数组创建
-
numpy.array(array_like_obj, dtype = None)
将列表、元组或其他序列对象,转化并创建为ndarray
对象; -
numpy.zeros(shape, dtype = None)
接收数组维度 (shape tuple),并创建全 0 数组,例如 零矩阵np.zeros((2,2))
; -
numpy.eye(N, M = None, k = 0)
创建 行 列 ( 默认等于 ) 单位对角矩阵,对角元上移 个元素; -
numpy.full(shape, fill_value, dtype = None)
接收数组维度创建数组,并将 fill_value 赋给数组的每个元素; -
numpy.zeros_like(array_like_obj)
创建一个形状和数据类型与 array_like_obj 均相同的全零数组 -
numpy.arange(start, stop, step, dtype)
生成区间 [start, stop) ,步长为 step 的数组 -
numpy.linspace(start, stop, num = 50, endpoint = True)
生成 [start, stop],样本数量为 num,按照 endpoint 为 True/False 包含/不包含 stop point 的数组,参见以下示例