|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Evgenij Masherov 2:5020/175.2 23 Jun 2003 19:54:11 To : Leonid Subject : Reee: Решаю задачи на свой ГОС вопрос ?N :-) --------------------------------------------------------------------------------
Mon Jun 23 2003 17:16, Leonid wrote to All:
L> Привет, всем!
L> Большое спасибо за советы - свои 4-е задачки я запрогрАмил:-)
L> Да вот попросили еще одну глянуть: "разработать программу расчета
L> дробной степени матрицы".
L> Что это за дробная степень????
Проще всего функции от матрицы выражаются через ее разложение по собственным
векторам и собственным значениям (есть и иной подход - через разложение
функций в ряд и подстановку матрицы как аргумента).
A=Ct*L*C
где
A - исходная матрица
C - матрица, составленная из собственных векторов
L - диагональная матрица собственных значений
t - знак транспонирования.
(В качестве допустимой халтуры рекомендую ограничиться симметричными матрицами
с неотрицательными собственными значениями - у несимметричных матриц появятся
комплексные С.З. и С.В., да и не всегда такое разложение возможно, есть т.н.
"геометрическая кратность", где вместо диагональной матрицы собственных
значений появится матрица J, с наддиагональными элементами; положительность же
С.З. позволит избежать проблем при возведении в дробную степень; это
достаточно важный подкласс матриц, чтобы решение было важно практически)
Тогда функция от матрицы есть
f(A)=Ct*f(L)*C
f(L) - диагональная матрица, элементы которой есть требуемые функции от
собственных значений.
Так что делаем в три приема:
1. Разлагаем матрицу (находим С.З. и С.В.)
2. Вычисляем дробные степени С.З.
3. Перемножаем.
Евгений Машеров АКА СанитарЖеня
--- ifmail v.2.15dev5
* Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/3300bdc8a8f7.html, оценка из 5, голосов 10
|