sqrtm
矩阵平方根
说明
X = sqrtm(
返回矩阵 A
)A
的主要平方根(即 X*X = A
)。
X
是其每个特征值都具有非负实部的唯一平方根。如果 A
具有任何包含负实部的特征值,则生成复数结果。如果 A
是奇异矩阵,则 A
可能没有平方根。如果检测到完全奇异性,则会输出一条警告。
[X,residual] = sqrtm(
还会返回残差 A
)residual = norm(A-X^2,1)/norm(A,1)
。如果检测到完全奇异性,此语法不输出警告。
[X,alpha,condx] = sqrtm(
以 1-范数形式返回稳定因子 A
)alpha
和 X
的矩阵平方根条件数的估计值,即 condx
。残差 norm(A-X^2,1)/norm(A,1)
基本受 n*alpha*eps
约束,X
中的 1-范数相对误差基本受 n*alpha*condx*eps
(其中 n = max(size(A))
)约束。
示例
输入参数
提示
某些矩阵(如
A = [0 1; 0 0]
)没有任何实数/复数平方根,并且sqrtm
也无法生成这样的根。
算法
sqrtm
使用的算法如 [3] 中所述。
参考
[1] N.J. Higham, “Computing real square roots of a real matrix,” Linear Algebra and Appl., 88/89, pp. 405–430, 1987
[2] Bjorck, A. and S. Hammerling, “A Schur method for the square root of a matrix,” Linear Algebra and Appl., 52/53, pp. 127–140, 1983
[3] Deadman, E., Higham, N. J. and R. Ralha, “Blocked Schur algorithms for computing the matrix square root,” Lecture Notes in Comput. Sci., 7782, Springer-Verlag, pp. 171–182, 2013
扩展功能
版本历史记录
在 R2006a 之前推出