1
Міністерство освіти і науки України
Вінницький національний технічний університет
Інститут АЕКСУ
Кафедра АІВТ
Контрольна робота
з дисципліни:
“Моделювання на ЕОМ”
Дослідження однокрокових методів розвязання звичайних диференційних рівнянь
Виконав: ст. гр. 1АМ-04_____ Балко О.О.
Перевірив: доцент каф.АІВТ_____ Кабачій В.В.
2007
Вступ
1 Короткі теоретичні відомості
Вступ
На даний момент велика роль в розвитку сучасного світу відводиться підвищенню технічного рівня обчислювальної техніки, пристроїв і засобів автоматизації. Це передбачає розвиток виробництва і широке використання промислових роботів, систем автоматичного управління з використанням мікропроцесорів і мікро-ЕОМ, створення гнучких автоматизованих виробництв. Розвязок цих задач потребує широкого упровадження в інженерну практику методів обчислювальної математики.
Обчислювальна математика заснована на чисельних методах, придатних до застосування при розрахунках на ЕОМ. Сучасні ЕОМ дозволили дослідникам значно підвищити ефективність математичного моделювання складних задач науки і техніки. Нині методи дослідження проникають практично в усі сфери людської діяльності, а математичні моделі стають засобами пізнання.
Значення математичних моделей неперервно зростає у звязку з тенденціями до оптимізації технічних пристроїв і технологічних схем планування експерименту. Реалізація моделей на ЕОМ здійснюється за допомогою різноманітних методів обчислювальної математики, яка неперервно удосконалюється.
В даній роботі розглянуті однокрокові методи розвязання звичайних диференційних рівнянь(на прикладі диференційного рівняння першого порядку), а саме прямий та зворотній методи Ейлера, та метод Рунге-Кутта.
Розробленна програма дозволяє розвязати вказане диференційне рівняння методами Ейлера (прямим та зворотним) та Рунге-Кутта, порівняти їх результати та визначити похибки
В основі програми лежить загальний алгоритм розвязку диференційних рівнянь однокроковими методами.
Алгоритм:
1.за початковим значенням x,y знаходимо наступну точку кривої y=f(x) при кроці h=0.1;
2.знаходимо нові значення x,y;
3.перевряємо чи х належить проміжку, на якому шукаються розвязки: якщо х належить цьому проміжку, то алгоритм повторюється з пункту 1, де замість початкових значень x,y; використовуються нові(обчислені в пункті 2); якщо ні, то алгоритм припиняє свою роботу ;
4.аналогічно шукаються розвязки цього ж рівняння , але при кроці h=0.05;
5.Знаходження похибки зводиться до:
· знаходження C за формулою
с=(y1-y2))/(St(h1,p+1)-St(h2,p+1))
де y1,y2-значення в одній тій самій точці розвязку,
але обчисленні з різним кроком;
St - функція піднесення до степеня, де р+1 степінь, а h1(h2) числа, що підносяться до степеня.
· знаходження глобальної похибки, шляхом додавання похибок знайдених на кожному кроці обчислень;
Для данного завдання, формули знаходження наступних значень за попердніми мають вигляд:
· прямий метод Ейлера:
yn:=yn+h*(yn+0.7*xn+1.2);
· зворотній метод Ейлера:
yn:=yn+h*(0.7*xn+1.2)/(1-h);
метод Рунге-Кутта
yn=yn+((k0+2*k1+2*k2+k3)/6);
2.1 Блок-схеми алгоритмів розвязку даного диференційного рівняння
3 Вхідні та вихідні дані
Вхідними даними програми є: крок обчислення і задане диференціальне рівняння.
Вихідними даними програми є: графіки, таблиця з рішеннями диференціального рівняння і похибки обчислень.
4. Аналіз результатів моделювання
Розроблена програма дозволяє розвязувати дане диференційне рівняння трьома методами. З результатів обчислень ми можемо перевірити функціональність програми і точність кожного з методів.
Прямий метод Ейлера:
Крок 0.1 |
Крок 0.05 |
Похибка |
|
1.000000 |
1.000000 |
0.000000 |
|
1.220000 |
1.227250 |
0.009667 |
|
1.469000 |
1.484968 |
0.030958 |
|
1.749900 |
1.776278 |
0.066128 |
|
2.065890 |
2.104621 |
0.117769 |
|
2.420479 |
2.473795 |
0.188856 |
|
2.817527 |
2.887984 |
0.282799 |
|
3.261280 |
3.351802 |
0.403495 |
|
3.756408 |
3.870337 |
0.555401 |
|
4.308049 |
4.449197 |
0.743598 |
Крок 0.1 |
Крок 0.05 |
Похибка |
|
1.000000 |
1.000000 |
0.000000 |
|
1.244444 |
1.239515 |
0.006572 |
|
1.523827 |
1.512468 |
0.021717 |
|
1.842030 |
1.822472 |
0.047795 |
|
2.203367 |
2.173528 |
0.087580 |
|
2.612630 |
2.570073 |
0.144322 |
|
3.075144 |
3.017020 |
0.221821 |
|
3.596827 |
3.519814 |
0.324504 |
|
4.184252 |
4.084490 |
0.457521 |
|
4.844725 |
4.717731 |
0.626846 |
Крок 0.1 |
Крок 0.05 |
Похибка |
|
1.000000 |
1.000000 |
0.000000 |
|
1.229469 |
1.229644 |
0.000026 |
|
1.489718 |
1.489644 |
0.000103 |
|
1.783814 |
1.783663 |
0.000259 |
|
2.115130 |
2.114874 |
0.000524 |
|
2.487374 |
2.486981 |
0.000930 |
|
2.904625 |
2.904060 |
0.001513 |
|
3.371367 |
3.370593 |
0.002312 |
|
3.892533 |
3.891508 |
0.003370 |
|
4.473544 |
4.472224 |
0.004732 |
Контрольная работа | Концепция информатизации Российской Федерации |
Контрольная работа | Причины агрессивного поведения. Методы работы с агрессивными детьми |
Контрольная работа | Алгоритм выбора и реализации предпринимательской идеи |
Контрольная работа | Современные методы арт-терапии |
Контрольная работа | Системы управления взаимоотношения с клиентами |
Контрольная работа | Учет материальных затрат в бухгалтерском учете |
Контрольная работа | Геополитическое положение России |
Контрольная работа | Особенности вознаграждения работников в организации |
Контрольная работа | Виды запасов |
Контрольная работа | Психоанализ |
Контрольная работа | Перспективы внедрения автоматизированных технологий в архиве |
Контрольная работа | Монтаж электрооборудования |
Контрольная работа | Разговорная речь |
Контрольная работа | Bases of English grammar |
Контрольная работа | Дипломатическое представительство |