ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ПУТЕЙ СООБЩЕНИЯ
Кафедра “Прикладная математика”
Домашнее задание № 1
“Метод непосредственного развертывания”
Выполнила:
студентка группы ЭТ-401
Кожевникова Е. М.
Проверил:
доц. Вашакидзе Л. С.
Санкт-Петербург
2006
Для матрицы методом непосредственного развертывания найти все собственные числа и собственные векторы. Записать ее спектральное разложение.
.
Если для некоторого ненулевого вектора выполняется равенство
, |
(1) |
то и называются соответственно собственным значением и собственным вектором матрицы . Если выражение (1) записать в виде
, |
(2) |
то эта однородная система (правая часть равна нулю) линейных алгебраических уравнений имеет ненулевое решение только тогда, когда ее определитель равен нулю.
Следовательно,
. |
(3) |
Это выражение называется характеристическим уравнением (вековым уравнением) матрицы .
Составим характеристическое уравнение для заданной матрицы :
.
Развернем этот определитель, дополнив его двумя первыми столбцами:
.
В развернутом виде получаем характеристическое уравнение, которое является алгебраическим многочленом (полиномом) третьей степени относительно неизвестного .
или
.
Корнями этого уравнения являются собственные значения матрицы . Так как матрица симметричная, то собственными значениями являются действительные числа.
Задача нахождения собственных значений сводится к решению нелинейного уравнения третьего порядка.
Решение нелинейного уравнения
С помощью программы MATLAB строим график функции , заменяя аргумент на , а значение функции на . Определяем интервалы точек пересечения графика функции с осью .
Программа для построения графика функции:
x=-20:1:20;
y=((x-9).*x-124).*x+708;
plot(x,y,'r','linewidth',3);grid
График функции изображен на рис. 1.
Рис. 1
Замечание. Достаточно получить одну точку пересечения графика с осью и уточнить один корень.
График пересекает ось между значениями 13 и 15. Еще раз выполним эту программу на интервале от 13 до 15 с шагом 0,1.
x=13:0.1:15;
y=((x-9).*x-124).*x+708;
plot(x,y,'r','linewidth',3);grid
График функции изображен на рис. 2
Рис. 2
На этом интервале функция непрерывна, монотонна и на концах интервала принимает значения разных знаков, т.е. внутри интервала существует единственный корень, который обозначим . Зададим = 0,001.
Используем метод Ньютона (касательных). Пусть является начальным приближением к корню. Значение является тем концом интервала, где знак функции совпадает со знаком второй производной.
Если график функции над касательной, то знак производной – плюс, если под касательной – минус. В данном случае график функции находится над касательной, значит знак второй производной – плюс. Поэтому в качестве принимаем значение правой границы интервала, где значение функции больше нуля ( = 15).
Текст программы:
e=0.001;
k=0;
x=15;
f='x^3-9*x^2-124*x+708';
fz='3*x^2-18*x-124';
x1=x-eval(f)/eval(fz);
for i=1:25;
r=abs(x-x1)-e;
if r<0 break;end;
k=k+1
x=x1
x1=x-eval(f)/eval(fz)
end
k =1 x = 14.2954 x1 = 14.2198
k =2 x = 14.2198 x1 = 14.2189
Тогда = 14,2189.
Разделим уголком на :
Решим полученное квадратное уравнение:
;
;
;
.
Для каждого собственного значения находим соответствующие им собственные векторы:
.
Для = 14,2189 однородная система имеет вид:
Эта система имеет бесчисленное множество решений. Так как минор 0, то переменные и – базисные, – свободная.
Рассмотрим первые два уравнения, в каждом из которых перенесем в правую часть третье слагаемое, заменив и решим систему второго порядка относительно и .
Пусть = 1
Тогда
.
Находим длину этого вектора (т.е. его норму) и делим каждую координату на длину этого вектора:
;
.
Для = 4,914 однородная система имеет вид:
Пусть = 1
Тогда
.
Находим длину этого вектора (т.е. его норму) и делим каждую координату на длину этого вектора:
;
.
Для = -10,1329 однородная система имеет вид:
Пусть = 1
Тогда
.
Находим длину этого вектора (т.е. его норму) и делим каждую координату на длину этого вектора:
;
.
Спектральное разложение матрицы
Введем матрицу , столбцы которой являются собственными ортонормированными векторами матрицы :
Введем диагональную матрицу с собственными значениями матрицы на диагонали:
.
Можно записать спектральное разложение матрицы по базису ее собственных векторов и чисел в MATLAB:
L=[14.2189 0 0; 0 4.914 0; 0 0 -10.1329]
W=[0.7051 0.0423 -0.7079; 0.1530 -0.9838 0.0936; 0.6924 0.1742 0.7001]
A=W*L*W'
L =
14.2189 0 0
0 4.9140 0
0 0 -10.1329
W =
0.7051 0.0423 -0.7079
0.1530 -0.9838 0.0936
0.6924 0.1742 0.7001
A =
2.0001 2.0008 11.9999
2.0008 5.0002 0.0002
11.9999 0.0002 1.9994
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.