Знаходження власних значеннь лінійого оператора

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Міністерство освіти і науки України
ФАКУЛЬТЕТ  ІНФОРМАТИКИ
КАФЕДРА ІНФОРМАЦІЙНИХ УПРАВЛЯЮЧИХ СИСТЕМ ТА ТЕХНОЛОГІЙ
Реєстраційний №________
Дата ___________________
КУРСОВА РОБОТА
Тема:
Знаходження власних значень лінійного оператора
Рекомендована до захисту
“____” __________  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;
type ar=array[1..dim,1..dim]of real;
var ff:text;
    i100,j100,n100,b,m:integer;
    e:real;
    a,t:ar;
procedure eigen(n,m:integer;e:real;var a,t:ar;var b:integer);
var c,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;
function zn(x:real):integer;
begin if x<0 then zn:=-1 else zn:=1; end;
begin
     u:=false;v:=u;w:=u;n1:=n-1;e1:=sqrt(e);
     if b<>0 then
        begin
             if b<0 then v:=true else w:=true;
             for i:=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 to m do
         begin
              if u 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;
              if not z then begin b:=q-1; exit; end;
              u:=true;
              for k:=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 (i<>k) and (i<>j) 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)<=e then begin c:=1; s:=0; end
                  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<0 then begin x:=c; c:=s; s:=-x; end;
                 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)<=e
                  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:=1 to n100 do
     for j100:=1 to n100 do
     read(ff,a[i100,j100]);
     b:=0;
     eigen(n100,m,e,a,t,b);
     for i100:=1 to n100 do begin
     for j100:=1 to 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
Додати в блог або на сайт

Цей текст може містити помилки.

Математика | Курсова
64.9кб. | скачати


Схожі роботи:
Спектр оператора Застосування нестандартного аналізу для дослідження резольвенти і спектра оператора
Обчислення характеристичних многочленів власних значень і власних векторів
Робоча зона оператора
Робоче місце оператора ЕОМ
Відеодисплейний термінали Вплив на організм оператора
Оцінка робочого місця оператора ПЕОМ
Режими роботи оператора в системі людина машина
Проект створення компанії-оператора ТОВ Трансмет
Режими роботи оператора в системі людина-машина
© Усі права захищені
написати до нас