本文簡要介紹 python 語言中 scipy.linalg.subspace_angles
的用法。
用法:
scipy.linalg.subspace_angles(A, B)#
計算兩個矩陣之間的子空間角度。
- A: (M, N) 數組
第一個輸入數組。
- B: (M, K) 數組
第二個輸入數組。
- angles: ndarray,形狀(min(N,K),)
A 和 B 的列空間之間的子空間角度按降序排列。
參數 ::
返回 ::
注意:
這將根據 [1] 中提供的公式計算子空間角度。要與 MATLAB 和 Octave 行為等效,請使用
angles[0]
。參考:
[1]Knyazev A, Argentati M (2002) 基於 A 的標量積中子空間之間的主角:算法和擾動估計。暹羅學家科學。計算。 23:2008-2040。
例子:
具有正交列的 Hadamard 矩陣,因此我們期望超空間角為 :
>>> import numpy as np >>> from scipy.linalg import hadamard, subspace_angles >>> rng = np.random.default_rng() >>> H = hadamard(4) >>> print(H) [[ 1 1 1 1] [ 1 -1 1 -1] [ 1 1 -1 -1] [ 1 -1 -1 1]] >>> np.rad2deg(subspace_angles(H[:, :2], H[:, 2:])) array([ 90., 90.])
並且矩陣與其自身的子空間角度應該為零:
>>> subspace_angles(H[:, :2], H[:, :2]) <= 2 * np.finfo(float).eps array([ True, True], dtype=bool)
非正交子空間之間的角度介於這些極端之間:
>>> x = rng.standard_normal((4, 3)) >>> np.rad2deg(subspace_angles(x[:, :2], x[:, [2]])) array([ 55.832]) # random
相關用法
- Python SciPy linalg.solve_circulant用法及代碼示例
- Python SciPy linalg.svd用法及代碼示例
- Python SciPy linalg.spsolve用法及代碼示例
- Python SciPy linalg.spsolve_triangular用法及代碼示例
- Python SciPy linalg.solve_banded用法及代碼示例
- Python SciPy linalg.solve_discrete_lyapunov用法及代碼示例
- Python SciPy linalg.splu用法及代碼示例
- Python SciPy linalg.spilu用法及代碼示例
- Python SciPy linalg.solve用法及代碼示例
- Python SciPy linalg.svdvals用法及代碼示例
- Python SciPy linalg.solveh_banded用法及代碼示例
- Python SciPy linalg.solve_sylvester用法及代碼示例
- Python SciPy linalg.solve_toeplitz用法及代碼示例
- Python SciPy linalg.sqrtm用法及代碼示例
- Python SciPy linalg.svds用法及代碼示例
- Python SciPy linalg.sinm用法及代碼示例
- Python SciPy linalg.schur用法及代碼示例
- Python SciPy linalg.solve_continuous_lyapunov用法及代碼示例
- Python SciPy linalg.solve_continuous_are用法及代碼示例
- Python SciPy linalg.solve_discrete_are用法及代碼示例
- Python SciPy linalg.solve_triangular用法及代碼示例
- Python SciPy linalg.sinhm用法及代碼示例
- Python SciPy linalg.signm用法及代碼示例
- Python SciPy linalg.eigvalsh_tridiagonal用法及代碼示例
- Python SciPy linalg.cdf2rdf用法及代碼示例
注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.linalg.subspace_angles。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。