Матричный квадратный корень
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(
возвращает коэффициент устойчивости A
)alpha
и оценку матрицы квадратного корня числа обусловленности из X
в 1-норме, condx
. Невязка norm(A-X^2,1)/norm(A,1)
ограничивается приблизительно n*alpha*eps
и 1-норма, относительная погрешность в X
ограничивается приблизительно n*alpha*condx*eps
, где n = max(size(A))
.
Некоторые матрицы, например A = [0 1; 0 0]
, не имеют никаких квадратных корней, реальных или сложных, и sqrtm
нельзя ожидать, что он будет произведен.
Алгоритм sqrtm
использование описано в [3].
[1] НЬЮ-ДЖЕРСИ. Хайам, «Вычисление реальных квадратных корней действительной матрицы», Линейная Алгебра и Appl., 88/89, pp. 405-430, 1987
[2] Bjorck, A. and S. Hammerling, «A Schur method for the квадратный корень of матрица», Линейная Алгебра and Appl., 52/53, pp. 127-140, 1983
[3] Deadman, E., Higham, N. J. and R. Ralha, «Blocked Schur algorithms for computing the matrix квадратный корень», Lecture Notes in Comput. Sci., 7782, Springer-Verlag, pp. 171-182, 2013