Всё сдал! - помощь студентам онлайн Всё сдал! - помощь студентам онлайн

Реальная база готовых
студенческих работ

Узнайте стоимость индивидуальной работы!

Вы нашли то, что искали?

Вы нашли то, что искали?

Да, спасибо!

0%

Нет, пока не нашел

0%

Узнайте стоимость индивидуальной работы

это быстро и бесплатно

Получите скидку

Оформите заказ сейчас и получите скидку 100 руб.!


Дослідження чисельних методів вирішення нелінійних рівнянь

Тип Реферат
Предмет Информатика и программирование
Просмотров
410
Размер файла
112 б
Поделиться

Ознакомительный фрагмент работы:

Дослідження чисельних методів вирішення нелінійних рівнянь

Міністерство освіти і науки України

Вінницький національний технічний університет

Інститут АЕКСУ

Кафедра АІВТ

Дослідження чисельних методів вирішення нелінійних рівнянь

Курсова робота

з дисципліни:

“Обчислювальні методи та застосування ЕОМ”

Виконав: ст. гр. 3АВ-06_________ Пересунько А.О.

Перевірив: професор, д.т.н. каф.АІВТ___Квєтний Р.Н.

2008


Анотація

В даній курсовій роботі розглянуто наближені методи розв’язку нелінійних рівнянь для методів Ньютона та хорд, складено блок-схеми та написано програму, за допомогою якої розв’язується задане рівняння. Проведено аналіз як самого рівняння і методів його розв’язання, так і результатів обрахунку.


Зміст

Вступ

1.Короткі теоретичні відомості

2.Аналіз заданого рівняння

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

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

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

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

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

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

5. Висновки

Література

Додатки

Додаток А. Алгоритм методів

Додаток Б. Блок-схема програми

Додаток В. Лістінг програми


Вступ

В наш час, коли надзвичайно швидкими темпами розвивається наука і техніка, людина освоює все нові і нові галузі, все більше проникає як в надра землі так і за її межі, з’являється багато нових і досить складних задач, рішення яких потребує нових методів і нових підходів. Зокрема надзвичайно велика кількість задач електроніки, електротехніки, механіки, кібернетики та ряду інших галузей науки вимагають від вчених інженерів вирішення досить складних математичних задач які вимагають певного аналізу та нестандартного підходу до вирішення.

З’являються задачі які не можна розв’язати за допомогою класичної математики і отримати точний розв’язок, і в загалі досить часто про отримання точного розв’язку не доводиться говорити, оскільки отримати його при існуючих умовах просто неможливо. Тож ставляться задачі отримати приблизні розв’язки, але якомога близькі до точних. Тому в таких задачах використовуються різні наближені методи рішення тієї чи іншої задачі.

Сучасний світ неможливо уявити без використання комп’ютерних технологій. Зараз комп’ютер використовується у багатьох сферах людського життя. Зараз обчислення залишаються одним із основних видів застосування ЕОМ. Хоча комп’ютер дуже швидко виконує прості арифметичні дії, без спеціальних програм він не в змозі проводити складні обчислення. Тому постає задача алгоритмізувати поставлене завдання, тобто перевести його в зрозумілу для ЕОМ форму.


1.Короткі теоретичні відомості

Існує ряд методів для вирішення нелінійних рівнянь. Найбільшого поширення отримали метод половинного ділення, метод простої ітерації, метод хорд та метод Ньютона. Розглянемо суть цих методів.

Метод половинного ділення

В цьому методі спочатку обчислюється значення функції в точках що розташовані через рівні інтервали на осі х. Коли f(xn) if(xn+1) мають протилежні знаки, знаходять , f(xcp). Якщо знак f(xcp) збігається зі знаком f(xn), то надалі замість хn використовується хср . Якщо ж f(xcp) має знак, протилежний f(xn), тобто збігається зі знаком f(xn+1), то на хср замінюється xn+1 . За умову припинення ітераційного процесу доцільно брати умову | xn+1– xn| <e, де e - задана похибка. Похибка розвязку Δ через n ітерацій знаходиться в межах

