zoukankan      html  css  js  c++  java
  • 用python检查矩阵的计算

    鉴于最近复习线性代数计算量较大,且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 开启多进程的两种方法
    Python
    Python
    路由器配置
    python 自定义报头 实现大文件传输
    python socket
    Spring MVC 实现文件的上传
    SpringMVC异常处理
    SpringMVC 返回值类型,参数传递 解决乱码
    Spring—MVC案例
  • 原文地址:https://www.cnblogs.com/wangzheming35/p/12912170.html
Copyright © 2011-2022 走看看