linalg:: charpoly

Характеристический полином матрицы

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.

Синтаксис

linalg::charpoly(A, x)

Описание

linalg::charpoly(A, x) вычисляет характеристический полином матричного A. Характеристический полином n ×n матрица задан, где I n обозначает n ×n единичная матрица.

Звонок компонента A должен быть коммутативным звонком, т.е. областью категории Cat::CommutativeRing.

Примеры

Пример 1

Мы задаем матрицу по рациональным числам:

A := Dom::Matrix(Dom::Rational)([[1, 2], [3, 4]])

Затем характеристическим полиномиальным p A (x) дают:

linalg::charpoly(A, x)

Это имеет доменный тип:

domtype(%)

Пример 2

Мы задаем матрицу по 7:

B := Dom::Matrix(Dom::IntegerMod(7))([[1, 2], [3, 0]])

Характеристическим полиномиальным p B (x) B дают:

p := linalg::charpoly(B, x)

Мы вычисляем нули p B (x), т.е. собственные значения матричного B:

solve(p)

Параметры

A

Квадратная матрица области категории Cat::Matrix

x

Идентификатор

Возвращаемые значения

Полином доменного Dom::DistributedPolynomial ([x],R), где R является звонком компонента A.

Ссылки

Ссылка: Jounaidi Abdeljaoued, Алгоритм Берковица, Клен и Вычисление Характеристического Полинома в Произвольном Коммутативном Звонке, № 3 MapleTech Vol 4, стр 21-32, Birkhäuser, 1997.

Алгоритмы

linalg::charpoly реализует алгоритм Хессенберга, чтобы вычислить характеристический полином квадратной матрицы A. См.: Анри Коэн: Курс в Вычислительной Теории Алгебраического числа, GTM 138, Springer Verlag.

Этот алгоритм работает на любое поле и требует только O (n 3) деятельность на местах, в отличие от O (n 4) при вычислении детерминанта характеристической матрицы A.

Поскольку размер компонентов A в промежуточных вычислениях алгоритма Хессенберга может увеличиться чрезвычайно, это только применяется для матриц по Dom::Float и Dom::IntegerMod.

Для любого другого звонка компонента характеристический полином вычисляется с помощью алгоритма Берковица.

Смотрите также

Функции MuPAD