python中如何使用scipy.linalg模块计算矩阵的行列式?

Python (168) 2023-07-17 00:08:35

作为python中可以计算高等数学库scipy中,scipy.linalg用于计算线性代数,扩展了由numpy.linalg提供的线性代数例程和矩阵分解功能。如果想要计算方阵的行列式,可以使用scipy.linalg.det()方法,可以轻松的获取方阵的行列式,本文介绍python中使用scipy.linalg模块计算矩阵的行列式的过程。

1、scipy.linalg.det()计算方阵的行列式格式

print('Det:',lg.det(arr))#求矩阵arr的行列式

2、使用scipy.linalg.det()计算方阵的行列式实例

In[22]:fromscipyimportlinalg

In[23]:arr=np.array([[1,2],
....:[3,4]])

In[24]:linalg.det(arr)
Out[24]:-2.0

In[25]:linalg.det(np.ones((3,4)))
---------------------------------------------------------------------------
ValueErrorTraceback(mostrecentcalllast)
<ipython-input-25-375ad1d49940>in<module>()
---->1linalg.det(np.ones((3,4)))

/usr/lib/python2.7/site-packages/scipy/linalg/basic.pycindet(a,overwrite_a)
398a1=np.asarray_chkfinite(a)
399iflen(a1.shape)!=2ora1.shape[0]!=a1.shape[1]:
-->400raiseValueError('expectedsquarematrix')
401overwrite_a=overwrite_aor_datacopied(a1,a)
402fdet,=get_flinalg_funcs(('det',),(a1,))

ValueError:expectedsquarematrix
py.linalg.inv()

以上就是python中使用scipy.linalg模块计算矩阵的行列式的过程,希望能对你有所帮助哟~更多python高级教程:python高级教程。

THE END

发表回复