|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
П 4.2 Итерационный степенной метод нахождения наибольшего по модулю собственного значения и соответствующего собственного вектора
Рассмотрим степенной метод нахождения наибольшего по модулю собственного значения и соответствующего собственного вектора [10]. Рассмотрим вещественную квадратную матрицу
Пусть
Будем считать, что матрица А обладает полной системой линейно-независимых собственных векторов, т.е. все Это будет иметь место, например, если матрица А симметрична ( Тогда систему собственных векторов Выберем некоторый вектор
Выразим вектор
Разложим вектор начального приближения
где Тогда для вектора
Из определения любого собственного вектора
Следовательно,
или по компонентам
где Рассмотрим случай, когда матрица А имеет единственное максимальное по модулю вещественное собственное значение. Обозначим его
Будем считать, что В силу (4), (5) имеем для i -ой компоненты вектора
Так как в силу соотношения (5) все слагаемые вида Аналогично для i -ой компоненты вектора
Рассмотрим отношение соответствующих компонент вектора Y на двух соседних итерациях:
Построим итерационную последовательность
Эта последовательность сходится к исходному собственному значению Таким образом, для нахождения
Аналогичным образом можно найти собственный вектор
Так как собственный вектор определяется с точностью до постоянного множителя, отсюда находим
где Итерационным методом может быть найдено любое последующее собственное значение матрицы. Запишем формулу для нахождения собственного значения
Пример 1. Методом итераций определить наибольшее по модулю собственное значение и соответствующий ему собственный вектор с точностью
Решение: Строим последовательность векторов по правилу:
где Тогда имеем
где В качестве начального приближения возьмем
Найдем
Проверяем условие Найдем
Проверяем условие Точность достигнута на 8 итерации. Получаем
Собственный вектор
или Пример 2. В рамках итерационного метода нахождения наибольшего по модулю собственного значения и соответствующего собственного вектора реализовать метод умножения матрицы на вектор. Данный метод описан в классе «SquareMatrix». Реализация на языке программирования С++ может иметь следующий вид:
Vector SquareMatrix:: multiply_vec (SquareMatrix A, Vector f){ /*Результирующий вектор*/ double *res = new double[A.getRowCount()]; for (int i = 0; i < A.getRowCount(); i++){ for (int j = 0; j < A.getColCount(); j++){ res[i] += A.elements[i][j] * f.getElement(j); } } } /* Создание вектора */ return Vector(A.getRowCount(), res); } Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.01 сек.) |