You are on page 1of 115

ЕКОНОМІКО-ТЕХНОЛОГІЧНИЙ ТЕХНІКУМ

ХЕРСОНСЬКОГО НАЦІОНАЛЬНОГО ТЕХНІЧНОГО УНІВЕРСИТЕТУ


Циклова комісія комп’ютерних та природничо-математичних дисциплін

ЛЕКЦІЇ

_______Чисельні методи_______
(шифр і назва навчальної дисципліни)
напрям підготовки _______050103 «Програмна інженерія»__________________
(шифр і назва напряму підготовки)
спеціальність________5.05010301 «Розробка програного забезпечення»______
(шифр і назва спеціальності)

спеціалізація ______________________________________________________

відділення _денне___________________________________________________

Херсон - 2014рік
Лекції «Чисельні методи» для студентів вищих навчальних закладів І-ІІ рівнів акредитації за
напрямом підготовки 050103 «Програмна інженерія», спеціальністю 5.05010301 «Розробка програмного
забезпечення». «11» листопада 2014 р. – 11 с.

Розробники: Бункус С.В., викладач ЕТТ ХНТУ, кваліфікаційної категорії «Спеціаліст першої
категорії»

Лекції затверджені на засіданні циклової комісії комп’ютерних та природничо-математичних


дисциплін.
Протокол від «11» листопада 2014 року № 4
Голова комісії _________ С.В.Бункус

«___»___________2014 року

Схвалено Методичною радою ЕТТ ХНТУ


Протокол від «___» листопада 2014 року № ___

«___»___________2014 року

Голова_____________________ _________________

 Бункус С.В., 2014 рік


 ЕТТ ХНТУ, 2014 рік

2
Лекція 1.

Теорія похибок
План лекції:

1. Історія чисельних методів.


2. Математичні моделі і чисельні методи.
3. Етапи розв’язання задачі.
4. Наближені числа.
5. Основи загальної теорії похибок обчислень.
6. Основні джерела та класифікація похибок.

Чисельні методи – методи наближеного або точного розв’язання задач, основані на


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

де - вектор-колонка вхідних величин,

та - вектор-колонка мінімальних та максимальних значень


вхідних величин відповідно,

- вектор-колонка відповідних похибок округлення вхідних величин,

- вектор-колонка максимальних значень похибок округлення, і якщо результат


численного методу являє собою неперервну функцію від вхідних даних: .
Чисельний метод називається збіжним, якщо його результат наближається до
точного розв’язку задачі при наближенні параметрів методу до граничних значень.
Аналітичні методи – методи перетворення інформації, представленої в
аналітичному вигляді, причому результат отримується також у аналітичному вигляді
(наприклад, формула знаходження коренів квадратного рівняння). Використовуються

3
звичайно для розв’язання задач математичного аналізу та містять операції
диференціювання, інтегрування, відшукування відрізків рядів, спрощення.
Чисельно-аналітичні методи використовуються для розв’язання складних
комплексних задачах. При цьому аналітичні методи застосовуються для спрощення
аналітичних виразів, зведення рівняння до заданого канонічного вигляду та ін., а
чисельні методи набувають чинності, коли потрібно отримати результат розв’язання у
вигляді числа, або на етапі розв’язання стандартних обчислювальних підзадач
(наприклад, підпрограма обчислення квадратного кореню, експоненти та ін.).
Графічні та графоаналітичні методи для отримання результатів використовують
графічні представлення функцій.
Історія чисельних методів.
Можна виділити три основні періоди.
Перший почався (3 ÷ 4) тисячі років назад. Він був пов’язаний з веденням
конторських книг, обчисленням площ, об’ємів, розрахунком найпростіших механізмів.
Чисельними засобами служили спочатку власні пальці, а потім – рахівниці. Вхідні дані
містили мало цифр, більшість викладок виконувалось точно, без заокруглень.
Другий почався з Ньютона. В цей період вирішувались задачі астрономії, геодезії,
розрахунку механічних конструкцій. Вони зводились або до алгебраїчних систем з
великим числом невідомих, або до звичайних диференціальних рівнянь. Обчислення
виконувались із заокругленням; часто від результату вимагалась висока точність,
доводилось зберігати до 8 значущих цифр.
Обчислювальні засоби стали різноманітніші: таблиці елементарних функцій, потім
арифмометр і логарифмічна лінійка, пізніше з’явились клавішні машини з
електродвигуном. Але швидкість всіх цих засобів була невелика, обчислення займали
дні, тижні і навіть місяці.
Третій період почався приблизно з 1940р. Військові задачі, наприклад, наводка
зенітних гармат на швидкісний літак – вимагали від людини швидкості і призвели до
розробки електричних систем. З’явились ЕОМ. Їх швидкодія настільки перевищувала
швидкодію механічних засобів, що стало можливим проводити обчислення великого
об’єму. Це дозволило чисельно вирішувати нові класи задач. Спочатку
використовувались чисельні методи, які були розробленні в “доелектронному” періоді.
Але застосування ЕОМ привело до переоцінки методів. Багато старих методів виявилось
непридатними для автоматизованих обчислень. Почали скоро розроблятися нові методи,
орієнтовані прямо на ЕОМ.
Чисельні методи – методи наближеного або точного рішення задач чистої або
прикладної математики, що базуються на побудові скінченної послідовності дій над
скінченою множиною чисел.
При рішенні задач прикладної математики найбільш ефективною вважають таку
методологію. По-перше складають математичну модель. Її формулюють звичайно в
термінах інтегральних і диференціальних рівнянь функцій неперервного аргументу. Це
так звана континуальна математична модель. По-друге здійснюють перехід від
континуальної математичної моделі до дискретної математичної моделі. Цей перехід
полягає в заміні функції неперервного аргументу функціями дискретного аргументу, а
рівняння континуальної математичної моделі – зазвичай різницевими рівняннями. При
цьому інтеграл замінюють кінцевою сумою, а похідну – різницевим відношенням.
Внаслідок цього приходять, як правило, до системи з великою кількістю рівнянь з
4
багатьма невідомими (дискретна математична модель). По-третє складають
обчислювальний алгоритм (ОА) для рішення одержаної системи рівнянь з деякою
певною точністю. По-четверте здійснюють програмування.
Перехід від континуальної до дискретної математичної моделі приводить до появи
похибки апроксимації. При практичних розрахунках необхідно враховувати і похибку
заокруглення внаслідок обмеженої кількості значущих цифр при операціях в ЕОМ над
машинними числами. Враховуючи це одержують реальний ОА. Це привело до
необхідності проводити аналіз похибок і гарантовану оцінку точності реальних
обчислень.
Особливe значення при цьому отримав аналіз стійкості ОА. Мається на увазі аналіз
критеріїв і умов росту похибок заокруглення і апроксимації. В багатьох обчислювальних
алгоритмах, розроблених до появи ЕОМ, враховувались тільки похибки апроксимації, а
похибки заокруглення не бралися до уваги, внаслідок чого ці ОА часто виявлялись
нестійкими.
Практичний інтерес представляють лише ті наближені алгоритми, які володіють
властивістю збіжності. Алгоритм збіжний, якщо існують параметри, належний вибір
яких (при умові точного завдання вхідних даних і точного виконання елементарних
операцій) дозволяє зробити похибку δ як завгодно малою для вхідних функцій із
заданого класу.
Система параметрів називається мінімальною для наближеного аргументу, якщо
відмова від будь-якої з них порушує властивість збіжності.
Стійкість означає, що малі зміни вхідних даних приводять до малих змін результату.
Похибки по різному впливають на хід обчислення. Одні похибки зменшуються і при
цьому не складають серйозних труднощів, а другі можуть зростати настільки сильно, що
обчислення може виявитися непотрібним. Стійкість чисельного методу залежить від
швидкості росту таких похибок. Чи будуть малі вихідні похибки породжувати невеликі
похибки результатів? Якщо так, то метод стійкий; однак якщо навіть малі вихідні
похибки надають згубну дію на результат, то метод виявляється нестійким.
Математичні моделі і чисельні методи
Відомо, що сучасних інженерів, дослідників в області електронної техніки,
автоматики і т.д. математика цікавить перш за все як засіб розв’язування практичних
задач, котрі виникають в даній області. Наприклад, потрібно побудувати систему
автоматичного регулювання або якусь аналогову, цифрову схему. Одним із методів
розв’язування є експеримент надто повільний і, як правило, дорогий метод. Приклад із
своєї області – (BRM, RD). Як побачимо далі, експеримент використовують з метою
перевірки математичної моделі.
Другий метод – математичний аналіз даної схеми або пристрою. Але такий метод
застосовується не до реальних явищ, а до деяких математичних моделей цих явищ. Тому,
перший етап роботи – це формування математичної моделі (постановка задачі).
Звичайно явища, що вивчаються, як правило, складні. Математична модель повинна
охоплювати важливі сторони явища (для даної задачі). Якщо математична модель
вибрана недостатньо ретельно, то, незалежно від застосовуваних методів розрахунку, всі
результати будуть недостатньо надійними, а в деяких випадках можуть бути і
неправильними.
Другий етап роботи – математичні дослідження. В залежності від складності моделі
застосовуються різні математичні підходи. Для найбільш грубих і нескладних моделей
5
часто вдається отримати аналітичний розв’язок. Для більш точних і складних моделей
аналітичний розв’язок вдається отримати порівняно рідко. Наcамкінець, для найбільш
важких і точних моделей основним методом роз’язку є чисельні, як правило, вони
потребують розрахунку на ЕОМ.
Третій етап роботи – це осмислення математичного розв’язку і співставлення його з
експериментальними даними. Якщо розрахунок і експеримент не узгоджуються, то
модель необхідно переглянути і уточнити.
Чисельні методи є одними із потужних засобів розв’язування задач. Є задачі, де без
достатньо складних чисельних методів не вдалося одержати відповіді; класичний
приклад – відкриття Нептуна по аномаліях руху Урана. Часто потрібно велике число дій
за короткий час, інакше відповідь буде непотрібна. Наприклад, добовий прогноз погоди
повинен бути вирахуваний за декілька годин; корекцію траєкторії польоту ракети
потрібно розрахувати за декілька хвилин (а іноді і секунд); режим роботи прокатного
стана повинен коригуватися за секунду. Це є неможливим без застосування потужних
ЕОМ.
Сучасні чисельні методи і потужні ЕОМ дали можливості вирішувати багато
складних задач. Але застосовувати чисельні методи непросто. ЕОМ – це засіб праці
сучасного інженера, яка може виконувати тільки елементарні арифметичні і логічні
операції. Тому під час розробки автоматичної моделі, потрібна ще розробка алгоритму,
який зводить всі обчислення до послідовності алгоритмічних і логічних дій. Сам
алгоритм і програма повинні бути ретельно пеоревірені, про це свідчить навіть відомий
вислів: “в будь-якій найменшій програмі є хоч одна помилка ”. Перевірка алгоритму є ще
складнішою, бо для складних алгоритмів не часто вдається доказати збіжність
класичними методами.
Розділ математики, який має справу із створенням і впровадженням чисельних
алгоритмів для розв’язування складних задач різноманітних сфер науки, часто називають
прикладною математикою.
Головна задача прикладної математики – фактичне знаходження розв’язку з
необхідною точністю; цим вона відрізняється від класичної математики, яка основну
увагу приділяє дослідженню умов існування і властивостей розв’язку.
Теоретично дослідження в сфері чисельних методів в основному групуються
навколо типових математичних задач: задачі аналізу (наближення функцій, наближені
диференціювання і інтегрування), задачі алгебри, розв’язування диференціальних і
інтегральних рівнянь, задачі оптимізації і т.д.
Джерела і класифікація похибок.
Похибки обчислень зумовлені наступними причинами:
1) Математичний опис задачі являється неточним, зокрема неточно задані початкові
дані опису.
2) Вживаний для розв’язку метод часто не є точним; одержання точного розв’язку
вимагає необмеженого або недопустимо великого числа арифметичних операцій, тому
замість одержання точного розв’язку задачі користуються наближеним розв’язком.
3) При вводі даних в машину, при виконанні арифметичних операцій і при виводі
даних виконуються округлення.
Похибки, що відповідають цим причинам, називають:
1) неусувна похибка;
2) похибка методу;
6
3) обчислювальна похибка.
Загальний цикл розв’язання прикладних задач має вигляд, наведений на рис. 1:
Технічне завдання
Математична модель
Обчислювальні методи
Комп’ютерна реалізація
Програма
Алгоритм
d1
d2
d3

Рис. 1. Загальний цикл розв’язання прикладних задач


Похибки вносяться на етапі складання математичної моделі об’єкта ( – похибка
математичної моделі), оскільки обираються величини, що беруться до уваги під час
розрахунків, та величини, якими можна знехтувати. Наприклад, при розгляданні
електричної схеми, яка містить напівпровідниковий діод, він може розглядатися як
ідеальний вентиль – похибка ВАХ (рис. 2):

Рис. 2.
Або враховуватися може неідеальна ВАХ, але не враховуватися вплив інших
параметрів (температура, тиск) на роботу приладу.
Можлива ситуація, коли розв’язати задачу у точній її постановці виявляється
неможливим. Тоді задачу замінюють близькою, але наближеною задачу. При цьому
виникає похибка , яку називають похибкою чисельного методу.
Похибка – це похибка обчислень. До похибок обчислень відносяться:
1) похибки, пов’язані з наявністю нескінченних процесів обчислення у
математичному аналізі. Наприклад, деякі функції задаються у вигляді нескінченних рядів

( ). Тоді виникає необхідність обмеження нескінченної

7
послідовності математичних дій на певному етапі, що викликає появу похибки
обчислень;
2) похибки, пов’язані з наявністю у математичних формулах чисельних параметрів,
значення яких можуть бути визначені лише наближено. Такими параметрами є, зокрема,
всі фізичні константи (наприклад, точність представлення числа ). Такі похибки
називають початковими;

3) похибки, пов’язані з системою числення – наприклад, представлення величини

у десятковій системі числення: ;


4) похибки, пов’язані з виконанням дій над наближеними числами - виконання
обчислювальних дій над наближеними числами переносить похибку та на результат
обчислень.
Оцінка похибки, яка проводиться до проведення обчислень, називається апріорною,
після обчислень – апостеріорною.
Для , як правило, можна провести апріорну оцінку, використовуючи знання про
припущення, прийняті у математичній моделі, обраній для розрахунків.
Проведення оцінки – апріорної або апостеріорної - є однією з основних задач
обчислювальної математики.
Оцінка , як правило, проводиться апостеріорно.
Для отримання коректного розв’язку задачі висувається рекомендація про те, щоб
норми величин всіх похибок - - мали один і той самий порядок малості.
Абсолютна та відносна похибки
Основні задачі дослідження похибок:
1) Оцінка точності результату в залежності від різних видів похибок або оцінка
повної похибки;
2) Створення алгоритмів, які забезпечують максимальну точність при виконанні
мінімального об’єму обчислень.
Нехай А – точне значення деякої величини, а – відоме наближення до нього
(наближене значення). Мірою точності представлення величини числом є похибка.
Тоді Δ = │А – а│
називають абсолютною похибкою числа а, а

  – відносною похибкою числа.
A
Слід розрізняти два випадки:
1) число А нам відоме, тоді Δ обчислюється за формулою;
2) число А – невідоме, що буває найчастіше, і отже, не можна визначити
абсолютну похибку за формулою. В цьому випадку замість невідомої теоретичної
абсолютної похибки Δ вводять її оцінку зверху, так звану граничну абсолютну
похибку Δа - число, модуль якого є гарантовано не меншим за модуль абсолютної
похибки. Тоді
Δ = │А – а│≤ Δа.
Звідси випливає, що точне значення А міститься в межах
а – Δа ≤ А ≤ а + Δа ,
8
або А = а ± Δа
Наближені числа прийнято записувати таким чином, щоб вигляд числа вказував на
абсолютну похибку, модуль якої не повинен перебільшувати половину одиниці (0,5)
останнього розряду, що зберігається при запису.
Наприклад, запис означає, що гранична абсолютна похибка наближеного
значення числом 3,1416 дорівнює . Для числа абсолютна похибка:
.
Якщо треба знати число із більшою точністю, наприклад, , то потрібно
записувати число у вигляді . Якщо необхідна менша точність наближення,
наприклад , то число 230 записується у вигляді .
Відносною похибкою наближення значення величини числом називають модуль
відношення абсолютної похибки до істинного значення цієї величини:

Внаслідок того, що фактично замість абсолютної похибки доводиться розглядати


граничну абсолютну похибку, відносну похибку замінюють граничною відносною
похибкою:
a
δa  .
A
Граничною відносною похибкою δа називається будь-яке число таке, що
δа ≥ δ ;
a
δa  .
A
Оскільки А звичайно невідоме, то зручно δа виразити через а. Як правило Δа << a,
тому наближено
a
δa  та Δа ≈│а│ δа .
a
Заокруглення чисел.
Досить часто виникає необхідність в заокругленні числа а, тобто зміні його числом
а1 з меншою кількістю значущих цифр. Число а1 вибирають так, щоб похибка
заокруглення була мінімальна.
Правила округлення за доповненням.
Щоб заокруглити число n до значущих цифр, відкидають всі його цифри, що стоять
справа від n-ї значущої цифри, або якщо це потрібно для збереження розрядів,
замінюють їх нулями.
При цьому:
1) якщо перша з відкинутих цифр менша 5-ти, то залишені десяткові
знаки зберігаються без змін;
2) якщо перша з відкинутих цифр бульша 5-ти, то до останньої залишеної
цифри додається одиниця;
3) якщо перша з відкинутих цифр дорівнює 5-ти, та серед решти
відкинутих цифр є ненульові, то остання залишена цифра збільшується на
одиницю;

9
4) якщо перша з відкинутих цифр дорівнює 5-ти, та серед решти
відкинутих цифр є нульові, то остання залишена цифра зберігається незмінною,
якщо вона парна і збільшується на одиницю, якщо вона непарна (правило парної
цифри).
Значущі цифри. Число вірних знаків.
При записі наближених чисел часто використовують поняття вірної та сумнівної
цифри.
Цифра називається вірною, якщо межа абсолютної похибки даного наближення не
перевищує одиниці того розряду, в якому записана ця цифра.
В іншому випадку цифра називається сумнівною.
Значущими цифрами наближеного числа а називають всі цифри в його десятковому
наближенні, відмінні від нуля, та нулі, якщо вони стоять між іншими значущими
цифрами або розміщенні в кінці числа і вказують на точність. Однак точність
наближеного числа залежить не від того, скільки в цьому числі значущих цифр, а від
того, скільки значущих цифр заслуговує довір’я (тобто, скільки вірних значущих цифр).
Всяке додатне число а може бути представлене у вигляді розкладу
a  K 1  10 m  K 2  10 m 1  ...  K n  10 m  n 1
де К1, К2, … , Кn – десяткові знаки числа а. При цьому обов’язково К1 ≠ 0, К2, … ,
Кn можуть приймати значення від 0 до 9.
Певне число а має n точних десяткових знаків, якщо його абсолютна похибка не
перевищує одиниці n-го десяткового знаку або половину цієї одиниці у випадку
заокруглення за доповненням, тобто
  10 m  n 1 у широкому розумінні,
1 m  n1
 10 у вузькому розумінні
2
Зв’язок абсолютної похибки з числом вірних значущих цифр.
Між кількістю вірних десяткових знаків і відносною похибкою числа а існує зв’язок,
який можна виразити за допомогою теорем:
Теорема 1.
Якщо додатнє число а має n десяткових знаків, то відносна похибка δ цього числа не
n 1
 1 
перевищує   , яка ділиться на першу значущу цифру даного числа, тобто
 10 
n 1
1  1  1 1
δ      n 1
K1  10  K1 10
Тоді за визначенням
Δ = │А – а│≤ 10m–n+1
n 1
 10 m n1 10 m  n1 1  1 
δ   m 1 m  n 1
   
a K1 10  K 2 10  ...  K n 10
m
K1 10 m
K1  10 
Теорема 2.
1
Якщо δa  , то а має n вірних десяткових знаків
10 n
 1 K1  10 m  K 2  10 m 1  ...  K n  10 m  n 1 10 m1
δa   n ; звідси     10 m  n 1 ;
a 10 10 n
10 n

Наслідок: за граничну відносну похибку числа а можна прийняти


n 1
1  1 
δa   
k1  10 
.

10
Похибка суми.
Теорема 1.
Абсолютна похибка алгебраїчної суми декількох наближених чисел не перевищує
суми абсолютних похибок цих чисел.
u  x1  x2
u u
u  x1  x 2  x1  x2 (1)
x1 x2
u  x1  x2  x3  ...  xn
Гранична абсолютна похибка суми дорівнює сумі граничних абсолютних похибок
доданків
u  x1  x2  ...  xn (2)
Із формули (2) випливає, що гранична абсолютна похибка суми не може бути
меншою граничної абсолютної похибки найбільш точного із доданків, тобто доданка,
який має максимальну похибку. З якою б точністю не було визначено решта доданків, ми
не можемо за їх рахунок збільшити точність суми. Тому не слід зберігати надлишкові
знаки і в більш точних доданків.
Практичне правило для додавання наближених чисел. Щоб додати числа різної
абсолютної точності необхідно:
1) Виділити числа, десятковий запис яких обривається раніше інших,
(тобто числа, що мають найменшу абсолютну точність), і залишити їх без змін;
2) Числа, які залишилися, необхідно заокруглити по взірцю виділених,
зберігаючи один або два запасних десяткових знаки;
3) Додати дані числа, враховуючи всі збережені знаки;
4) Одержаний результат заокруглити на один знак.
Теорема 2.
Якщо доданки мають однаковий знак, то гранична відносна похибка їх суми не
перевищує найбільшої із граничних відносних похибок доданків.
Нехай 1 u  x  x  ...  x
2 n , причому приймаємо, що х > 0 (i = 1, 2, …, n).
і
Гранична відносна похибка
n
 ln u
δu   xi
i 1 xi
;
u x1  x 2  ...  x n x1  δ x1  x 2  δ x2  ...  x n  δ xn
δu    ;
u x1  x 2  ...  x n x1  x 2  ...  x n
δ  xi  xi δ
Нехай найбільша із граничних відносних похибок доданків , тобто < .
Тоді
δ ( x1  x2  ...  xn )
δu   δ;
x1  x2  ...  xn

Отже
 u   , тобто  u  max( x1 ,  x2 ,...,  xn ) .
Похибка різниці.
Розглянемо різницю двох наближених чисел
u  x1  x2
11
За формулою для граничної абсолютної похибки алгебраїчної суми одержимо
u  x1  x2 ,
тобто абсолютна похибка різниці оцінюється так само, як і для суми.
Гранична абсолютна похибка різниці дорівнює сумі граничних абсолютних похибок
зменшуваного і від’ємника.
Звідси гранична відносна похибка різниці:
x1  x2
δu  (1)
x1  x2
Якщо наближені числа х1 і х2 достатньо близькі один до одного, то різниця мала. З
формули (1) випливає, що гранична відносна похибка в цьому випадку може бути досить
великою, в той час коли відносна похибка зменшуваного і від’ємника залишається
малою, тобто тут відбувається втрата точності. Звідси випливає практичне правило: при
наближених обчисленнях слід по можливості уникати віднімання двох рівних близьких
чисел; якщо в силу необхідності доводиться віднімати такі числа, то слід зменшуване і
від’ємник брати з достатнім числом запасних знаків (якщо існує така можливість).
Наприклад, якщо відомо, що при відніманні чисел х1 і х2 перші m значущих цифр
зникнуть, то слід брати х1 і х2 з (m + n) вірними значущими цифрами.
u  2,01  2
Приклад. Знайти різницю з трьома правильними знаками.
2,01  1,41774469

Оскільки 2  1,41421356 ,
то результат u = 0,00353 = 3,53∙10– 3.
Цей результат можна отримати, якщо записати u у такому вигляді (перетворимо
вираз, щоб уникнути віднімання двох близьких чисел)
( 2,01  2 )( 2,01  2 ) 0,01
u 
2,01  2 2,01  2
і взяти корені лише з трьома правильними знаками
0,01 0,01
u   3,53  10 3
1,42  1,41 2,83 .
Похибка добутку.
Теорема.
Відносна похибка добутку декількох наближених чисел, відмінних від нуля, не
перевищує суми відносних похибок цих чисел. Нехай
u  x1  x2  ...  xn
n

δu   ln u xi
i 1 xi
x1 x 2 x n
δu    ... 
x1 x2 xn
xi xi
покладемо  , одержимо δ ≤ δ1 + δ2 +…+ δn .
xi Ai
Формула правильна, якщо співмножники мають однакові або різницеві знаки.
Наприклад, u = x1 · x2
12
ln u = ln x1 + ln x2 ,
 ln u  ln u 1 1
δ  x1  x 2  x1  x2  δx1  δx 2
x1 x2 x1 x2
Наслідок. Гранична відносна похибка добутку дорівнює сумі граничних відносних
похибок співмножників, тобто
 u   x1   x2  ...   xn
Розглянемо частковий випадок
u = k · x , де k – точний множник, відмінний від нуля.
u   x
u  k   x
тобто при множенні наближеного числа на точний множник k відносна гранична
похибка не змінюється, а абсолютна гранична похибка збільшується в │ k │ разів.
Правило: щоб знайти добуток декількох наближених чисел з різним числом
правильних значущих цифр достатньо:
1) заокруглити їх так, щоб кожне з них мало на одну (або дві) значущих цифри
більшу, ніж число правильних цифр в найбільш точному із співмножників;
2) в результаті множення зберегти стільки значущих цифр, скільки правильних
цифр є в найбільш точному із співмножників (або утримати ще одну запасну цифру).
Похибка частки
Теорема:
Відносна похибка частки не перевищує суми відносних похибок діленого і дільника.
x1
n

u .
x 2 Тоді на основі
δu  
i 1 x
ln u xi
Нехай i
одержимо
x x
δu  1  2
x1 x2
.
x
Наслідок. Якщо u  x , то  u   x   x
1
1 2
2

Нехай ділене х1 і дільник х2 мають щонайменше m вірних цифр. Якщо α і β їх перші


значущі цифри, то за граничну відносну похибку частки u може бути прийнята величина
m 1
1 1  1 
δu       
 α β   10 
Звідси одержимо правило:
1) якщо α ≥ 2 і β ≥ 2, то частка u має щонайменше (m – 1) вірних знаків;
2) якщо α = 1 і β = 1, то частка u має (m – 2) вірних знаків.
Відносна похибка степеня.
Нехай u  x (де m – натуральне число). Тоді
m

δ  mδ , де δ′ – відносна похибка числа


і δ u  mδ x ,
тобто гранична відносна похибка т-го степеня числа в т разів більша граничної
відносної похибки самого числа.

