scipy是python下的什么_python – cholesky在numpy和scipy之间有什么区别?
scipy.linalg.cholesky默認給你上三角分解,而np.linalg.cholesky給你的是較低的三角形版本.從scipy.linalg.cholesky的文檔:
cholesky(a, lower=False, overwrite_a=False)
Compute the Cholesky decomposition of a matrix.
Returns the Cholesky decomposition, :math:`A = L L^*` or
:math:`A = U^* U` of a Hermitian positive-definite matrix A.
Parameters
----------
a : ndarray, shape (M, M)
Matrix to be decomposed
lower : bool
Whether to compute the upper or lower triangular Cholesky
factorization. Default is upper-triangular.
overwrite_a : bool
Whether to overwrite data in `a` (may improve performance).
例如:
>>> scipy.linalg.cholesky([[1,2], [1,9]])
array([[ 1. , 2. ],
[ 0. , 2.23606798]])
>>> scipy.linalg.cholesky([[1,2], [1,9]], lower=True)
array([[ 1. , 0. ],
[ 1. , 2.82842712]])
>>> np.linalg.cholesky([[1,2], [1,9]])
array([[ 1. , 0. ],
[ 1. , 2.82842712]])
如果我修改你的代碼以使用相同的隨機矩陣,并使用linalg.cholesky(C,lower = True),那么我得到的答案如下:
>>> Xnp
array([ 79621.02629287+0.j, 78060.96077912+0.j, 77110.92428806+0.j, ...,
75526.55192199+0.j, 77110.92428806+0.j, 78060.96077912+0.j])
>>> Xsp
array([ 79621.02629287+0.j, 78060.96077912+0.j, 77110.92428806+0.j, ...,
75526.55192199+0.j, 77110.92428806+0.j, 78060.96077912+0.j])
>>> np.allclose(Xnp, Xsp)
True
總結
以上是生活随笔為你收集整理的scipy是python下的什么_python – cholesky在numpy和scipy之间有什么区别?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华为ipc配置工具_【简讯】Intel十
- 下一篇: gamma函数stiriling公式_S