Міністерствоосвіти і науки України
ФАКУЛЬТЕТ ІНФОРМАТИКИ
КАФЕДРАІНФОРМАЦІЙНИХ УПРАВЛЯЮЧИХ СИСТЕМ ТА ТЕХНОЛОГІЙ
Реєстраційний№________
Дата___________________
КУРСОВАРОБОТА
Тема:
Знаходженнявласних значень лінійного оператора
Рекомендованадо захисту
“____”__________ 2008р.
Роботазахищена
“____”__________ 2008р.
зоцінкою
_____________________
Підписичленів комісії
Зміст
Вступ
Теоретична частина
1. Означення і найпростіші властивості лінійнихоператорів
2. Матриця лінійного оператора
3. Власні вектори й власні значення лінійногооператора
Практична частина
1. Опис програми
2. Текст програми
3. Контрольний приклад
Висновок
Список літератури
Вступ
Власні значенняграють при вивченні лінійних операторів дуже велику роль.
Нехай в дійсномулінійному просторі /> задан лінійнийоператор />. Якщо вектор />, відмінний від нуля,переводиться оператором /> увектор, пропорційний самому />,
/>,
де />– деяке дійсне число, товектор /> називається власнимвектором оператора />, а число />– власним значенням цьогооператора, причому, власний вектор /> відноситьсядо власного значення />.
Обертанняевклідової площини навколо початку координат на кут, що не являється кратним />, є прикладом лінійногооператора, що не має власних векторів. Прикладом іншого випадку є розтягненняплощини, при якому всі вектори, що виходять з початку координат, причому всінульові вектори площини будуть для нього власними; всі вони відносяться довласного значення 5.
Теоретичначастина
1.Означення і найпростіші властивості лінійних операторів
В теорії лінійнихпросторів та її застосування важливу роль відіграють лінійні оператори, якіінакше називають лінійними перетвореннями.
Нехай />– деякий векторний простірнад полем />.
Означення 1. Вважають, що у векторномупросторі /> задано оператор, якщовказано правило (закон), за яким кожному вектору /> простору/> ставиться у відповідністьдеякий вектор /> цього жпростору. Про цьому вектор /> називаютьобразом вектора />, а /> називають прообразомвектора />.
Як бачимо,оператор у векторному просторі /> – цефункція, множиною відправлення і множиною прибуття якої є простір />.
Означення 2. Оператор /> у векторному просторі /> називається лінійним, якщовін задовольняє такі умови:
/>
/>
Лінійні операторив просторі /> називають також лінійнимперетворенням простору />.
З означення 2випливають безпосередньо такі властивості лінійних операторів:
1. Будь-якийлінійний оператор /> у просторі /> залишає нерухомим нульовийвектор /> цього простору, тобто />.
2. Всякийлінійний оператор /> у просторі /> протилежному вектору – />будь-якого вектора />, ставить у відповідністьвектор, протилежний образу вектора />, тобто />.
3. Кожен лінійнийоператор /> у просторі /> будь-який лінійнийкомбінації довільно вибраних векторів /> простору/> ставить у відповідністьлінійну комбінацію (з тими самими коефіцієнтами) образів цих векторів, тобто />.
2.Матриця лінійного оператора
Нехай />– деякий лінійний оператору просторі />. Виберемо в /> який-небудь базис />. Оператор /> відображає вектори цьогобазису в деякі вектори />. Коженвектор /> єдиним способом лінійновиражається через вектори базису />.Припустимо, що
/>
Складемо зкоефіціентів /> матрицю />. Рядками матриці /> є координатні рядкивекторів />в базисі />. Оскльки координатні рядкивекторів /> визначені однозначно, то йматриця /> визначається оператором /> в базисі />.
Будемо вважати,що в базисі /> лінійний оператор /> задається матрицею />.
Отже, призафіксованому базисі /> кожномулінійному оператору /> простору /> відповідає певна квадратнаматриця />-го порядку – матриця цьогооператора.
3. Власнівектори й власні значення лінійного оператора
Означення 1. Підпростір /> лінійного простору /> називається інваріантнимвідносно оператора />, якщо />, тобто якщо образ /> будь-якого вектора /> із /> міститься в />.
Нехай />–одновимірний підпростірпростору />, а />–деякий лінійний операторцього простору. Підпростір />, яквідомо, породжується будь-яким своїм вектором />,тобто є сукупністю всіх векторів виду />,де />– будь яке число з поля Р.Якщо підпростір /> інваріантнийвідносно оператора />, то />, тобто />, де />–деяке число з поля Р.Тоді й для будь-якого вектора />підпростору/> />, бо />, і тому />.
Означення 2. Вектор />, що заддовільняєспіввідношення />, де /> називається власнимвектором оператора />, а число /> – власним значеннямоператора />, що відповідає власномувектору />.
Отже, якщоодглвимірний підпростір /> простору/> інваріантний відноснолінійного оператора />, то всі векторицього підпростору є власними векторами оператора /> зтим самим власним значенням оператора />.
Практичначастина
1.Опис програми
n – вимірністьматриці;
m – максимальнедопустиме число ітерацій;
e – точність;
a – на вході –двовимірний масив елементів матриці А, на виході матриця А блочно-діагональна,причому блоки розміри 1х1 містять дійсні власні значення, блоки розміру 2х2містять комплексні власні значення, записані в стовпцях (рядках) для правих(лівих) власних векторів;
t – двовимірниймасив власних векторів А;
b – цілочисловазмінна.
Лінійний операторпотрібно задати за допомогою матриці.
2.Текст програми
uses crt;
const dim=10;
typear=array[1..dim,1..dim]of real;
var ff:text;
i100,j100,n100,b,m:integer;
e:real;
a,t:ar;
procedureeigen(n,m:integer;e:real;var a,t:ar;var b:integer);
varc,c1,c2,co,ch,d,e1,f,g,h,p,r,s,s1,s2,si,sh,x,y:real;
i,j,k,n1,q:integer;
u,v,w,z:boolean;
functionzn(x:real):integer;
begin if x
begin
u:=false;v:=u;w:=u;n1:=n-1;e1:=sqrt(e);
ifb0 then
begin
ifb
fori:=1 to n do
for j:=1 to n do
if i=j then t[i,j]:=1 else t[i,j]:=0;
end;
for q:=1 tom do
begin
ifu then begin b:=1-q; exit; end;
i:=1; z:=false;
repeat
j:=i+1;
repeat
if(abs(a[i,j]+a[j,i])>e1) or
(abs(a[i,j]-a[j,i])>e1)and
(abs(a[i,i]-a[j,j])>e1) then z:=true;
j:=j+1;
until (j>n) or z;
i:=i+1;
until (i>n1) or z;
ifnot z then begin b:=q-1; exit; end;
u:=true;
fork:=1 to n1 do
for j:=k+1 to n do
begin
h:=0; g:=0; f:=0; y:=0;
for i:=1 to n do
begin
x:=sqr(a[i,k]);d:=sqr(a[i,j]); y:=y+x-d;
if (ik) and (ij) then
begin
h:=h+a[k,i]*a[j,i]-a[i,k]*a[i,j];
p:=x+sqr(a[j,i]); r:=d+sqr(a[k,i]);
g:=g+p+r; f:=f-p+r;
end;
end;
h:=2*h; d:=a[k,k]-a[j,j];
p:=a[k,j]+a[j,k]; r:=a[k,j]-a[j,k];
if abs(p)
else
begin
x:=d/p; c:=x+zn(x)*sqrt(1+x*x);
s:=zn(x)/sqrt(1+c*c); c:=s*c;
end;
if y
co:=c*c-s*s;si:=2*s*c; d:=d*co+p*si;
h:=h*co-f*si; x:=(r*d-h/2)/(g+2*(r*r+d*d));
if abs(x)
then begin ch:=1; sh:=0; end
else begin ch:=1/sqrt(1-x*x); sh:=ch*x; end;
c1:=ch*c-sh*s;c2:=ch*c+sh*s;
s1:=ch*s+sh*c; s2:=-ch*s+sh*c;
if (abs(s1)>e)or(abs(s2)>e) then
begin
u:=false;
for i:=1 to n do
begin
p:=a[k,i];a[k,i]:=c1*p+s1*a[j,i];
a[j,i]:=s2*p+c2*a[j,i];
if v then
begin
p:=t[k,i]; t[k,i]:=c1*p+s1*t[j,i];
t[j,i]:=s2*p+c2*t[j,i];
end;
end;
for i:=1 to n do
begin
p:=a[i,k];a[i,k]:=c2*p-s2*a[i,j];
a[i,j]:=-s1*p+c1*a[i,j];
if w then
begin
p:=t[i,k];t[i,k]:=c2*p-s2*t[i,j];
t[i,j]:=-s1*p+c1*t[i,j];
end;
end;
end;
end;
end;
b:=m;
end;
begin clrscr;
write(‘введите максимальное количество итераций’);read(m);
write(‘введите точность’);read(e);
assign(ff,’vlasn.dat’);
reset(ff);
read(ff,n100);
for i100:=1to n100 do
for j100:=1to n100 do
read(ff,a[i100,j100]);
b:=0;
eigen(n100,m,e,a,t,b);
for i100:=1to n100 do begin
for j100:=1to n100 do
write(a[i100,j100],’ ‘);
writeln;end;
writeln;
writeln(b);
readkey;
end.
3.Контрольний приклад
При e=10-8і m=50 для матриці
/>
за 7 ітераційзнайдено власні значення
/>
Тобо отрималитакі власні значення />, />, />
/>
Висновок
Таким чином,задача знаходження інваріантних відносно оператора /> одновимірнихпідпросторів простору /> рівнозначназадачі згаходження власних векторів оператора />.
Списоклітератури
1. А. Г. Курош «Курс высшей алгебры», «Наука», Москва1975
2. С. Т. Завало, В. М. Костарчук, Б. И. Хацет «Алгебраи теория чисел», Том 1,«Высшая школа», Киев 1974
3. С. Т. Завало, В. М. Костарчук, Б. И. Хацет «Алгебраи теория чисел», Том 2,«Высшая школа», Киев 1976