當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python SciPy linalg.sqrtm用法及代碼示例

本文簡要介紹 python 語言中 scipy.linalg.sqrtm 的用法。

用法:

scipy.linalg.sqrtm(A, disp=True, blocksize=64)#

矩陣平方根。

參數

A (N, N) 數組

要計算其平方根的矩陣

disp 布爾型,可選

如果結果中的錯誤估計很大,而不是返回估計的錯誤,則打印警告。 (默認:真)

blocksize 整數,可選

如果塊大小相對於輸入數組的大小沒有退化,則使用分塊算法。 (默認值:64)

返回

sqrtm (N, N) 數組

A 處 sqrt 函數的值。數據類型為浮點型或複數型。精度(數據大小)根據輸入 A 的精度確定。當 dtype 為 float 時,精度與 A 相同。當 dtype 為複數時,精度是 A 的兩倍。精度可能會被裁剪每個 dtype 精度範圍。

errest 浮點數

(如果 disp == False)

估計誤差的 Frobenius 範數,||err||_F /||A||_F

參考

[1]

Edvin Deadman, Nicholas J. Higham, Rui Ralha (2013) “用於計算矩陣平方根的阻塞 Schur 算法,計算機科學講義,7782。第 171-182 頁。

例子

>>> import numpy as np
>>> from scipy.linalg import sqrtm
>>> a = np.array([[1.0, 3.0], [1.0, 4.0]])
>>> r = sqrtm(a)
>>> r
array([[ 0.75592895,  1.13389342],
       [ 0.37796447,  1.88982237]])
>>> r.dot(r)
array([[ 1.,  3.],
       [ 1.,  4.]])

相關用法


注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.linalg.sqrtm。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。