WikiSort.ru - Не сортированное

ПОИСК ПО САЙТУ | о проекте

Разложе́ние Холе́цкого — представление симметричной положительно-определённой матрицы в виде , где — нижняя треугольная матрица со строго положительными элементами на диагонали. Иногда разложение записывается в эквивалентной форме: , где — верхняя треугольная матрица. Разложение Холецкого всегда существует и единственно для любой симметричной положительно-определённой матрицы.

Существует также обобщение этого разложения на случай комплекснозначных матриц. Если — положительно-определённая эрмитова матрица, то существует разложение , где — нижняя треугольная матрица с положительными действительными элементами на диагонали, а эрмитово-сопряжённая к ней матрица.

Разложение названо в честь французского математика Андре-Луи Шолески[en] (1875—1918).

Алгоритм

Элементы матрицы можно вычислить, начиная с верхнего левого угла матрицы, по формулам

если

Выражение под корнем всегда положительно, если — действительная положительно-определённая матрица.

Вычисление происходит сверху вниз, слева направо, т. е. сперва , а затем .

Для комплекснозначных эрмитовых матриц используются формулы

если

Приложения

Это разложение может применяться для решения системы линейных уравнений , если матрица симметрична и положительно-определена. Такие матрицы часто возникают, например, при использовании метода наименьших квадратов и численном решении дифференциальных уравнений.

Выполнив разложение , решение можно получить последовательным решением двух треугольных систем уравнений: и . Такой способ решения иногда называется методом квадратных корней.[1] По сравнению с более общими методами, такими как метод Гаусса или LU-разложение, он устойчивее численно и требует примерно вдвое меньше арифметических операций.[2]

Разложение Холецкого также применяется в методах Монте-Карло для генерации коррелированных случайных величин. Пусть  — вектор из независимых стандартных нормальных случайных величин, а  — желаемая ковариационная матрица. Тогда вектор будет иметь многомерное нормальное распределение с нулевым математическим ожиданием и ковариационной матрицей .[3]

Реализация в математических пакетах программ

  • В SAS используется функция ROOT(matrix), входящая в пакет SAS IML.
  • В системах MATLAB, Octave, R разложение выполняется командой U = chol(A).
  • В Maple и NumPy существует процедура cholesky в модуле linalg.
  • В Mathematica используется процедура CholeskyDecomposition[A].
  • В MathCAD для разложения используется функция cholesky(A)
  • В GSL используется функция gsl_linalg_cholesky_decomp.
  • В библиотеке от Google ceres-solver[4].
  • В библиотеке Apache Commons Math (начиная с версии 2.0) используется класс CholeskyDecomposition[5].
  • В библиотеке Torch присутствует функция torch.potrf[6].
  • В библиотеке Intel Data Analytics Acceleration Library присутствует алгоритмcholesky::Batch.

Примечания

  1. Вержбицкий В. М. Основы численных методов. М.: Высшая школа, 2009. — 840 с. ISBN 9785060061239.
  2. William H. Press, Saul A. Teukolsky, William T. Vetterling, Brian P. Flannery. 2.9 Cholesky Decomposition // Numerical Recipes in C. — 2nd edition. — Cambridge: Cambridge University Press. ISBN 0-521-43108-5.
  3. Martin Haugh. Generating Correlated Random Variables Архивировано 5 января 2012 года..
  4. Ceres Solver — A Large Scale Non-linear Optimization Library
  5. CholeskyDecomposition.
  6. torch.potrf.

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии