МЕТОД НЬЮТОНА ДЛЯ РОЗВ’ЯЗУВАННЯ СИСТЕМ НЕЛІНІЙНИХ РІВНЯНЬ.

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

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

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

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

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” ІКТА, кафедра “Захист інформації” Звіт з ЛАБОРАТОРНої РОБОТи № 5 З КУРСУ “ Комп’ютерні методи дослідження інформаційних процесів та систем ” НА ТЕМУ: “ МЕТОД НЬЮТОНА ДЛЯ РОЗВ’ЯЗУВАННЯ СИСТЕМ НЕЛІНІЙНИХ РІВНЯНЬ“ Варіант 19 виконав: ст. гр. ІБ-2 Львів – 2007 Мета роботи-ознайомлення з найпоширенішим ітераційним методом розв’язування систем нелінійних рівнянь – методом Ньютона Короткі теоретичні відомості Стандартний метод Ньютона Метод Ньютона базується на лінеаризації задачі і заміні розв'язування нелінійної системи (2) на послідовність розв'язувань лінійних систем (найчастіше прямими методами). Будемо вважати, що система рівнянь (2) має розв'язок; позначимо його через вектор  EMBED Equation.3  і розкладемо кожну функцію в ряд Тейлора в околі розв'язку  EMBED Equation.3  де  EMBED Equation.3  - члени другого і вищих порядків. Вважаючи, що  EMBED Equation.3  дуже близьке до  EMBED Equation.3 , знехтуємо членами вищих порядків і запишемо систему рівнянь в лінеаризованій формі:  EMBED Equation.3  (3) або в іншому вигляді  EMBED Equation.3  (4) де  EMBED Equation.3  – матриця Якобі (якобіан) системи (1) Враховуючи, що  EMBED Equation.3  є розв'язком системи, згідно з (2) можемо записати:  EMBED Equation.3  Звідси випливає, що і праву частину (4) також можна прирівняти до нуля:  EMBED Equation.3  (5) Розв'язком системи (5) є нове значення вектора X, яке не точно дорівнює значенню вектора  EMBED Equation.3  (оскільки знехтували членами другого і вищих порядків). Використовуючи верхні індекси для позначення послідовності ітерацій, можна записати  EMBED Equation.3  (6) Звідси  EMBED Equation.3  (7) де  EMBED Equation.3  - обернена матриця Якобі;  EMBED Equation.3 . У достатньо широкому околі розв'язку  EMBED Equation.3  ітераційний процес (7) збігається, якщо  EMBED Equation.3 . Ітераційний процес закінчується при виконанні умови  EMBED Equation.3  (8) де Σ - задана гранична похибка уточнень коренів системи (1). Таким чином, алгоритм стандартного методу Ньютона можна розбити, на декілька кроків. Крок 1. Вибір вектора початкових уточнень  EMBED Equation.3 . Крок 2. Обчислення елементів матриці Якобі. Крок 3. Обчислення елементів оберненої матриці Якобі. Крок 4. Перемноження значень функції (див. формулу (7))  EMBED Equation.3  Крок 5. Одержаний на кроці 4 вектор віднімається від вектора  EMBED Equation.3 , у результаті чого одержується покращений вектор розв'язку  EMBED Equation.3 . Крок 6. Перевірка умови закінчення ітерацій (8). Якщо вона не виконується, то за вектор початкових уточнень приймається вектор  EMBED Equation.3  і проводиться наступна ітерація, починаючи з кроку 2. При використанні стандартного методу Ньютона слід мати на увазі наступне. 1. Стандартний метод Ньютона надзвичайно ефективний. 2. Збіжність на початку ітераційного процесу, як правило, лінійна. 3. Починаючи з деякого кроку ( уточнити його попередньо неможливо), збіжність різко прискорюється і стає квадратичною. 4. Бувають випадки, коли метод розбігається або спостерігається зациклювання ітерацій. Тому необхідно обмежувати максимальну кількість ітерацій деяким попередньо заданим числом. Основний недолік методу полягає в повторних обчисленнях на кожному кроці вектора  EMBED Equation.3 , матриці Якобі  EMBED Equation.3 , оберненої матриці Якобі  EMBED Equation.3 . Тому на практиці досить часто з метою зменшення витрат машинного часу використовують стандартний метод Ньютона без обертання матриці Якобі. Позначаючи  EMBED Equation.3  (9) перепишемо (6) у вигляді  EMBED Equation.3  (10) Таким чином, задача зводиться до пошуку вектора поправок (приростів)  EMBED Equation.3  із системи лінійних алгебраїчних рівнянь (10), у якій матрицею коефіцієнтів при невідомих  EMBED Equation.3  є матриця Якобі  EMBED Equation.3 , а вектором-стовпцем вільних членів служить вектор значень функції –  EMBED Equation.3 . Розв'язуючи цю систему одним із відомих методів (як правило, це представники групи прямих методів – метод Гаусса з вибором головних елементів, метод LU – факторизації та ін.) , знаходимо  EMBED Equation.3 . Значення  EMBED Equation.3  визначаємо із виразу  EMBED Equation.3  (11) ЗАВДАННЯ ДО ЛАБОРАТОРНОЇ РОБОТИ Розв’яжіть систему нелінійних рівнянь одним із методів, вказаних викладачем, вибираючи за початкові наближення  EMBED Equation.3 . Ітерації проводити до збігу двох послідовних наближень з похибкою  EMBED Equation.3 .  EMBED Equation.3   EMBED Equation.3  Таблиця ідентифікаторів констант, змінних, функцій, використаних у програмі, та їх пояснення: Текст програми мовою С #include<stdio.h> #include<math.h> #include<conio.h> double f1(double x, double y) // persha funkcia { return x-cos(y)-1; } double f2(double x, double y) // druga funkcia { return y-sin(y)-1; } ///Znachenia chastkovyh pohydnyh//// double df1dx(double x, double y) { return 1; } double df1dy(double x, double y) { return sin(y); } double df2dx(double x, double y) { return 0; } double df2dy(double x, double y) { return 1-cos(y); } double Xo,Yo,h,delX,delY,poh; ////////Osnovna programa///////// void main(void) { clrscr(); printf("pochatkove nablyghennya Xo="); scanf("%lf",&Xo); printf("pochatkove nablyghennya Yo="); scanf("%lf",&Yo); printf("h="); scanf("%lf",&h); if ((df1dx(Xo,Yo)*df2dy(Xo,Yo)-df1dy(Xo,Yo)*df2dx(Xo,Yo))!=0) { do { delX=df1dy(Xo,Yo)*f2(Xo,Yo)-df2dy(Xo,Yo)*f1(Xo,Yo); delY=df2dx(Xo,Yo)*f1(Xo,Yo)-df1dx(Xo,Yo)*f2(Xo,Yo); poh=delX/Xo; Xo+=delX; Yo+=delY; } while (fabs(poh)>h); } else printf("Vyznachnyk Jakobiana = 0"); printf("X=%4.4lf\nY=%4.4lf",Xo,Yo); getch(); } Результат роботи програми: pochatkove nablyghennya Xo=-0.9 pochatkove nablyghennya Yo=-1.4 h=0.00001 X=0.6442 Y=1.9346 Висновок: на цій лабораторній роботі я ознайомився з найпоширенішим ітераційним методом розв’язування систем нелінійних рівнянь – методом Ньютона
Антиботан аватар за замовчуванням

01.01.1970 03:01-

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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