13
Задачі до самостійної роботи
1. Визначити граничні абсолютні похибки наближених чисел а=96,387 і в=9,32,
якщо вони містять тільки вірні цифри в вузькому та широкому понятті розуміння
відповідно.
2. Яка гранична відносна похибка наближеного числа а=14,278 якщо вона містить
тільки вірні цифри в широкому понятті розуміння.
3. Визначити значення функції y=cos(x) для наступних значень аргументу:
4. x=80;x=1.
5. Порахувати граничні абсолютну та відносну похибки результату.
6. Знайти добуток наближених чисел та , всі цифри яких вірні.
7. Виконати послідовні округлення наступних чисел: а) 2,75464; б) 3,14159; в)
0,56453; г) 4,1945; д) 0,60653.
8. Округляючи наступні числа до трьох значущих цифр, визначити абсолютну і
відносну (у відсотках) похибки отриманих наближень: а) 1,1426; б) 0,01015; в) 0,1245;
г) 921,55; д) 0,002462.
9. Визначити абсолютну похибку наступних наближених чисел по їх відносній
похибці : а) x = 2,52; = 0,7%; б) x=0,986; = 10%; в) х= 46,72; = 1%; г) x = 199,1; =
0,01; д) х = 0,86341; = 0,0004.
10. Визначити кількість вірних значущих цифр у вузькому і широкому змісті для
наступних наближених чисел: а) 39,285 ± 0,034; 6) 1,2785 ± 0,0007]; в) 183,3 ±0,1; г) 0,056
± 0,0003; д) 84,17 ± 0,0073.
11. Визначити, яке з рівностей точніше: а) 6/25 1/4 чи 1/3 0,333; б) 1/9 0,1 чи 1/3
0,33; в) 15/7 2,14 чи 1/9 0,11; г) 6/7 0,86 чи 22/7; д) = 3,142 чи .
Вказівка. Попередньо знайти граничні відносні похибки. Більш точним є та рівність,
гранична відносна похибка якої менше.
12. Округлити сумнівні цифри числа а = 47,453 ± 0,024, залишивши в ньому вірні
знаки у вузькому змісті.
13. Округлити сумнівні цифри числа а = 46,3852 ± 0,0031, залишивши в ньому вірні
знаки в широкому змісті.
14. Округлити сумнівні цифри наближеного числа а == 3,2873, якщо = 0,1%,
залишивши в ньому вірні знаки в широкому змісті.
15. Знайти граничні абсолютні і відносні похибки наближених чисел, якщо вони
мають тільки вірні цифри: а) а = 0,7538 (у вузькому змісті); б) а = 17,354 (у широкому
змісті).
Вказівка. Використовувати формулу (1.34) п. 1.6 [2].
Питання для самоконтролю
1. Назвати джерела отримання наближених чисел.
2. Дати означення абсолютної похибки наближення.
3. Яке число можна взяти за межу абсолютної похибки?
4. Сформулювати правило заокруглення чисел.
5. Дати означення відносної похибки наближення.
6. Яке число можна взяти за межу відносної похибки?
7. Які цифри числа називаються значущими?
8. Як визначають вірні цифри наближеного числа?
9. Сформулювати правила дій над наближеними числами.
14
Лекція 2
Точні методи розв’язання СЛР
План лекції:
1. Основін поняття та визначення.
2. Класифікація методів розв’язання СЛАР на ЕОМ
3. Особливості методів Гауса

Інженеру часто доводиться вирішувати алгебраїчні і трансцендентні рівняння і


системи рівнянь, що можуть являти собою самостійну задачу (наприклад, аналіз
рівноваги сил в жорсткій системі балок, або дослідження умов та параметрів рівноваги
хімічної реакції, тощо) або частину більш складних задач. В обох випадках практична
цінність чисельного методу в значній мірі визначається швидкістю і ефективністю
отримання розв‘язку. Розглянемо найбільш відомі чисельні методи і ефективні
алгоритми розв‘язання систем лінійних алгебраїчних рівнянь.
2.1 Основні поняття та визначення
Системою лінійних алгебраїчних рівнянь (СЛАР) називають систему виду:
 a11 x1  a12 x 2  ...  a1m x m  b1
a x  a x  ...  a x  b
 21 1 22 2 2m m 2
a
 31 1x  a x
32 2  ...  a 3m mx  b 3
.............................................

a n1 x1  a n 2 x 2  ...  a nm x m  bn
(2.1)

де xi , ( i  1, n) – невідомі; bi , ( i  1, n ) – вільні члени системи; aij , (


i , j  1, n ) – коефіцієнти системи.

В матричному вигляді рівняння (2.1) прийме вигляд:


A  X  B , де X ={ x1 , x 2 ,...., x n } – вектор невідомих; B ={ b1 , b2 ,...., bn } – вектор
вільних членів; A ={ a11 , a21 ,...., xmn } – матриця коефіцієнтів СЛАР.
Розв’язком системи лінійних алгебраїчних рівнянь (2.1) називають вектор X ,
координати якого { x1 , x2 ,..., xn } при підстановці у систему, що розв’язують, перетворюють
кожне рівняння системи в тотожність .
Кількість невідомих m в системі називають порядком СЛАР. Систему лінійних
алгебраїчних рівнянь називають сумісною, якщо вона має хоча б один ненульовий
розв’язок. В протилежному випадку СЛАР називають несумісною. СЛАР називається
визначеною, якщо вона має тільки один розв’язок (випадок, коли m=n). Систему
називають невизначеною, якщо вона має безліч розв’язків (mn). Система називається
виродженою, якщо головний визначник системи дорівнює нулю. Система називається
невиродженою, якщо головний визначник системи не дорівнює нулю.
Дві системи називаються еквівалентними, якщо ці системи сумісні, визначені і
мають однаковий розв’язок.
СЛАР можна розв'язати на ЕОМ чисельними методами, якщо вона сумісна,
визначена, невироджена.
15
2.2 Класифікація методів розв’язання СЛАР на ЕОМ
Для розв’язання СЛАР на ЕОМ традиційно використовують дві групи чисельних
методів, що представлені на рисунку 2.1:

Рисунок 2.1. – Класифікація чисельних методів

 точні (метод Гауса, метод Гауса з вибором головного елементу, метод


Гауса з одиничною матрицею, метод Гауса з перетвореною матрицею, метод
Гауса-Халецького, метод Гауса-Жордана, метод Крамера);
 наближені (метод послідовних ітерацій, метод Гауса-Зейделя, метод
векторів зміщень).

До точних методів відносять методи, які дозволяють отримати точний розв’язок


системи (2.1) за відповідну кількість операцій перетворення без урахування похибок
заокруглення.
До наближених методів відносять методи, які дозволяють отримати розв‘язок
системи (2.1) у вигляді границі послідовності векторів klim

0 1 2 n
X , X , X , ... X , яка 
збігається до точного розв’язку системи, де:
 x1( 0 )   x1(1)   x1( n ) 
 ( 0)   (1)   (n) 
 x2   x2   x2 
 .  ,  .  ,  . 
0 1 n
X X ... X
     
.  .  . 
 ( 0)   (1)   (n) 
 xn
 
  xn
 
  xn
 

16
2.3 Особливості методів Гауса
Найбільш відомим з точних методів розв’язання системи лінійних алгебраїчних
рівнянь (2.1) є методи Гауса, суть яких полягає в тому, що система рівнянь, яка
розв’язується, зводиться до еквівалентної системи з верхньою трикутною матрицею.
Невідомі знаходяться послідовними підстановками, починаючи з останнього рівняння
перетвореної системи. Алгоритми Гауса складаються із виконання однотипних операцій,
які легко формалізуються. Однак, точність результату й витрачений на його отримання
час у більшості випадків залежить від алгоритму формування трикутної матриці системи.
У загальному випадку алгоритми Гауса складаються з двох етапів:
Прямий хід, в результаті якого СЛАР(2.1), що розв‘язується, перетворюється в
еквівалентну систему з верхньою трикутною матрицею коефіцієнтів виду:
a11  x1  a12  x 2  ...  a1n  xn  b1

0  x1  a 22  x 2  ...  a 2 n  x n  b2 (2.2)
0  x  0  x2  ...  a nn  x n  bn
 1
Зворотній хід дозволяє визначити вектор розв‘язку починаючи з останнього
рівняння системи (2.2) шляхом підстановки координат вектора невідомих, отриманих на
попередньому кроці.
Відомо декілька різних алгоритмів отримання еквівалентної системи з верхньою
трикутною матрицею. Розглянемо найбільш відомі з них.

2.3.1 Метод Гауса з послідовним виключенням невідомих


Метод Гауса з послідовним виключенням невідомих (базовий метод)засновано на
алгоритмі, в основі якого лежить послідовне виключення невідомих вектора x з усіх
рівнянь, починаючи з (і+1)–го, шляхом елементарних перетворень: перемноження обох
частин рівняння на будь-яке число, крім нуля; додавання (віднімання) до обох частин
одного рівняння відповідних частин другого рівняння, помножених на будь-яке число,
крім нуля.
Суть алгоритму розглянемо на прикладі системи, яка складається з трьох лінійних
алгебраїчних рівнянь з трьома невідомими:
 a11 x1  a1 2 x 2  a13 x 3  b1

 a 2 1 x1  a 22 x 2  a 23 x3  b2
   
 a 3 1 x1 a 32 x 2 a 33 x 3 b3

(2.3)
1) Перевіримо, щоб принаймні один із коефіцієнтів a11 , a21 , a31
не дорівнював
нулю. Якщо, наприклад, 11
a  0 , тоді необхідно переставити рівняння так, щоб коефіцієнт
при x1 у першому рівнянні не дорівнював нулю.
2) Обчислюється множник:
a 21
M2  . (2.4)
a11
3) Перше рівняння системи (2.3) множиться на M 2 і віднімається від другого
рівняння системи, отриманої після перестановки рівнянь, якщо вона була необхідною.
Результат обчислення має вигляд:
( a 21  M 2 a11 ) x1  ( a 22  M 2 a12 ) x 2  (a 23  M 2 a13 ) x3  b2  M 2 b1 ,
(2.5)
a 
але a 21  M 2 a11  a 21   21 a11  0 .
 a11 

17
(2.6)
Тоді x1 виключається із другого рівняння.
Позначимо нові коефіцієнти:

a' 22  a 22  M 2 a12 ; a' 23  a 23  M 2 a13 ;


b' 2  b2  M 2 b1
(2.7)

Тоді друге рівняння системи (2.3) набуває вигляду:

a ' 22 x 2  a ' 23 x3  b2 . (2.8)

Далі необхідно звільнитися від коефіцієнта a31 при x1 в третьому рівнянні системи
(2.3) за аналогічним алгоритмом
4) Обчислюється множник для третього рівняння:
a31
M3  . (2.9)
a11
5) Перше рівняння системи (2.3) множиться на M 3 і віднімається від третього
рівняння. Коефіцієнт при x1 стає нулем, і третє рівняння набуває вигляду:

a '32 x 2  a'33 x3  b3 , (2.10)


де a'32  a32  M 3 a12 ,
(2.11)
a'33  a33  M 3 a13 , (2.12)
b'3  b3  M 3b1 . (2.13)

Перетворена таким чином система рівнянь (2.3) набуває вигляду:


 a11 x1  a12 x 2  a1 3 x 3  b1

0 * x1  a' 22 x 2  a' 23 x3  b' 2
   
0 * x1 a ' ' 32 x 2 a ' ' 33 x3 b' ' 3

(2.14)

Ця система рівнянь еквівалентна початковій і має певні переваги, оскільки x1


входить тільки до першого рівняння. Спробуємо тепер виключити x 2 з останнього
рівняння. Якщо a22  0 , а a32  0 , тоді переставимо друге й третє рівняння так, щоб a22  0 .
Інакше система вироджена і має безліч розв’язків.
a32
7) Обчислюємо множник M ' '3  .
a 22
(2.15)
8) Друге рівняння системи (2.11) помножується на М3 і віднімається від 3-го
рівняння:
(a32  M 3 a 22 ) x 2  (a33  M 3 a 23 ) x3  b3  b2 M 2 . (2.16)
x
При цьому коефіцієнт біля 2 дорівнює нулю:

a '32  M 3 a ' 22  0 , (2.17)


a ' ' 33  a ' 33  M 3 a ' 23 , (2.18)
b ' ' 3  b' 3  M 3 b ' 2 , (2.19)
Отримаємо a ' '33 x3  b' '3 . (2.20)
18
Замінивши в системі (2.14) третє рівняння на (2.20), отримаємо систему рівнянь
виду:  a11 x1  a1 2 x 2  a1 3 x 3  b1

0 * x1  a' 22 x2  a' 23 x3  b' 2
0 * x  0 * x2  a ' ' 33 x3  b' ' 3
 1

(2.21)
Таку систему називають системою з трикутною матрицею коефіцієнтів, що
еквівалентна СЛАР (2.3). Процес знаходження такої системи називається прямим ходом
Гауса. Знайти розв’язок такої системи просто: із 3-го рівняння знайти x3 , підставити
результат у друге і знайти x2 , підставити x2 і x3 в 1-е рівняння системи (2.21) і знайти
x1 за формулами:
b' ' 3
x3  , (2.22)
a' '33
b'  a ' 23 x3
x2  2 , (2.23)
a ' 22
b  a12 x 2  a13 x3
x1  1 . (2.24)
a11
Процес знаходження вектора розв’язку системи (2.3) називають зворотнім ходом
метода Гауса.
На рисунку 2.2 показана схема алгоритму метода Гауса з послідовним
виключенням для розв’язання системи із N рівнянь з N невідомими.
Початок

Введення
N, A, B

k=1, N-1

i=k+1, N

Перестановка
рівнянь

M = Aik / A kk

j=k, N

Обчислювання
Aij

Обчислювання
Bi

Обчислювання
Xn

j=N-1,1,-1

S=0

j=i+1, N

S=S + A i j X i

Обчислювання
Xi

Вивід
Х

Кінець

Рисунок 2.2. – Схема алгоритму розв’язання системи лінійних алгебраїчних рівнянь


методом Гауса.

19
Ця схема відповідає розглянутому алгоритму і може бути використана при
розробці програми. Блок “Перестановка рівнянь так, щоб a nn  0 ” означає деякий
алгоритм, який дає змогу не допустити помилки “ділення на 0”. Якщо прямувати до
можливого зменшення помилок округлення, то можна використати алгоритм з
вибиранням головного елементу.

Призначення індексів в схемі алгоритму (рисунку 2.2):


к – номер рівняння, яке віднімається від інших, а також номер невідомого, яке
виключається із залишених к-рівнянь;
i – номер рівняння, із якого в даний момент виключається невідоме;
j – номер стовпця.
2.3.2 Метод Гауса за схемою Халецького
Алгоритм метода включає також прямий і зворотній хід. Кінцевою метою прямого
ходу є отримання СЛАР, яка еквівалентна заданій, з верхньою трикутною матрицею
коефіцієнтів. Для цього матрицю коефіцієнтів початкової системи рівнянь А розбивають
на дві трикутні:
ACD, (2.25)
де матриця С – нижня трикутна матриця; D – верхня трикутна матриця з одиничною
головною діагоналлю:
 c11 0 0 ... 
0 1 d12 d13 ... d1n 
c c22 0 ... 
0  ... d 2 n 
C   21  ; D  0 1 d 23
.
c31 c32 c33 ... 
0 0 0 1 ... d 3n 
   
cn1 cn 2 cn 3 ... cnn  0 0 0 ... d nn 

Алгоритм визначення коефіцієнтів матриць C i D.


1) Обчислюється перший стовпець матриці С, перший рядок матриці D і y1 за
формулами:
Ci1  ai1 , i  1, n;
a
D1i  1i , i  2, n; (2.26)
a11
D11  1, i  2, n.
b
y1  1 . (2.27)
a11
2) Обчислюються елементи другого стовпця матриці С:
сi 2  ai 2  ai1d12 ; i  2, n , (2.28)
a 2i  c 2i d1i
елементи другого рядка матриці D: d 21  ,
a 22
(2.29)
b2  c 21 y1
і елемент y2 : y2  .
a 22
(2.30)
3) Обчислюють елементи третього стовпця матриці С:
c i 3  a i 3  (ci1 d 31  c i 2 d 23 ), i  2, n (2.31)
елементи третього рядка матриці D:

20
a 31  (c31 d1i  c 32 d 2i )
d 31  , (2.32)
c33
елемент у3
b3  (c31 y1  c32 y 2 )
y3  , (2.33)
c33
і т.д.

Схема алгоритму метода Гауса за схемою Халецького показана на рисунку 2.3.

Початок

Введення
N, A, B

Обчислення
сі1, di1, dii=1

i=2, N

k=і, N

Обчислювання
сki

0
k<i+1

1
Обчислювання
Dik

Обчислювання
Yi

Xn=Yn

i=1, N-1

S=0

Обчилювання
Xn-1

Вивід
Х

Кінець

Рисунок 2.3. – Схема алгоритму розв’язання лінійних алгебраїчних рівнянь методом


Гауса за схемою Халецького

Загальний вигляд формул для обчислення c ki , d ki , yi елементів матриць С, D i Y:


a1i b
d ii  1; d1i  ; c i1  a i1 , i  1, n; y1  1 , (2.34)
a11 a11
i 1
c ki  a ki   c kj d ji , k  i, n; i  2, n , (2.35)
j 1
i 1
a ik   cij d jk
d ik 
j 1
, k  i  1, n
, (2.36)
cii
21
i 1
bi   cij y ij
yi 
j 1 , (2.37)
cii
2.3.3 Метод Гауса з вибором головного елемента
Ідея цього методу виникла у зв’язку з тим, що коефіцієнти СЛАР є параметрами
реальних інженерних систем та в більшості є наближеними значеннями, тому що
отримані звичайно в результаті вимірювання або як статистичні дані. Для таких систем
рівнянь при обчисленні масштабного множника
aik
M  (2.38)
a kk
можлива ситуація при визначені a kk , що ділення наближеного числа aik на
достатньо мале число a kk веде до різкого збільшення похибки методу. Тому для того,
щоб не збільшувати похибку результату необхідно виконувати такі дії:

1) в системі (2.1) необхідно знайти з k-го стовпця найбільший за абсолютним


значенням коефіцієнт ak j ;
2) переставити k-те рівняння з рівнянням у якому знаходиться цій максимальний
коефіцієнт;
3) масштабний множник буде обчислюватись за формулою (2.38), де akk  –
максимальний коефіцієнт, а тому похибка розв’язання СЛАР у результаті арифметичних
операцій не збільшується.
Схема алгоритму метода Гауса з вибором головного елемента (прямий та обернений
хід) показана на рисунку 2.4.
Початок

Введення
N, A, B

k=1, N-1

AMAX=|Akj|

i=k+1, N

0
A ij > AMAX
1
A ij = AMAX=, 1=i

A ij > AMAX
0

1
Перестановка
рівнянь

j=k, N

A kj = A kj / A kk

A kk = 0, B=B k / A kk

i=k+1, N

M= A ik

j=k, N

A ij = A i j - MA kj

B i =B i - MB k

X n =B n / A nn

i=N-1,1, -1

S=0

j=k,N

S=S + A ij X i

Обчислювання
X i =(B i -S)/A i i

Вивід
Х

Кінець

22
Рисунок 2.4. – Схема алгоритму метода Гауса з вибором головного елемента

2.3.4 Метод Гауса з одиничними коефіцієнтами


В цьому методі зроблена спроба зменшити недоліки перших двох методів
пов’язаних з багаторазовим діленням одного наближеного числа на інше. Для цього
перед введенням масштабного множника k - те рівняння системи ділиться один раз на
діагональний елемент akk так, щоб коефіцієнт при x k  1 , а масштабний множник Мі буде
дорівнювати ak j. Результатом прямого ходу є система, еквівалентна СЛАР (2.1), з
одиничними коефіцієнтами на головній діагоналі виду:
 1 * x1  a12 x 2  ...  a1n x n  b1
 0 * x  1 * x  ...  a x  b
 1 2 2n n 2

.....................................................

 0 * x1  0 * x 2  ...  1 * x n  bn
(2.39)
Дана система схожа на систему (2.2), яка отримується в результаті прямого ходу
базового методу Гауса з послідовним вилученням невідомих і відрізняється від неї тільки
діагональними коефіцієнтами. Для отримання такої системи необхідно використовувати
алгоритм, який включає в себе наступні етапи:
1. Організація циклу по всім рівнянням від 1 до N-1 (k = 1, 2, …, N-1).
2. В кожному k-му стовпці визначається номер l-го рівняння з головним
елементом (тобто номер l-го рівняння, в якому знаходиться коефіцієнт при xn зі
всіх рівнянь починаючи з k-го до N-го).
3. Якщо номер цього рівняння l не дорівнює k (l<>k), тоді необхідно
переставити місцями l-е рівняння з k-м.
4. Нормування k-го рівняння, тобто ділення всіх коефіцієнтів k-го
рівняння на akk (головний елемент при xn ), включаючи bn .
5. Перетворення всіх і-х рівнянь, починаючи з (k+1) до N у відповідності
з базовим алгоритмом Гауса з метою отримати еквівалентну систему з
верхньою трикутною матрицею коефіцієнтів.
6. Кінець циклу по k.
Формула зворотного ходу для систем виду (2.39) спрощується і має вигляд:
xn  bn
................................
x2  b2  a 2 n x n
(2.40)
x1  b1  a1n xn  a12 x2
Схема алгоритму методу Гауса з одиничними діагональними коефіцієнтами
наведена на рисунку 2.5.

23
Початок

Введення
N, A, B

k=1, N-1

AMAX=A ij

i=k+1, N

0
A i j > AMAX

1
A i j = AMAX, 1=i

0
1 <> k
1
Перестановка
рівнянь

j=k, N

A kj = A kj / A kk

A k k = 0, B=B k / A k k

i=k+1, N

M = A ik

j=k, N

A i j = A i j - MA k j

B i =B i - MB k

X n =B n / A nn

i=N-1,1, -1

S=0

j=k,N

S=S + A i j X i

Обчислювання
X i =(B i -S)/A i i

Вивід
Х

Кінець

Рисунок 2.5. – Схема алгоритму метода Гауса з одиничними коефіцієнтами


24
.3.5 Метод Гауса-Жордана
Особливістю метода Гауса-Жордана є перетворення системи (2.1) (прямий хід) до
еквівалентної з одиничною матрицею коефіцієнтів виду:

 1* x1  0 * x 2  ...  0 * x n  b1
 0 * x  1* x  ...  0 * x  b
 1 2 n 2

.....................................................
,


 0 * x1  0 * x 2  ...  1 * x n  bn
(2.41)

тобто системи, яка містить тільки одиничну діагональ.


Для отримання такої системи в прямий хід алгоритму базового методу Гауса (з
послідовним виключенням невідомих) додатково вводяться такі дії:

1. Організація циклу по k по всім рівнянням від 1 до N-1 (k = 1, 2, …, N-1).


2. Процедура вибору головного елементу в кожному k-му стовпці при xk ;
3. Процедура нормування k-го рівняння системи, тобто в k–му рівнянні
кожен коефіцієнт ak j розділити на a kk , включаючи bk , так, щоб коефіцієнт a kk =1.
4. Перетворення всіх рівнянь системи, починаючи з 1–го до N у
відповідності з базовим алгоритмом Гауса з метою отримати еквівалентну систему
з одиничною діагоналлю. В даному випадку для розрахунку коефіцієнтів ai j
використовуються ті самі формули, що і в базовому алгоритмі Гауса:
M  aik ; aij  aij  M  akj ; bi  bi  M  bk ,
але використовуються вони для всіх рівнянь з 1–го до N крім k–го, в якому
остається коефіцієнт akk рівний одиниці.
5. Кінець циклу по k.

Обернений хід методу Гауса-Жордана дуже простий і використовує наступні


формули:
x k=b k , при k=1,2,…,n.

Схема алгоритму методу Гауса-Жордана представлена на рисунку 2.6.

25
Початок

Введення
N, A, B

k=1, N-1

AMAX=A KK , 1=k

i=k+1, N

0
A i j > AMAX
1
A i j = AMAX, 1=i

0
1 <> k
1
Перестановка
рівнянь

j=k, N

A kj = A kj / A kk

Нормування рівнянь

i=k+1, N

0
і≠k

M = A ik

j=k, N

A i j = A i j - MA k j

B i =B i - MB k

j=1,N

X i =B i

Вивід
Х

Кінець

Рисунок 2.6. – Схема алгоритму методу Гауса-Жордана


26
Джерела інформації
1. Щуп Т. Решение инженерных задач на ЕВМ. – М.: Мир, 1982. – 235с.
2. Демидович Б. П., Марон И. А. Основы вычислительной математики. –
М.: Наука, 1970. – 664 с.
3. Демидович Б. П., Марон И. А., Шувалова Е. З. Численные методы
анализа. – М.: Мир, 1967Волков Е. А. Численные методы. – М.: Наука, 1988.
4. Мак – Кракен Д., Дрон У. Численные методы и програмирование на
фортране. – М.: Мир, 1977. – 584 с.
5. Бахвалов Н. С. Численные методы . Т. И. Анализ, алгебра, обычные
диференциальные уравнения. – М.: Наука, 1975. – 631 с.

Питання та задачі до самостійної роботи


1. Яку систему називають системою лінійних алгебраїчних рівнянь?
2. Що називається розв'язком СЛАР?
3. Яка система називається сумісною і несумісною?
4. Яка система називається визначеною і невизначеною?
5. Яка система називається виродженою і невиродженою?
6. Які системи називаються еквівалентними?
7. Яку СЛАР можна розв'язати на ЕОМ?
8. Які методи відносять до точних (дати означення і перелічити методи)?
9. Які методи відносять до наближених (дати означення і перелічити методи)?
10. В чому суть алгоритмів методу Гауса?
11. В чому суть прямого ходу в методах Гауса?
12. В чому суть зворотного ходу в методах Гауса?
13. Для чого в методі Гауса з послідовним виключенням елементів вводиться
множник М і переставляють рівняння.
14. Чим відрізняються алгоритми методів Гауса з послідовним виключенням
елементів і вибором головного елементу?
15. Чим відрізняються алгоритми методів Гауса з вибором головного елементу і з
одиничною діагоналлю?
16. Чим відрізняються алгоритми методів Гауса з одиничною діагоналлю і Гауса-
Жордана?
17. В чому суть методу Гауса за схемою Халецького?
18. Яку систему отримано в результаті прямого ходу методу Гауса-Жордана?

Лекція 3.
Метод ітерації, Зейделя для СЛР.

План лекції:

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


2. Метод Зейделя

27
Розглянемо застосування методу простої ітерації для знаходження коренів системи
лінійних алгебраїчних рівнянь (2.1) п-го порядку з п невідомими
Спочатку систему (2.1) зводимо до нормального виду. Для цього, припускаючи, що
діагональні елементи не дорівнюють нулю, тобто аіі  0 і  1,2,...,n  , виразимо x1 з
першого рівняння системи, x 2 - з другого і так далі. В результаті отримаємо систему,
еквівалентну системі (2.1):
 b a12 a13 a1 n
 x1  1
 x2  x3  .. .  x
