ІТЕРАЦІЙНІ МЕТОДИ РОЗВ’ЯЗУВАННЯ СИСТЕМ ЛІНІЙНИХ АЛГЕБРАЇЧНИХ РІВНЯНЬ

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Захист інформації

Інформація про роботу

Рік:
2007
Тип роботи:
Звіт
Предмет:
Комп’ютерні методи дослідження інформаційних процесів та систем

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет „Львівська політехніка” ІКТА ,кафедра «Захист інформації» Звіт З ЛАБОРАТОРНОЇ РОБОТИ № 3 З КУРСУ “ КОМП’ЮТЕРНІ МЕТОДИ ДОСЛІДЖЕННЯ ІНФОРМАЦІЙНИХ ПРОЦЕСІВ ТА СИСТЕМ ” НА ТЕМУ: “ ІТЕРАЦІЙНІ МЕТОДИ РОЗВ’ЯЗУВАННЯ СИСТЕМ ЛІНІЙНИХ АЛГЕБРАЇЧНИХ РІВНЯНЬ“ Варіант 21 Львів-2007 Мета роботи – ознайомлення з ітераційними методами розв’язування систем лінійних алгебраїчних рівнянь. Короткі теоретичні відомості: Метод простої ітерації. Нехай дано лінійну систему  (1) Розглянемо матриці    Тоді систему (1) можна записати у вигляді матричного рівняння  (2) Будемо вважати, що діагональні коефіцієнти  (і = 1, 2,…, n). Розв’яжемо перше рівняння системи (1) відносно , друге відносно  і т.д. Тоді одержимо еквівалентну систему  (3) де  , при ; , при ; ; ;  Іноді кажуть, що система (3) зведена до нормального вигляду. Введемо матриці ( та (   Систему (3) запишемо у вигляді  (4) Систему (3) будемо розв’язувати методом послідовних наближень. За нульове наближення позначимо, наприклад, стовпчик вільних членів . Далі послідовно будуємо матриці-стовпці:  – перше наближення  – друге наближення і т.д. Будь-яке (k + 1)-е наближення обчислюється за формулою: , (k = 0, 1, 2, …) (5) В розгорнутому вигляді . Якщо послідовність наближень  має границю , (6) то ця границя є розв’язком системи (3). На практиці ітераційний процес припиняють, коли , де ( – гранична абсолютна похибка. Приклад. Розв’язати систему методом простої ітерації: . Зведемо систему до нормального вигляду  (7) або в матричній формі  (8) За нульові наближення коренів системи приймаємо . Підставляємо ці значення в праві частини рівняння (7). Одержимо перші наближення коренів  Далі знаходимо другі і треті наближення коренів   . Таблиця ідентифікаторів констант, змінних, функцій, використаних у програмі, та їх пояснення: f() Функція, що передає задане рівняння  writeln() Функція виведення даних  readln() Функція введення даних  abs() Функція для знаходження азначення типу real  a Змінна, початкове значення відрізку  b Змінна, кінцеве значення відрізку  e Змінна, гранична абсолютна похибка  x Змінна, розв’язок рівняння   Текст програми мовою Паскаль: Program prit(input,output); const n=4; e=0.0001; var m,i,k,kk:integer; d:real; a:array[1..n,1..n]of real; b,x,xx:array [1..n] of real; begin for i:=1 to n do begin for k:=1 to n do begin write('a[',i,',',k,']='); read(a[i,k]); end; write('b[',i,']='); read(b[i]); x[i]:=b[i]; end; m:=0; repeat kk:=0; m:=m+1; for i:=1 to n do begin xx[i]:=-b[i]; for k:=1 to n do xx[i]:=xx[i]+a[i,k]*x[k]; d:=x[i]/a[i,i]; if abs (d)>e then kk:=1; xx[i]:=x[i]-d; end; for i:=1 to n do x[i]:=xx[i]; until kk=0; writeln('m=',m); for i:=1 to n do writeln(x[i]); readln; end. Результат роботи програми: a[1.1]= 3.3 a[1.2]=12.62+ a[1.3]=4.1 a[1.4]=1.9 a[2.1]=3.92 a[2.2]=8.45 a[2.3]=1.78- a[2.4]=1.4 a[3.3]=3.77 a[3.3]=1.21+ a[3.3]=8.04 a[3.4]=0.28 a[4.1]=2.21 a[4.2]=3.65- a[4.3]=1.69 a[4.4]=9.99 x1=-4.5452515786E-04 x2=6.6081765921E-04 x3=4.7985303229E-04 x4=-4.9176646964E-05 m=78 b[1]=-10.55+b b[2]=12.21 b[3]=15.45-b b[4]=-8.35 Висновок: Виконавши дану лабораторну роботу я ознайомився з ітераційними методами розв’язування систем лінійних алгебраїчних рівнянь.
Антиботан аватар за замовчуванням

29.12.2011 17:12-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!