Δ<. (1.1)

Метод має малу швидкість збіжності, оскільки інтервал, де знаходиться корінь, з кожним кроком зменшується не більше ніж в два рази.

Метод простої ітерації

Цей метод можна використовувати лише якщо доведена збіжність ітераційного алгоритму. В цьому методі процес розв’язання потрібно починати з пошуку інтервалу збіжності. Умовою збіжності є те що максимальне значення І-ї похідної правої частини рівняння Х=g(x) (1)(до такого вигляду потрібно привести вихідне рівняння f(x)=0 ) повинна бути менша за 1. Якщо умова не виконується, то алгоритм не збіжний. Коли в інтервалі збіжності немає коренів, треба застосовувати інші методи або приходити до рівняння (1) через інші способи.

Похибка ж методу на n – ій ітерації обчислюється так:

Δ< (1.2)

В даній курсовій роботі розглядаються два методи розв’язку нелінійних рівнянь – це метод Ньютона та метод хорд, тому розглянемо їх більш детально. Метод хибного положення (хорд)

Цей метод полягає в тому, що визначаються значення функції в точках, що розташовані на осі через рівні інтервали. Це робиться поки кінці інтервалів xn+1 , хnне будуть мати різні знаки. Пряма, що проведена через ці дві точки, перетинає вісь у точці

. (1.3)

Після цього визначають f(xn+1) і порівнюють його з f(xn). Надалі користуються xn+1 замість того значення, з яким воно збіглося за знаком. Якщо | xn+1 – xn| <e, то вся процедура повторюється спочатку.

Треба також враховувати, що в алгоритмі обчислень за цим методом контроль похибки ведеться за тим кінцем інтервалу, що рухається.

Похибка розв'язку оцінюється за формулою:

, (1.4)

де М1, m1 – відповідно, найбільше та найменше значення модуля першої похідної на відрізку.

Рис 1.1.Метод хорд

Метод Ньютона

Метод Ньютона полягає в побудові дотичної до графіка функції в обраній точці. Наступне наближення знаходиться як точка перетину дотичної з віссю ОХ.В основі цього методу лежить розкладання функції в ряд Тейлора:

(1.5)

Члени що містять h у другому і більших степенях відкидаються і в результаті отримується наближена формула для оцінки Хn+1:

хn+1 = хn– , (1.6)

але оскільки цей метод є наближеним, то логічно буде якщо для нього задавати певну похибку і тоді наближене значення кореня буде визначатися з виконання наступної умови: < Δ, де дельта певна задана похибка. Швидкість збіжності цього алгоритму значною мірою залежить від вірного вибору початкової точки. Коли в процесі обчислень кут нахилу дотичної f’(x)перетворюється на нуль, застосування цього методу ускладнюється. Можна також показати, що у випадку дуже великих значень f ’’(x) чи кратних коренів метод Ньютона стає неефективним.

Початкове наближення слід вибирати з умови:

(1.7)

Грубо оцінити похибку для методу можна так:

, (1.8)

де М2 – найбільше за модулем значення другої похідної на інтервалі

[xn, xn+1].

Рис. 1.2. Метод Ньютона


2.Аналіз заданого рівняння

В даній курсовій роботі необхідно розв’язати нелінійне рівняння 5-го порядку, яке відповідно матиме п’ять коренів. Для того, щоб розв’язати це рівняння методами Ньютона та січних, необхідно визначити початкове приблизне наближення, це можна зробити за допомогою графіка цього рівняння (Рис. 2.1), побудувавши його за допомогою математичного пакета Mathcad 2001 Professional.

Рис. 2.1

Як видно із графіка дане рівняння має три дійсних корені, тому що графік функції перетинає осі координат у трьох точках.