a11 a11 a11 a11

 b2 a 21 a 23 a2 n
 x2   x  x3  .. .  x
 a 22 a 22 a 22 a 22
.. .. ... .... ... ... .... ... .. ... .... ... ... .... ... ... ..

 bn a1 n a2 n a n 1
 xn   x1  x2  .. . 
 ann a nn a nn a nn

(2.5)
b a
Позначивши a і   i ; a   ij , де i  1,2 ,..., n; j  1,2 ,...,n ,
ij
перепишемо систему (2.5)
ii ii

наступним чином:
 x1
 x


1 



1 2 x 2
x1



1 3 x3
x3


 

1n 

x n
x n


   
 2 2 2 1 2 3  2 n

. ... ... ... ... ... ... .. ... ... ...... ... ... .. ... ... ...... ..

 x n  n  n1 x1  n 2 x 2    n ,n 1

(2.6)
Представлення системи лінійних рівнянь у вигляді (2.6) називається нормальним.
Вводимо позначення
  11  12 ...  1n   1 
   
  22 ...  2 n   
   21  ,   2,
... ... ... ... 
   
  n1  n2 ...  nn   n 
і запишемо систему (2.6) в матричній формі: X    X
або
 x1   1    11  12 ...  1n   x1 
       
 x2    2    21  22 ...  2 n   x2 
         ... ... 
... ...    
(2.7)
       
 xn    n    n1  n 2 ...  nn   xn 

Розв’яжемо систему (2.7) методом ітерацій. За нульове наближення приймемо


стовпчик вільних членів:
 x1( 0 )   1 
 (0)   
 x2    2  - нульове наближення,
   
 (0)   
x   
 n   n
Далі побудуємо матриці-стовпці
 x1(1)   1    11  12 ...  1n   x1( 0 ) 
 (1)       (0) 
x 
 2   2   21   ...  2 n   x2 
         ... ... ... ...      - перше наближення,
22

 (1)       ( 0 ) 
 x       ...   
 n   n   n1 n2 nn   x n 

28
 x1( 2 )   1    11  12 ...  1n   x1(1) 
 ( 2)       
 x2    2    21  22 ...  2 n   x2(1) 
         ... ... 
... ...    
- друге наближення
 ( 2)       
 x       ...  nn   xn(1) 
 n   n   n1 n2

і так далі.
Будь-яке ( k  1 ) -е наближення знаходимо за формулою:
X ( k 1 )    X ( k ) , ( k  0 ,1,...,n ) .
Ітераційний процес триває доти, доки всі значення xi не стануть близькими до
(k )

xi( k 1 ) . Близькість цих значень можна характеризувати максимальною абсолютною


величиною їх різниці  . Тоді при заданій допустимій похибці   0 критерій закінчення
ітераційного процесу можна записати у вигляді
  max xi( k )  xi( k 1 )   .
1i  n

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


невідомого і називається критерієм по абсолютних відхиленнях.
Можна користуватись іншим критерієм зупинки ітераційного процесу, а саме:
критерієм по відносних різницях, тобто умову зупинки ітераційного процесу записати у
вигляді
xi( k )  xi( k 1 )
max 
1 i  n xik
Розглянемо для матриці  числову характеристику, яка називаються нормою.
Нормою матриці А=  aij  називається дійсне число A , яке задовольняє наступним
умовам:
1. A  0 (причому A  0 тоді і тільки тоді, коли А=0);

2. A    A , де  - дісне число
3. A B  A  B ;

Норма метриці може обчислюватись різними способами. Як правило, на практиці


використовують одну з трьох формул обчислення норми:
n n
 1  max   ij ,  2  max   ji ,
2

i
 3
  ij
j 1 j i,j
i 1

Має місце таке твердження. Ітераційний процес збігається до єдиного розв’язку при
будь-якому виборі початкового наближення, якщо яка-небудь з норм матриці  менша
за одиницю.
Приклад. Методом простої ітерацій розв’язати систему з точністю   0,01 :
8 x1  x2  x3  26,

 x1  5x2  x3  7,
x  x2  5 x3  7.
 1

1) Приводимо систему до нормального вигляду:


 x1  3, 25  0,125 x 2  0,125 x3 ,  0  0,125  0,125   3, 25 
    
 x 2  1, 4  0, 2 x1  0, 2 x3 ,     0,2 0 0, 2 ;   1, 4 .
   0, 2   
 x3  1, 4  0, 2 x1  0, 2 x 2 ;  0, 2 0   1, 4 

Неважко переконатись,  3
 i, j
ij
 0,19125  1 , тобто ітераційний процес буде
збігатись незалежно від вибору початкового наближення.
2) Побудуємо послідовні наближення.
Нульове наближення:

29
 x1 0    3,25 
   
x  0    x2 0     1,4 .
 x  0    1,4 
 3   
Перше наближення:
 x1 1   3,25   0  0,125  0,125  3,25   2,9 
  1        
 x2    1,4     0,2 0 0,2  1,4   1,03 .
 x  1   1,4    0,2 0,2 0  1,4  1,03 
 3    
При цьому абсолютне відхилення дорівнює:
  max x1(1)  x1( 0 ) , x2(1)  x2( 0 ) , x3(1)  x3( 0 )   max 0,35;0,37;0,37  0,37  0,01
Друге наближення:
 x1 2    3,25   0  0,125  0,125  2,9   2,992 
  2        
 x2    1,4     0,2 0 0,2 1,03    1,026 .
 x  2    1,4    0,2 0,2 0 1,03   1,026 
 3    
При цьому абсолютне відхилення дорівнює:
  max x1( 2 )  x1(1) , x2( 2 )  x2(1) , x3( 2 )  x3(1)   max 0,092;0,004;0,004  0,092  0,01
Трете наближення:
 x1 3    3,25   0  0,125  0,125  2,992   2,9935 
  3        
 x2    1,4     0,2 0 0,2  1,026    1,0068 .
 x  3    1,4    0,2 0,2 0  1,026   1,0068 
 3    
При цьому абсолютне відхилення дорівнює:
  max x1( 3)  x1( 2 ) , x2( 3)  x2( 2 ) , x3( 3)  x3( 2 )   max 0,0015;0,0192;0,0192  0,0192  0,01 Четверте
наближення:
 x1 4    3,25   0  0,125  0,125  2,935   2,9983 
  4        
 x2    1,4     0,2 0 0,2 1,0068  1,00266.
 x  4    1,4    0,2 0,2 0 1,0068 1,00266
 3    
При цьому абсолютне відхилення дорівнює:
  max x1( 4 )  x1( 3) , x2( 4 )  x2( 3) , x3( 4 )  x3( 3)   max 0,0048;0,00414;0,00414  0,0048  0,01На
цьому процес ітерації закінчено.
Таким чином, x1  2,9983; x2  1,00266; x3  1,00266 і з точністю до 10 2 отримуємо
x1  3, x 2  1, x3  1
Нижче наведено блок-схему розв’язання системи лінійних рівнянь методом простої
ітерації, яку можна реалізувати на ЕОМ (блок-схему алгоритму наведено у додатку Б).
Метод Зейделя
Метод Зейделя є модифікацією методу ітерацій. В методі Зейделя при обчисленні
(k  1) -го наближення невідомого xi враховуються вже знайдені раніше (k  1) -і
наближення невідомих x1 , x2 ,..., xi 1 .

Нехай дана лінійна система

30
 x1   1 11 x1   12 x 2 ...   1n xn ,
 x     x   x  ...   x ,


2 2 21 1 22 2 2n n

 x3   3   31 x1   32 x2  ...   3n x2 , (2.8)
 

 xn   n   n1 x1   n 2 x2  ...   nn xn .

Вибираємо довільно початкові наближення коренів x1 , x 2 ,..., x n і підставляємо в
(0) (0) (0)

перше рівняння системи (2.8):


x1( 1 )  1  11 x1( 0 )   12 x2( 0 )  ...   1n xn( 0 ) .
Одержане перше наближення x1 підставляємо в друге рівняння системи (2.8):
(1)

x2( 1 )   2   12 x1( 1 )   22 x2( 0 )  ...   2 n xn( 0 ) .


Перші наближення x1 і x2 підставляємо в третє рівняння системи (2.8):
(1) (1)

x2( 1 )   3   31 x1( 1 )   32 x2( 1 )  ...   3 n xn( 0 ) .


і так далі. Нарешті,
xn(1)   n   n1 x1(1)   n 2 x2(1)  ...   n ,n 1 xn(1)1   nn xn( 0 )
Аналогічно будуємо наступні ітерації.
Таким чином, припускаючи, що k  i наближення коренів xi відомі, методом
(k)

Зейделя будуємо ( k  1 )  i наближення за наступними формулами:


n
x( k 1 )
1  1   ij xi( k ) ,
i 1
n
x ( k 1 )
2  2   x ( k 1 )
21 1   2 j xi( k ) ,
i 2

n1
xn   n   nj xi( k 1 )   nn xn( k ) ,
( k 1 )

i 1

де k  0 ,1,2 ,..., n.
Процес Зейделя для лінійної системи X    X так само, як і процес ітерацій,
збігається до єдиного розв′язку при будь-якому виборі початкового наближення, якщо
яка-небудь з норм матриці  менша за одиницю, тобто якщо
n n
 max   ij  1 , або 
2
 1 2
 max   ji  1 або  3
   ij 1
i j 1 j i,j
i 1
Процес Зейделя збігається до єдиного розв′язку швидше за процес простої ітерації.
Критерії визначення умов закінчення ітераційного процесу, як і для методу простої
ітерації, визначаються по абсолютних відхиленнях  1imax xi( k )  xi( k 1 )   або по відносних
n

xi( k )  xi( k 1 )
різницях max  .
1i  n xik
Приклад. Методом Зейделя розв′язати систему лінійних рівнянь
 7 ,6 x1  0 ,5 x 2  2,4 x3  1,9 ,

 2,2 x1  9,1x 2  4,4 x3  9,7 ,
 1,3 x  0,2 x  5,8 x  1,4.
 1 2 3

1 ) Приведемо систему до нормального вигляду:

31
 10 x1  1,9  2 ,4 x1  0,5 x 2  2,4 x3 ,

 10 x 2  9,7  2 ,2 x1 0 ,9 x2  4 ,4 x3 ,
10 x  1,4  1,3 x  0 ,2 x  4,2 x ,
 3 1 2 3

або
 x1  0 ,19  0 ,24 x1  0 ,05 x 2  0 ,24 x3 ,

 x 2  0 ,97  0 ,22 x1  0 ,09 x 2  0 ,44 x3 ,
 x  0 ,14  0 ,13 x  0 ,02 x  0 ,42 x .
 3 1 2 3

2) За нульові наближення візьмемо відповідне наближення значення вільних членів:


x1( 0 )  0 ,19; x 2( 0 )  0.97; x3( 0 )  0 ,14.
3) Будуємо ітерації методом Зейделя.
Перші наближення:
x1( 1 )  0,19  0 ,24  0 ,19  0 ,05  0 ,97  0,24  ( 0 ,14 )  0 ,2207 ,
x2( 1 )  0 ,97  0 ,22  0,2207  0 ,09  0 ,97  0 ,44  ( 0 ,14 )  1,0703,
x3( 1 )  0 ,14  0 ,13  0 ,2207  0 ,02  1,0703  0 ,42  ( 0 ,14 )  0 ,1915.
Другі наближення:
x1( 2 )  0 ,19  0,24  0 ,2207  0,05  1,0703  0 ,24  ( 0 ,1915 )  0 ,2354 ,
x2( 2 )  0 ,97  0 ,22  0,2354  0 ,09  1,0703  0,44  ( 0 ,1915 )  1,0988,
x3( 2 )  0 ,14  0 ,13  0 ,2354  0,02  1,0988  0 ,42  ( 0 ,1915 )  0 ,2118 .
і т.д.
Розв′язок наведено в таблиці
№ x1 x2 x3
ітерації
0 0,19 0,97 -0,14
1 0,2207 1,0703 -0,1915
2 0,2354 1,0988 -0,2118
3 0,2424 1,1088 -0,2196
4 0,2454 1,1124 -0,2226
5 0,2467 1,1138 -0,2237
6 0,2472 1,1143 -0,2241
7 0,2474 1,1145 -0,2243
8 0,2474 1,1145 -0,2243

Побудова ітерацій закінчується, коли із заданою точністю набуваємо однакові


значення в двох послідовних ітераціях. В нашому прикладі це ітерації 7 і 8. Остаточна
відповідь: x1  0,248; x 2  1,114; x 3  0,224.

Лекція 4, 5

Розвязування рівнянь наближеними методами.


План лекції:
1. Загальні поняття тпа визначення
2. Принципи розв’язання нелінійних рівнянь на ЕОМ
3. Чисельні методи уточнення коренів
4. Метод половинного ділення
32
5. Метод хорд
6. Метод Ньютона (метод дотичних)
7. Комбінований метод
8. Метод ітерацій (метод послідовних наближень)

Інженеру часто доводиться вирішувати алгебраїчні та трансцендентні рівняння, що


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

розв’язанням рівнянь виду

 ( x )  g( x ) , (4.1)
або f ( x )  0 (4.2)
де  ( x ) , g ( x ) та f ( x)  0 – нелінійні функції, визначенні на деякій числовій множині
X , яка називається областю допустимих значень рівняння.
Рівняння виду (4.1) або (4.2) називаються нелінійними рівняннями. Всі нелінійні
рівняння можна поділити на алгебраїчні та трансцендентні (рис.4.1)

Рисунок 4.1 – Класифікація нелінійних рівнянь

Функція називається алгебраїчною, якщо для отримання значення функції на заданої


множині Х потрібно здійснити арифметичні операції та піднесення в степінь з
раціональним або ірраціональним показником. Рівняння, які містять алгебраїчні функції
називаються нелінійними алгебраїчними рівняннями.
До трансцендентних функцій відносять всі неалгебраїчні функції:
Показникові ах, логарифмічні log a x , ln x , тригонометричні sin x, cos x, tgx, ctgx,
обернені тригонометричні arcsin x ,arccos x ,arctgx ,arcctgx та інші.

33
Нелінійні рівняння, які містять трансцендентні функції називаються нелінійними
трансцендентними рівняннями.
Розв’язком нелінійного рівняння на ЕОМ називається вектор X , координати якого
 x1 , x2 ,..., xn  при підстановці в початкове рівняння перетворює його в тотожність.
В нелінійному рівнянні виду

a0 x n  a1 x n  1  a2 x n  2  ...  an  1 x  an  0 (4.3)
і-та координата вектора X  x1 , x2 ,..., xn  називається і- тим коренем рівняння, а а1,
а2, …, ат - коефіцієнтами рівняння (4.3).
4.2 Принципи розв’язання нелінійних рівнянь на ЕОМ

Процес розв’язання нелінійних рівнянь вигляду (4.1) або (4.2) на ЕОМ розбивається
на два етапи:
1. відокремлення коренів;
2. уточнення коренів.
Перший етап іноді можна виконувати вручну, другий же виконується за допомогою
спеціальних методів уточнення коренів та програм. Розглянемо особливості етапу
відокремлення коренів.
Відокремлення коренів

Корінь  рівняння f ( x)  0 , вважається відокремленим на відрізку  a, b , якщо на


цьому відрізку дане рівняння не має інших коренів.
Відокремити корені – це означає розбити всю область допустимих значень X (ОДЗ)
на відрізки, в кожному з яких міститься один корінь (рис 4.2). Відокремлення коренів
можна здійснити двома способами – графічним та аналітичним.

Рисунок 4.2 – Приклад розбиття ОДЗ на відрізки з єдиним коренем

Графічний метод. Будують графік функції y  f (x) для рівняння виду f ( x)  0 або
представляють рівняння у вигляді  ( x)  g ( x) та будують графіки функцій y   (x) та
y  g (x) . Значення дійсних коренів рівняння є абсцисами точок перетину графіка функції
y  f (x ) з віссю Ox або абсцисами точок перетину графіків функцій y   (x ) та y  g (x) .
Відрізки, в яких знаходиться тільки по одному кореню, легко знаходяться наближено.
Приклад 4.1. Знайти наближено графічним способом корені рівняння lg x - 3x  5  0
.
Розв’язок. Перепишемо рівняння наступним чином: lg x  3x - 5. Функції в лівій і
правій частині рівняння мають спільну область визначення: інтервал 0 < x < +  . Тому
будемо шукати корені саме на цьому інтервалі.
Будуємо графіки функцій y  lg x і y  3x  5 (рис. 4.3).

34
Рисунок 4.3 – Графічна інтерпретація прикладу 4.1

Пряма y  3x  5 перетинає логарифмічну криву в двох точках з абсцисами х1 


0.00001 і х2  1.75. На рисунку 4.4 важко показати перетин графіків цих двох функцій в
першій точці, але, враховуючи, що нижня вітка логарифмічної кривої необмежено
прямує до осі Оу, можливо уявити, що перетин цих двох графіків пройде поблизу точки
перетину графіка функції y  3x  5 і осі Оу. Абсциса точки перетину наближено
дорівнює 0.00001. Отже корені рівняння х1  0.00001 і х2  1.75.

Рисунок 4.4 – Графічна інтерпретація прикладу 4.1

35
Рисунок 4.5.a – Графічна інтерпретація прикладу 4.2

Приклад 4.2. Розв’язати графічно рівняння х3-2х2+2х-1=0.


Розв’язок. Перший спосіб: Побудуємо графік функції y=x3-2x2+2x-1 і визначимо
абсциси точок перетину цього графіка з віссю Ох. Крива перетинає Ох в точці х=1, звідси
витікає, що рівняння має один корінь (рис.4.5.а). (Відмітимо, що алгебраїчне рівняння
третього степеня має один або три дійсних кореня. Так як крива перетинає вісь абсцис
тільки в одній точці, то дане рівняння має тільки один дійсний корінь. Інші два кореня -
комплексні.)
Другий спосіб: Представимо дане рівняння в вигляді х3=2х2-2х+1 і побудуємо
графіки функцій y=х3 і y=2х2-2х+1. Знайдемо абсцису точки перетину цих графіків;
отримаємо х=1 (рис.4.5.б), або область, де знаходиться точка перетину (тобто корінь
рівняння).
Приклад 4.3. Знайти графічно корені рівняння 2  2x .
x

Розв’язок. Будуємо графіки функцій y  2 x та y  2 x . Ці графіки перетинаються в


двох точках, абсциси яких рівні. Дане рівняння має два кореня y  2 x та y  2 x . (рис.4.6).

Рисунок 4.5.б – Графічна Рисунок 4.6 – Графічна


інтерпретація прикладу 4.2 інтерпретація прикладу 4.3

Аналітичний метод. Аналітично корні рівняння f ( x)  0 можна відокремити,


використовуючи деякі властивості функцій та однією з розглянутих нижче теорем.
36
Теорема 1. Якщо функція f (x) неперервна на відрізку  a, b і приймає на кінцях
цього відрізку значення різних знаків, то всередині відрізка  a, b існує хоча б один
корінь рівняння f ( x)  0 (рис.4.7).

Рисунок 4.7 – Графічна інтерпретація теореми 1

Теорема 2. Якщо функція f ( x ) неперервна та монотонна на відрізку  a ,b і приймає


на кінцях відрізка значення різних знаків, то всередині відрізка  a ,b існує корінь
рівняння f ( x )  0 , і цей корінь єдиний (рис.4.8.а).

Рисунок 4.8.а – Графічна інтерпретація теореми 2

Теорема 3. Якщо функція f (x) неперервна на відрізку  a, b і приймає на кінцях


цього відрізку значення різних знаків, а похідна f ' ( x) зберігає постійний знак всередині
відрізка, то всередині відрізка існує єдиний корінь рівняння f ( x)  0 (рис.4.8.б).

Рисунок 4.8.б – Графічна інтерпретація теореми 3

Для відокремлення коренів аналітичним методом можна рекомендувати


наступний алгоритм:
1. Дослідити дане рівняння на монотонність і неперервність, визначити область
допустимих та граничних значень.
2. Знайти f ' ( x) – першу похідну, прирівняти її до нуля та знайти критичні
точки.
3. Скласти таблицю знаків функції f (x) , використовуючи для x значення
критичних точок, граничних значень з ОДЗ і точок, отриманих на першому кроці при
аналізі даного рівняння.

37
4. Визначити інтервали, на кінцях яких функція приймає значення протилежних
знаків. Всередині цих інтервалів існує по одному і тільки одному кореню.

Приклад 4.4. Відокремити корені рівняння x3+3x2-24x+1=0


Розв’язок.
1. ОДЗ рівняння (- ; )
2. Визначимо першу похідну функції f(x): f'(x)=3x 2+6x-24 та критичні точки,
для чого f'(x)=0: x1=-4; x2=2
3. Складемо таблицю знаків виду

x - -4 2 +

Sign f(x) - + - +

В результаті аналізу таблиці отримаємо три відрізка на яких функція змінює знак: (-
 ,-4], [-4,2], [2,  ).
Розширимо таблицю, щоб отримати точні значення кінців відрізків
+
x - -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 

Sig
n f(x) - - + + + + + + + - - - + +
Аналіз таблиці дозволяє обрати три відрізка, на яких функція f(x) змінює знак.
4) Наступним етапом дослідження рівняння на ЕОМ є етап уточнення значення
кореня з заданою  на кожному відрізку.
4.3 Чисельні методи уточнення коренів

Розглянемо суть другого етапу наближеного розв’язання нелінійних рівнянь –


уточнення коренів, тобто доведення їх до заданого степеню точності. Для уточнення
коренів нелінійного рівняння з заданою похибкою  на деякому відрізку  a, b на ЕОМ в
інженерній практиці найбільш широко використовують:
 метод половинного ділення (метод бісекції);
 метод хорд (метод пропорційних частин);
 метод дотичних (метод Ньютона);
 комбінований метод (метод хорд та дотичних);
 метод ітерацій (метод послідовних наближень).
Всі ці методи являються ітераційними, тобто побудовані на алгоритмах, в яких одна
з їх частин повторюється багаторазово, при чому кількість повторень залежить від
початкових даних (від заданої користувачем похибки, від відрізка дослідження та інше).
Розглянемо особливості цих методів та алгоритмів, на яких вони базуються.
4.3.1 Метод половинного ділення

Постановка задачі
Нехай маємо рівняння f ( x)  0 , де f (x) – неперервна, монотонна нелінійна функція,
яка має на відрізку  a, b єдиний корінь  , тобто добуток f (a)  f (b)  0 , причому b  a   ,

38
де  – задана похибка обчислень. Потрібно знайти значення кореня  з заданою
похибкою  (рис. 4.9).

Рисунок 4.9 – Графічна інтерпретація методу половинного ділення

Алгоритм методу (рис.4.9) оснований на багатократному ділені навпіл і


звужуванні досліджуваного відрізка  a, b , який отримали в результаті попереднього
дослідження функції f (x) (відокремлення коренів).
Метод половинного ділення – це найпростіший метод уточнення кореня рівняння.
Він сходиться для будь-яких неперервних функцій f (x) , в тому числі
недиференційованих. Швидкість сходження невелика
ba
N  log 2
 .

Алгоритм методу

1. На відрізку  a, b вибираємо точку x0 , яка розділяє його на два рівних


відрізки  a, x0  і  x0 , b , довжина яких рівна і знаходиться за формулою
ab
x0 
2
2. Перевіряємо чи f ( x0 )  0 , якщо так, то x0 – точний корінь початкового
рівняння і переходимо до пункту 6.
3. У випадку, коли f ( x0 )  0 , то з двох отриманих відрізків  a, x0  і  x0 , b
вибираємо той, на кінцях якого функція f (x) приймає значення протилежних знаків,
тобто, якщо f ( x0 )  f (a)  0 , тоді залишаємо відрізок  a, x0  і точку b переносимо в точку
x ( b  x0 ); якщо f ( x0 )  f (a)  0 , то залишаємо відрізок  x0 , b і переносимо точку a в точку
x ( a  x0 ) і переходимо до пункту 1.
4. Процес ділення відрізка навпіл виконується доти, поки на якомусь етапі, або
середина відрізка буде коренем, або буде виконана умова закінчення ітераційного
процесу: b  a   .
ba
x
5. У цьому випадку за наближене значення кореня вибирають 2 .
6. Вивід результатів. Кінець алгоритму.
ba
7. Відомо, що при цьому похибка не перевищує , де k – число ітерацій.
2  k 1

Схема алгоритму розв'язання нелінійного рівняння методом половинного ділення


представлена на рисунку 4.10.
39
Рисунок 4.10 – Схема алгоритму розв'язання нелінійного рівняння методом
половинного ділення

4.3.2 Метод хорд

Метод хорд є одним з найбільш поширених методів розв’язання алгебраїчних і


трансцендентних рівнянь. В літературі він також зустрічається під назвою "метод
лінійного інтерполювання" і "метод пропорційних частин".
Постановка задачі
Розглянемо рівняння f ( x)  0 , де f (x) неперервна нелінійна функція, яка на відрізку
 a, b монотонна, диференційована і має єдиний корінь  (тобто f (a)  f (b)  0 ). Потрібно
знайти наближене значення кореня  з заданою похибкою  .
Суть методу хорд полягає в тому, що на достатньо малому відрізку  a, b дуга
функції f (x) замінюється хордою ab, яка її стягує. За наближене значення кореня
приймається точка х1 перетину хорди з віссю Ox (рис.4.11.а).

40
Рисунок 4.11 – Графічна інтерпретація методу хорд і процедури визначення
рухомого кінця хорди

Рівняння хорди, яка проходить через точки має вигляд


y  f ( x) xa

f (b)  f ( a ) b  a (4.4)
Знайдемо значення x1 , для якого y  0, тобто для нерухомого кінця:
f ( a )( b  a )
x1  a 
f (b) f (a ) (4.5)
Ця формула називається формулою методу хорд. Тепер корінь знаходиться 
всередині відрізка  x1 , b . Значення кореня x1 можна уточнити за допомогою метода
хорд на відрізку  x1 , b , тоді нове наближене значення кореня х2 знаходиться за
формулою
f ( x1 )  ( b  x1 )
x 2  x1 
f ( b )  f ( x1 ) .
Аналогічна для всякого (i  1) -го наближення до точного значення кореня  даного
рівняння використовується формула:
f ( xi )  ( b  xi )
xi 1  x i 
f ( b )  f ( xi )
(4.6)
Процес стягування хордою продовжується багаторазово доти, поки не одержано

наближений корінь із заданим степенем точності

41
xi 1  xi   (4.7)
де – наближені значення коренів рівняння
xi 1 , xi f ( x)  0 ,
відповідно на (i  1) і i-

