eig

Собственные значения и собственные вектора символьной матрицы

Описание

пример

lambda = eig(A) возвращает символьный вектор, содержащий собственные значения квадратной символьной матрицы A.

пример

[V,D] = eig(A) возвращает матрицы V и D. Столбцы V существующие собственные вектора A. Диагональный матричный D содержит собственные значения. Если получившийся V имеет тот же размер как A, затем матричный A имеет полный набор линейно независимых собственных векторов, которые удовлетворяют   A*V = V*D.

[V,D,P] = eig(A) возвращает вектор из индексов P. Длина P равно количеству линейно независимых собственных векторов, так, чтобы A*V = V*D(P,P).

пример

lambda = eig(B) возвращает числовые собственные значения квадратной матрицы переменной точности B. Преобразовывать символьную матрицу A к переменной точности используйте B = vpa(A).

[V,D] = eig(B) также возвращает числовые собственные вектора.

Примеры

свернуть все

Вычислите собственные значения для магического квадрата порядка 5.

A = sym(magic(5));
lambda = eig(A)
lambda = 

(656252-531452531452+6252-6252-531452-531452+6252)

Вычислите числовые собственные значения для магического квадрата порядка 5 с помощью арифметики переменной точности.

A = magic(5);
lambda = eig(vpa(A))
lambda = 

(65.021.27676547147379553062642669797413.126280930709218802525643085949-13.126280930709218802525643085949-21.276765471473795530626426697974)

Создайте символьную матрицу 5 на 5 из магического квадрата порядка 6. Вычислите собственные значения матрицы с помощью eig.

M = magic(6);
A = sym(M(1:5,1:5));
lambda = eig(A)
lambda = 

(root(σ1,z,1)root(σ1,z,2)root(σ1,z,3)root(σ1,z,4)root(σ1,z,5))where  σ1=z5-100z4+134z3+66537z2-450198z-1294704

eig функция не может найти точные собственные значения в терминах символьных чисел. Вместо этого это возвращает их в терминах root функция.

Используйте vpa численно аппроксимировать собственные значения.

lambdaVpa = vpa(lambda)
lambdaVpa = 

(-2.1810323649846951083546927010659.8395828502812312578803604206392-25.13164166979989160726758463919226.34161761027586903546571650580691.131473574227486422276200413812)

Вычислите собственные значения и собственные вектора для одной из тестовых матриц MATLAB®.

A = sym(gallery(5))
A = 

(-911-2163-25270-69141-4211684-575575-11493451-138013891-38917782-23345933651024-10242048-614424572)

[v,lambda] = eig(A)
v = 

(021256-711289732561)

lambda = 

(0000000000000000000000000)

Входные параметры

свернуть все

Квадратная матрица в виде символьной матрицы.

Квадратная матрица переменной точности в виде числовой матрицы. Преобразовывать символьную матрицу A к переменной точности используйте B = vpa(A).

Выходные аргументы

свернуть все

Собственные значения, возвращенные как символьный вектор-столбец или вектор-столбец символьных чисел.

Правые собственные вектора, возвращенные как квадратная символьная матрица, столбцы которой являются правыми собственными векторами A.

Собственные значения, возвращенные как символьная диагональная матрица с собственными значениями A на основной диагонали.

Вектор из индексов, возвращенных как символьный вектор-строка, длина которого является общим количеством линейно независимых собственных векторов.

Ограничения

Матричные расчеты, включающие много символьных переменных, могут быть медленными. Чтобы увеличить вычислительную скорость, сократите количество символьных переменных путем заменения данными значениями некоторые переменные.

Вопросы совместимости

развернуть все

Поведение изменяется в R2021b

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

| | |

Представлено до R2006a