Алгоритм поиска собственных значений матрицы 3x3 численно

_NEKTO_

какой есть?

vtk50

Метод вращений например

Andres

Разве он работает для маленьких матриц?
Я бы это решал диагонализацией и решением уравнения, всего-то третья степень получится

Komandor

Через характеристический многочлен давай, или НА КОМПЕ....

_NEKTO_

> и решением уравнения, всего-то третья степень получится
Через формулы Кардано или как?
Мне казалось, что для поиска собств. значений есть какой-то свой алгоритм, т.к. искать корни уравнения -- более общий случай.

Andres

Я имел в виду решение характеристического уравнения верхне(ну или нижне- )диагональной матрицы. В свое время такие уравнения я решал чуть ли не бисекцией. Насчет более специального алгоритма - надо покопаться, мож что найдется. Но если такие вычисления не нужны в потоке, то вполне сносный метод получается

roman1606

А что, 3*3 матрицы разве нельзя "численно" к диагональному виду привести?

vtk50

Работает... Почему нет?!

Andres

Я уже понял, пасиб Фигню сказал
Но у меня об этом алгоритме осталось впечатление, как о не слишком быстром. Лучше всего себя в этом деле показали QR/QL-алгоритмы

vtk50

А QR - это не метод вращения как раз?!

Andres

AFAIK, нет. Это метод, основанный на разложении произвольной матрицы на произведение ортогональной и верхне/нижне- (соотв R/L) треугольной

vtk50

Ясно... Попутал...

spiritmc

А в FAQ заглянуть?
---
"Vyroba umelych lidi."

_NEKTO_

Кароч, какой xbcktyysq алгоритм будет самым простым в реализации для нахождения с.ч. матриц 3x3?

Andres

В реализации проще всего с характеристическим многочленом. Хотя если надо, есть исходники для вращений и QR.

roman1606

Имхо Гаусса к треугольному виду.

_NEKTO_

Давай исходники.

_NEKTO_

Это как?

roman1606

Мьюз, ты серьёзно? Могу объяснить, ага.

Andres

Вот

natunchik

А гаусс разве сохраняет собственные значения/вектора? Я тоже хотел его посоветовать, но потом как-то задумался, не нужно ли будет произвести разные дополнительные действия, типа параллельно преобразовывать единичную матрицу теми же действиями, а потом взять в качестве собственных векторов её строки.

_NEKTO_

Я действительно не вкурю, как можно (A-yE)x=0 привести к диагональному виду численено, если y наперед неизвестен..

_NEKTO_

>типа параллельно преобразовывать единичную матрицу теми же действиями, а потом взять в качестве собственных векторов её строки.
О, что-то знакомое. Где про это почитать можно?

roman1606

Гаусс сохраняет

roman1606

Таки-тебе вектора нужны или значения?

roman1606

Так надо просто А привести к треугольному

_NEKTO_

Гаусс не сохраняет с.з.

_NEKTO_

А про метод вращений/отражений где почитать? В Бахвалове-Кобелькове нету.
QR для 3x3 - будет из пушки по воробьям, ИМХО. Если другого не придумаю, пидется его писать, но время поджимает.

vtk50

Млгу в принципе рассказать... А так посмотри в Калиткине или Самарском...

_NEKTO_

Самарский А.А. Введение в теорию разностных схем 1971Флажок рубрикатора Введение в теорию разностных схем - 3.71 Мб
1190. Самарский А.А. Попов Ю.П. Разностные методы решения задач газовой динамики 1992Флажок рубрикатора Разностные методы решения задач газовой динамики - 4.28 Мб
1189. Самарский А.А. Введение в численные методы n/aФлажок рубрикатора Введение в численные методы - 5.65 Мб
1188. Самарский А.А. Гулин А.В. Численные методы 1989Флажок рубрикатора Численные методы - 6.53 Мб
1187. Самарский А.А. Михайлов А.П. Математическое моделирование: Идеи. Методы. Примеры 2001
который?

NHGKU2

Посмотри в книжке Богачёва (Практикум на ЭВМ, Методы решения систем линейных уравнений и нахождения собственных значений).

_NEKTO_

О, спасибо!

_NEKTO_

Тут ещё такая тема. Собственно матрица берется из решения задачи Коши для уравнения dX/dt = A X, X(0)=E, X(t0)=?
Может есть способ (который будет проще поиска с.з. для уже готовой матрицы) проследить за эволюцией с.з. матрицы X(0)=Е -> X(t0)?

vtk50

1188. Самарский А.А. Гулин А.В. Численные методы 1989Флажок рубрикатора Численные методы - 6.53 Мб
Вроде этот...
Оставить комментарий
Имя или ник:
Комментарий: