- •Кафедра Iнформатики
- •«Наука вся - лишь море заблуждений, где нету дна, а правды нет и тени»
- •«Складні проблеми завжди мають прості, легкі для розуміння невірні розв'язання» (закон Гросмана) Формалізація алгоритму
- •«Ускладнювати просто. Спрощувати складно» (закон Мейера) Алгоритмічні системи
- •... Sk0 skj1 skj2 ... Qi sjk ... Skjr-1 skjr sk0 ..., k[1;n]
- •Відлагодження алгоритму
- •«Якщо факти не підтверджують теорію, то їх треба позбутися» (Закон Майєрса) Етапи розв’язання задач на комп’ютері
- •Математична модель
- •Інформаційна модель
- •«Перед тим, як увійти, подумай, як вийти» (Китайське прислів'я) Техноогії проектування алгоритмів
- •«Створіть систему, якою зможе скористатися навіть дурень, і тільки дурень захоче нею користуватися»
- •(Принцип Шоу)
- •Блок-схема алгоритму лінійної структури
- •Алгоритм розгалуженої структури
- •Блок-схема алгоритму розгалуженої структури
- •Алгоритми циклічної структури
- •Алгоритм циклічної структури (параметр циклу змінюється з кроком у заданому сегменті)
- •Блок-схема алгоритму циклічної структури (параметр циклу змінюється з кроком у заданому сегменті)
- •Алгоритм циклічної структури (параметр циклу є елементом масиву)
- •Блок-схема алгоритму циклічної структури (параметр циклу є елементом масиву)
- •Алгоритм складної циклічної структури
- •Блок-схема алгоритму складної циклічної структури
- •Алгоритм обліку суми і добутку
- •Блок-схема алгоритму обліку суми і добутку
- •Алгоритм пошуку мінімуму і максимуму
- •Блок-схема алгоритму пошуку мінімуму і максимуму
- •Алгоритми сортування наданих
- •«Маленька практика краща за велику теорію» (закон Букера)
- •Алгоритми розв’язання інженерних задач
- •Ізоляція кореня
- •Уточнення значення кореня
- •Блок-схема алгоритму методу хорд
- •Початок циклу
- •Кінець циклу
- •Алгоритм розв’язання системи лінійних рівнянь
- •1. Прямий хiд
- •2. Зворотній хiд
- •Блок-схема алгоритму методу Гауса
- •Алгоритми розв’язання диференціального рівняння
- •Алгоритми до методу Эйлера
- •Алгоритми до методу Рунге - Кутта
- •Блок-схеми алгоритмів розв’язання диференціальних рівнянь першого порядку
- •Блок-схеми алгоритмів розв’язання диференціальних рівнянь другого порядку
- •Алгоритм обліку визначеного інтегралу
- •Алгоритм до методу Ньютона - Котеса
- •Блок-схема алгоритму обліку визначеного інтегралу методом Ньютона - Котеса Функція «Інтеграл»
- •Алгоритми апроксимації і інтерполяції функції
- •Алгоритм до методу інтерполяції поліномами Лагранжа
- •Алгоритм до методу апроксимації та інтерполяції в-сплайнами
- •Блок-схеми алгоритмів інтерполяції і апроксимації функції
- •Алгоритм статистичної обробки результатів експерименту
- •Перспективи розвитку теорії алгоритмів «Як тільки теорія стає зрозумілою всім, її пора змінювати» (закон Джексо на)
1. Прямий хiд
Призначають i-ий рядок матрицi коєфiцiєнтiв ведучим (i=[1;n-1]), а еле-мент Aii головної дiагоналi матрицi у цьому рядку - ведучим елементом. Нор-мують усi коєфiцiєнти кожного j-го рiвняння (j=[i+1;n]). Для цього розраховують фактор-спiвмножник рядка j за формулою : fij = Aji / Aii i перетворюють його коєфiцiєнти i вiльнi члени за формулами :
Ajk = Ajk - f • Aik,
Bj = Bj - f • Bi , k [i+1; n].
Подiбне перетворення усiх рядкiв матрицi призводить до виключення Xi з усiх рiвнянь системи (1), окрiм i-го. Далi збiльшують значення змiнної i та повторюють перетворення коєфiцiєнтiв. Пiсля вищеописаної обробки усiх (n-1) рiвнянь розширена матриця коєфiцiєнтiв має трикутний вигляд.
Етап прямого ходу завершується, коли одне з рівнянь стає рівнянням із однією невідомою.
2. Зворотній хiд
З останнього рiвняння (n-го рядка матрицi), отриманого пiсля m-ої iтерацiї, розраховують Xn за формулою :
X(m)n = B(m)n / Ann
i зворотньою пiдстановкою послiдовно знаходять невiдомi {Xi}, i=[n-1;1] згiдно виразу :
n
Bi - Aij • Xj
j=i+1
Xi = .
Aii
Блок-схему алгоритму методу хорд наведено на мал. 21.
Кількість (N) арифметичних операцій для реалізації методу Гауса становить:
2
N ≈ — · n2
3
Блок-схема алгоритму методу Гауса
1
8
9
2
10
3
4
11
5
13
Ні
6
12
Мал. 21
14
7
Алгоритми розв’язання диференціального рівняння
У багатьох практичних задачах користувач зіштовхується з необхідністю розв'язання рівнянь, що містять одну або декілька похідних. До розв'язання таких рівнянь, що, як правило, описують поводження об'єктів керування, зводиться розгляд різноманітних автоматичних електронних систем, наприклад, опис керованих технологічних процесів, моделювання систем автоматичного керування у реальному масштабі часу, синтез керуючих систем.
Звичайним диференціальним рівнянням називається вираз вигляду:
f (n) (X, Y, Y', Y", ... , Y) = 0,
де X - незалежна змінна, Y - шукана функція від X, (Y', Y",...) - похідні. Порядок n старшої похідної визначає порядок диференціального рівняння. Звичайне диференціальне рівняння має безкінечну множину розв’язань. Для одержання конкретного розв'язання необхідні додаткові умови. У випадку, коли додаткові умови задаються при одному значенні незалежної змінної, має місце задача Коші (іншими словами задача з початковими умовами):
Задано диференціальне рівняння Y'=f(X,Y) і початкову умову Y(X0)=Y0. Необхідно на сегменті [A;B] знайти функцію Y(X), що задовольняє як зазначеному рівнянню, так і початковій умові. З геометричної точки зору необхідно знайти криву Y(X), що проходить через задану точку (X0,Y0).
У більшості задач коефіцієнти або функції в диференціальних рівняннях задаються у вигляді таблиць експериментальних даних, тому використання аналітичних методів розв'язання диференціальних рівнянь або принципово неможливо, або призводить до громіздких розрахунків. Це обумовлює важливість аналізованих тут чисельних методів розв'язання диференціальних рівнянь, що можуть бути реалізовані на комп'ютері і дати приблизне розв'язання задачі з наперед заданою точністю. Чисельні методи розв'язання диференціальних рівнянь полягають у розкладанні функції Y(X) у ряд Тейлора в h-оточенні точки Xo:
h2 hi
Y(Xo + h) = Y(Xo) + h • Y'(Xo) + — • Y"(Xo) + ... + — • Y(i)(Xo)
2! i!
, де h - відстань (крок) між вхідною точкою Xo і точкою Xi = Xo + h, у якій шукається розв'язання.