му ітераційному кроці; – задана точність обчислень.
Слід відмітити, що розглянутий випадок (рис.4.11.а) перетину функції f (x) відрізку
 a, b не є єдиним. Існує ще три варіанти перетину функції, кожний з яких відрізняється
напрямком побудови хорд і відповідно рухомими кінцями відрізку. Наприклад, на
рис.4.11.а,б рухомий кінець відрізку а, а на рис.4.11.в,г рухомий кінець – b і відповідно
формула 3.5 для нього має вигляд:
f (b )(b  a )
x1  b 
f (b ) f (a )
Для автоматизації цього алгоритму необхідно розробити правило для автоматичного
вибору рухомого кінця хорди і відповідно формули для обчислення наближеного
значення кореня. Існує два правила визначення рухомого кінця хорди.

Правило 1. Нерухомим кінцем відрізка є той, для якого знак функції співпадає із
знаком другої похідної. Якщо f (b)  f ' ' ( x)  0 , то нерухомим є кінець b , а всі наближення
до кореня  лежать зі сторони кінця a . Якщо f (a)  f ' ' ( x)  0 , то нерухомим є кінець a , а
всі наближення до кореня  лежать зі сторони кінця b (рис.4.11.а,б,в,г).

Правило 2. Якщо добуток першої на другу похідну функції f (x) більший за нуль:
f ' f ' '  0 , то рухомий кінець a ; якщо добуток першої на другу похідну менший за нуль:
f ' f ' '  0 , то рухомий кінець b .Схема алгоритму розв'язання нелінійного рівняння
методом хорд представлена на рисунку 4.12.

42
Рисунок 4.12 - Схема алгоритму розв'язання нелінійного рівняння методом хорд

Особливості розробки функцій, які реалізують алгоритм методу

1. Метод половинного ділення та метод хорд розробляються як незалежні


підпрограми-функції з вхідними параметрами: a, b,  та вихідними: x, k, де x –
наближене значення кореня, k– кількість ітерацій.

2. В цих підпрограмах-функціях необхідно передбачити перевірку вхідних


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

3. Обчислення перших та других похідних здійснюється за допомогою


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

43
3.3.3 Метод Ньютона (метод дотичних)

Метод послідовних наближень, розроблений Ньютоном, дуже широко


використовується при побудові ітераційних алгоритмів. Його популярність обумовлена
тим, що на відміну від двох попередніх методів замість інтерполяції по двом значенням
функції в методі Ньютона здійснюється екстраполяція за допомогою дотичної до кривої
в одній точці.
Постановка задачі
Нехай корінь рівняння f(x)=0 відокремлений на відрізку  a, b , на якому нелінійна
функція f(x)монотонна і має різні знаки на кінцях відрізку, причому похідні f ' ( x) та
f ' ' ( x) неперервні та зберігають постійні знаки на всьому відрізку  a, b  . Потрібно знайти
наближене значення кореня  з заданою похибкою  .
Геометричний зміст метода Ньютона полягає в тому, що дуга кривої y  f (x) на
відрізку  a, b замінюється дотичною до цієї кривої, а наближене значення кореня
визначається як точка перетину дотичної з віссю Ох, проведеної з одного з кінців
досліджуваного відрізку. Рівняння дотичної має вигляд:
f ( xi )
xi  1  xi 
f ' ( xi ) .
Перший випадок. Нехай f(a)<0, f(b)>0, f(x)>0, f''(x)>0 (рис. 4.13, а) або f(a)>0,
f(b)<0, f'(x)<0, f''(x)<0 (рис. 4.11, б). Проведемо дотичну до кривої y  f (x) в точці B0(v;
f(b)) і знайдемо абсцису точки перетину дотичної з віссю Ox . Відомо, що рівняння
дотичної в точці B0(b; f(b)) має вид: y-f(b)=f'(b) (x-b).
Припускаючи y=0, x=x1, отримаємо
f (b)
x1  b  (3.8)
f ( b )
Тепер корінь рівняння знаходиться на відрізку [a, x1]. Застосовуючи знову метод
Ньютона, проведемо дотичну до кривої в точці B1(x1; f(x1)) і отримаємо
f ( x1 )
x2  x1  ,
f ( x1 )
і так далі (рис. 4.13).

Рисунок. 4.13 – Геометричний зміст методу Ньютона для випадків, коли

