【问题标题】:Multiplication of Matrices composed of polynomials由多项式组成的矩阵的乘法
【发布时间】:2014-11-12 05:12:25
【问题描述】:

是否可以使用 numpy/scipy 将由多项式组成的矩阵相乘?

具体来说,我希望将一个 120 乘以 120 的稀疏矩阵相乘,其条目本身可能看起来像 a+7*b+c。

老实说,我并没有很努力地做到这一点。我看到 numpy 中有一个多项式模块,但我没有使用它的经验。我只是希望有人看到这一点并说“显然有可能,这样做”。

我之前看到过一个相关问题:Matrices whose entries are polynomials

【问题讨论】:

    标签: numpy scipy matrix-multiplication polynomials


    【解决方案1】:

    我不知道稀疏,但是 numpy 对象数组可以正常工作。

    In [1]: from numpy.polynomial import Polynomial as P
    
    In [2]: a = np.array([[P([1,2]), P([3,4])]]*2)
    
    In [3]: a
    Out[3]: 
    array([[Polynomial([ 1.,  2.], [-1,  1], [-1,  1]),
            Polynomial([ 3.,  4.], [-1,  1], [-1,  1])],
           [Polynomial([ 1.,  2.], [-1,  1], [-1,  1]),
            Polynomial([ 3.,  4.], [-1,  1], [-1,  1])]], dtype=object)
    
    In [4]: np.dot(a, a)
    Out[4]: 
    array([[Polynomial([  4.,  14.,  12.], [-1.,  1.], [-1.,  1.]),
            Polynomial([ 12.,  34.,  24.], [-1.,  1.], [-1.,  1.])],
           [Polynomial([  4.,  14.,  12.], [-1.,  1.], [-1.,  1.]),
            Polynomial([ 12.,  34.,  24.], [-1.,  1.], [-1.,  1.])]], dtype=object)
    

    【讨论】:

      猜你喜欢
      • 2020-06-25
      • 2013-08-16
      • 2019-09-18
      • 1970-01-01
      • 2017-03-20
      • 2017-05-25
      • 1970-01-01
      • 2020-11-22
      • 1970-01-01
      相关资源
      最近更新 更多