Матричный квадратный корень
X = sqrtm(A)[X,residual] = sqrtm(A)[X,alpha,condx] = sqrtm(A) возвращает основной квадратный корень из матричного 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] N.J. Higham, “Вычисляя действительные квадратные корни из действительной матрицы”, Линейная алгебра и Прикладной, 88/89, стр 405–430, 1987
[2] Bjorck, А. и С. Хэммерлинг, “Метод Шура для квадратного корня из матрицы”, Линейная алгебра и Прикладной, 52/53, стр 127–140, 1983
[3] Мертвец, Э., Higham, N. J. и Р. Рэлха, “Блокированные алгоритмы Шура для вычисления матричного квадратного корня”, Примечания Лекции в Comput. Наука, 7782, Springer-Verlag, стр 171–182, 2013