44
а) функція, яка досліджується, ввігнута (f'(x)>0, f''(x)>0)
б) функція, яка досліджується, опукла (f'(x)<0, f''(x)<0)
Даний процес ітераційний, тому формула для будь-якого n-го кроку ітерації має
вигляд:
f ( xn )
f ( xn ) . (3.9)
x n  1  xn 

В результаті отримана послідовність наближених значень x1, x2, ..., xn , ..., кожний
наступний член якої ближчій до кореня  , ніж попередній. Однак всі xn залишаються
більше істинного кореня  , тобто xn - наближене значення кореня  з надлишком.
Процес визначення кореня продовжується багаторазово доти, поки не одержано
наближений корінь із заданим степенем точності
x x ,
i 1 i (3.7)
де xi 1 , xi – наближені значення коренів рівняння f ( x)  0 , відповідно на (i  1) і i -
му ітераційному кроці;  – задана похибка обчислень.

Другий випадок. Нехай f(a)<0, f(b)>0, f(x)>0, f(x)<0 (рис. 4.14, а) або f(a)>0,
f(b)<0, f'(x)<0, f''(x)>0 (рис. 4.14).

Рисунок 4.14 –Геометричний зміст методу Ньютона для випадків, коли

а) функція, яка досліджується, опукла (f'(x)>0, f''(x)<0)


б) функція, яка досліджується, ввігнута (f'(x)<0, f''(x)>0)

Якщо провести дотичну до кривої y  f ( x ) в точці B, то вона перетне вісь абсцис в


точці, яка не належить відрізку  a, b . Тому проведемо дотичну в точці А0(a; f(a)) і
запишемо її рівняння для даного випадку: y - f(a) = f'(a) (x - a).
Припускаючи, що y = 0, x = x1, отримаємо
f(a)
x1  a 
f ( a ) (4.10)
Корінь  знаходиться тепер на відрізку [x1, b]. Застосовуючи знову метод Ньютона,
проведемо дотичну до кривої в точці A1(x1; f(x1)) і отримаємо
f ( x1 )
x2  x1  ,
f ( x1 )

45
f(x )
і загалом x
n  1
 x
n

n
f ( x )
n
. (4.11)

В результаті отримаємо послідовність наближених значень x1, x2,..., xn ,..., кожний


наступний член якої ближчій до істинного кореня , ніж попередній, т.б. xn - наближене
значення кореня  з недостачею.
Порівнюючи формули (4.10), (4.11) з раніше виведеними, (а також враховуючи
випадки, які розглядаються на рисунках 4.14а,б помічаємо, що вони відрізняються одна
від одної тільки вибором початкового наближення: в першому випадку за x0 приймався
кінець b відрізка, в другому - кінець а.
При виборі початкового наближення кореня необхідно використовувати наступне
правило: за початкову точку слід вибирати той кінець відрізка [a, b], в якому знак
функції співпадає зі знаком другої похідної. В першому випадку f(b)f''(x)>0 і початкова
точка b=x0, в другому f(a) f''(x)>0 і в якості початкового наближення беремо a=x0.

Для оцінки похибки можна користуватися загальною формулою


f ( xn )
  xn 
, m (4.12)
де m  min f ( x ) (ця формула підходить і до метода хорд).
[a, b]

В тому випадку, коли відрізок  a, b настільки малий, що на ньому виконується


умова М2<2m1 , де M2  min f ( x) , а m  min f ( x) , точність наближення на n-му кроці
[a, b] 1 [ a, b]

інтерполяційного процесу оцінюється наступним чином: якщо


x x < ,  -x < 2.
n n 1 n

Якщо похідна f'(x) мало змінюється на відрізку  a, b , то для спрощення обчислень


можна користуватися формулою
f ( xn )
xn  xn 
f ( x 0 )
, 1
(4.13)
тобто значення похідної в початковій точці достатньо обчислити тільки один раз.
Процес побудови дотичної продовжується багаторазово доти, поки x  x   , де  i i

– задана точність обчислень; xi 1 , xi – наближені значення кореня рівняння f ( x)  0 ,


відповідно на (i  1) та і - тому ітераційному кроці. На рисунку 4.15 представлена схема
алгоритму цього методу.

46
Рисунок 4.15 – Схема алгоритму розв'язання нелінійного рівняння методом
дотичних

Правила визначення рухомого кінця для метода Ньютона

Правило 1. Якщо добуток першої на другу похідну функції f (x) більший за нуль:
f ' f ' '  0 , то рухомий кінець b ; якщо добуток першої на другу похідну менший за нуль:
f ' f ' '  0 , то рухомий кінець a , тобто дотична будується в кінці a .

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

4.3.4 Комбінований метод

Методи хорд і дотичних дають наближення кореня з різних сторін відрізку  a, b .


Тому їх часто використовують в поєднанні один з одним, і процес уточнення кореня 
нелінійного рівняння (4.1) проходить скоріше.
47
Постановка задачі
Нехай дано рівняння (4.1) f ( x)  0 , де f (x) неперервна нелінійна функція, яка на
відрізку  a, b монотонна, диференційована і має єдиний корінь  (тобто f (a)  f (b)  0 ).
Потрібно знайти наближене значення кореня  з заданою похибкою  .
Використаємо комбінований метод хорд і дотичних з урахуванням поведінки
функції на відрізку  a, b . Якщо f'(x)f''(x)>0, то метод хорд дає наближення кореня з
недостачею, а метод дотичних – з залишком (рис.4.16.а,б). Якщо ж f'(x)f''(x)<0, то
методом хорд отримуємо значення

Рисунок 4.16 – Геометричний зміст комбінованого методу

методом дотичних – з недостачею (рис.4.16.в,г). Однак в усіх випадках справжній


корінь  знаходиться між наближеними коренями, які отримані за методом хорд і
методом дотичних, тобто виконується нерівність а хn    хnb, де хn – наближене
значення кореня з недоліком, xn - з надлишком.
Суть методу полягає в тому, що на досить малому відрізку  a, b (отриманому при
відокремлені коренів) дуга функції f (x) з одного кінця відрізка стягується хордою, а з
другого – дотичною. Тобто, якщо сумістити обидва методи, то після знаходження
коренів відрізок  a, b на кожному кроці ітерації звужується шляхом переносу кінців
відрізка  a, b в точки перетину хорди та дотичної з віссю Ox .
Наближене значення кореня нелінійного рівняння визначається відповідно до таких
правил:

48
Правило 1. Якщо добуток першої на другу похідну функції f (x) більший за нуль:
f ' ( x ) f ' ' ( x)  0 , (рис. 4.16 а, б) то рухомим для методу хорд є кінець a, і наближене
значення кореня з боку кінця a обчислюється за формулою хорд:
f ( an )  ( bn  an )
xn  1  an  . (4.14)
f ( bn )  f ( an )
Для методу дотичних рухомим є кінець b , і наближене значення кореня
обчислюється за формулою дотичних:
f ( bn )
x n  1  bn  . (4.15)
f ' ( bn )

Правило 2. Якщо добуток першої на другу похідну функції f (x) менший за нуль:
f ' ( x ) f ' ' ( x)  0 (рис. 4.16 в, г), то рухомим для методу хорд є кінець b, і наближене
значення кореня з боку кінця b обчислюється за формулою хорд:
f ( bn )  ( bn  an )
x n  1  bn  . (4.16)
f ( bn )  f ( an )
Для методу дотичних рухомим є кінець a, і наближене значення кореня
обчислюється за формулою дотичних:
f ( an )
xn  1  a n  . (4.17)
f ' ( an )

Комбінований метод дуже зручний при оцінці похибки обчислень. Ітераційний


процес продовжується доти, поки не стане виконуватися нерівність x  x   . За n n

1
наближене значення кореня приймають   2 x n  xn  , де x n і xn – наближені значення
кореня відповідно з недостачею та з надлишком.
Схема алгоритму методу представлено на рисунку 4.17.

49
Рисунок 4.17– Схема алгоритму розв'язання нелінійного рівняння комбінованим
методом

4.3.5 Метод ітерацій (метод послідовних наближень)

Суть методу полягає у заміні початкового рівняння


f(x)0 (4.18)
еквівалентним йому рівнянням
x  ( x ) , (4.19)
Постановка задачі
Нехай задано рівняння f ( x)  0 , де f (x) – неперервна нелінійна функція. Потрібно
визначити корінь  цього рівняння, який знаходиться на відрізку  a, b з заданою
похибкою  .
Виберемо довільним способом x0   a, b і підставимо його в праву частину рівняння
(4.18); тоді отримаємо x1   ( x0 ) . Потім це значення x1 підставимо знову в праву частину
50
рівняння (4.19) і отримаємо x2   ( x1 ) (рис. 4.18 а,б). Повторюючи цей процес, отримаємо
послідовність чисел xn   ( xn1 ) . При цьому можливі два випадки:
 послідовність x0, x1 ,..., xn ,... збігається, тобто має границю, і тоді ця
границя буде коренем рівняння (4.18).
 послідовність x0, x1 ,..., xn ,... розбігається, тобто не має границі.
Приведемо без доказу теорему, яка виражає умову, при якій ітераційний процес
розв’язку нелінійного рівняння методом ітерацій на ЕОМ збігається.

y y

A1 B2
B1 A0
A3 B4

B2
A1 B3 A2
B3 A0
y  ( x )
B4 A2 B1
M A3
C3 C 2 C1 C0
0  x4 x3 x2 x1 x0 x 0 x1 x3  x4 x2 x0 x
а б

Рисунок 4.18 Геометрична інтерпретація методу ітерацій

Теорема. Нехай на відрізку  a, b знаходиться єдиний корінь рівняння x   (x) та у


всіх точках цього відрізку похідна f ' ( x) задовольняє нерівності  ' ( x)  q  1 . Якщо при
цьому виконується і умова a   ( x)  b , то ітераційний процес збігається, а за нульове
наближення x0 можна взяти число з відрізку  a, b .
Розв’яжемо один етап ітерацій. Виходячи із заданого на попередньому кроці
значення xn1 , обчислюємо y   ( xn1 ) . Якщо y  x   , покладемо xn  y і виконаємо
n 1

наступну ітерацію. Якщо ж y  x   , то обчислення закінчують, за наближене


n 1

значення кореня приймають величину xn  y .


При використанні методу простих ітерацій основною операцією є вибір функції
 ( x) в рівнянні x   (x) , яку слід підібрати так, щоб  ' ( x )  q  1 і швидкість сходження
послідовності  xn  до кореня  тим вища, чим менше число q . Схема алгоритму метода
ітерацій представлена на рисунку 4.19.

51
Рисунок 4.19 – Схема алгоритму розв'язання нелінійного рівняння методом ітерацій

Джерела інформації
6. Щуп Т. Решение инженерных задач на ЕВМ. – М.: Мир, 1982. – 235с.
7. Демидович Б. П., Марон И. А. Основы вычислительной математики. –
М.: Наука, 1970. – 664 с.
8. Демидович Б. П., Марон И. А., Шувалова Е. З. Численные методы
анализа. – М.: Мир, 1967Волков Е. А. Численные методы. – М.: Наука, 1988.
9. Мак – Кракен Д., Дрон У. Численные методы и програмирование на
фортране. – М.: Мир, 1977. – 584 с.
10. Бахвалов Н. С. Численные методы . Т. И. Анализ, алгебра, обычные
диференциальные уравнения. – М.: Наука, 1975. – 631 с.
11. Краскевич В. Є., Зеленський К. Х., Гречко В. И. Численные методы в
инженерных исследованиях. – К.: Высшая шк.., 1986. – 263 с.
12. Рисс Ф., Секефальви – Надь Б. Лекции по функциональному анализу –
М.: Мир, 1979.
13. Плис А.И., Сливина Н.А. Mathcad. Математический практикум для
инженеров и экономистов: – М.: Финансы и статистика, 2003. – 656с.
14. Тихомиров В. М. Некоторые вопросы теории приближений. – М.: МГУ,
1976.
15. Ахиезер Н. И. Лекции по теории апроксимации. – М.: Наука, 1965.
52
16. В.И. Бердышев, Ю.Н. Субботин. Численные методы приближения
функций. – Средне-Уральское книжное книжное издательство, 1979.
17. Суетин П. К. Классические ортогональные многочлены. – М.: Наука,
1976. – 327 с.
18. Альберг Дж., Нильсон Е., Уолт Дж. Теория сплайнов и ее дополнение.
– М.: Мир, 1972.
19. Стечкин С. Б., Суботин Ю. Н. Сплайны в вычислительной математике.
– М.: Наука, 1976.
20. Трауб Дж. Итерационные методы решения уравнений. – М.: Мир, 1985.
– 263 с.

Питання та задачі до самостійної роботи

1. Які рівняння відносяться до нелінійних?


2. Які рівняння відносяться до трансцендентних?
3. Що є розв‘язком нелінійного рівняння?
4. Відокремити корені рівняння
1
x 2  cos x  0 ,  lg x  1
x
5. Класифікація рівнянь, трансцендентні та алгебраїчні рівняння.
6. Які рівняння відносяться до трансцендентних рівнянь?
7. Які рівняння відносяться до алгебраїчних рівнянь?
8. Суть відокремлення коренів нелінійних рівнянь.
9. Суть методів уточнення коренів.
10. Які способи використовуються для відокремлення коренів?
11. В чому суть аналітичного методу відокремлення коренів?
12. Які теореми використовуються для аналітичного методу відокремлення
коренів?
13. В чому суть алгоритму методу половинного ділення? Дайте
геометричну інтерпретацію цього методу.
14. Графічна інтерпретація методу половинного ділення та основні
формули методу.
15. В чому суть алгоритму методу хорд? Дайте геометричну інтерпретацію
цього методу.
16. Графічна інтерпретація методу хорд та основні формули методу.
17. В чому суть алгоритму методу січних? Дайте геометричну
інтерпретацію цього методу.
18. Графічна інтерпретація методу січних та основні формули методу.
19. В чому суть алгоритму комбінованого методу? Дайте геометричну
інтерпретацію цього методу.
20. Графічна інтерпретація комбінованого методу та основні формули.
21. В чому суть алгоритму автоматизації пошуку рухомого кінця хорди?
22. В чому суть алгоритму автоматизації пошуку рухомого кінця січної?
23. Покажіть особливості методу ітерацій та його обмеження.
24. Графічна інтерпретація методу ітерацій та основні формули методу.

53
25. Розробить підпрограму - функцію для уточнення коренів нелінійного
рівняння методом ітерацій.

Лекція 6
ІНТЕРПОЛЯЦІЯ ФУНКЦІЇ
План лекції:
1. Способи завдання функцій
2. Математична постановка задачі інтерполювання
3. Інтерполяційний багаточлен Лагранжа
4. Перша інтерполяційна формула Ньютона для рівновіддалених вузлів інтерполяції

5.1 Способи завдання функцій

Інженери в практичній діяльності постійно зіштовхуються з необхідністю виявлення


видів зв'язку в процесах та явищах і необхідністю їх математичного опису. Якщо деяка
величина y, що характеризує процес, залежить від сукупності незв’язаних між собою
величин ( x1 ; x2 ;...xn ) таким чином, що кожному набору ( x1 ; x2 ;...xn ) відповідає значення
величини y , така однозначна відповідність величини y сукупності незалежних змінних
x1 ; x 2 ;... x n називається функціональною залежністю, а сама змінна величина y –
функцією змінних величин x1 ; x2 ;...xn , що формально записується у вигляді
y  f ( x1 , x2 , x3 ,..., xn ) . Так, вираз y  x  3 x  x x є функцією трьох змінних.
2
1 2 1
2
3

Наприклад, площа кола S є функцією незалежної змінної – радіуса кола R, тобто


S  f ( R ) , конкретний вигляд цієї функції S  R 2 . Об‘єм фігури є вже функцією трьох
вимірів: V  f ( x1 , x2 , x3 ) , і в залежності від вигляду фігури цей функціональний зв'язок
відповідно конкретизується.
З курсу математичного аналізу відомі три способи завдання функціональних
залежностей:
 аналітичний;
 графічний;
 табличний.
Так, наприклад, в результаті математичної обробки можна отримати наступну
аналітичну залежність грошових кредитів в сільському господарстві під товарно-
матеріальні цінності і сезонні витрати від витрат на велику рогату худобу:
y  51,0203  0 ,1059 x , де y - кредити під товарно-матеріальні цінності; x - витрати на
велику рогату худобу. Інший приклад аналітичної залежності: зв'язок шляху з часом в
at 2
рівноприскореному русі виражається як s  vt  .
2
Позитивною властивістю аналітичного способу завдання є можливість одержувати
значення y для будь-якого фіксованого аргументу x з будь-якою точністю. До
недоліків цього засобу слід віднести те, що потрібно повторювати всю послідовність
обчислень; крім того, аналітичний засіб не володіє наочністю. Вказані недоліки
аналітичного засобу усуваються у випадку графічного завдання функції y  f ( x ) .
Табличний спосіб завдання функцій розповсюджений у техніці, фізиці, економіці,
природознавстві та найчастіше всього використовується для запису результатів
експерименту.
54
Нехай, наприклад, в результаті досліду отримана залежність омічного опору R
мідного стержня від температури t 0 у вигляді таблиці 5.1:
Таблиця 5.1 – Результати експериментальних досліджень
R 77.8 79. 80 82.3 83.9 85
0 75 .80 5 0 .10
t 25.0 30. 36 40.0 45.1 50
0
1 .0 .0

В цьому експерименті значення омічного опору мідного стержня змінюється при


коливанні температури і є залежною змінною.
Перевагою табличного способу завдання експериментальної функції є те, що для
кожного значення незалежної змінної, поміщеної в таблицю, можна відразу ж, без усяких
вимірів і обчислень, знайти відповідне значення функції. Недолік табличного способу
полягає в тому, що не можна задати всю функцію скрізь, тобто завжди знайдуться такі
значення незалежної змінної, яких немає в таблиці. Тому, для аналізу результатів
інженерних експериментів дуже зручно використовувати як табличний так і аналітичний
способи представлення залежностей, що досліджуються.
Так, якщо в результаті інженерного або наукового експерименту отримана система
точок: {( x0 , y0 ),( x1 , y1 ),( x2 , y 2 ),...,( xn , yn )} , то дуже часто виникає задача пошуку
аналітичної залежності, яка б зв‘язувала експериментальні дані у вигляді аналітичної
функції Q( x ) . Для розв’язування цієї задачі за допомогою чисельних методів на ЕОМ
використовуються два підходи:

1. Інтерполяція –
підхід, за допомогою якого отримують аналітичні залежності табличних функцій
за умови, що аналітична функція Q( x ) повинна проходити через всі задані
експериментальні точки.

2. Апроксимація –
підхід, за допомогою якого знаходиться аналітична функція Q( x ) , що
“найкращим чином” наближається до заданої табличної функції. Звичайно
“найкращим чином” – це критерій, в якості якого використовується критерій
середньо квадратичного відхилення (СКВ), заснований на тому, що сума
квадратів відхилень аналітичної функції Q( xi ) від експериментальної yi (при
і=0, 1, …, k) повинна бути мінімальною:
n
 ( Q( xi )  yi )2  min
i 0

На рисунку 5.1 представлена класифікація відомих методів наближення табличних


функцій, призначених для пошуку аналітичної залежності Q( x ) , яка б зв‘язувала
експериментальні дані {( x0 , y0 ), ( x1 , y1 ), ( x2 , y2 ),..., ( xn , yn )} , отримані в результаті
інженерного або наукового експерименту.

55
Рисунок 5.1 – Класифікація чисельних методів наближення табличних функцій
5.2 Математична постановка задачі інтерполювання
В економіці і техніці постійно приходиться зіштовхуватися з необхідністю
обчислення значень функції y  f ( x ) в точках xi , відмінних від значень аргументу,
фіксованих в таблиці експериментальних досліджень. Крім того, в деяких випадках,
незважаючи на те, що аналітичний вираз функції y  f ( x ) відомий, він є занадто
складним і незручним для подальших математичних перетворень. Подібні задачі
формалізуються як задачі інтерполювання.
Нехай на відрізку [ a ,b ] функція y  f ( x ) задана системою точок
{( x0 , y0 ),( x1 , y1 ),...,( xn , yn )} , де значення x1 ; x 2 ;...x n називаються вузлами інтерполяції.
Необхідно знайти аналітичну залежність Q( x ) , співпадаючої у вузлах інтерполяції зі
значеннями заданої функції, тобто y0  Q( x0 )  f ( x0 ), y1  Q( x1 )  f ( x1 ),..., yn  Q( xn )  f ( xn ).
Процес обчислення значень функції Q( x ) в точках xi , відмінних від вузлів інтерполяції,
називають інтерполюванням функції f ( x ) (рисунок 5.1).
Якщо аргумент x знаходиться за межами відрізка інтерполювання [ x0 , xn ] , то задача
визначення значення функції Q( x ) в точці x називається екстраполюванням.
Слідує відмітити, що задача інтерполювання стає однозначною, якщо в якості
функції Q( x ) вибрати багаточлен Qn ( x ) степені не вище n, такий, що
Qn ( x0 )  y 0 , Qn ( x1 )  y1 , ...Qn ( xn )  y n . Багаточлен Qn ( x ) , що задовольняє цим умовам,
0x0 xназивають
1 інтерполяційним багаточленом, а відповідні формули – інтерполяційними
формулами.

Рисунок 5.2 – Геометрична інтерпретація інтерполяції табличної функції


56
У випадку, коли Q( x ) береться з класу степеневих функцій, інтерполяція
називається параболічною. Цей спосіб наближення ґрунтується на тому, що на невеликих
відрізках експериментальна функція f ( x ) може бути достатньо добре апроксимована
параболою певного порядку. Якщо в якості інтерполяційної функції використовувати
багаточлен виду:
F ( x)  a0  a1 x  a2 x 2  ...  an x n (5.1)

то така інтерполяція називається степеневою


Інколи доцільно використати інші види інтерполяції. Якщо функція, що
досліджується, f ( x ) – періодична, то в якості інтерполяційної функції Q ( x ) вибирають
тригонометричну, наприклад, виду:
a0 n
Q( x)    (a k cos kx  bk sin kx) (5.2)
2 k 1
і така інтерполяція називається тригонометричною. В деяких в якості
інтерполяційної функції Q ( x ) вибирають раціональні функції.
При інтерполюванні виникає ряд задач:
1. вибір найбільш зручного способу побудови інтерполяційної функції
для кожного конкретного випадку;
2. оцінка похибки при заміні f ( x ) інтерполяційною функцією Q( x ) на
відрізку [ a ,b ] , оскільки функції f ( x ) та Q( x ) співпадають тільки у вузлах
інтерполяції x0 , x1 ,..., xn ;
3. оптимальний вибір вузлів інтерполяції для отримання мінімальної
похибки.
Для задачі інтерполювання важливим є визначення того, як повинна вести себе
інтерполяційна функція між заданими точками, так як ці точки можуть бути
інтерпольовані множиною різноманітних функцій, і необхідно мати певний критерій
вибору. Звичайно критерій формується в термінах гладкості та простоти. Більшість
інтерполяційних функції генеруються лінійними комбінаціями найпростіших функцій.
Лінійні комбінації одночленів  x k  формують степеневі поліноми, лінійні комбінації
тригонометричних функцій  cos x , sin x формують тригонометричні поліноми,
використовуються також лінійні комбінації експонент  exp(  k  ) . Найбільш важливим
класом інтерполяційних функцій є множина алгебраїчних поліномів. Поліноми мають
переваги з точки зору алгоритмізації, тому що їх значення легко обчисляти, додавати,
перемножувати, інтегрувати чи диференціювати. Важливою властивістю поліномів є те
що якщо с – константа, а p(x)- поліном, то поліномами будуть і p(cx) і p(x+c)
Клас інтерполяційних функції обирають, використовуючи теорему Вейерштраса:
Якщо f(х) – неперервна на кінцевому інтервалі  a ,b  функція, то для любого   0
існують поліном pn(x) ступеня n такий, що max f ( x )  pn ( x )   .
5.2.1 Інтерполяційний багаточлен Лагранжа

Найбільш загальною формулою параболічного інтерполювання є інтерполяційна


формула Лагранжа. Задача параболічного інтерполювання в цьому випадку
формулюється наступним чином: на відрізку [ a ,b ] у вузлах інтерполяції x0 , x1 ,..., xn
задається функція f ( x ) своїми ( n  1 ) значеннями
y 0  f ( x0 ), y 1  f ( x1 ), y n  f ( x n ) ,
57
необхідно побудувати багаточлен L( x ) так, щоб у вузлах інтерполяції x0 , x1 ,..., xn
його значення співпадали зі значеннями заданої функції, тобто L( x0 )  y0 , L( x1 )  y1 , …,
L( x n )  y n . Слід відзначити, що в такій постановці задачі вузли інтерполяції x0 , x1 ,..., xn
можуть бути довільно розташовані один від одного на відрізку [ a ,b ] , іншими словами,
вузли інтерполяції не рівновіддалені, тобто h  xi 1  xi  const( i  0 ,1,..., n  1 ) . Величина h
називається кроком інтерполяції.
Задача інтерполювання має розв‘язок, якщо степінь m багаточлена
Lm ( x)  a0  a1 x  a2 x 2  ...  am x m , яким замінюється функція f (x) , не вище порядку n ( m  n ).
Тоді задача інтерполювання зводиться до пошуку невідомих постійних коефіцієнтів
багаточлена ai (i  0,1,..., m) з системи рівнянь, яка будується наступним чином. З
початкових умов відомо, що функція Ln (x) в вузлах x0 , x1 ,..., xn приймає значення
Ln ( x0 )  y0 , L ( x )  y ,..., L ( x )  y . Тоді в вузлі x інтерполяційний
n 1 1 n n n 0

багаточлен Ln (x ) має вигляд Ln ( x0 )  a0  a1 x0  a2 x02  a3 x03  ...  a n x0n ,


в вузлі інтерполяції
x1 - Ln ( x1 )  a0  a1 x1  a x  a x  ...  a x ,
2
2 1
3
3 1
n
n 1 і так далі. Нарешті, в вузлі xn інтерполяційний
багаточлен Ln ( x ) буде виглядати
Lm ( xn )  a0  a1 xn  a2 xn2  a3 xn3  ...  am xnm .
Запишемо це у вигляді системи (n  1) рівнянь з m  1 невідомими a0 , a1 , a2 ,..., am :
 a0  a1 x0  a2 x02  a3 x03  ...  a m x0m  y 0

 a0  a1 x1  a2 x12  a3 x13  ...  a m x1m  y1

 a0  a1 x2  a2 x 2  a3 x2  ...  a m x 2  y 2 ,
2 3 m
(5.3)
.......... .......... .......... .......... .......... .......... .........


 a0  a1 x n  a2 x n  a3 xn  ...  a m x n  y n
2 3 m

де xi і yi (i  0,1,..., n) 
табличні значення аргументу і функції, що досліджується.
Невідомі коефіцієнти a0 ,a1 ,...,an знаходяться по формулам Крамера:

0  
a0  , a1  1 an ,...,  n , (5.4)
  

де  - визначник системи (5.3).

Якщо   0, (тобто коли x0 , x1 ,..., xn різні), то система (5.3) має єдиний розв’язок.
Якщо знайти коефіцієнти a0 , a1 ,..., an , можна уявити інтерполяційний багаточлен у
вигляді
2
 0 1  
Ln ( x)   x  2 x  ...  n x n .
   

Перепишемо багаточлен в іншій формі:

Ln ( x)  y0Q0 ( x)  y1Q1 ( x)  ...  yn Qn ( x). (5.5)


Легко перевірити, що функція Qi (x) повинна задовольняти умовам

0, i  j;
Qi ( x j )  
 1, i  j.

58
( x  x0 )( x  x1 )...( x  xi 1 )( x  xi 1 )...( x  xn )
Qi ( x)  . (5.6)
( xi  x0 )( xi  x1 )...( xi  xi 1 )( xi  xi 1 )...( xi  xn )
В точках x0 , x1 ,..., xi 1 , xi 1 ,..., x n функція Qi (x ) обертається в 0, а в точці xi
дорівнює 1.
Остаточно отримаємо вираз (5.7)
( x  x1 )...( x  xn ) ( x  x0 )( x  x2 )...( x  xn )
Lm ( x)  y0  y1  ...
( x0  x1 )...( xi  xn ) ( x1  x0 )( x1  x2 )...( x1  xn )
( x  x0 )( x  x1 )...( x  xn 1 )
 yn . (5.7)
( xn  x0 )( xn  x1 )...( xn  xn 1 )
Цей багаточлен називається інтерполяційним багаточленом Лагранжа. В
спрощеному вигляді його можна записати так:
n ( x  x0 )( x  x1) ...( x  xi 1 )( x  xi 1 )...( x  xn )
Ln ( x)   yi . (5.8)
i 0 ( xi  x0 )( xi  x1 )...(xi  xi 1 )( xi  xi 1 )...( xi  xn )
Даний метод легко алгоритмізується і може використовуватися для розробки
програм інтерполяції. Схема алгоритму метода представлена на рисунку 5.3.

Рисунок 5.3 – Схема алгоритму метода Лагранжа

59
Приклад: Побудувати інтерполяційний багаточлен Лагранжа для функції заданої
таблично.

n 0 1 2 3
x 1 2 3 5
y 1 5 4 8

n=4; m=n-1=4-1=3. Припустимо, що y=a0+a1x+a2x2+a3x3.


Слід пам’ятати, що при екстраполяції функції, чим далі значення х від інтервалу
спостереження, тим отримане значення функції містить більшу похибку.
( x x1 )( x x2 )( x x3 ) ( x x0 )( x x2 )( x x3 )
Lm ( x )  y 0  y1 
( x0  x1 )( x0  x2 )( x0  x3 ) ( x1  x0 )( x1  x2 )( x1  x3 )
( x x0 )( x x1 )( x x3 ) ( x x0 )( x x1 )( x x2 ) ( x2)( x3)( x5)
 y2  y3  1 
( x2  x0 )( x2  x1 )( x2  x3 ) ( x3  x0 )( x3  x1 )( x3  x2 ) (12)(13)(15)
( x1)( x3)( x5) ( x1)( x2)( x5) ( x1)( x2)( x3)
 5  4  81 
(21)(23)(25) (31)(32)(35) (51)(52)(53)
( x2)( x3)( x5) 5( x1)( x3)( x5) 4( x1)( x2)( x5)
   
8 3 4
( x x0 )( x  x1 )( x x2 ) ( x2)( x 3)( x5) ( x1)( x3)( x5)
 y3  1  5 
( x3  x0 )( x3  x1 )( x3  x2 ) (12)(13)(15) ( 21)(23)(25)
( x1)( x 2)( x5) 81( x1)( x2)( x3)
 4    1 (( x 2  3 x  2 x  6)( x  5)) 
(31)(32)(35) 24 8
 5 (( x 2  3 x  x  3)( x  5))  (( x 2  2 x  x  2)( x  5))  81 (( x 2  2  x  2 x )( x  3)) 
3 24
1 27 3
 ( x 3  5x 2  6 x  5x 2  ( x  3 x 2  2 x  3 x 2  9 x  6) 
8 8
1 10 2 31 30 5 3 115
  x3  x  x  x  13x 2  x  25  x 3  8 x 2  17 x  10 
8 8 8 8 3 3
27 3 162 2 297 162
 x  x  x  x 3  2 x 2  3x  1 =
8 8 8 8

Таким чином: a0  1, a1  3 , a2  2 , a3  1 .


Висновки:
1. Таким чином за допомогою багаточлена Лагранжа були отримані
коефіцієнти інтерполяційної функції Q( x )  a0  a1 x  a2 x 2  ...:
a0  1, a1  3, a2  2 , a3  1 .
2. Використовуючи отриманий багаточлен можливо знайти будь-яке
значення функції y для заданого x . Наприклад, для x  4  y  43
3. Використовуючи інтерполяційний багаточлен можливо отримати
значення функції y за межами спостережень. У даному прикладі інтервал
спостереження [ 1,5 ]; x  6  y  161 . Така задача називається екстраполяція
(прогнозування функції).
Для оцінки похибки інтерполяційного багаточлена Лагранжа використовують
формулу:
M n 1
Rn ( x )  f ( x)  Ln ( x )  ( x  x0 )( x  x1 ) ( x  xn ) ,
(n  1)!
причому M n 1  max f ( n 1) ( x) , при x   a ,b
5.2.2 Перша інтерполяційна формула Ньютона для рівновіддалених вузлів
інтерполяції

60
Якщо функція, що досліджується, задана значеннями y0  f ( x0 ), y1  f ( x1 ), yn  f ( xn )
в рівновіддалених вузлах інтерполяції, тобто x1  x0  h, x2  x1  h,..., xn  x0  nh. , то для
побудови її аналітичної залежності зручно використовувати першу інтерполяційну
формулу Ньютона.
Для виводу інтерполяційних формул для рівновіддалених вузлів інтерполяції
вводиться поняття кінцевої різниці.
Поставимо наступну задачу: для функції y  f (x) , яка задана таблицею значень
y0  f ( x0 ), y1  f ( x1 ),  , y n  f ( xn ), причому x змінюється з однаковим кроком h, тобто
xi  xi 1  h , побудувати кінцеві різниці.
Кінцевою різницею першого порядку yi називається різність між значеннями
функції в сусідніх вузлах інтерполяції:

y0  y1  y0
y1  y2  y1
y2  y3  y2
..........................
yn  y n  yn 1

В загальному вигляді кінцеву різницю першого порядку yi можна записати як


yi  yi 1  yi .
Кінцева різниця другого порядку 2 yi складається з кінцевих різниць першого
порядку:
2 y0  y1  y0
2 y1  y 2  y1
2 y2  y3  y2
.................... .......... .
2 yn  y n1  y n

Кінцева різниця n-го порядку n yi складається з кінцевих різниць ( n  1) -го


порядку:
n y0  n 1 y1  n 1 y0
n y1  n 1 y2  n 1 y1
n y2  n 1 y3  n 1 y2 ,
.........................................
n yn  n 1 yn 1  n 1 yn
або в технічної літературі використовують наступну формулу кінцевої різниці n -го
порядку:
k y   ( n 1 y )
Нехай необхідно побудувати інтерполяційний багаточлен Pn ( x ) степеню m такий,
що Pm ( x0 )  y0 , Pm ( x1 )  y1 ,..., Pm ( xn )  yn .
Будемо шукати багаточлен виду
Pm ( x )  a 0  a1 ( x  x 0 )  a 2 ( x  x 0 )( x  x1 )  a3 ( x  x 0 )( x  x1 )( x  x 2 )  ...
 a m ( x  x 0 )( x  x1 )...( x  x n 1 )
(5.9)

61
В цьому виразі невідомі коефіцієнти a0 , a1 ,..., am . Для того щоб знайти a0 ,
покладемо x  x0 . Тоді при підстановці x  x0 в вираз (5.9) всі складові, окрім першої,
обернуться в нуль, тобто Pn ( x0 )  a0 , а значення функції в точці x0 відомі з умови задачі:
Pn ( x0 )  y 0 . Отже a 0  y 0 .
Щоб знайти коефіцієнт a1 , складемо першу кінцеву різницю для багаточлена Pm (x)
в точці x:
Pm ( x )  Pm ( x  h )  Pm ( x ).
Зробивши всі підстановки, отримаємо:
Pm ( x)  a0  a1 ( x  x0  h )  a2 ( x  x0  h )( x  x1  h) 
 (x  x1  h )( x  x2  h )  ...  am ( x  x0  h )( x  x1  h )...

 a0  a1 ( x  x0 )  a2 ( x  x0 )( x   x1 )  a3 ( x  x0 )( x  x1 )( x  x2 )  ...
 am ( x  x0 )( x  x1 )...( x  xn 1 )  a1 ( x  x0  h)  ( x  x0 )  a2 ( x  x0 
 h)( x  x1  h)  ( x  x0 )( x  x1 )  a3 ( x  x0  h)( x  x1  h)( x  x2 
 h)  ( x  x0 )( x  x1 )( x  x2 )  ...  am ( x  x0  h)( x  x1  h)...( x  xn 1 
 h )  ( x  x0 )( x  x1 )...( x  xn 1 )  ha1  2 ha2 ( x  x0 )  3ha3 ( x
 ( x  x1 )  ...  nham ( x  x0 )  ( x  x1 )...( x  xn  2 ).

Обчислимо першу кінцеву різницю багаточлена в точці x0 . Тут також всі члени,
окрім першого, обернуться в нуль, і, отже, Pm ( x0 )  a1h, але
Pm ( x0 )  f ( x1 )  f ( x0 )  y1  y0  y0 ,
y0
звідки y0  a1h і a1  .
h
Щоб визначити коефіцієнт a2 , складаємо кінцеву різницю другого порядку:
 Pm ( x)  Pm ( x  h)  Pm ( x).
2

Після перетворень отримаємо


2 Pm ( x)  2!h 2 a2  2  3  h 2 a3 ( x  x0 )  ...  (n  1)nh 2 am ( x  x0 )...(x  xn  3 ).
Вважаємо x  x0 ; тоді всі члени, окрім першого, знов обернуться в нуль і
 Pm ( x0 )   y0  2!h 2 a2 .
2 2
Звідси
2 y0
a2  .
2!h 2
Обчислюючи кінцеві різниці більш високих порядків і вважаючи x  x0 , прийдемо до
загальної формули для отримання коефіцієнтів:
k y0
ak  , (ki  0,1,2,..., m), (5.10)
k! h k
де будемо вважати, що 0!  1 та 0 y  y. Підставивши знайденні значення
коефіцієнтів ak в вираз (5.9), отримаємо першу інтерполяційну формулу Ньютона.
y0 2 y0
Pm ( x)  y0  ( x  x0 )  ( x  x0 )( x  x1 )  ..
1! h 2! h 2
(5.11)
m y0
 ( x  x0 )...( x  xn1 ).
m! h m
На практиці часто використовують формулу Ньютона в іншому вигляді. Для цього
введемо заміну q  ( x  x0 ) / h, де h  крок інтерполяції, а q - число кроків. Тоді перша
інтерполяційна формула Ньютона прийме наступний вигляд:
q( q  1) 2 q (q  1)...(q  n  1) m
Pm ( x)  y0  qy0   y0  ...   y0 . (5.12)
2! h!
Формулу (5.12) зручно використати для інтерполювання на початку відрізку
інтерполяції [a, b] , де q мале за абсолютною величиною.

62
Якщо за число вузлів інтерполяції прийняти n  1 , то отримаємо формулу лінійного
інтерполювання
P1 ( x )  y0  qy0 .
При n  2 отримаємо формулу параболічного, або квадратичного інтерполювання
q(q  1) 2
P2 ( x)  y0  qy0   y0 .
2
На практиці часто буває необхідно зменшити крок інтерполяції якої-небудь таблиці
з рівновіддаленими аргументами. В таблиці можна вважати, що кількість вузлів
інтерполяції необмежена. Тоді вибирають n так, щоб кінцева різниця n yi була
постійна з заданим ступенем точності. За початкове значення x0 можна вибирати будь-
яке значення аргументу.
Схема алгоритму інтерполяції табличної функції багаточленом Ньютона
представлена на рисунку 5.4.

63
Рисунок 5.4 – Схема алгоритму інтерполяції табличної функції багаточленом
Ньютона

Приклад. Припустимо, що результати експерименту представлені в таблиці 5.2


(перших три стовпця)
З таблиці видно, що
k 1 k 1
n  6 ; m  5; y  y1  y0 ,  y  y1  y0 ,  y   y1   y0 , h  xi 1  xi
2 k

Таблиця 5.2 – Результати експерименту

64
N x y 1 y 2 y 3 y 4 y 5 y
0 0 -1 3 1 6 0 0
2
1 1 2 1 1 6 0
5 8
2 2 17 3 2 6
3 4
3 3 50 5 3
7 0
4 4 10 8
7 7
5 5 19
4

 k y0 y0 3
ck  , c0  y0   1 , c1   3,
(k !)h k 1!12 1
 2 y0 12  3 y0 6  4 y0
c2    6 , c3    1 , c4  0
2!12 2 3!13 6 4!14

Побудуємо багаточлен Ньютона:


Q=-1+3x+6(x(x-1))+1(x(x-1)(x-2))+0=-1+3x+6x2-6x+x3-2x2-x2+2x=x3+3x2-x-1

Висновки:
1. За допомогою аналітичної залежності x 3  3 x 2  x  1 можливо отримати
значення функції для x , які знаходяться між точками дослідження. отримуємо це
називається задачею інтерполяції.
2. За допомогою аналітичної залежності x 3  3 x 2  x  1 можна отримати значення
функції за межами інтервалу дослідження. Наприклад, при x  6  y  317 . Дана
задача називається екстраполяцією або прогнозуванням.

Джерела інформації
1. Щуп Т. Решение инженерных задач на ЕВМ. – М.: Мир, 1982. – 235с.
21. Демидович Б. П., Марон И. А. Основы вычислительной математики. –
М.: Наука, 1970. – 664 с.
22. Бахвалов Н. С. Численные методы . Т. И. Анализ, алгебра, обычные
диференциальные уравнения. – М.: Наука, 1975. – 631 с.
23. Калиткин Н. Н. Численные методы . – М.: Наука, 1978. – 512 с.
24. Крылов В. И., Шульга А. Т. Справочная книга по численному
интегрированию. – М.: Наука, 1966.

Питання та задачі до самостійної роботи


1. Загальна постановка задачі інтерполяції.
2. Що називається інтерполяційним багаточленом, вузлами інтерполяції?
65
3. Для функції y = f(x), яка визначена на інтервалі (0, ) і задана в
вигляді таблиці значень yk = f(xk):

1. 2. 3. 4. 5.
6.
7. 8. 9. 10.
k
11. 14. 15.
12. 13.
k 4 6

скласти тригонометричний інтерполяційний багаточлен.


Відповідь: Q2 ( x)  2  0.7 cos 2 x  0.3sin 2 x  0.3 cos 2 x  0.3 cos 4 x  b2 sin 4 x

1. Для функції y = f(x), яка визначена на інтервалі (0, 1) і задана у вигляді


таблиці значень yk = f(xk):

16. 17. 18. 19. 20. 21. 22.


23.
24. 25. 26. 27. 28. 29.
k
30.
31. 32. 33. 34. 35. 36.
k

скласти тригонометричний багаточлен не нижче другого порядку.


7 2
Відповідь: Q2 ( x )  1  cos 2x  sin 2x  cos 2x.
3 3

2. Побудувати інтерполяційний багаточлен Лагранжа для функції, яка


задана таблицею
38. 39.
37. 40 41.
2 1
43. 44.
42. 45. 46.
12 8
1 3 241
Відповідь:  3( x)   15 x 3  20 x 2 3  60 x  39

4. Побудувати багаточлен Ньютона для функції, заданої таблицею:

48.
47. 49 50. 51. 52.
3
54.
55. 57. 58.
53. 1 56.
7 5 7
5

5. Зробити постановку задачі на інтерполяцію функції, яка задана


таблицею з не рівновіддаленими вузлами інтерполяції.
66
6. Зробити постановку задачі на інтерполяцію функції, яка задана
таблицею з рівновіддаленими вузлами інтерполяції.

Лекція 7
Математична обробка результатів дослідження
План лекції:
1. Апроксимація табличних функцій
2. Апроксимація табличних функцій степеневими поліномами
3. Апроксимація узагальненими поліномами
4. Апроксимація ортогональними поліномами
5. Апроксимація тригонометричними поліномами (гармонійний аналіз)
6. Розклад функцій в ряд Фур’є. Теорема Діріхлє
7. Чисельний гармонічний аналіз

6.1 Апроксимація табличних функцій

Інженеру звичайно приходиться працювати з великими масивами даних, тому


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

Постановка задачі

Припустимо, що в результаті інженерного або наукового експерименту отримана


система точок   x0 , y0  ,  x1 , y1  ,   xn , y n  . Необхідно знайти аналітичну залежність Q( x ) ,
таку, яка найкращим чином описує задану систему точок. Поняття "найкращим чином"
означає розв’язання задачі по заданому критерію. Найбільш відомим критерієм для задач
апроксимації є критерій середньоквадратичних відхилень (СКВ), який являє собою
мінімізацію суми квадратів відхилень експериментальних даних від аналітичної функції
Q( x ) і визначається на заданій множині точок як
n
  Q xi   yi  2  min .
i 0
Однак при такій постановці задача апроксимації експериментальних даних має
багато розв’язків. Для отримання єдиного розв’язку цієї задачі потрібно задавати
значення Q( x ) певного вигляду, наприклад:
 степеневим поліномом
Q( x )  a0  a1 x  a2 x 2    am x m ; (6.1)
 -тригонометричним поліномом
67
1 m
Q( x )  a0    ak cos kx  bk sin kx  ; (6.2)
2 k 1
 ортогональним поліномом
Qx  a0 0  x   a11  x     am m  x  ; (6.3)
 сплайн-функцією та інш.

6.1.1 Апроксимація табличних функцій степеневими поліномами

Розглянемо загальні математичні моделі, які можна отримати при апроксимації


табличних функцій степеневим поліномом.

Постановка задачі

В результаті інженерного або наукового експерименту отримана система точок


  x0 , y0  ,  x1 , y1  ,   xn , yn  . Необхідно знайти степеневий поліном виду:
Q( x )  a0  a1 x  a2 x 2    am x m , (6.4)
такий, щоб сума квадратів відхилень полінома Q ( x ) від заданої системи
експериментальних точок була би мінімальною. Така задача зводиться до визначення
коефіцієнтів поліному  a0 , a1 , a2 ,  am  . Метод, що дозволяє розв’язати її називається
методом найменших квадратів (МНК). Критерій середньо квадратичного відхилення
(СКО) в даному випадку має вигляд:
  Q xi   yi  2   a0  a1 x  a2 x 2   am x m  yi 
n n 2
 min (6.5)
i 0 i 0
Розглянемо рисунок 6.1.

Рисунок 6.1 - Геометрична інтерпретація апроксимації табличної функції

З нього видно, що
E0 ( x )  Q( x0 )  y0 , E1( x )  Q( x1 )  y1 , ..., En ( x )  Q( xn )  yn ,

68
тому вираз (6.5) можна представити в вигляді:
 ( Q( xi )  yi )2   Ei2  min
i i
Очевидно, що функція E - це багато параметрична функція на множині ai ,
(i  1,..., m) . Мінімуму такої функції знаходиться при виконанні умови виду:
E( x ) E( x ) E( x )
 0,  0 , , 0 (6.6)
a0 a1 am

Підставимо в (6.6) заміст функції E (x) - вираз (Q( xi )  yi ) , та заміст Q( x) з (6.4)


підставимо поліном і визначимо частинні похідні в виразу (6.6) по кожному коефіцієнту
ai . В результаті отримуємо систему рівнянь виду:

E
 a0
n

a0
 2   a1 xi  a2 2
xi    am m
xi 
i 0
E

n
 2  a0  a1 xi  2
a 2 xi    m
a m xi 
a1 i 0

E
 a0
n

a m
 2   a1 xi  a2 2
xi    am m
xi 
i 0

В даної системі розкриємо дужки та спростимо кожне рівняння системи окремо. В


результаті отримаємо систему виду: n n n
na0  a1  xi  a2  2
xi    am  m
xi 
i  0 i  0 i  0
n n n n
a0  xi  a1  2
xi  a2  3
xi    am  x
i  0 i  0 i  0 i  0

n n n
 1 
a0  m
xi  a1  m
xi  a2  m
xi 2
   a
i  0 i  0 i  0

(6.7)
Система рівнянь (6.7) представляє собою систему лінійних алгебраїчних рівнянь
відносно коефіцієнтів поліному  a0 ,a1 ,a2 , am  , які необхідно знайти, щоб визначити
аналітичну залежність, яка описує експериментальний масив даних. Дану систему можна
записати у матричному вигляді:
 n n n
m 
 n 
 n  i x  xi2   i 
x   y i 
 i 0 i 0 i 0   i  0 
 n  a   
m 1 
n n n 0 n
 i x  i x 2
 xi3   i  a1
x     i i 
x y
 i 0 i 0 i 0 i 0     i 0 
 n 2 n n n   a    n 
m2  2   2
  xi  xi3  xi4   xi    i i
x y
 i 0 i 0 i 0 i 0     i 0 
       am   
n n n n  n 
  xim  xim 1  xim  2   i x 2m    x m m
y
i 0 i 0 i 0 i 0  i 0 i i 

Для розв’язання такої системи на ЕОМ необхідно розробити спеціальний алгоритм


та підпрограму для формування її матриці коефіцієнтів та вектора вільних членів з
використанням експериментальних даних, які задані таблицею. На рисунку
6.2представлений алгоритм формування системи лінійних алгебраїчних рівнянь (6.7)
запропонований Делем В.Д. В ньому система (6.7) формується з метою зменшення
кількості обчислювальних операцій (наприклад операції обчислення степеня), для цього
введені допоміжні змінні та масиви C і D. Зміна z - містить поточне значення xi ; F -
поточне значення yi ; E - множник, який багаторазово змінюється в процесі обчислення;
n
C - допоміжний масив із ( 2M  1 ) дійсних чисел, який являє собою суми  xi m (
i 0
m  0 ,1, ,n ), що входять в кожне рівняння системи:
69
n n n
C( 2 )   xi C( m  1 )   xi m C( m  2 )   xi 2m
C( 1 )  n , , ...,i 0 i 0 , ..., i 0
D - масив із ( m  1) дійсних чисел, які являють собою суми вектора-стовпця вільних
членів системи рівнянь (6.7) і визначають за допомогою допоміжних змінних F та E :
n n n n
D( 1 )   yi D( 2 )   xi yi D( 3 )   xi 2 yi D( m  1 )   xi m yi
i 0 , i 0 , i 0 , i 0
Розв‘язувати таку систему можна будь-яким з відомих методів розв‘язання системи
лінійних алгебраїчних рівнянь, наприклад методом Гауса. Однак задача апроксимації на
цьому етапі не завершується. Схема алгоритму побудови СЛАР методом Деля В.Д (6.7).
представлена на рисунку 6.2.

70
Рисунок 6.2– Схема алгоритму побудови СЛАР методом В.Д. Деля
Якщо для заданого степеня m поліному Q( x ) в результаті розрахунків на ЕОМ
отриманий поліном не відповідає заданої похибки обчислень  , то необхідно збільшити
ступень поліному на 1 (тобто степінь полінома буде m  1 ), при цьому на одиницю
збільшується кількість коефіцієнтів поліному (додається новий член степеневого
71
поліному), які необхідно знову розраховувати. При цьому розмір системи (6.7)
збільшується на 1, і для визначення нових коефіцієнтів  a0 , a1 , am  необхідно знову
розв’язувати систему (6.7) методом Гауса. Цей процес повторюється до тих пір, поки не
виконається умова
n
  Q xi   yi  2   , (6.8)
i 0
де  - задана похибка отриманих результатів.
Схема алгоритму апроксимації функцій, заданих таблицею, методом найменших
квадратів представлена на рисунку 6.3.

Рисунок 6.3 – Схема алгоритму апроксимації функцій, заданих таблицею, методом


найменших квадратів

6.1.2 Апроксимація узагальненими поліномами

Постановка задачі
Припустимо, що в результаті інженерного або наукового експерименту отримана
система точок:   x0 , y0  ,  x1 , y1  ,   xn , yn  . Необхідно знайти аналітичну функцію виду:
Q x   a0 0  x   a11  x   a2  2  x     am  m  x  , (6.9)
таку що середне квадратичне відхилення цієї функції від заданої системи точок буде
мінімальним:

72
  Q xi   yi 
2
 min , (6.10)
i
Розв’язання цієї задачі зводиться до знаходження коефіцієнтів аналітичної функції
a0 , a1 , am .
Визначимо відхилення аналітичної функції Q( x) від експериментальних
даних в кожної i-ої точці ( xi , yi ) :

Ei  Q xi   yi   a00  xi   a11  xi   a22  xi     am m  xi   yi  (6.11)

З виразу (6.10) видно, що Ei залежит від коефіцієнтів a0 , a1 , am , тобто є функцією


багатьох параметрів. З відомо, що умовою оптимуму багатопараметричної функції є
умова виду:
E E E
 0,  0,  ,  0. (6.12)
a0 a1 am
підставимо в (6.12) заміст Ei вираз(6.11) для всіх i  0,1,  , n і визначимо частинні
похідні в виразу (6.12) по кожному коефіцієнту ai . В результаті отримуємо систему
рівнянь виду:

 E
 a  2  a00  xi   a11  xi   a2 2  xi     a m m  xi   yi 0  0
 0 i
 E
 2  a00  xi   a11  xi   a 2 2  xi     a m m  xi   yi 1  0
 a0 i (6.13)
 .......... .....
 E
  2  a00  xi   a11  xi   a2 2  xi     a m m  xi   yi  m  0
 am i

Після спрощення та рокриття дужек в кожному рівнянні система (6.13) буде мати
вигляд:

 a0   02  xi  a1   0  xi 1  xi    a m   0  xi  m  xi     0  xi  yi
 i i i i
 a0   0  xi 1  xi  a1  12  xi  a1   a m  1  xi  m  xi    1  xi  yi

 i i i i (6.14)
                        .....................
 a  0  xi  m  xi  a1  1  xi  m  xi    am   m2  xi     m  xi  yi
 0  i i i i

В матричній формі система (6.14) має вигляд:




2
0 
( xi )   1( xi ) 
0 ( xi )      m ( xi ) 0 ( x  
i i i

  0 ( 
xi ) ( xi )   2
1 ( xi )      m ( xi ) 1( xi  
 i i i
 ............................

 0 ( 
xi ) m ( 
xi )   1( xi ) m ( xi 
)     2
m ( x  
 i i i

(6.15)
Вибір системи функцій  k ( x) здійснюється з врахуванням наявності в
експериментальних даних деяких тенденций, наприклад, періодичність
експериментальних даних, або експоненціальний або логарифмічний характер їх зміни,
властивості симетрії або наявність асимптотики.
6.1.3 Апроксимація ортогональними поліномами

73
Розглянемо спочатку поняття ортогональності та ортогональних функцій або
системи функцій.
Функції  ( x) і f (x) називаються ортогональними на заданій множині точок
{x0 , x1 ,..., xm } , якщо сума попарних добутків цих функцій дорівнює 0.
m
  ( xi )  f ( xi )  0 (6.16)
i 0
Система функцій  0 ( x), 1 ( x),  2 ( x),  ,  m ( x) називається ортогональною на
заданій множині точок {x0 , x1 ,..., xn } , якщо сума попарних добутків цих функцій
дорівнює нулю, виключаючи добуток функції саму на себе.
n
  k ( xi ) m { xi }  0 (6.17)
i 0 ,m  k

=   k ( xi )  0 називається нормою системи функцій


2
Величина  x
i

0 ( x), 1 ( x),  2 ( x), ,  m ( x) .


Якщо для заданої системи функцій 0 ( x), 1 ( x),  2 ( x),  ,  m ( x) на заданій множині
точок {x0 , x1 ,..., xn } норма дорівнює одиниці, то така система функцій називається
ортонормованою.
Якщо система функцій 0 ( x), 1 ( x),  2 ( x),  ,  m ( x) на заданій множині точок
{x0 , x1 ,..., xn } ортогональна і норма системи функції більше 0, то така система функції
називається лінійно незалежною.
Розглянемо математичні моделі апроксимації табличних функцій ортогональним
поліномом.
Постановка задачі апроксимації
В результаті інженерного експерименту отримана система точок
{( x0 , y0 ),( x1 , y1 ),...,( xm , y m )} . Необхідно знайти аналітичну функцію вигляду
Q x   a0 0  x   a11  x   a2  2  x     am  m  x  , (6.18)

яка найкращим чином описує задану систему точок і забезпечує суму квадратів
відхилень аналітичної функції Q( x) від експериментальної на заданій множині
x  { x , x ,..., x } . Тут  0 ( x ), 1 ( x ),  2 ( x),  ,  m ( x ), - задана система функций,
0 1 m

 a0 , a1 , a2 ,  am  - коефіціенти поліному.

Для розв’язування цієї задачі використовують метод найменших квадратів( МНК),


який дозволяє звести задачу до двох:
- пошук коефіцієнтів апроксимуючої функції  a0 , a1 , a2 , am  ;
- пошук оптимальної кількості ортогональних функції  i (x) .
Для пошуку коефіцієнтів апроксимації використовують критерій СКВ:
 a   x   a   x   a   x     a   x   y 
i
0 0 1 1 2 2 m m i  min

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


невідомих коефіцієнтів a0 , a1 ,..., am виду:

74
 a0   02  xi  a1   0  xi 1  xi    a m   0  xi  m  xi     0  xi  yi
 i i i i
 a0   0  xi 1  xi  a1  12  xi  a1   a m  1  xi  m  xi    1  xi  yi

 i i i i .(6.19)
                        .....................
 a  0  xi  m  xi  a1  1  xi  m  xi    am   m2  xi     m  xi  yi
 0  i i i i

Якщо в якості системи функцій k (x) вибрати ортогональну систему функцій, то


матриця коефіцієнтів перетворюється в діагональну матрицю, тобто в матрицю, в якої всі
елементи дорівнюють 0, відповідно умові ортогональності (6.17), крім діагональних
елементів ( для яких виконується умова k  m) . В цьому випадку в системі лінійних
алгебраїчних рівнянь (6.19) кожне рівняння системи має тільки один невідомий
коефіцієнт, тому для знаходження коефіцієнтів апроксимуючого поліному  a0 , a1 , a2 ,  am 
не треба розв’язувати системи лінійних алгебраїчних рівнянь а достатньо знайти їх за
формулою:
ak   yi k  xi    k2  xi  . (6.20)

Якщо умова ортогональності задовольняє умовам експерименту, то потрібно


вибрати апроксимуючий ортогональний поліном або з таблиці 6.1 або з довідників
спеціальних функций.
Пошук оптимальної кількості m функцій  k (x) не потребує повторного обчислення
коефіцієнтів поліному, тобто кожний новий коефіцієнт залежить тільки від заново
вибраної функції k (x ) . Ця властивість є перевагою метода апроксимації табличної
функції ортогональними поліномами, тому що в методі апроксимації табличної функції
степеневими поліномами при пошуку оптимального степеня поліному потрібно
обчислення всіх коефіцієнтів ak заново при кожному новому значенні m.

Висновок. В порівнянні з апроксимацією табличних функцій степеневими


функціями - ортогональні поліноми спрощують задачу апроксимації, зменшують
кількість обчислювальних операцій і дозволяють визначити коефіцієнти апроксимуючої
функції без розв’язування СЛАР методом Гауса.
Рекурентні формули для обчислення найбільш поширених в обчислювальних
методах ортогональних поліномів представлені в таблиці 6.1.
Таблиця 6.1 – Рекурентні формули для обчислення ортогональних поліномів
Поліном Формула

Чебишева T1 ( x )  x; Tn1 ( x )  2 xTn ( x )  Tn1 ( x ), n  1,2...


T0 ( x )  1

Ерміта H 1 ( x )  2 x; H n1 ( x )  2[ xH n ( x )  nH n1 ( x ),


H0 ( x )  1 n  1,2...

Лежандра P1 ( x )  x ;
P0 ( x )  1 Pn1 ( x )  [( 2 n  1 )xPn ( x )  nPn1 ( x )] /( n  1 ), n  1,2...

75
Ляггера L1 ( x )  1  x;
L0 ( x )  1 Ln1 ( x )  [( 2 n  1  x )Ln ( x )  nLn1 ( x )] /( n  1 ), n  1,2...

6.1.4 Апроксимація тригонометричними поліномами (гармонійний аналіз)

В випадку коли за допомогою попереднього аналізу результатів інженерного або


наукового експерименту функція, яка досліджується, має періодичний характер
(рис.6.4), то для апроксимації таких функцій звичайно використовують ортогональні
поліноми Фур’є, які мають вигляд:
a0 n
Ф x      ak cos kx  bk sin kx  (6.21)
2 k 1

Рисунок 6.4 – Приклади експериментальних періодичних функцій

Розклад функцій в ряд Фур’є. Теорема Діріхлє


Багато задач науки і техніки зв'язані з періодичними функціями, які відображають
циклічні процеси.
Функція f(x) називається періодичною з періодом T>0, якщо вона задовольняє
рівності
f ( x)  f ( x  T ) (6.22)
З практичних міркувань такі функції зручно подати в вигляді тригонометричного
поліному або його часткової суми з заданої обчислювальною похибкою  . Поліном
виду:
a 
2 n 1 n

f ( x)  0   a sin nx  b cos nx
n
 (6.23)

називається тригонометричним, причому an і bn - дійсні числа, які не залежать від x.


Нехай цей ряд збігається для будь-якого x з інтервалу [ ,  ] , тоді він визначає
періодичну функцію f(x) з періодом T  2 .
Рядом Фур'є називається ряд, коефіцієнти якого обчислюються за наступними
формулами:

a0  1
  f ( x)dx , (6.24)


та якщо функція f(x) неперервна на відрізку [-,].

76
Розглянемо особливості використання ряду Фур'є для інженерних задач. При цьому
виникають наступні питання:
1) Чи збігається ряд Фур'є функції f(x) ?
2) Якщо ряд збігається, то чи буде він мати своєю сумою f(x)?
Відповіді на поставлені питання дає теорема Діріхлє. Перше ніж сформулювати саму
теорему, нагадаємо деякі поняття. Функція f(x) називається монотонною на інтервалі,
якщо для будь-яких x1 і x2, які належать цьому інтервалу і таких, що x1 < x2, виконується
лише одна з нерівностей f(x1)f(x2) або f(x1)f(x2). Функція f(x) називається кусково-
монотонною на інтервалі, якщо його можна розбити на кінцеве число відкритих
інтервалів, в кожному з яких функція монотонна.

a n  1  f ( x) cos nxdx (6.25)


bn  1  f ( x) sin nxdx (6.26)

Функція f(x) називається кусково-неперервною на інтервалі, якщо вона має на ньому
кінцеве число точок розриву.
Позначимо через f(а + 0) границю функції f(x) коли х прямує до a справа (права
границя), відповідно, через f(а - 0) - ліва границя.
Теорема Діріхлє. Якщо функція f(x), яка задана в інтервалі [-, ], кусково-
монотонна і кусково-неперервна, то ряд Фур'є цієї функції збігається на всьому інтервалі
[-, ] і сума його дорівнює:
1. f(x) в усіх точках неперервності, які належать [-, ];
2. 12 [ f(x - 0) +f(x + 0)] в усіх точках розриву, які належать інтервалу [-, ];
Тобто
a0 
f(x)
2
  ( a cos nx  b sin nx )
n n
n1
Теорема Діріхлє не стверджує рівномірної збіжності ряду Фур'є до функції f(x).
Однак якщо посилити властивості, яким повинна задовольняти функція, тобто вимагати
від неї неперервності на всьому інтервалі [-, ], кускової монотонності на ньому і
виконання рівності f(-  ) = f (  ), то ряд Фур'є для такої функції буде рівномірно
збігатися до функції f(x) на всьому інтервалі [-, ].
Можна показати, що для парної функції всі коефіцієнти bn дорівнюють нулю, а
відповідний ряд Фур'є не містить синусів:
a 
f ( x)  0   an cos nx , (6.27)
2
n1

де an  2  f ( x ) cos nxdx . (6.28)
0
Аналогічно для непарної функції всі коефіцієнти аn дорівнюють нулю і відповідний
ряд Фур'є не містить косинусів:

f ( x )   bn sin nx , (6.29)
n1

Де bn   f ( x ) sin nxdx . (6.30)
0

77
Чисельний гармонічний аналіз
Теоретичні та практичні засоби використання ряду Фур'є заміст функції f(x) в
задачах моделювання і обробки результатів інженерних та наукових експериментів
називається гармонічним аналізом. При практичних розрахунках необхідно обмежитися
тільки декількома першими членами ряду Фур'є. В результаті можна отримати лише
наближений аналітичний вираз для функції f(x) в вигляді тригонометричного
багаточлену N-го порядку
a0 N
QN ( x )    ( an cos nx  bn sin nx ) (6.31)
2 n 1
Крім того, формули (6.23), (6.24), (6.25) для обчислення коефіцієнтів Фур'є придатні
лише в випадку аналітичного завдання функції. На практиці, як правило, функція f(x)
задається в вигляді таблиць або графіків (рис. 6.4), тому виникає задача наближеного
відшукування коефіцієнтів Фур'є. Узагальнюючи вищесказане, сформулюємо наступну
задачу чисельного гармонічного аналізу: апроксимувати на інтервалі (0,Т)
тригонометричним багаточленом m-го порядку функцію y= f(x), для якої відомі m її
значень
yk  f ( xk ) при xk = kТ (к=0,1,2,..., m-1).
m
Тригонометричний багаточлен для функції, яка визначена на інтервалі (0,T), має
вигляд
N
a0
QN ( x )  2
  (an cos n 2
T
x  bn sin n 2T x) , (0  x  T) (6.32)
n 1
T
a  2  f ( x ) cos n 2  xdx , (6.33)
n T T
0
T
b  2  f ( x ) sin n 2  xdx (6.34)
n T T
0
Використовуючи в співвідношеннях (6.31) і (6.32) формулу прямокутників для
обчислення інтегралів за значеннями підінтегральних виразів в точках xk  kT m (k =
0,1,2,...,m -1), маємо
m 1
an  2
m  yk cos n 2 m k , (n=0,1,2,...,N) (6.35)
k 0
m 1
bn  2
m  y k sin n 2 m k (6.36)
k 0

Таким чином, тригонометричний багаточлен (6.31), коефіцієнти an і bn, якого


знаходяться за формулами (6.34) і (6.35), може бути використаний для розв’язання даної
задачі.

Джерела інформації
25. Бахвалов Н. С. Численные методы . Т. И. Анализ, алгебра, обычные
диференциальные уравнения. – М.: Наука, 1975. – 631 с.
26. Калиткин Н. Н. Численные методы . – М.: Наука, 1978. – 512 с.
27. Ракитский Ю. В., Устинов С. М., Черноруцкий И. Т. Численные методы
решения жестких систем. – М.: Наука, 1979.
28. Самарський А. А., Николаев Е. С. Методы решения точных уравнений.
– М.: Наука, 1978.
78
29. Плис А.И., Сливина Н.А. Mathcad. Математический практикум для
инженеров и экономистов: – М.: Финансы и статистика, 2003. – 656с.
30. Д. Мэтьюз, Г. Цинк, Д. Куртис. Численне методы. Использование
Matlab, –М. Издательский дом “Вильямс”, 2001. – 720 с. 720 с.
31. Иванов В. В. Методы вычислений на ЕОМ. – Киев: Наук. думка, 1986.
– 584 с.

Питання та задачі до самостійної роботи

7. Загальна постановка задачі апроксимації.


8. Основні умови теореми Діріхлє.
9. Зробити постановку задачі на тригонометричну апроксимацію.
10. Суть методу найменших квадратів (МНК).
11. Вкажіть формули чисельного обчислення коефіцієнтів Фур’є.
12. Скласти алгоритм тригонометричної апроксимації.
13. Скласти схему алгоритму апроксимації степеневими поліномами.
14. Скласти схему алгоритму апроксимації ортогональними поліномами.
15. Розкласти в ряд Фур'є функцію f(x) = x sin( x) (  < x <  ) .
 ( 1) n
Відповідь: x sin x  1  1
2
cos x  2  cos nx.
n  2 n2 1
16. Загальна постановка задачі на інтерполяцію і апроксимацію
17. Що таке екстраполяція функції? Зробіть загальну постановку задачі.
18. Розкласти в ряд Фур'є функцію
0 при -  < x < 0,
f ( x) = 
x при 0  x < .

 cos(2n  1) x  (1) n
Відповідь: f  x =   2    sin nx.
4  ( 2 n  1) 2 n
n 1 n 1

Лекція 8

Наближені методи диференціювання

Задача чисельного диференціювання полягає в тому, щоб за відомою таблицею


значень невідомої функції значення її похідної. Її наближено можна розв’язати
так: за інтерполяційною формулою (або інтерполяційним многочленом) замінити
функцію інтерполяційним многочленом і знайти похідну від нього.
Один із способів розв’язання задачі диференціювання – це використання
інтерполяційних багаточленів.
Для виведення формул наближеного диференціювання дану функцію на
відрізку замінюють інтерполяційною функцією та покладають, що
за .
Аналогічно поступають для знаходження значення похідних функції вищих
порядків.
Розглянемо числове диференціювання на основі інтерполяційної формули Ньютона,
79
тобто покладемо, що функція задана у вигляді таблиці з постійним кроком
.
Запишемо для функції перший інтерполяційний багаточлен Ньютона:

.
Перепишемо, розкриваючи дужки:

Враховуючи правило диференціювання складної функції матимемо:

. (1)
Аналогічно, враховуючи, що

,
отримуємо:

. (2).
В такий самий спосіб за необхідністю можна обрахувати похідні функції
будь-якого порядку.
Проте кожного разу, обчислюючи значення похідної у фіксованій точці за
формулами (1) та (2), в якості слід обирати найближче зліва вузлове значення
аргумента.
Формули (1) та (2) значно спрощуються, якщо шуканим значенням виявляється
один з вузлів таблиці. Оскільки в цьому випадку кожне табличне значення можна
вважати за початкове, то, покладаючи , отримуємо . Тоді формули матимуть
вигляд:

.
Похибки при чисельному диференціюванні
При чисельному диференціюванні таблично заданої функції y  f (x) виникають
похибки двох типів:
- похибки наближення, які викликані заміною функції f(x) інтерполяційним
многочленом Pn ( x );
- похибки округлення, які викликані наближеними значеннями вихідних даних y i .
hn
a   f (( n)1) ,

Похибки наближення a оцінюються величиною n 1 де   ( x 0 ; x n ). Ця
оцінка є малоефективною, тому що, як правило, мало що відомо про порядок величини

80
(n 1)
похідної f (x) . На практиці користуються числовою оцінкою похідної. Усі формули
оцінки похибки наближення містять крок розрахунку h , тому похибка при h  0
зменшується.
Похибки округлення   навпаки обернено пропорційні кроку розрахунку h :
y 1  y 0 y1  y 1 2 
y'0      .
Для формули 2h 2h маємо 2h h
y 1  y 0 3 y  2  3 y 1 y -2  8 y1  8 y1  y 2
y'0   
Для формули 2h 12h 12h
18 3
   ,
маємо 12h 2h де   похибка округлення y i .
Похибка округлення зростає зі збільшенням порядку похідної.
Загальна похибка обчислення    a    . Оскільки зі зменшенням кроку розрахунку
h похибка наближення зменшується, а похибка округлення зростає (рис. 10.1), то існує
оптимальний крок розрахунку (свій для кожної формули чисельного диференціювання).

Δ


a
h
hопт
Рисунок 10.1 − Залежність похибок від кроку диференціювання
Зразок виконання завдання
Завдання: за допомогою інтерполяційних формул Ньютона знайти значення першої та
другої похідних для функції , що задана таблицею, в точці .
Розв’язання:
Складемо для заданої функції таблицю кінцевих різниць:

81
0 1.2733 0.5274 0.0325 0.0047 0.0002
0.1 1.8007 0.5599 0.0372 0.0049 0.0002
0.2 2.3606 0.5971 0.0421 0.0057
0.3 2.9577 0.6392 0.0472
0.4 3.5969 0.6864
0.5 4.2833
За умовою крок таблиці . Шукане значення співпадає з вузлом таблиці.
Тобто табличне значення можна вважати за початкове: . Отже .
Обчислення проводимо за формулами

.
Отже

Відповідь: .

Лекція 9
Наближені методи інтегрування
План лекції:
1. Основні поняття та визначення
2. Чисельні методи знаходження визначеного інтегралу
3. Метод прямокутників
4. Метод трапецій
5. Метод Сімпсона

Інженеру часто приходиться обчислювати визначений інтеграл чисельними


методами. Це буває у тих випадках, коли або не вдається виразити інтеграл у замкненій
формі, або вона настільки складна, що простіше скористатися чисельним інтегруванням.
Чисельне інтегрування являє собою стійкий процес і в протиставлення чисельному
розв’язанню диференційних рівнянь зменшує дію похибок у початкових даних на
кінцевий результат.
7.1 Основні поняття та визначення
Розглянемо функцію f(x), що визначена на відрізку [a,b]. Функція, що
диференціюється на відрізку [a,b] функцією F(x), похідна якої в кожній точці [a,b]
дорівнює f(x), називається первісною функції f(x) та записується як:
F’(x)= f(x).
82
Так як (F(x)+С)’=F’(x)=f(x) для будь-якої сталої С, то можна говорити про множину
первісних – множину функцій виду F(x)+С. Множина первісних F(x)+С функції f(x)
називається невизначеним інтегралом функції f(x) і позначається  f ( x) dx :
 f ( x)dx  F ( x)  C , x  ( a, b) ,
де F(x)+С – значення невизначеного інтегралу, тобто множини первісних функції
f(x):
(  f ( x)dx )’=(F(x)+С)’= f(x).
Розглянемо функцію f(x), що визначена на відрізку [a,b]. Розіб’ємо відрізок [a,b] на
n довільних частин точками a=x0< x1< x2<…< xn-1< xn=b
і позначимо i  xi  x i 1 , i=1,...,n,   max i .
На кожному відрізку [xi-1, xi ] візьмемо довільну точку  i і обчислимо в неї значення
функції f(x). Вираз
n
S  f  
i 1
i i

lim S
називається інтегральною сумою функції f(x). Якщо при   0 існує границя Δ 0 ,
не залежна ні від способу розбиття відрізку [a,b] точками xi, i=1,2,…,n-1, ні від вибору
точок  i  (xi1, xi), то ця границя називається визначеним інтегралом від функції f(x) на
відрізку [a,b] , а саму функцію – інтегрованою на [a,b], та позначають як
b

lim S   f  x  dx
Δ 0
a
b

Розглянемо геометричний зміст визначеного інтегралу: якщо f(x)>0, то  f  x  dx


a

дорівнює площі фігури , обмеженої графіком функції, віссю абсцис і прямими x  a і


x  b (рис.7.1).

Рисунок 7.1 – Геометричний зміст інтегралу.

В основу чисельного інтегрування покладене наближене обчислення площини під


кривою, яка описується підінтегральною функцією інтеграла виду
b
I  f ( x )dx .
a

Розглянемо загальний підхід до розв'язування цієї задачі на ЕОМ.


Визначений інтеграл І являє собою площину, обмежену кривою f(x), віссю х та
прямими х = a; х = b (рис.7.1).
83
Чисельне інтегрування основане на тому, що відрізок інтегрування [a,b] розбивають
на n менших відрізків [xi-1, xi ] , кожен з яких є основою геометричної фігури, площу якої
знаходять наближено як Si, а значення інтегралу І визначають як суму таких площин Si,
тобто
n
I   Si .
i 1

При цьому використовують два способи розбиття відрізка інтегрування на менші :


1. Розбиття відрізка інтегрування проводиться раніше аналізу результатів
інтегрування, до того ж завжди відрізки вибирають рівними (метод прямокутників,
трапецій, Сімпсона);
2. Місцезнаходження та довжина відрізків визначаються з умови досягти
найбільшої точності чисельного інтегрування з заданим числом відрізків, а потім
відповідно з цим визначають їхні межі (метод Гаусса, Ньютона-Котеса, Чебишева ).

7.2 Чисельні методи знаходження визначеного інтегралу

Розглянемо відомі чисельні методи знаходження визначених інтегралов на ЕОМ.


7.2.1 Метод прямокутників

Найпростіший метод наближеного обчислення інтеграла на ЕОМ є метод


прямокутників, суть якого зводиться до знаходження визначеного інтегралу як суми
площ N прямокутників (з висотою f(x) та основою h  xi  xi 1  xi ), отриманих шляхом
розбиття відрізка інтегрування [а, b] на N рівних частин. В цьому випадку розділити на
прямокутники можна або зліва на право (рис.7.2,а), тоді отримаємо формулу лівих
прямокутників (7.1), або справа наліво (рис.7.2,б), тоді отримаємо формулу правих
прямокутників (7.2):
b
ba N
I пр   f ( x )dx  h  [ f ( xn )  f ( xn1 )  ...  f ( x1 )]   f ( xi )
N i 1
(7.1)
a

Рисунок 7.2 – Геометрична інтерпретація методу прямокутників

84
b
ba N 1
I l   f ( x)dx  h  [ f ( x n )  f ( x n 1 )  ...  f ( x1 )] 
N
 f (x )
i 0
i (7.2)
a

Схема алгоритму обчислення визначеного інтегралу методом прямокутників


показана на рис. 7.3.

Рисунок 7.3 – Схема алгоритму методу прямокутників

5.2.2 Метод трапецій


Суть методу трапецій полягає в тому, що інтеграл обчислюється таким чином:
відрізок інтегрування [а, b] поділяється на N рівних відрізків, всередині яких
підінтегральна крива f(x) замінюється кусково-лінійною функцією (х), отриманою
стягуванням ординат N відрізків [xi-1, xi ] хордами.
Інтеграл знаходиться як сума площ Si прямокутних трапецій (pис.7.4 а,б).

Рисунок 7.4– Геометрична інтерпретація метода трапецій

Площа кожної такої трапеції визначається як

85
f ( x i )  f ( x i 1 )
Si  h .
2

Відповідно на всьому відрізку інтегрування [а, b] площа складної фігури, яка


визначається як сума площин всіх таких трапецій, визначається формулою:
b N 1
b  a N 1 f ( xi )  f ( xi 1 ) b  a N 1 y i  y i 1
 f ( x)dx  S i     2 .
a i 1 N i 0 2 N i 0
Оскільки в даної формулі під знаком суми величини yi зустрічаються двічі, тому її
можна переписати у вигляді:
b N 1
b  a y0 y b  a  N 1 y  yn 
 f ( x)dx  S i  (  y1  y 2    y n1  n )    yi  0 (7.3)
a i 1 N 2 2 N  i 0 2 
Похибка обчислення інтеграла за формулою трапеції визначається:
h2
R ( b  a ) f (  ) (7.4)
12

Схема алгоритму обчислення інтегралу методом трапецій показано на рис. 7.5.

Рисунок 7.5 – Схема алгоритму методу трапецій

7.2.3 Метод Сімпсона


(метод парабол або криволінійних трапецій)
У цьому методі інтегрування проводиться шляхом поділу відрізка [а,b] на N пар
відрізків та, з метою збільшення точності наближеного інтегрування на кожному такому
відрізку [ xi , xi  2 ] , підінтегральна функція f(x) замінюють квадратичною параболою (х)
(рис. 7.6 а,б), і обчислення визначеного інтеграла зводиться до обчислення суми площин
N криволінійних трапецій Si :
b N
I  f ( x )dx   S i
a i 1

Площа кожної такої криволінійної трапеції визначається за формулою Сімпсона:


h
Si 
3
[ f ( xi )  4 f ( xi 1 )  f ( xi 2 )] (7.5)
86
Визначимо за формулою (7.5) площину N криволінійних трапецій Si :
x
2
h
S1   f ( x ) fx  S ( y 0  4 y1  y 2 ),
x0
3
x
4
h
S 2   f ( x)dx  S 2  ( y 2  4 y3  y 4 ), (7.6)
3
x2
..........................................................
x2 n
h
Sn   f ( x)dx  S
x2 n  2
n 
3
( y 2 n 2  4 y 2 n 1  y 2 n )

а) б)

Рисунки 7.6. – Геометрична інтерпретація методу Сімпсона

Тоді сума всіх криволінійних трапецій визначається як


h
S N  [ y 0  y 2 n  4( y1  ...  y 2 n 1 )  2( y 2  ...  y 2 n  2 )]
3
b N N 1
h
або a f ( x )dx 
3
[ y 0  y 2 n  4 
i 1
y 2 i 1  2 
i 1
y 2i ] , (7.7)
ba
де h
2N
, тобто кількість відрізків повинна бути парною.
Схема алгоритму обчислення визначеного інтегралу методом Сімпсона,
запропонована Делем В.Д., представлена на рис. 7.7.

87
Рисунок 7.7 - Схема алгоритму метода Сімпсона

Джерела інформації
1.     Щуп Т. Решение инженерных задач на ЭВМ. – М.: Мир, 1982. – 235с.
2.     Демидович Б. П., Марон И. А. Основы вычислительной математики. – М.:
Наука, 1970. – 664 с.
3.     Бахвалов Н. С. Численные методы . Т. И. Анализ, алгебра, обычные
диференциальные уравнения. – М.: Наука, 1975. – 631 с.
4.     Форсайт Дж., Малькольм., Моулер Р. Машинные методы математических
вычислений. – М.: Мир, 1980.
5.     Ляшко, В.Ф. Емельянов, О.К. Боярчук. – К.: Вища школа., 1993. – 375 с.
6.     Крылов В. И., Шульга А. Т. Справочная книга по численному интегрированию.
– М.: Наука, 1966.
7.     Хемминг Р. В. Численные методы. – М.: Наука, 1972. – 399 с.
8     Плис А.И., Сливина Н.А. Mathcad. Математический практикум для инженеров и
экономистов: – М.: Финансы и статистика, 2003. – 656с.
9.     Крилов В. И. и др. Начала теории вычислительных методов. Интегральное
уравнение, некорректные задачи и улучшение сходимости. – Минск: Наука и техника,
1984. –   263 с.
10.     Прикладные методы и программирование в численном анализе. – М.: Изд-во
Моск. ун – ту, 1985. – 185 с.

Питання та задачі до самостійної роботи

1. На чому базується загальний підхід до чисельного інтегрування?


88
2. Особливість алгоритму методу прямокутників.
3. Особливість алгоритму методу трапецій. Як оцінити похибку отриманих
результатів?
4. Алгоритм методу Сімпсона. Як оцінити похибку отриманих результатів?
5. В чому особливість квадратурних методів обчислення визначеного
інтегралу на ЕОМ?
6. В яких випадках використовуються поліноміальні методи обчислення
визначеного інтегралу на ЕОМ?

Лекція 10
Інтегрування за допомогою степеневих рядів
План лекції:
1. Метод Ньютона-Котеса
2. Метод Чебишева
3. Метод Гауса
4. Загальний підхід до визначення інтегралів на ЕОМ

8.1 Метод Ньютона-Котеса


Метод Ньютона-Котеса засновано на інтерполяції однієї із сторін криволінійних
трапецій, що отримані поділом відрізку інтегрування [а,b] на N рівних частин,
багаточленами більш високих порядків ніж в методі трапецій (де використовується
лінійна інтерполяція) і в методі Сімпсона (де використовується квадратична
інтерполяція).
Основна формула методу Ньютона-Котеса має вигляд:
b N

 f ( x) dx  (b  a) y i H i , (8.1)
a i 0

де yi - значення підінтегральної функції f(x) в вузлах інтерполяції, Hi – коефіцієнти


Ньютона-Котеса, які не залежать від вигляду підінтегральної функції f(x), а залежать
тільки від N (кількості вузлів інтерполяції), тому значення їх для різної кількості вузлів
відомі та представлені в таблиці 8.1. Можна показати, що методи трапецій та Сімпсона є
частинними випадками методу Ньютона-Котеса.
Таблиця 8.1 - Коефіцієнти Ньютона-Котеса
n=1 ho=h1=1/2
n=2 ho=h2=1/6, h1=2/3
n=3 ho=h3=1/8, h1=h2=3/8
n=4 ho=h4=7/90, h1=h3=16/45, h2=2/15
n=5 ho=h5=19/288, h1=h4=25/96, h2=h3=25/144
n=6 ho=h6=41/840, h1=h5=9/35, h2=h4=9/280, h3=34/105
n=7 ho=h7=751/17280, h1=h6=3577/17280, h2=h5=1323/17280,
h3=h4=2989/17280

89
8.2 Метод Чебишева
На відміну від методу Ньютона-Котеса, в якому коефіцієнти Hi (i=1,N) знаходять у
фіксованих вузлах інтерполяції, П.Л. Чебишев запропонував для обчислення визначених
інтегралів використати формулу
b N

 f ( x )dx  ( b  a ) c
i 1
i f ( xi ) , (8.2)
a

в якій квадратурні коефіцієнти Сi (і=1,2,…,N) зафіксовані, а абсциси xi (і=1,2,…,N)


підлягають визначенню. Для простоти обчислень необхідно вибрати С1=С2=…=Сn.
Розглянемо спочатку частинний випадок, коли межі інтегрування дорівнюють –1 та 1.
Тоді попередня формула набере вигляду
b

 f ( x)dx  2c
a
n [ f ( x1 )  f ( x 2 )  ...  f ( x n )] , (8.3)
де квадратурні коефіцієнти Сn та абсциси xi підлягають визначенню.
Коефіцієнти Сi та вузли інтерполяції xi визначимо із умови, що ця рівність є точною
для випадку, коли f(х) - багатогочлен вигляду
f ( x )  a0  a1 x  a2 x 2  ...  an x n (8.4)
Підставимо багаточлен (8.4) у ліву частину (8.3) та проінтегруємо:
1
a 2 a3
 (a
1
0  a1 x  a 2 x 2  ...  a n x n )  2(a0 
3
  ...)
5
(8.5)
У праву частину рівності (8.3) підставимо значення многочлена (8.4) у вузлах х1, х2,
…,хn:
f ( x1 )  a 0  a1 x1  a 2 x12  a 3 x13  ...  a n x1n ,
f ( x 2 )  a 0  a1 x 2  a 2 x 22  a 3 x 23  ...  a n x 2n
f ( x3 )  a 0  a1 x 3  a 2 x32  a 3 x33  ...  a n x 3n , (8.6)
.......... .......... .......... .......... .......... .......... ...
f ( x n )  a 0  a1 x n  a 2 x n2  a 3 x n3  ...  a n x nn
Тоді формула (8.5) буде мати вигляд
a2 a4
2( a0    ...)  2cn [ na0  a1 ( x1  x2  ..  xn )  a 2 ( x12  x22  ...  xn2 ) 
3 5 (8.7)
3 3 3 n n n
a3 ( x1  x2  ...  xn )  ...  a n ( x1  x2  ...  xn )]
Отримана рівність повинна виконуватися за будь-яких значень аo,а1,…,аn і таким
чином, порівнюючи коефіцієнти аi в правій і лівій частинах (8.7) знаходимо, що nCn=1,
звідки

1
cn  (8.8)
n
i, крім цього,
x1  x2  x3  ..  xn  0 ,
n
x12  x22  x32  ...  xn2 
3,
x13  x23  x33  ...  xn3  0 , (8.9)
n
x14  x24  x34  ...  xn4  ,
.............................................
5

90
n[ 1  ( 1 )n 1 ]
x1n  x 2n  x3n  ...  x nn 
2( n  1 )

Підставляючи знайдене для Сn виразу в співвідношення (8.5) отримаємо формулу


Чебишева:
1
2
 f ( x )dx  n [ f ( x

1 )  f ( x 2 )  ...  f ( x n )] (8.10)
де точки x1,…,xn визначаються із системи рівнянь (8.9).
Значення x1,…,xn для різних n відомі та представлені в таблиці 8.2.
Таблиця 8.2 - Значення абсцис для різної кількості точок
Число
Значення абсцис
ординат
n=2 -x1=x2=0.577350
n=3 -x1=x3=0.707107; x2=0
n=4 -x1=x4=0.794654; -x2=x3=0.187592
n=5 -x1=x5=0.832498; -x2=x4=0.374541; x3=0
-x1=x6=0.866247; -x2=x5=0.422519;
n=6
-x3=x4=0.266635
-x1=x7=0.883862; -x2=x6=0.529657;
n=7 -x3=x5=0.323912;
x4=0

Коли межі даного інтеграла відрізняються від –1 та 1 , формула Чебишева матиме


вигляд
b
ba
 f ( x )dx   f ( z 1 )  f ( z 2 )  ...  f ( z n ) , (8.11)
a
2
де
z i  a  b  b  a xi ,( i  1,2..., n ) . (8.12)
2 2
а xi мають вказані в таблиці значення.

8.3 Метод Гауса


Для отримання підвищеної точності для чисельного інтегрування користуються
формулою Гауса
1

 f ( x )dx  c
1
1 f ( x1 )  c 2 f ( x 2 )  ...c n f ( x n ) , (8.13)
в якої не фіксуються не тільки вузли інтерполяції x1, x2,…,xn, а й квадратурні
коефіцієнти С1,…,Сn. При цьому Zn невідомих величин x1,…,xn; С1,…,Сn визначається із
умови, що формула є точною у випадку будь-якого багаточлена 2n-1.
Таким чином, для будь-якого багаточлена (2n-1)-й степеню
f ( x)  a0  a1 x  a 2 x 2  ..  a 2 n1 x 2 n1 (8.14)
повинна виконуватися рівність:
1

 f ( x)dx  c
1
1 f ( x )  c2 f ( x2 )  ...  c n f ( xn ) . (8.15)

91
Багаточлен f(x) степеню 2n-1 можна показати у вигляді
f(x)=F(x)Q(x)+R(x) , (8.16)
де F(x)-шуканий багаточлен n-ї степені, а Q(x) та R(X)- відповідно частинне ділення
f(x) на F(x) та залишок від цього ділення, степінь багаточленів Q(x) та R(x) не
перевищують (2n-1).
Вираз для F(x) можна записати так:
F ( x )  x n  A1 x n1  A2 x n2  ...  An  ( x  x1 )...( x  xn ) (8.17)
тут величини x1,…,xn - шукані абсциси формули Гаусса, а А1,А2,…,Аn - постійні.
Оскільки шукана функція F(x) у вузлах x1,…,xn перетворюється на нуль, то
f ( x1 )  R( x1 ); f ( x 2 )  R( x 2 );... f ( x n )  R( x n ) (8.18)
Тоді рівність (5.23) набере вигляду
1 1 1


1
f ( x )dx  
1
F ( x )Q( x )dx   R( x )dx  c R( x
1
1 1 )  R( x 2 )  ...  R( x n ) (8.19)
Але для багаточлена R(x) степеню не вище n-1 також повинна виконуватися рівність:
1


` R( x )dx  c1 R( x1 )  c 2 R( x 2 )  ...  R( x n )
1
(8.20)
Bіднімаючи (8.20) від (8.19),отримаємо
1

 F ( x )Q( x )dx  0.
1

Із останнього відношення можна визначити шукану функцію F(x). Оскільки ця


рівність справедлива для якого-небудь багаточлена Q(x) степеню n-1
Q( x )  b0 x n 1  b1 x n  2  ..  bn 2 x  bn 2 , (8.21)
то при будь-яких коефіцієнтах 0 1, b , b ,..., bn 1 маємо таку систему рівнянь:

 1

  xF ( x)dx  0,
 1
 1 n2
  x F ( x)dx  0, (8.22)
1
1
  F ( x)dx  0
 1

Підставляючи в (8.22) вирази для F(x) із формули (7.2 ) та інтегруючи, отримаємо


для визначення коефіцієнтів А1, … Аn систему n рівнянь

 A1 A A
  3  5  ...  0,
 2n  1 2n  3 2n  5
 1 A A
  2  4  ...  0 (8.23)
 2n  1 2n  3 2n  5
 1 A2 A6
 2  3  2  7  2  7  ...  0,
 n n n
A1 A3 A5
   ...  0 ,
2n  3 2n  5 2n  7

з яких видно, що А1=А3=А5=А7=…=0 та, отже, шуканий многочлен має вигляд:


92
F ( x )  x n  A2 x n 2  A4 x n 4  A6 x n 6  .... (8.24)
Відмітимо, що при парному n корені рівняння F(x)=0 попарно рівні за абсолютним
значенням, але протилежні за знаком, а при непарному n коренем є також і х=0.
Визначивши із системи (8.23) коефіцієнти Аі (і=1,2,…,n), складемо рівняння F(x)=0
та знайдемо його корені х1,…,хn, тобто шукані абсциси формули Гаусса, а потім
обчислимо коефіцієнти Сi (і=1,2,…,n) за формулою
1

( x  x
1
1 )( x  x 2 )...( x  xi  2 )( x  xi 1 )...( x  x n )dx
(8.25)
ci 
( xi  x1 )( xi  x 2 )...( x  xi 1 )( x  xi 1 )...( x  x n )

Приклад 1. Побудувати квадратурну формулу Гаусса для випадку n=2 на відрізку


інтегрування [-1, 1].
Розв‘язок. Загальний вигляд квадратурної формули Гаусса при n=2 та заданих
межах інтегрування:
1

 f ( x )dx  c
1
1 f ( x1 )  c 2 f ( x 2 ) ,

де підлягають визначенню квадратурні коефіцієнти с1 та с2, а також абсцис х1 та х2.


Для визначення абсцис складемо многочлен F ( x )  x 2  A1 x  A2 , коефіцієнти А1 та А2
якого знайдемо із системи вигляду (8.22)

1
  xF ( x)dx  0,
1
1
 F ( x)dx  0
 
 1
підстановкою багаточлена F(x) у систему. Маємо
A1 1
0 ;  A2  0 ,
3 3
тобто А1=0, А2 =-1/3. Тоді F( x )  x 2  1 / 3 , звідки
3 3
x1    0 ,57735 та x2   0 ,57735
3 3
Коефіцієнти с1 та с2 обчислимо за формулою (8.25)
1 1
x  x2 x  x1
c1   x
1 1
 x2
dx  1 ; c2  x
1 2  x1
dx  1

Отже,  f ( x )dx 
1
f ( 0 ,57735 )  f ( 0 ,57735 )

Для обчислення інтеграла загального вигляду  f ( x )dx слід замінити змінні


a
ba ba
zi   xi , (i=1,2,….,n) (8.26)
2 2
Тоді формула Гаусса прийме вигляд
b
ba
 f ( x )dx 
a
2
[ c1 f ( z 1 )  c 2 f ( z 2 )  ...c n f ( z n )]

93
Значення квадратурних коефіцієнтів Гаусса сі (і=1,2...n) та абсцис хі (і=1,2...n)
наведені в таблиці 8.3.

Таблиця 8.3 – Значення квадратурних коефіцієнтів Гаусса


n x1=0,5 с1=2
=1
n -x1=x2=0,577350 с1=с2=1
=2
n -x1=x3=0,774597, x2=0 с1=с3=0,555555, с2=0,888889
=3
n -x1=x4=0,861136, с1=с4=0,347855,
=4 -x2=x3=0,339981 с2=с3=0,652145
n -x1=x5=0,906180, с1=с5=0,236927,
=5 -x2=x4=0,538470 с2=с4=0,478629
n -x1=x6=0,932470, с1=с6=0,171324,
=6 -x2=x5=0,661210, с2=с5=0,360761, с3=с4=0,467914
-x3=x4=0,238620
n -x1=x7=0,949108, с1=с7=0,129485,
=7 -x2=x6=0,741531, с2=с6=0,279705, с3=с5=0,381830,
-x3=x5=0,405845, x4=0 с4=0,417960
n -x1=x8=0,960290, с1=с8=0,101228,
=8 -x2=x7=0,796666, с2=с7=0,222381, с3=с6=0,313707,
-x3=x6=0,525532, с4=с5=0,362684,
x4=0,183434

8.4 Загальний підхід до визначення


інтегралів на ЕОМ
Більшість вище розглянутих методів основані на використанні кількості точок N, на
які розбивається відрізок інтегрування. Але при розв’язанні реальних інженерних задач,
що потребують визначення інтегралу на ЕОМ, достатньо складно визначити оптимальне
для нього значення N. Тому в багатьох пакетах прикладних програм використовують
наступний загальний алгоритм обчислення визначеного інтегралу (рис.8.1), що
автоматично визначає кількість точок N в залежності від заданої похибки обчислень  .
Особливістю даного алгоритму є те, що для обчислення інтегралу можна
використовувати будь-який з відомих вам методів.

94
Рисунок 8.1 – Схема загального алгоритму обчислення визначеного інтегралу на
ЕОМ

Джерела інформації
1.     Щуп Т. Решение инженерных задач на ЭВМ. – М.: Мир, 1982. – 235с.
2.     Демидович Б. П., Марон И. А. Основы вычислительной математики. – М.:
Наука, 1970. – 664 с.
3.     Бахвалов Н. С. Численные методы . Т. И. Анализ, алгебра, обычные
диференциальные уравнения. – М.: Наука, 1975. – 631 с.
4.     Форсайт Дж., Малькольм., Моулер Р. Машинные методы математических
вычислений. – М.: Мир, 1980.
6.     Крылов В. И., Шульга А. Т. Справочная книга по численному интегрированию.
– М.: Наука, 1966.
7.     Хемминг Р. В. Численные методы. – М.: Наука, 1972. – 399 с.
8     Плис А.И., Сливина Н.А. Mathcad. Математический практикум для инженеров и
экономистов: – М.: Финансы и статистика, 2003. – 656с.
9.     Крилов В. И. и др. Начала теории вычислительных методов. Интегральное
уравнение, некорректные задачи и улучшение сходимости. – Минск: Наука и техника,
1984. –   263 с.
10.     Прикладные методы и программирование в численном анализе. – М.: Изд-во
Моск. ун – ту, 1985. – 185 с.

Питання та задачі до самостійної роботи

95
7. Особливість алгоритму методу Чебишова. В яких випадках рекомендують
застосовувати цей метод?
8. Особливість алгоритму методу Гаусса.
9. Особливість алгоритму методу Ньютона – Котеса. В яких випадках слід
застосовувати цей метод?
10. Як можна поставити експеримент на дослідження інтеграла, в основі якого
лежить дуже осцилююча функція типу ( 1  x 2 ) cos 1000x ?
1

11. Обчислити інтеграл I  


0
x  1dx , приміняючи квадратурну формулу Гаусса

з чотирма ординатами.
 /2

12. За допомогою формули Чебишева обчислити  sin xdx , де


0
n  5.

Лекція 11
ЧИСЕЛЬНІ МЕТОДИ РОЗВ'ЯЗАННЯ ДИФЕРЕНЦІАЛЬНИХ РІВНЯНЬ
План лекції:
1. Основні визначення та поняття
2. Класифікація численних методів розв'язання задачі Коші
3. Одноточкові методи розв'язання задачі Коші на ЕОМ
4. Модифікації методу Ейлера
5. Метод Рунге–Кутта

Інженеру часто доводиться зіштовхуватись з диференційними рівняннями і


системами диференційних рівнянь при розробці нових виробів чи технологічних
процесів, так як більша частина законів фізики формалізується саме у вигляді
диференційних рівнянь. Будь-яка задача проектування, яка зв’язана з розрахунком
потоків енергії чи руху тіл, в кінцевому рахунку зводиться до розв’язку диференційних
рівнянь. Нажаль, лише дуже малу частину з них можливо вирішити без допомоги
обчислювальних машин. Тому чисельні методи розв’язку диференційних рівнянь
відіграють важливу роль у практиці інженерних розрахунків.
9.1. Основні визначення та поняття
Рівняння, у якому невідома функція входить під знаком похідної чи диференціала,
називається диференціальним рівнянням. Наприклад,
dy d2y 2 z 2 z
 2 y  3  ;  t  1;  0,
dx dt 2 x 2 y 2
y  x 2 ; xdy  y 3 dx
Якщо невідома функція, що входить у диференціальне рівняння, залежить тільки від
однієї незалежної змінної, то диференціальне рівняння називається звичайним.
Наприклад, диференціальні рівняння
d2y
x2   2; 2 s dt  t ds
dx 2
відносяться до звичайних.
96
Якщо ж невідома функція, що входить у диференціальне рівняння, є функцією двох
чи більшого числа незалежних змінних, то таке рівняння називається диференціальним
рівнянням у частинних похідних. Наприклад, диференціальне рівняння
2 z 2 z
 0
x 2 y 2
відноситься до рівняння в частинних похідних.
Порядком диференціального рівняння називається найвищий порядок похідної (чи
диференціала), що входить у рівняння.
Розглянемо звичайні диференціальні рівняння.
Звичайне диференціальне рівняння n-го порядку в самому загальному випадку
містить незалежну змінну, невідому функцію і її похідні чи диференціали до n-го
порядку включно і має вид
F  x , y , y' , y' ' ,..., y ( n )   0 (9.1)
У цьому рівнянні х - незалежна змінна, у - невідома функція, y ' , y ' ' ,... y ( n ) - похідні
цієї функції.
Розв'язком (чи інтегралом) рівняння (9.1) називається будь-яка диференціюєма
функція y   (x) , що задовольняє цьому рівнянню, тобто така, після підстановки, якої у
рівняння (9.1) воно перетворюється в тотожність.
Графік розв’язку звичайного диференціального рівняння називається інтегральною
кривою цього рівняння.
Розв’язок диференціального рівняння, що містить стільки незалежних довільних
(постійних) параметрів, який його порядок, називається загальним розв'язком (чи
загальним інтегралом) цього рівняння.

Рисунок 9.1. – Сімейство інтегральних кривих диференціального рівняння (9.1)

Геометрично загальний розв’язок диференціального рівняння являє собою сімейство


інтегральних кривих цього рівняння (рис. 9.1).
Частинним розв'язком диференціального рівняння називається будь-який розв’язок,
що може бути отриманий з загального при визначених числових значеннях довільних
постійних (рис. 9.1). Довільні постійні, що вхідять в загальний розв’язок, визначаються з
початкових або крайових умов.
Задача з початковими умовами ставиться так: знайти розв’язок y   (x) рівняння
y (n)
 f ( x , y , y , y ,..., y ( n1 ) ) , що задовольняє додатковим умовам, які складаються в тім, що
розв’язок y   (x) , повинний приймати разом зі своїми похідними до (n−1)-го порядку
97
задані числові значення y0 , y0 , y0 ,..., y0( n1 ) при заданому числовому значенні x  x0
незалежної змінної х.
Такі умови називаються початковими умовами, а задача відшукання розв‘язку
y   (x ) диференціального рівняння (9.1), що задовольняє заданим початковим умовам -
задачею з початковими умовами, або задачею Коші.
Задача з крайовими умовами ставиться так: знайти розв’язок y   (x) рівняння
y (n)
 f ( x , y , y , y ,..., y ( n1 ) ) , що задовольняє додатковим умовам, які складаються в тім, що
розв’язок y   (x) , повинний приймати разом зі своїми похідними до (n−1)-го порядку
задані числові значення y0 , y0 , y0 ,..., y0( n1 ) при заданому числовому значенні x  x0 та
y n , y n , y n ,..., y n( n 1) при заданому числовому значені x  x n незалежної змінної х.
Такі умови називаються крайовими умовами, а задача відшукання розв‘язку y   (x)
диференціального рівняння (9.1), що задовольняє заданим крайовим умовам – крайовою
задачею.
У випадку рівняння першого порядку, тобто при n=1, одержуємо задачу Коші для
рівняння y '  f ( x, y ) з початковою умовою x  x0 , y  y0 .
Геометрично задача Коші для рівняння першого порядку полягає в тому, що з усіх
інтегральних кривих, що представляють собою загальний розв‘язок, потрібно знайти ту
інтегральну криву, що проходить через точку М0 з координатами x  x0 , y  y0 . (рис.9.1).
Часто в задачі Коші у ролі незалежної змінної виступає час t. Прикладом може бути
задача про вільні коливання тіла, яке підвішене на пружині. Рухи такого тіла описуються
диференційним рівнянням, в якому незалежною змінною є час t. Якщо додаткові умови
задані у вигляді значень переміщень чи швидкості при t=0, то це також задача Коші.
Задача Коші має єдиний розв‘язок, що задовольняє умові в ( x0 )  y 0 , якщо функція
f ( x, y ) неперервна в деякій області R a ,b   | x  x0 | a ,| y  y0 | b і задовольняє в цій області
умові Ліпшица,
f ( x, y )  f ( x, y )  N y  y ,
де N - постійна Ліпшица, що залежить від а і b (а і b - границі області).

Методи точного інтегрування диференціальних рівнянь придатні лише для


порівняно невеликої частини рівнянь, що зустрічаються на практиці.

Тому в задачах моделювання та дослідження складних технічних систем, наприклад,


систем автоматичного управління, великого значення набувають методи наближеного
розв’язання диференційних рівнянь, що у залежності від форми представлення розв’язку
можна розділити на дві групи:
1) аналітичні методи, що дають наближений розв’язок диференційного рівняння у
виді аналітичного виразу;
2) чисельні методи, що дають наближений розв’язок у вигляді таблиці.
Похибки. Перед тим, як перейти до розглядання методів чисельного розв'язання
диференційних рівнянь, зупинимося на джерелах похибок, пов'язаних з чисельною
апроксимацією. Таких джерел три:
1. Похибка округлення зумовлена обмеженнями на представлення чисел в ЕОМ, тому
що число значущих цифр, що запам'ятовується і використовується в обчисленнях,
обмежене.
2. Похибка відсічення зв'язана з тим, що для апроксимації функції замість

98
y  y0 , y   y0 , y  y0 ,..., y  n  1  y0 n  1 при x  x0
(9.2)
нескінчених рядів часто використовується лише декілька перших їх членів.

Рисунок 9.2 – Геометричне представлення накопичування похибки в процесі


обчислень

Це звичайний для чисельних методів прийом, що являється джерелом похибки,


цілком зумовлених використаним методом і не залежать від характеристик ЕОМ.
3. Похибка поширення являється результатом накопичення похибок, що з'явились у
попередніх результатах розрахунку. Так як ні один з наближених методів не може дати
зовсім точних результатів, то будь-яка виникла в процесі обчислень похибка
зберігається і на наступних стадіях розрахунку (рис. 9.2).
Вказані три джерела похибок є причиною помилок двох типів:
Локальна помилка – сума похибок, що вносяться у розрахунковий процес на
кожному етапі обчислення.
Глобальна помилка – різниця між розрахованим та точним значеннями величини на
кожному етапі реалізації чисельного алгоритму, що визначає сумарну похибку, що
накопичується з моменту початку розрахунку.

9.2. Класифікація численних методів розв'язання задачі Коші


На протязі багатьох років чисельний розв‘язок задачі Коші був об‘єктом пильної
уваги науковців оскільки він широко застосовується в різних галузях науки і техніки.
Тому і кількість розроблених для нього методів дуже велика.
Чисельні методи розв'язання задачі Коші розділяються на 3 групи:
 одноточкові;
 багатоточкові (методи прогнозу та корекції);
 методи з автоматичним вибором кроку інтегрування.
На рис. 9.3 представлена класифікація найбільш відомих чисельних методів
розв‘язання диференційних рівнянь (ДР) на ЕОМ.

99
Рисунок 9.3– Класифікація чисельних методів розв'язання задачі Коші.

До одноточкових методів відносять методи, які мають певні загальні риси, такі як:
1. В основі усіх одноточкових методів лежить розклад функції в ряд Тейлора, в
якому зберігаються члени, що мають h в степені до k включно. Ціле число k називається
порядком метода. Похибка на кроці має порядок k+1.
2. Всі одноточкові методи не потребують дійсного обчислення похідних, тому що
обчислюється лише сама функція, однак можуть потребуватися її значення в деяких
проміжних точках. Це тягне за собою, звичайно, додаткові затрати часу і зусиль.
3. Для отримання інформації у новій точці, потрібно мати дані лише в попередній
точці. Цю властивість можна назвати „самостартуваням”. Властивість „самостартуваня”
дозволяє легко змінювати величину кроку h.
4. В порівнянні з одноточковими методами методи прогнозу і корекції мають ряд
особливостей:
1. Для реалізації методів прогнозу і корекції необхідно мати інформацію про
декілька попередніх точок (вони не відносяться до „самостартуючих” методів), тому для
отримання додаткової інформації доводиться застосовувати одноточковий метод. Якщо в
процесі розв’язку диференційних рівнянь методом прогнозу і корекції змінюється крок,
то звичайно тимчасово доводиться переходити до одноточкового методу.
2. Одноточкові методи і методи прогнозу і корекції забезпечують приблизно
однакову точність результатів. Однак другі на відміну від перших дозволяють лише
оцінити похибку на кроці. З цієї причини, користуючись одноточковими методами,
величину кроку h звичайно обирають трохи менше, ніж це необхідно, тому методи
прогнозу і корекції виявляються найбільш ефективними.
3. Використовуючи метод Рунге-Кутта четвертого порядку точності, на
кожному кроці доводиться обчислювати чотири значення функції, але для збіжності
методу прогнозу і корекції того ж порядку точності часто достатньо двох значень
функції. Тому методи прогнозу і корекції вимагають майже вдвічі менше машинного
100
часу, ніж методи Рунге-Кутта порівнюваної точності.
9.3 Одноточкові методи розв'язання задачі Коші на ЕОМ
Розв'язати диференційне рівняння y '  f ( x, y ) чисельним методом - це значить для
заданої послідовності аргументів x0 , x1, ..., x n і y 0 знайти такі значення y 0 , y1, ..., y n що
yi  F ( xi ) (i  1, 2, ... , n) ) і F ( x0 )  y0 . Таким чином, чисельні методи дозволяють замість
отримання функції y  F (x) одержати таблицю значень цієї функції для заданої
послідовності аргументів. Величина h  xk  xk 1 називається кроком інтегрування.
Графічно чисельний розв‘язок уявляє собою послідовність коротких прямолінійних
відрізків, якими апроксимується аналітичний розв’язок y  F (x) рівняння (кусочно-
лінійна апроксимація).
Розглянемо алгоритми найбільш відомих чисельних методів.
Метод Ейлера є порівняно грубим і застосовується в основному для орієнтованих
розрахунків. Однак ідеї, покладені в основу методу Ейлера, є базовими для інших
методів.
Нехай дано диференційне рівняння першого порядку
y '  f ( x, y ) (9.3)
з початковими умовами x  x0 , y ( x0 )  y0 . (9.4)
Потрібно знайти розв’язок рівняння на відрізку [ x0 , xn ] .
Розіб'ємо відрізок [ x0 , x n ] на n рівних частин і одержимо послідовність
x0 , x1 , x 2 ,..., x n , де xi  x0  ih(i  0,1, 2, ..., n) , а h  ( x n  x0 ) / n - крок інтегрування.

Виберемо к-й відрізок [ xk , x k 1 ] і проінтегруємо рівняння (9.3):


x k 1 x k 1 x k 1
 f ( x , y )dx   ydx  y( x ) |  y( xk  1 )  y( xk )  yk  1  y k .
xk xk xk
або
xk 1
yk  1  yk   f ( x , y )dx.
xk (9.5)
Якщо в останньому інтегралі підінтегральну функцію на відрізку [ xk , x k 1 ] прийняти
постійною і рівною початковому значенню в точці x = xk, то одержимо
x k 1 x k 1
 f ( xk , yk )dx  f ( xk , yk )  x |  f ( xk , yk )( xk  1  xk )  yk h
xk xk

Тоді формула (6.5) прийме вигляд


yk  1  yk  yk h (9.6)
Позначивши yk 1  yk  yk , тобто y k h  y k , отримаємо
y k h  y k (6.7)
Продовжуючи цей процес, і щораз приймають, що на відрізку [ x k , x k 1 ]
інтегральна
крива y  F (x) приблизно заміняється прямолінійним відрізком, що виходить із точки
M k ( xk ; y k ) кутовим коефіцієнтом f ( xk , yk ) . Тому в якості наближення шуканої
інтегральної кривої одержуємо ламану лінію з вершинами в точках
M 0 ( x0 ; y0 ), M 1 ( x1 ; y1 ), ... , M n ( xn ; y n ) (рис. 9.4).

101
Рисунок 9.4 – Геометричне розв’язання методом Ейлера

Якщо функція f ( x, y ) у деякій прямокутній області


R| x  x0 | a , | y  y0 | b
задовольняє умові
| f ( x1 y1 )  f ( x1 y2 ) | N | y1  y2 | ( N  const ) (9.8)
і, крім того,

df df df
  f M ( M  const ),
dx dx dy (9.9)

то має місце наступна оцінка похибки:


| y( xn )  yn |
hM
 
( 1  hN )n  1 ,
2N , (9.10)
де в y(хn) - значення точного розв’язку рівняння (9.3) при x = xn, а yn - наближене
значення, отримане на n-м кроці.
Формула (9.10) має в основному теоретичне застосування. На практиці, як правило,
застосовують "подвійний прорахунок". Спочатку чисельне розв‘язання рівняння ведеться
з кроком h, потім крок дроблять і повторний розрахунок ведеться з кроком h/2. Похибка
більш точного значення оцінюється формулою
| yn  y( xn ) || y n  yn | . (9.11)
Метод Ейлера може бути застосований до розв'язку систем диференційних рівнянь
вищих порядків. Однак в останньому випадку диференційні рівняння повинні бути
приведені до системи диференційних рівнянь першого порядку.

Нехай задана система двох рівнянь першого порядку


 y'  f 1 ( x , y , z ),

 z'  f 2 ( x , y , z ) (9.12)
з початковими умовами
y ( x0 )  y 0 , z ( x0 )  z 0 . (9.13)
Наближені значення y(xi) ≈ y1 та z(xi) ≈ zi знаходяться по формулах
y i 1  y  y ,
i i

z i 1  z  z ,
i i (9.14)
102
yi  hf1 ( xi , yi , zi ), (i  0, 1, 2, ...)
zi  hf 2 ( xi , yi , zi ) (9.15)

Схема алгоритму метода Ейлера представлена на рисунку 9.5.

Рисунок 9.5 – Схема алгоритму метода Ейлера

Схема алгоритму метода Ейлера для розв‘язання системи звичайних диференційних


рівнянь наведена на рисунку 9.6.
103
Рисунок 9.6 – Схема алгоритму розв‘язання системи ЗДР методом Ейлера

9.1.1 Модифікації методу Ейлера


Удосконалений метод Ейлера. Розглянемо диференціальне рівняння
y'  f  x, y  (9.16)
з початковою умовою y ( x 0 )  y 0 .
Потрібно знайти розв’язок рівняння (9.13) на відрізку [ a, b] .

104
Розіб'ємо відрізок [ a, b] на n рівних частин точками xi  x0  ih (i  0,1, 2, ..., n) , де
h  (b  a ) / n – крок інтегрування. Сутність удосконаленого методу Ейлера полягає в
використанні ітераційної формули виду:
yi(01)  yi  hf ( x 1 ,y 1 )
i i
2 2 , (9.17)

Алгоритм методу складається з:


1. визначення похідної y0' в точці  x 0 , y 0  :
y  f  x 0 , y 0 
'
0

2. змінна х за формулою:
h
x 1  x0 
0
2
2
y x
3. визначення значення 0
1
2
при 0
1
2
h '
y 1  y0  y0
0
2
2
x
4. визначення похідної в точці ( 0
1
2
, y0 12 )
y' 1  f  x 1 ,y 1 
0 0 0
2 2 2
'
5. використовуємо отримане значення y0  1 для визначення y1' за формулою:
2
y1'  y0  hy '
 y0  hf ( x ,y )
0
1
2
0
1
2
0
1
2
,
h
6. змінюємо x1  x 1 
0
2
2
7. повторюємо всі кроки алгоритму, починаючи з першого.
Графічна інтерпретація методу представлена на рисунку 9.7.

Рисунок 9.7 – Графічна інтерпретація удосконаленого методу Ейлера

Зауваження. Оцінка похибки в точці xі може бути отримана за допомогою


"подвійного прорахунку":
*
розрахунок повторюють із кроком h/2 похибка більш точного
y
значення (при кроці i h/2) оцінюють приблизно в такий спосіб:
1 *
| y*i  y( xi ) | | yi  yi |,
3 (9.18)

де у(х) - точний розв’язок диференціального рівняння. Удосконалений метод Ейлера


є більш точним у порівнянні з методом Ейлера та відноситься до методів 3-го порядку
точності.
Схема алгоритму представлена на рисунку 9.8.

105
Рисунок 9.8 - Схема алгоритму удосконаленого метода Ейлера

Модифікований метод Ейлера заснований на використанні ітераційної формули


виду:
yi  1  yi 
h
 
f ( xi , yi )  f ( xi  1 , yi  1 .
2 (9.19)
Геометрична інтерпретація представлена на рисунку 9.9.

106
Рисунок 9.9 – Графічна інтерпретація

Алгоритм методу включає наступні кроки:


1. визначення похідної y0' в точці ( x0 , y 0 ) :
y0'  f  x0 , y0 
2. зміна незалежної змінної х за формулою:
x1  x0  h
3. визначення проміжного значення y1д за формулою методу Ейлера
y1д  y0  hy0'
4. визначення проміжної похідної в точці  x1 , y1д 
y '
1д  f  x 1 , y1д 
5. визначення середньо арифметичного значення двох похідних
y0'  y1' д
y 
2
6. визначення у1 за формулою
y1  y0  h  y 
2

h '
y0  y1' д 
ітераційний процес повторюється, починаючи з першого кроку.
Схема алгоритму метода представлена на рисунку 9.10.

107
Рисунок 9.10 - Схема алгоритму модифікованого метода Ейлера

Удосконалений метод Ейлера - Коші з наступною ітераційною обробкою. Метод


Ейлера - Коші з ітераційною обробкою є більш точним, чим, раніше розглянутий метод
Ейлера - Коші. Сутність його полягає в тім, що виробляється ітераційна обробка кожного
знайденого значення yі. Спочатку вибирається грубе наближення потім будується
ітераційний процес:
yi(k1)  yi 
h
 
f ( xi , yi )  f ( xi 1 , yi(k11) .
2 (9.20)

108
Ітерації продовжуються доти, поки два послідовних наближення не збіжаться до
заданої похибки. Після цього приймається yi(k1)  yi(k11) . Якщо після трьох-чотирьох
ітерацій, при обраному значенні h, збігу потрібних знаків не відбувається, то варто
зменшити крок розрахунку h.

9.1.2 Метод Рунге–Кутта


Метод Рунге-Кутта є одним з методів підвищеної точності, але має багато
загального з методом Ейлера.
Нехай на відрізку [ a, b] потрібно знайти чисельний розв’язок рівняння
y '  f ( x, y ) (9.21)

з початковою умовою y( x0 )  y0 .
Розіб'ємо відрізок [ a, b] на п рівних частин точками xi  x0  ih(i  0,1, ..., n) , де
h  (b  a ) / n - крок інтегрування. В методі Рунге-Кутта, так само й у методі Ейлера,
послідовні значення yі шуканої функції у визначаються по формулі

yi 1  yi  yi . (9.22)

Якщо розкласти функцію в у ряд Тейлора й обмежитися членами до h4 включно, то


збільшення функції Δу можна представити у вигляді

h2 h3 h 4 IV
y  y( x  h )  y( x )  hy( x )  y( x )  y( x )  y ( x ),
2 6 24 (9.23)

де похідні y ' ' ( x), y ' ' ' ( x ), y IV ( x) визначаються послідовним диференціюванням з
рівняння (9.4).
Замість безпосередніх обчислень по формулі (9.23) у методі Рунге-Кутта
визначаються чотири числа:
k1  hf ( x , y ),
h k
k 2  hf ( x  , y  1 ),
2 2
h k
k3  hf ( x  , y  2 ),
2 2
k4  hf ( x  h , y  k3 ). (9.24)

Можна довести, що якщо числам k1, k2, k3, k4 додати відповідно вагу 1/6; 1/3; 1/3; 1/6,
те середньозважене цих чисел, тобто

1 1 1 1
k1  k 2  k 3  k 4
6 3 3 6 (9.25)

з точністю до четвертих ступенів дорівнює значенню у, обчисленому по формулі


(9.23):
1
y  ( k1  2 k2  2k3  k4 ).
6 (9.26)

109
Таким чином, для кожної пари поточних значень xі і yі по формулах (9.24)
визначаються значення
По формулі (9.26) знаходиться

k1( i )  hf ( xi , yi ),
h k (i )
k 2( i )  hf ( xi  , yi  1 ),
2 2
h k (i )
k 3( i )  hf ( xi  , yi  2 ),
2 2
k 2( i )  hf ( xi  h, yi  k3 .
(i )
(9.27)

і потім
yi 1  yi  yi
Числа k1, k2, k3, k4 мають простий геометричний зміст. Нехай крива M0CM1 (рис. 9.11)
являє собою розв’язок диференціального рівняння (9.21) з початковою умовою (9.22).
Точка С цієї кривої лежить на прямій, рівнобіжній осі Оу і розділяючою відрізок [ xi , xi 1 ]
навпіл, В и G - точки перетинання дотичної, проведеної до кривої в точці М0, з
ординатами АС і N1M1,. Тоді число k1 з точністю до множника h (де h  xi l  xi ) є кутовий
1
yi  ( k1( i )  2 k2( i )  2 k3( i )  k4( i ) )
6
коефіцієнт дотичної в точці М0 до інтегральної кривої M0CM1 тобто
k1  hyi  hf ( xi , yi ).
h k1
Точка В має координати x  xi  , y  yi  . Отже число k2 з точністю до множника є
2 2
кутовий коефіцієнт дотичної, проведеної до ін тегральної кривої в точці В (BF - відрізок
цієї дотичної).

Рисунок 9.11 – Геометрична інтерпретація метода Рунге-Кутта

Через точку М0 проведемо пряму, рівнобіжну відрізку BF. Тоді точка D має
координати і k3 з точністю до множника h - кутовий коефіцієнт дотичної, перевіреної до
110
інтегральної кривої в точці D (DR1 - відрізок цієї дотичної). Нарешті, через точку М0
проведемо пряму, рівнобіжну DR1, що перетне продовження M1N1 у точці
R2 ( xi  h; y i  k 3 ) .
Тоді k4 з точністю до множника h є кутовий коефіцієнт дотичної, проведеної до
інтегральної кривої в точці R2.
Обчислення по методу Рунге-Кутта зручно розташовувати за алгоритмом,
1. Значення х0 и у0 підставляють у праву частину диференціального рівняння (9.21),
визначають f ( x, y ) .
2. Отримане значення f ( x, y ) множать на крок інтегрування h, обчислюють
k1  h f ( x , y ) .
3. Змінюють значення х0
h
x 1  x0 
0
2
2
4. визначають допоміжне значення y0 д
k1
y0 д  y0 
2
x
5. визначення похідної в точці ( 0
1
2
, y0 д )
y0' д  f  x 1 , y0 д 
0
2

6. визначають значення k2
k 2  h f  x 1 , y0 д 
0
2

7. визначають нове допоміжне значення y0 д


k2
y0 д  y0 
2
x
8. визначення похідної в точці ( 0
1
2
, y0 д )
y0' д  f  x 1 , y0 д 
0
2

9. визначають значення k3
k 3  h  y0' д  h  f  x 1 , y0 д 
0
2

10. визначають нове значення допоміжного у1д


y1д  y0  k3
x
11. змінюють значення 0
1
2
h
x1  x 1 
0
2
2
12. визначають допоміжну похідну в точці ( x1 , y1д )
y1' д  f  x1 , y1д 
13. визначають значення k4
k4  h  y1' д  h  f  x0  h, y0  k3 
14. визначають нове значення у1 за формулою
1
y1  y0  ( k1  2 k 2  2 k3  k 4 ).
6
Для визначення y2 , y3 ,..., yn повторюють ітераційний процес, починаючи з першого
кроку.
Схема схема алгоритму метода Рунге-Кутта представлена на рисунку 9.12.
111
Рисунок 9.12 – Схема алгоритму метода Рунге – Кутта

112
Потім всі обчислення повторюють починаючи з І кроку, доти, поки не буде
пройдений весь відрізок [a, b] .
Метод Рунге - Кутта має порядок точності h4 на усьому відрізку [a, b] . Оцінка
точності методу цього дуже складна. Грубу оцінку погрішності можна одержати за
допомогою "подвійного прорахунку" по формулі
y*i  yi
| y*i  y( xi ) | ,
15 (9.28)
*
де y ( xi ) - значення точного розв’язку рівняння (9.21) у точці xi , a y i i y i наближені
значення, отримані з кроком h/2 і h. Якщо ε - задана точність розв’язку, то число п (число
розподілів) для визначення кроку інтегрування h  (b  a) / n вибирається таким чином,
щоб
h4   (9.29)
Однак крок розрахунку можна змінювати при переході від однієї точки до іншої.
Для оцінки правильності вибору кроку h використовують рівність

k 2( i )  k3( i )
q ,
k1( i )  k 2( i ) (9.30)

де q повинно бути дорівнює декільком сотим, у противному випадку крок h


зменшують.
Нехай задана система диференціальних рівнянь першого порядку:
 y   f ( x , y , z ),

 z  g( x , y , z ) (9.31)

У цьому випадку паралельно визначаються числа y i i z i :

1
yi  ( k1( i )  2 k 2( i )  2k3( i )  k4( i ) ),
6
1
zi  ( l1( i )  2l2( i )  2l3( i )  l4( i ) ),
6 (9.33)
k1( i )  hf ( xi , yi , zi ),
l1( i )  hg( xi , yi , zi );
h k( i ) l( i )
k 2( i )  hf ( xi  , yi  1 , zi  1 );
2 2 2
(i ) (i)
h k l
l2( i )  hg( xi  , yi  1 , zi  1 );
2 2 2
(i )
h k l( i )
k3( i )  hf ( xi  , yi  2 , zi  2 );
2 2 2
(i ) (i)
h k l
l3( i )  hg( xi  , yi  2 , zi  2 );
2 2 2
(i ) (i ) (i )
k4  hf ( xi  h , yi  k3 , zi  l3 );
l4( i )  hg( xi  h , yi  k3( i ) , zi  l3( i ) ). (9.34)

113
Тоді одержимо розв’язок системи диференційних рівнянь другого порядку:
yi 1  yi  yi , zi 1  zi  zi .

 k1 
 2( y  ) 
0
2 2  1,075
l2  h    0 ,1   0 ,13299 ;
l
 ( z0  )  ( x0  ) 
1 h 1,06667  0 ,55
 2 2 
 k2 h 
 2( y0  2 )  ( x0  2 )  2  1,07050  0 ,55
k3  h   0 ,1   0 ,14918;
 l  1 ,06650
z0  2
 2 
 k2 
 2 ( y  ) 
0
2 2  1,07050
l3  h    0 ,1   0 ,13245 ;
l
 ( z0  )  ( x0  ) 
2 h 1 ,06650  0 ,55
 2 2 
 2( y0  k 3 )  ( x0  h )  2  1,14918  0 ,6
k4  h   0 ,1   0 ,14998;
 z0  l3  1,13245
 2( y0  k 3 )  2  1,14918
l4  h    0 ,1   0 ,13266.
 ( z0  l3 )  ( x0  h )  1,13245  0 ,6

Отже,
1
y0  ( 0 ,15  2  0 ,14100  2  0 ,14918  0 ,14998 )  0 ,14672;
6
1
z0  ( 0 ,13333  2  0 ,13299  2  0 ,13245  0 ,13266 )  0 ,13281
6
і остаточно одержуємо значення шуканих функцій у точці х = 0,6:
y1  1  0 ,14672  1,14672 ; z1  1  0 ,13281  1,13281.

Джерела інформації

1. Фельдман Л.П., Петренко А.І. Дмитрієва О.А. Чисельні методи в


інформатиці: Підручник/ За ред. М.З. Згуровського. – К.: Вид. група BHV, 2006.
– 480 с.
2. Мак – Кракен Д., Дрон У. Численные методы и програмирование на
фортране. – М.: Мир, 1977. – 584 с.
3. Рисс Ф., Секефальви – Надь Б. Лекции по функциональному анализу –
М.: Мир, 1979.
4. Ахиезер Н. И. Лекции по теории апроксимации. – М.: Наука, 1965. –
256 c.
5. Маликов В.Т., Квєтний Р.Н. Вычислительные методы и применение
ЭВМ: «Прикладна метематика». – К.: Вища школа, 1989. – 213 с.
6. Дяконов В. П. Справочник по алгоритмам и програмам на языке Бейсик
для персональних ЕВМ. – М.: Наука, 1987. – 240 с.
7. Сборник заданий для курсовых работ по теоретической механике /Под
ред. А. А. Яблонского. – М.: Высшая шк.., 1985. – 367 с.
114
Питання та задачі до самостійної роботи
1. Яке рівняння називається диференціальним?
2. Яке рівняння відноситься до звичайного?
3. Яке рівняння відноситься до рівняння з частковими похідними?
4. Що таке задача Коші?
5. Яка задача відноситься до краєвої?
6. Що таке початкові умови?
7. Що таке краєві умови?
8. Які методи відносяться до одноточкових?
9. Які методи відносяться до багатоточкових?
10. Які методи відносяться до методів прогнозу і корекції?
11. Особливість математичної моделі методу Ейлера.
12. Геометрична інтерпретація методу Ейлера.
13. Алгоритм методу Ейлера.
14. Математична модель модифікованого методу Ейлера.
15. Геометрична інтерпретація модифікованого методу Ейлера.
16. Алгоритм модифікованого методу Ейлера.
17. Математичні моделі удосконаленого методу Ейлера.
18. Геометрична інтерпретація удосконаленого методу Ейлера та
методу Ейлера.
19. Алгоритм удосконаленого методу Ейлера.
20. Математична модель методу Рунге-Кутта.
21. Геометрична інтерпретація методу Рунге-Кутта.
22. Алгоритм методу Рунге-Кутта.

115

You might also like