本文简要介绍 python 语言中 scipy.linalg.solve_discrete_lyapunov
的用法。
用法:
scipy.linalg.solve_discrete_lyapunov(a, q, method=None)#
求解离散 Lyapunov 方程 。
- a, q: (M, M) 数组
分别对应上式中的 A 和 Q 的方阵。必须具有相同的形状。
- method: {‘direct’, ‘bilinear’},可选
求解器的类型。
如果没有给出,如果
M
小于10,则选择direct
,否则选择bilinear
。
- x: ndarray
离散李雅普诺夫方程的解
参数 ::
返回 ::
注意:
本节介绍可通过 ‘method’ 参数选择的可用求解器。默认方法是直接的如果
M
小于 10 并且bilinear
否则。方法直接的使用离散 Lyapunov 方程的直接解析解。该算法在例如,[1].但是,它需要具有维数的系统的线性解 因此即使是中等大小的矩阵,性能也会迅速下降。
方法双线性使用双线性变换将离散的李雅普诺夫方程转换为连续的李雅普诺夫方程[2].
其中 和 .连续方程可以有效求解,因为它是 Sylvester 方程的特例。变换算法来自 Popov (1964),如参考:
[1]Hamilton, James D. 时间序列分析,普林斯顿:普林斯顿大学出版社,1994 年。265。印刷。 http://doc1.lbfl.li/aca/FLMF037168.pdf
[2]Gajic、Z. 和 M.T.J.库雷希。 2008. 系统稳定性和控制中的 Lyapunov 矩阵方程。多佛工程丛书。多佛出版物。
例子:
给定 a 和 q 求解 x:
>>> import numpy as np >>> from scipy import linalg >>> a = np.array([[0.2, 0.5],[0.7, -0.9]]) >>> q = np.eye(2) >>> x = linalg.solve_discrete_lyapunov(a, q) >>> x array([[ 0.70872893, 1.43518822], [ 1.43518822, -2.4266315 ]]) >>> np.allclose(a.dot(x).dot(a.T)-x, -q) True
相关用法
- Python SciPy linalg.solve_discrete_are用法及代码示例
- Python SciPy linalg.solve_circulant用法及代码示例
- Python SciPy linalg.solve_banded用法及代码示例
- Python SciPy linalg.solve_sylvester用法及代码示例
- Python SciPy linalg.solve_toeplitz用法及代码示例
- Python SciPy linalg.solve_continuous_lyapunov用法及代码示例
- Python SciPy linalg.solve_continuous_are用法及代码示例
- Python SciPy linalg.solve_triangular用法及代码示例
- Python SciPy linalg.solve用法及代码示例
- Python SciPy linalg.solveh_banded用法及代码示例
- Python SciPy linalg.svd用法及代码示例
- Python SciPy linalg.spsolve用法及代码示例
- Python SciPy linalg.spsolve_triangular用法及代码示例
- Python SciPy linalg.splu用法及代码示例
- Python SciPy linalg.spilu用法及代码示例
- Python SciPy linalg.svdvals用法及代码示例
- Python SciPy linalg.sqrtm用法及代码示例
- Python SciPy linalg.svds用法及代码示例
- Python SciPy linalg.sinm用法及代码示例
- Python SciPy linalg.schur用法及代码示例
- Python SciPy linalg.sinhm用法及代码示例
- Python SciPy linalg.signm用法及代码示例
- Python SciPy linalg.subspace_angles用法及代码示例
- Python SciPy linalg.eigvalsh_tridiagonal用法及代码示例
- Python SciPy linalg.cdf2rdf用法及代码示例
注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.linalg.solve_discrete_lyapunov。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。