Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

3 семестр / Задание №1 Частичная проблема собственных значений

.doc
Скачиваний:
25
Добавлен:
27.03.2016
Размер:
202.24 Кб
Скачать

Задание №1

ЧАСТИЧНАЯ ПРОБЛЕМА СОБСТВЕННЫХ ЗНАЧЕНИЙ

Цель работы: изучение частичной проблемы собственных значе­ний, вычисление максимального собственного значения самосопряжен­ной матрицы.

ПОСТАНОВКА ЗАДАЧИ

Пусть А - квадратная матрица размера n*n. Частичной проб­лемой собственных значений называется нахождение некоторой части собственных значений λ и, возможно, соответствующих собственных векторов х матрицы А из однородного уравнения

А х = λ х.

Одной из задач проблемы собственных значений является рассматривае­мая в данной работе задача нахождения максимального по модулю собственного значения матрицы А.

Далее будем полагать, что А - действительная симметричная мат­рица. Самосопряженная матрица А имеет полную систему (базис) ортогональных нормированных собственных векторов ei (i= 1,2,...,n), являющихся решением задачи

Aei=λiei,

,

где - символ Кронекера. Предположим также, что максимальное собственное значение матрицы А - простое (не кратное).

Тогда λ1(А) можно найти с помощью следующего итерационного процесса, называемого степенным методом:

Здесь k - номер итерации, а в качестве x(0) принимается произвольный, например случайный вектор. При итерационный процесс сходится линейно, т.е.

со скоростью геометрической прогрессии, имеющей знаменатель где λ2(А) - следующее по модулю собственное значение матрицы А.

Если значения |λ2(А)| и |λ1(А)| близки, то сходимость будет медленной.

Смысл данного итерационного процесса можно пояснить следующим образом. Поскольку собственные векторы в нашем случае образуют полную систему, то любой вектор можно представить в виде

где xi собственные векторы, а сiконстанты.

Умножим обе части равенства на матрицу А

Производя такое умножение k раз, получим

Таким образом, после k умножений вектор y имеет компоненту вдоль каждого собственного вектора, пропорциональную kой степени соответствующего значения λi.

Теперь, если для i =2,3,….,n, то при k→∞

т.е. вектор y оказывается почти коллинеарен собственному вектору x1.

Рассмотрим отношение

Можно ожидать, что в пределе каждая компонента нашего вектора будет умножаться на одно и то же число λi. На практике рекомендуется нормировать получающийся вектор на каждом шаге так, чтобы наибольшая его компонента была равна 1.

На последнем шаге нормирующий множитель даст величину наибольшего по модулю собственного значения. При этом заодно получается и собственный вектор.

ВАРИАНТЫ ЗАДАНИЙ

(n=5÷10; p,q=1÷4; r,t=0.1÷1.2; b=0.01÷0.1)

ПРОГРАММИРОВАНИЕ

Блок-схема программы представлена на Рис.1. В циклах 3-8 вычисляются элементы матрицы A и начальный вектор x(0), в блоках 10-13 реализован степенной метод, в блоках 9,14 выводятся промежуточные и конечные результаты.

В качестве x(0) следует принять случайный вектор, элементы которого представляет собой случайные числа, равномерно распределенные в интервале (0,1). Для выработки таких чисел в программном обеспечении компьютера имеется специальный генератор (датчик). Итерации следует заканчивать при выполнении какого-либо из двух условий

где ε= 0.1÷0.001 - заданная погрешность, kmax- максимальное число итераций. Окончание итераций при выполнении последнего условия означает, что за kmax итераций заданная погрешность не достигнута.

Проверку программы рекомендуется провести на тестовой диагональной матрице с элементами

aii=i, aij=0 (i,j=1,2,…,n),

для которой

СОДЕРЖАНИЕ ОТЧЕТА

Отчет должен содержать:

  • формулы для конкретного варианта;

  • текст программы;

  • результаты решения: исходная матрица, значение λ1(A) и число итераций k.

КОНТРОЛЬНЫЕ ВОПРОСЫ

1. Что понимается под частичной проблемой собственных значений?

2. Как строятся степенной метод вычисления максимального по модулю собственного значения?

3. Какие методы решения полной проблемы собственных значений вы знаете?

4. Что такое характеристический полином?