Python数学计算:Numpy和Scipy(矩阵相关)

时间:2021-03-10 21:26:32

Python是一种通用语言。它被解释运行,是动态类型语言,并且非常适合交互工作和快速实现原型,然而又足够强大用来写大型应用。

NumPy是一个定义了数值数组和矩阵类型和它们的基本运算的语言扩展。

SciPy是另一种使用NumPy来做高等数学、信号处理、优化、统计和许多其它科学任务的语言扩展。

(1)创建矩阵

import numpy as np
s = np.array([[-0.707,-0.707],[-0.707,0.707]])
d = np.array([[0.02,0],[0,0]])

(2)矩阵乘积

g = np.dot(s,d)
print g
(3)矩阵SVD分解

A=np.array([[3,3],[4,4]])
#print A
U,sigma,VT=la.svd(A)
print U
print sigma
print VT
(4)解方程组
前提:矩阵A的行列式值不能为0

a = np.array([[2,6,12,20],[6,20,42,72], [12,42,90,156],[20,72,156,272]])
print np.linalg.det(a)
b = np.array([0,0,0,0])
print b
x1 = np.linalg.solve(a,b)
print x1