Отже, потрібно брати такі приблизні значення початкових наближень: -1,8; 0,1; 1,8. Дійсно ці значення задовольняють необхідну умову . При значенні х0=0,1 (f’(x0))2=99,9, a добуток f’’(x0)f(x0)=5*10-10 , що є меншим за значення першої похідної, піднесеної до квадрату. При значеннях х0= -1,8 ; х0=1,8 також виконуються дані співвідношення.

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

Щоб знайти комплексні корені нелінійного рівняння розкладемо задане рівняння на найпростіші множники. В результаті отримаємо такий многочлен:, де 1,75; 1,8; 0,1 – дійсні корені рівняння. Прирівнявши перший множник до нуля , знайдемо приблизні значення комплексних коренів рівняння, яких має бути два:

;дискримінантD=0.0025-12.61= -12.6<0

;


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

На основі теоретичного матеріалу, розглянутого в попередньому розділі роботи, було розроблено алгоритми методів.

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

хn+1= хn-,

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

Алгоритм розвязку цього ж рівняння за методом хорд полягає в тому, щовизначаються значення функції до зміни знаку при переході від до поки кінці інтервалів xn+1 , хnне будуть мати різні знаки.

Після цього визначають f(x*) і порівнюють його з f(xn). Надалі користуються xn+1 замість того значення, з яким воно збіглося за знаком.

Знаходимо ряд значень х до тих пір, поки не виконається умова< Δ де Δ - задана допустима похибка.

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


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

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

- не вимагає великих затрат як апаратної частини комп’ютера так і програмної

- дозволяє досить просто реалізовувати поставлені задачі

- є дуже візуальним і наглядним що робить його зручним інструментом в користуванні

- ця мова є досить гнучка і дозволяє використовувати технології обєктно-орієнтованого програмування.

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

Для даних методів розв’язку нелінійного рівняння вхідними даними є початкове рівняння; похідна від нього; початкові наближення х0 (1,75; -1,8; 0,1) і допустима похибка Δ, яка вводиться з клавіатури .

Вихідними даними є знайдені корені х, які задовольняють умову:

< Δ та кількість кроків для отримання розвязку із заданою похибкою.

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

Програму можна умовно розділити на чотири такі частини:

1. блок опису вхідних та вихідних даних

2. введення початкових даних

3. процедури розвязку рівняння методом хорд та Ньютона

4. виведення результатів

Програма, написана для вирішення поставленої задачі, містить кілька підпрограм.Спочатку програма пропонує ввести похибку, після чого виконує розвязок рівняння заданими методами. Для розвязку рівняння методом хорд використовується функція chords, що приймає в якості параметрів верхній хв та нижній ха проміжки х та кількість ітерацій iter. . Для розвязку рівняння методом Ньютона використовується функція Nuton з параметрами значень х на наступному та попередньому кроках: х , хlastта кількість ітерацій iter.

Для виведення отриманих значень х використовується функціяres.

Лістінг програми наведений в додатку В.

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

Для завантаження програми необхідно запустити програмний файл KURSOVA.EXE. При цьому з’явиться вікно (Рис. 3.4)

Рис. 3.4.

Необхідно слідувати вказівкам які з’явились у робочому вікні програми, а саме ввести допустиму похибку – е, після чого програма видасть результат значень х та кількість ітерацій обома методами . Для виходу з програми необхідно натиснути будь-яку клавішу.


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

Після проведення розрахунку по знаходженню коренів нелінійного рівняння за методами Ньютона та хорд отримано такі результати: рівняння має п’ять коренів, а саме три дійсних і два комплексних.

За методом хорд: х1=-1,801176 (5 ітерацій); х2=0,00001(3 ітерації); х3= 1,748379 (5 ітерацій).

За методом Ньютона: х1=-1,802453 (3 ітерації); х2=0,00001(2 ітерації); х3= 1,752384 (3 ітерації).

Комплексні корені : ,

Порівнявши отримані результати з наступними результатами,

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


Висновки

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


Література

1. Квєтний Р. Н. Методи комп’ютерних обчислень: Навчальний посібник. – Вінниця.: ВДТУ, 2001.–С. 35.

