Posted in Python onMay 21, 2020
鉴于最近复习线性代数计算量较大,且1800答案常常忽略一些逆阵、行列式的计算答案,故用Python写出矩阵的简单计算程序,便于检查出错的步骤。
1、行列式
可自行更改阶数
from numpy import * # 求行列式 ,建议:取小数点前整数 A = array([[3, 1, 1, 1], [1, 3, 1, 1], [1, 1, 3, 1], [1, 1, 1, 3]]) B = linalg.det(A) print(B) # 48.000000000000014 正确答案:48
2、矩阵相乘
注意要内标相同
from numpy import * # 求矩阵相乘 A = array([[1, -1, 1], [1, 1, 0], [-1, 0, 1]]) B = array([[3, 0, 0], [0, 0, 0], [0, 0, 0]]) # N=AB N = dot(A, B) # N=BA,则 N = dot(B, A) print(N) # 正确答案: # [ 3 0 0] # [ 3 0 0] # [-3 0 0]
3、逆矩阵
自行判断|A|≠0,这里 A∗ = A−1 · |A|
from numpy import * # 求逆矩阵 ,建议:取小数点后一位化为分数 A = mat([[1, -1, 1], [1, 1, 0], [-1, 0, 1]]) B = A.I print(B) # [ 0.33333333 0.33333333 -0.33333333] # [-0.33333333 0.66666667 0.33333333] # [ 0.33333333 0.33333333 0.66666667] # 0.333≈ 1/3 ,0.667≈ 2/3
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。
基于python检查矩阵计算结果
- Author -
我在吃大西瓜呢声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@