Наближені методи розв’язку нелінійних рівнянь

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

? пакета Mathcad.

 

рисунок 2.1

Для того щоб точніше визначити значення початкового наближення необхідно збільшити цей графік (рисунок 2.2)

 

Рисунок 2.2

 

і тепер з цього графіка видно, що значення початкового наближення потрібно брати приблизно 0.08-0.1 і дійсно ці значення задовольняють необхідну умову оскільки при значенні х0=0.1 (f(x0))2=16,7, a добуток f(x0) f(x0)=-3,8 , що є меншим за значення другої похідної піднесеної до квадрату.

Для знаходження комплексних коренів нелінійного рівняння окрім звичайних методів, які аналогічні тим, що використовуються для знаходження дійсних коренів, існує низка спеціальних методів, що дозволяють оцінювати комплексні корені проводячи обчислення з дійсними числами. Більшість цих методів базується на перетворені початкового нелінійного рівняння до добутку квадратичних співмножників типу: , де p i q коефіцієнти, проміжною формою для здійснення такого перетворення є рівняння у вигляді:

 

.

 

Тому використавши цей метод і записавши наступну систему рівнянь:

 

знайдемо з неї приблизні значення комплексних коренів яких має бути чотири. Отже одержано дві пари таких значень: -0,88+ 1,8і; 1,35+ 1,34і;

Алгоритми методів

 

Алгоритм розвязку нелінійного рівняння методом Ньютона за допомогою ЕОМ є досить простим і полягає в тому, що спочатку задається дане вихідне рівняння, його похідна, а також допустима похибка. Потім використовуючи вищеописану ітераційну формулу знаходять ряд значень х

 

(Хn+1=Xn -,

 

де хn+1 значення х на наступній ітерації, а хn значення х на попередній ітерації) і повторюємо цю операцію до тих пір, поки не виконається умова < ?, тобто різниця значень наступної ітерації і попередньої менше за задану похибку.

Алгоритм розвязку цього ж рівняння за методом простої ітерації полягає в тому, що спочатку вихідне рівняння потрібно привести до вигляду x=g(x), тобто виразити х з рівняння, а потім використовуючи формулу x1=g(x0), де відповідно х1 значення х на наступній ітерації, а х0 значення х на попередній ітерації. Знаходимо також ряд х до тих пір, поки не виконається умова < ?, де ? - задана допустима похибка.

Блок схеми методів наведені в додатку А.

 

Вибір інструментальних засобів

 

Для вирішення цієї задачі було обрано середовище програмування С, так як воно має ряд вагомих переваг перед іншими середовищами і мовами програмування. Зокрема такими перевагами є те, що:

  1. не вимагає великих затрат як апаратної частини компютера так і програмної.
  2. Дозволяє досить просто реалізовувати поставлені задачі
  3. Є дуже візуальним і наглядним що робить його зручним інструментом в користуванні.
  4. Ця мова є досить гнучка і дозволяє використовувати технології обєктно-орієнтованого програмування.

Вхідні та вихідні дані

 

Вхідними даними для програми є :

1)Для методу Ньютона: початкове рівняння; похідна від нього; початкове

наближення (х0) і допустима, задана за умовою

задачі похибка.

2)для методу простої ітерації: початкове рівняння, приведене до вигляду

x=g(x); початкове наближення і допустима

похибка.

Вихідними даними для обох методів є значення х, яке задовольняє умову< ?, де ? задана за умовою похибка.

Структура програми

 

Програма розділена на чотири частини такі як:

  1. блок опису вхідних та вихідних даних;
  2. введення початкових даних;
  3. виклик підпрограм для розвязок задачі різними методами (в даному випадку методом Ньютона та методом простої ітерації);
  4. виведення результатів;

 

інструкція користувачеві

 

Для запуску програми необхідно запустити файл з назвою “метод Ньютона та простої ітерації ” після чого на вашому екрані відкриється вікно програми (рисунок 7.1).

 

Рисунок 7.1

 

Необхідно слідувати вказівкам які зявились у робочому вікні програми, а саме спочатку ввести допустиму похибку d потім початкове наближення х0 після чого потрібно обрати метод (Ньютона чи простої ітерації) яким ви бажаєте розвязати дане рівняння, тобто згідно інструкції натисніть 1 для того щоб розвязати рівняння методом Ньютона або 2 для методу простої ітерації, потім натисніть кнопку Enter і ви побачите результат. Наприклад: х=0,0681529 (рисунок 1.). після того як ви отримали результат якимось одним методом ви також відразу можете отримати його і іншим відповідно вибравши 1 чи 2 для методу який вас цікавить.

 

Аналіз результатів розрахунку

 

Отже після проведення розрахунку по знаходженню коренів нелінійного рівняння за методами Ньютона та простої ітерації отримано наступні результати: рівняння має 5 коренів, а саме один дійсний і чотири комплексні: хдійсне.Нютона=0,0681529, хкомпл.1,2= -0,9+ 1,8і; хкомпл.3,4 = -1,4+ 1,34і; хдійс.пр.ітерації=0,0681396. Порівнявши отримані результати з наступними результатами

 

,

 

що отримані за допомогою автоматизованого математичного пакету Mathcad, можна зробити висновок що корені рівняння розраховані за допомогою чисельних методів є досить таки точними і похибка складає не більше 0.01. за отриманими результатами також можна зробити висновок щодо швидкодії кожного з методів, а саме при однакових початкових умовах метод простої ітерації працює дещо швидше, ніж метод Ньютона, але точніший результат дає метод Ньютона.

висновки

 

Ця курсова робота була присвячена розвязанню нелінійних