2. Вержбицький В. М. Основы численных методов.– М.: Высшая школа, 2002. –С. 43.

3. Волков Е. А. Численные методы. – М.: Наука, 1982. –С. 102.

4. Лященко М.Я., Головань М.С. Чисельні методи : Підручник. –К.: Либідь, 1996. –С. 144.

5. Бахвалов Н.С., Жидков Н.П., Кобельков Г.М. Численные методы. – М.: Наука, 1987. –С. 83.


Додаток А

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

Блок-схемаметоду хорд

Блок-схемаметоду Ньютона


Додаток Б

Блок-схема програми


Додаток В

Лістінг програми

#include <math.h>

#include <stdio.h>

#include <conio.h>

double e; // похибка

// f(x)=x^5-10x+1 - функция

double f(double x)

{

return pow(x,5) - 10*x + 1;

}

// f'(x)=5x^4-10 - перша похідна f(x) для метода Ньютона

double f_der(double x)

{

return 5*pow(x,4) - 10;

}

int chords(double xa, double xb, double &x, int &iter)

// метод Хорд

{

double xlast;

x = 0;

if (f(xa)*f(xb) >= 0)

return 0;

iter = 0;

do

{

xlast = x;

x = xb - f(xb)*(xb-xa)/(f(xb)-f(xa));

if (f(x)*f(xa) > 0)

xa = x;

else

xb = x;

iter++;

}

while (fabs(x-xlast)>e);

return 1;

}

double Nuton(double x, int &iter)

// метод Ньютона

{

double xlast;

iter = 0;

do

{

xlast = x;

x = x - f(x)/f_der(x);

iter++;

}

while (fabs(x-xlast)>e);

return x;

}

int main()

// основна програма

{

double res;

int iter;

clrscr();

printf(" Enter the accuracy : ");

scanf("%f", &e);

printf("n-------------------------Chord's method--------------n");

for (int i = -20; i < 20; i++)

if (chords(i, i+1, res, iter))

printf("n x= %f (%d iterations)n", res, iter);

printf("n-------------- Nuton's method----------------------n");

res = Nuton(-2, iter);

printf("n x= %f (%d iterations)n", res, iter);

res = Nuton(0, iter);

printf("n x= %f (%d iterations)n", res, iter);

res = Nuton(2, iter);

printf("n x= %f (%d iterations)n", res, iter);

getch();

return 0;

}


Нет нужной работы в каталоге?

Сделайте индивидуальный заказ на нашем сервисе. Там эксперты помогают с учебой без посредников Разместите задание – сайт бесплатно отправит его исполнителя, и они предложат цены.

Цены ниже, чем в агентствах и у конкурентов

Вы работаете с экспертами напрямую. Поэтому стоимость работ приятно вас удивит

Бесплатные доработки и консультации

Исполнитель внесет нужные правки в работу по вашему требованию без доплат. Корректировки в максимально короткие сроки

Гарантируем возврат

Если работа вас не устроит – мы вернем 100% суммы заказа

Техподдержка 7 дней в неделю

Наши менеджеры всегда на связи и оперативно решат любую проблему

Строгий отбор экспертов

К работе допускаются только проверенные специалисты с высшим образованием. Проверяем диплом на оценки «хорошо» и «отлично»

1 000 +
Новых работ ежедневно
computer

Требуются доработки?
Они включены в стоимость работы

Работы выполняют эксперты в своём деле. Они ценят свою репутацию, поэтому результат выполненной работы гарантирован

avatar
Математика
История
Экономика
icon
147648
рейтинг
icon
3129
работ сдано
icon
1352
отзывов
avatar
Математика
Физика
История
icon
142374
рейтинг
icon
5881
работ сдано
icon
2654
отзывов
avatar
Химия
Экономика
Биология
icon
95355
рейтинг
icon
2031
работ сдано
icon
1273
отзывов
avatar
Высшая математика
Информатика
Геодезия
icon
62710
рейтинг
icon
1046
работ сдано
icon
598
отзывов
Отзывы студентов о нашей работе
54 235 оценок star star star star star
среднее 4.9 из 5
СПбГМУ
Реферат сделан досрочно, все конкретно и по делу с указанными заданиями. Антиплагиат выпол...
star star star star star
Дальневосточный филиал Федерального государственного бюджетного образовательного учреждения высшего
Большое спасибо Анастасии, заказывала 2 реферата, осталась довольна выполненной работой. М...
star star star star star
Ргсу
Не устаю благодарить Танечку за все сделанные работы! Огромное спасибо! С наступающим Новы...
star star star star star

Последние размещённые задания

Ежедневно эксперты готовы работать над 1000 заданиями. Контролируйте процесс написания работы в режиме онлайн

сущность понятия самооценки

Поиск информации, Психология и педагогика

Срок сдачи к 25 сент.

только что

Написать конспект по физкультуре

Другое, Физкультура

Срок сдачи к 21 сент.

1 минуту назад

Контрольная работа

Контрольная, Сопротивление материалов

Срок сдачи к 22 сент.

1 минуту назад

Анализ 3-5 статей

Другое, Психология девиантного поведения

Срок сдачи к 10 окт.

1 минуту назад

I. Практическое задание 1: определить виды исков (о признании и т.п

Решение задач, Гражданское процессуальное право

Срок сдачи к 19 сент.

2 минуты назад

Доработка раздела ркр в вкр

Другое, Строительство гражданское и промышленное

Срок сдачи к 25 сент.

2 минуты назад

Https://disk. yandex. ru/d/a-avyaqwbicr0q

Онлайн-помощь, строительство

Срок сдачи к 21 сент.

4 минуты назад

Подготовить обзор новостей по международной логистике за последние месяцы

Доклад, Международная логистика

Срок сдачи к 20 сент.

4 минуты назад

Нелинейные цепи

Отчет по практике, Нелинейные цепи, электротехника

Срок сдачи к 10 окт.

6 минут назад

Написать статью на тему Атомно-ветровые энергокомплексы

Статья, электроэнергетика

Срок сдачи к 26 сент.

6 минут назад

курсовая на тему : « методы управления в правоохранительных органах»

Курсовая, Основы управления в правоохранительных органах

Срок сдачи к 1 окт.

7 минут назад

Ступеньчатый стержень загружен силами

Решение задач, Строительная механика

Срок сдачи к 22 сент.

7 минут назад

механизм государства

Реферат, основы проектной работы, право

Срок сдачи к 23 сент.

8 минут назад

Прилагается на файлах

Решение задач, Дискретная математика

Срок сдачи к 19 сент.

9 минут назад

Найти любую технологическую карту, связанную с энергетикой

Контрольная, Эксплуатация и ремонт электрооборудования систем электроснабжения

Срок сдачи к 22 сент.

10 минут назад

Написать диплом в 100 страниц

Диплом, Программирование

Срок сдачи к 25 мая

10 минут назад

Сущность понятия «самооценка» ( сущность , классификация

Поиск информации, Психология

Срок сдачи к 25 сент.

11 минут назад
11 минут назад
planes planes
Закажи индивидуальную работу за 1 минуту!

Размещенные на сайт контрольные, курсовые и иные категории работ (далее — Работы) и их содержимое предназначены исключительно для ознакомления, без целей коммерческого использования. Все права в отношении Работ и их содержимого принадлежат их законным правообладателям. Любое их использование возможно лишь с согласия законных правообладателей. Администрация сайта не несет ответственности за возможный вред и/или убытки, возникшие в связи с использованием Работ и их содержимого.

«Всё сдал!» — безопасный онлайн-сервис с проверенными экспертами

Используя «Свежую базу РГСР», вы принимаете пользовательское соглашение
и политику обработки персональных данных
Сайт работает по московскому времени:

Вход
Регистрация или
Не нашли, что искали?

Заполните форму и узнайте цену на индивидуальную работу!

Файлы (при наличии)

    это быстро и бесплатно