You are on page 1of 51

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

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


КАФЕДРА ТЕХНІЧНОЇ КІБЕРНЕТИКИ

Реєстр. №

Конспект лекцій

Частина І

з дисципліни “Числові методи і моделювання на ЕОМ”

для студентів ІІІ курсу спеціальності 7.092501 – “Автоматизоване управління

технологічними процесами”

денної і заочної форми навчання

Херсон 2009
Конспект лекцій з дисципліни “Числові методи і моделювання на ЕОМ”
Частина І/ к.т.н., доц. Тернова Т.І. – Херсон, ХНТУ, 2009. – 51 с.

Затверджено
на засіданні кафедри ТК
протокол № ___ від „___”__________ 2009 р.

Зав. кафедрою ТК Бражник О.М.

Відповідальний к.т.н., доц. Бражник О.М.


за випуск

2
ЗМІСТ

ВСТУП 4

Лекція №1 6

Лекція №2 10

Лекція №3 16

Лекція №4 21

Лекція №5 25

Лекція №6 34

Лекція №7 41

Лекція №8 44

Лекція №9 48

СПИСОК РЕКОМЕНДОВАНОЇ ЛІТЕРАТУРИ 51

3
ВСТУП

Цикл лекцій з дисципліни “Числові методи і моделювання на ЕОМ” в обсязі


36 годин призначений для студентів спеціальності 7.092501 - автоматизоване
управління технологічними процесами.
Дисципліна “Числові методи і моделювання на ЕОМ” є складовою
частиною спеціальної підготовки за спеціальністю 6.092500 – автоматизоване
управління технологічними процесами.
Мета викладання дисципліни – набуття студентами вмінь і навиків,
необхідних для проведення моделювання на ЕОМ з використанням чисельних
методів.
Задача дисципліни - вивчення і засвоєння студентами чисельних методів і
використання їх при моделюванні на ЕОМ.
У результаті вивчення даного курсу студент повинен одержати основні
навички програмування, вивчити найбільш розповсюджені методи наближених
обчислень і ознайомитися з декількома прикладними програмними комплексами.
У більшості випадків для рішення задач обробки експерименту і математичного
моделювання процесів вже існують готові програмні комплекси. Однак, студенти
повинні мати ясне уявлення про основні методи наближених обчислень і границях
їхньої застосовності. Це дозволить, по-перше, вибирати підходящу для вирішення
конкретної задачі програму, а по-друге, правильно інтерпретувати одержувані
результати.
Теоретичні основи курсу студенти освоюють у рамках інших дисциплін -
математичного аналізу й інформаційних технологій. Тому основною формою
проведення занять повинне бути виконання студентами практичних завдань на
комп'ютері. Оптимальним представляється виконання ними ряду завдань,
починаючи від самостійного складання програми, що реалізує найпростіші
чисельні методи, через застосування стандартних бібліотек процедур у більш
складних випадках, і закінчуючи використання готових прикладних програм.

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


чисельні методи та відповідні ефективні алгоритми рішення на ЕОМ задач:
1) знаходження власних значень та власних векторів матриць,
2) сингулярного розкладення матриць,
3) обчислення значень та апроксимації функцій,
4) числового інтегрування та диференціювання,
5) розв'язання диференціальних та інтегральних рівнянь,
6) використання методу Монте-Карло для оцінки інтегралів.

4
В результаті вивчення дисципліни студенти повинні вміти:
1) вибирати та обґрунтовувати використання на практиці тих чи інших
чисельних методів стійких до похибок та найбільш ефективних при їх практичній
реалізації на ЕОМ,
2) досліджувати обчислювальні алгоритми, виявляти їх переваги та
недоліки,
3) вибирати оптимальні алгоритми рішення науково-технічних задач та
використовувати для цього стандартні програми з пакетів математичної обробки
даних, наприклад, "МathLab", в середовищі С++, та інші.

Місце дисципліни у навчальному процесі.


Вивчення даного курсу ґрунтується на навчальному матеріалі, що
викладається в курсах "Вища математика”, "Обчислювальна техніка і
програмування".
Знання і навички, отримані в результаті вивчення даної дисципліни,
використовуються в процесі виконання курсових і дипломних робіт.
При проведенні лабораторних занять передбачається використання
обчислювальної техніки для розрахунків по аналізу, синтезу та опрацюванню
інформації і т.д.

5
Лекция 1

ЧИСЛОВІ МЕТОДИ АЛГЕБРИ.


ОСОБЛИВОСТІ АЛГОРИТМУВАННЯ ОБЧИСЛЮВАЛЬНИХ ЗАДАЧ.
ЕЛЕМЕНТИ ТЕОРІЇ ПОХИБОК ОБЧИСЛЕНЬ ТА АНАЛІЗУ ПОМИЛОК
ОКРУГЛЕННЯ. ПОРЯДОК ВИКОНАННЯ ОПЕРАЦІЙ

1.1. Про наближені обчислення

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


задаються, не тільки точно, але й приблизно. Наприклад, запис 7/3 позначає
число, але записати його у вигляді десяткового дробу можна тільки приблизно.
Якщо ж обчислення проводяться на комп'ютері, то приблизно записувати
доводиться не тільки числа типу 7/3, але багато інших. У результаті виникають
помилки, які поступово накопичуються й спотворюють результат.
До теперішнього часу всі програмні засоби, завдяки яким на комп'ютерах
проводяться обчислення, сформовані так, що точність проведених розрахунків
можна регулювати програмно. Можна, наприклад, «доручити» комп'ютеру
провадити обчислення з точністю до трьох знаків після десяткової коми й тоді
результат теж буде мати таку точність. Залежно від суті завдання отриманий
результат можна запросити заново з більшою точністю або залишити без зміни.
Алгоритм, по якому ведуться обчислення, може бути стійким до
наближених чисел і може не бути таким. Слова «стійкий алгоритм» означають, що
чим точніше задаються числа для обробки, тим точніше виходить результат,
причому для будь-якої точності результату можна вказати таку точність
оброблюваних чисел, що алгоритм приведе до результату саме із цією заданою
точністю.
Алгоритм, що реалізує те або інше обчислення, може вимагати різний час
для своєї роботи. Чим більшого часу вимагає алгоритм, тим більше високу
складність за часом він має. Точно так само, чим більше комп'ютерної пам'яті
потрібно для реалізації алгоритму, тим більше високу складність по пам'яті він
має.

1.2. Лінійні заміни змінних


Розглянемо систему рівностей
n
yi   aij x j , i  1,..., m .
j 1

6
Тут , - числа, а - змінні; завдяки цим рівностям
змінні yi лінійно виражаються через змінні . Це і є лінійна заміна змінних.
Зашифруємо її у вигляді наступної таблиці:

x1 x2 ... xj ... xn

y1  a11 a12 ... a1 j ... a1n


y2  a 21 a 22 ... a2 j ... a 2n
... ... ... ... ... ... ...
yi  a i1 ai 2 ... a ij ... ain
... ... ... ... ... ... ...
ym  a m1 am2 ... a mj ... a mn

Ясно, що по такій таблиці можна однозначно відновити записи, що


визначають заміну змінних. Припустимо, що елемент aij  0 . Із заданих
рівностей, а точніше з рівності номер i , у цьому випадку можна виразити x j через
yi і x1 ,..., x j 1 , x j 1 ,..., xn :

1
xj   ai1x1  ...  aij 1x j 1  yi  aij 1 x j 1  ...  ain xn  (1.2.1)
aij

Якщо тепер це вираження для x j підставити в усі вихідні рівності, крім


рівності номер i , а замість рівності номер i написати рівність (1.2.1), то виникне
система рівностей, аналогічна вихідній системі, але в якій змінні yi й x j
помінялися ролями. Результуючу систему рівностей можна зашифрувати
аналогічною таблицею:

... yi ... xn
y1  b11 b12 ... b1 j ... b1n
y2  b21 b22 ... b2 j ... b2 n
... ... ... ... ... ... ...
xj  bi1 bi 2 ... bij ... bin
... ... ... ... ... ... ...
bm1 bm 2 ... bmj ... bmn

7
Неважко встановити формули, що виражають елементи другої таблиці через
елементи першої таблиці:

(1.2.2)

Описана дія називається жордановим виключенням з розв'язним елементом


aij . Ясно, що можна робити послідовно цілий ряд жорданових виключень; щораз
роль розв'язного елемента може грати будь-який елемент таблиці, відмінний від
нуля. Стовпець і рядок, у яких розташований розв'язний елемент, також
називаються розв'язними.
Процедуру обчислень по формулах (1.2.2) прийнято описувати в такий
спосіб «по кроках»:
Крок 1: у вихідній таблиці заміняємо розв'язний елемент aij на 1;
Крок 2: у всіх інших елементів розв'язного рядка заміняємо знак;
Крок 3: всі інші елементи розв'язного стовпця залишаємо незмінними;
Крок 4: кожний елемент ast , що перебуває поза розв'язних рядку й стовпцю,
заміняємо на ast aij  asj ait ;

Крок 5: всі елементи без винятку ділимо на aij .

1.3. Системи лінійних алгебраїчних рівнянь

Нагадаємо кілька визначень.


Система лінійних алгебраїчних рівнянь – це система рівнянь виду:

(1.3.1)

Тут – невідомі, а – задані коефіцієнти,


які прийнятий записувати у вигляді матриць:

8
Дуже часто в обговоренні таких систем рівнянь використовують матрицю

яку називають розширеною матрицею системи; матриця А називається матрицею


системи, а матриця B матрицею вільних членів.
Розв'язання системи (1.3.1) - це такий набір чисел h1 , h2 , , hn , що при
підстановці xi  hi , i=1,2,...,n, всі рівності в (1.3.1) стають тотожностями.
Система (1.3.1) називається спільною, якщо в неї є хоч одне розв'язання, і
неспільною, якщо жодного розв'язання в неї немає.
Система (1.3.1) називається визначеною, якщо в неї є розв'язання й притім
тільки одне.

9
Лекция 2

РОЗКЛАДАННЯ В РЯД ТЕЙЛОРА. ВИКОРИСТАННЯ СТЕПЕНЕВИХ


РЯДІВ. ПОЛІНОМИ ЧЕБИШЕВА. ЗАСТОСУВАННЯ ЖОРДАНОВИХ
ВИНЯТКІВ ДО РОЗВ'ЯЗАННЯ СИСТЕМ ЛІНІЙНИХ АЛГЕБРАЇЧНИХ
РІВНЯНЬ И ДО ОБЧИСЛЕННЯ ЗВОРОТНОЇ МАТРИЦІ

2.1. Апроксимація функції по Фур'є.

Нехай функція задана в інтервалі . У цьому випадку (при


наявності в неї відповідних властивостей інтегруемості) можна побудувати ряд
Фур'є цієї функції, а саме об'єкт

(2.1.1) ,
де

(2.1.2) .

Відомо, що для безперервної функції цей ряд сходиться в кожній крапці


інтервалу й притім - до значення в цій точці функції . Якщо
підсумовування в ряді Фур'є перервати на якімсь доданку, то виникне наближена
рівність
,

яке тим точніше, чим більше число доданків у сумі. У цьому й складається
апроксимація функції по Фур'є.
Практично організація розрахунків при апроксимації відбувається так:
задається той ступінь точності e, з якої треба наблизити число за допомогою
часткових сум ряду (2.1.1); потім обчислюють, поступово нарощуючи кількість
доданків, часткові суми ряду (2.1.1) і роблять це доти, поки два рази підряд не
вийде при підсумовуванні те саме з точністю e число; його й приймають за
потрібне наближення. Природно, що при обчисленні часткових сум ряду (2.1.1)
потрібні коефіцієнти , які обчислюються за допомогою чисельного
інтегрування через визначальні рівності (2.1.2).
10
Описана ситуація узагальнюється на випадок функції , заданої не на
інтервалі , а на довільному інтервалі . У цьому випадку (для
безперервної функції ) має місце рівність

(2.1.3)

усередині інтервалу , де

(2.1.4)

Прийнято виділяти випадки парної й непарної функції, тому що при цьому


вираження (21.3) і (2.1.4) істотно спрощуються, а саме:
якщо на інтервалі функція парна, то для всіх мають
місце рівності й

(2.1.5) ;

якщо на інтервалі функція непарна, то для всіх


мають місце рівності й

(2.1.6) .

Ця обставина підказує вихід з положення, при якому функція задана


не на інтервалі , а тільки на інтервалі : функцію можна продовжити на
весь інтервал парним або непарним образом, а потім зробити розкладання
Фур'є, відповідно по косинусах (випадок (2.1.5)) або по синусах (випадок (2.1.6)).

2.1.1. Перетворення Фур'є

Так називається дія, за допомогою якого по заданій в інтервалі


функції будується система чисел (2.1.2). За традицією, саме ці числа також
позначають словами «перетворення Фур'є» даної функції. При цьому числа
називаються косинус- перетворенням Фур'є функції , а числа
називаються синусом-перетворенням Фур'є функції . У перетворення Фур'є
функції є множина властивостей і застосувань; зокрема,
11
відомий ряд прикладних питань, у яких ту або іншу інформацію про функцію
вдається одержати тільки через її перетворення Фур'є, що у таких ситуаціях
вдається одержати деякими непрямими засобами.
Розглянемо наступний окремий випадок. Функція розглядається на
інтервалі
(-p ,p ) і притім тільки в його окремих точках

при деякому заздалегідь заданому й фіксованому числі . Значення функції


в цих крапках уважаються відомими; позначимо
.

У рівності
=

покладемо . Одержимо

(2.2.1) .

Проаналізуємо співвідношення (2.2.1). Якщо довільне ціле ненегативне


число розділити з остачею на число , то вийде співвідношення , де
для цілих є лише наступні можливості:

З урахуванням періодичності косинуса й синуса у вираженні (2.2.1) можна


привести подібні члени, у результаті чого вийде:

(2.2.2) ,

де

12
Відзначимо, що тепер всі суми в (2.2.2) - кінцеві. Відомий наступний факт
про тригонометричні суми:
для всіх чисел мають місце рівності

Якщо обидві частини співвідношення (2.2.2) помножити на й потім


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

(2.2.3а) ;

а якщо обидві частини (7.2.2) помножити на й, з обліком того ж


твердження про підсумовування косинусів і синусів, одержимо співвідношення

(2.2.3б)

причому в (2.2.3а) і (2.2.3б) . Числа ,


називаються дискретним перетворенням Фур'є функції . Якщо в рівності
(2.2.2) замінити на довільний , то воно з точного стане наближеним. Його
праву частину в цьому випадку називають тригонометричною інтерполяцією
функції .

2.2. Зворотна матриця


Нехай А и В - дві матриці наступного виду:

 a11  a1n   b11  b1r 


   
A       і B     ;
a  b 
 m1  a mn   n1  bnr 

оборотний увага на те, що в першій з них стовпців стільки ж, скільки в другий з


них - рядків. У цьому випадку можна побудувати нову матрицю З

13
 c11  c1r 
 
C     ,
c 
 m1  cmr 

називану добутком А на В (пишуть ІЗ=АВ), за правилом

n
cij   aik bkj ,
k 1

де i=1,...,m і j=1,...,r. Серед матриць прийнято виділяти й позначати буквою E


наступну матрицю, називану одиничної, -

1 0  0
 
0 1  0
E  ;
   
 
0 0  1

пояснимо: одинична матриця завжди квадратна, по її діагоналі коштує 1, а всі


інші елементи - нулі, тобто якщо Е=(еij), i,j=1,...,n, те

1, если i  j
eij   .
0, если i  j

Говорять, що квадратна матриця А и квадратна матриця В того ж розміру є


зворотними по відношенню друг до друга, якщо виконано хоч одне з матричних
рівностей - або АВ=Е або ВА=Е. Можна перевірити, що якщо одне із цих
матричних рівностей виконується, то виконується й інше. Про всякий випадок
пояснимо, що слова «матрична рівність» означають рівність заелементне, тобто
якщо має місце рівність матриць U=V, те це означає, що в них рівні кількості
рядків і рівні кількості стовпців і при цьому uij=vij для всіх i і j. Зокрема, система
лінійних алгебраїчних рівнянь із п.3 Лекції 1 може бути записана у вигляді AX=B,
де
 x1 
 
X    ,
x 
 n

а А и В мають той же змив, що й у п.3 Лекції 1.


14
Неважко помітити, що якщо для квадратної матриці А потрібно знайти
зворотну матрицю В, те треба вирішити n систем лінійних алгебраїчних рівнянь із
однієї й тої ж матрицею: запишемо матричну рівність АВ=Е поелементно (тут
усього вийде n2 рівностей), причому будемо послідовно дорівнювати стовпці -
перший стовпець лівої частини до першого стовпця правої частини, другий
стовпець лівої частини до другого стовпця правої частини й т.д. –

Із цього спостереження треба, що знайти зворотну матрицю можна вирішуючи


одночасно n систем лінійних алгебраїчних рівнянь із однієї й тією же матрицею А.

15
Лекция 3

АЛГОРИТМИ ТА ПРОГРАМИ РОЗРАХУНКІВ ЗА ФОРМУЛАМИ ТА


ТАБЛИЦЯМИ. ВИКОРИСТАННЯ ЛАНЦЮГОВИХ ДРОБІВ. СХЕМА
ГОРНЕРА. МЕТОДИ ДІЛЕННЯ ВІДРІЗКА НАВПІЛ, ХОРД І ДОТИЧНИХ
ДЛЯ УТОЧНЕННЯ КОРЕНЯ РІВНЯННЯ. ВІДШУКАННЯ РЕЧОВИННИХ
КОРНІЙ АЛГЕБРАЇЧНИХ РІВНЯНЬ.

3.1. Метод ділення відрізка навпіл для розв'язання рівнянь


Мова як і раніше йде про відшукання корінь рівняння (3.3.1)

т.е. таких чисел z , що при підстановці в рівняння замість символу x числа z


виходить тотожність. Саме собою зрозуміло, що тут, як і всюди в цьому курсі,
мова йде тільки про речовинні числа.
Про функцію f (x ) в міркуваннях, що нижче приводяться, як і раніше
передбачається, що вона має безперервні похідні тих порядків, які згадуються по
ходу викладу.
Нагадуємо, відокремити корінь рівняння (3.3.1) - це значить знайти такий
інтервал (a,b), що, по-перше, містить корінь рівняння (3.3.1) і, по-друге, містить
тільки один корінь цього рівняння. Доводиться, що якщо на кінцях деякого
інтервалу (a,b) функція f (x ) має різні знаки, а усередині цього інтервалу похідна
f (x ) знак не міняє, то в інтервалі (a,b) корінь рівняння (3.3.1) є й, притім, тільки
один.
Звідси виникає проста методика наближеного пошуку кореня, відділеного в
інтервалі (a,b): треба побудувати послідовність точок c1 ,...c n ,... за наступним
ab
правилом: c1  ; потім із двох інтервалів (a,c1) і (c1,b) вибирається той, на
2
кінцях якого f (x ) має різні знаки і його середину приймається за c 2 ; позначимо
кінці цього інтервалу (у якого c 2 - середина) через (a2,b2), а потім виберемо ту з
його половин, на кінцях якої f (x ) має різні знаки. Нехай (a3,b3) - ця половина й c 3 -
середина цього відрізка й т.д. Доводиться, що побудована послідовність c1 ,...c n ,...
сходиться до кореня рівняння (3.3.1). Якщо із самого початку задається деяка
точність обчислень, то на практиці побудова послідовності c1 ,...c n ,... переривається
тоді, коли два рази підряд виходять однакові із заданою точністю числа. Це

16
останнє перед перериванням побудови послідовності число й приймається за
наближене із заданим ступенем точності значення кореня.
Описаний метод уточнення кореня називається методом ділення відрізка
навпіл.

3.2. Метод хорд для рішення рівнянь

Припустимо тепер на відрізку a, b вже відділений корінь рівняння (3.3.1).

При описі в п.1 методу ділення відрізка навпіл будувалася послідовність


відрізків a n , bn  і крапок c n  a n , bn ., що сходяться до кореня рівняння. У методі
хорд теж будується деяка послідовність відрізків a n , bn  і крапок c n  a n , bn , що
сходяться до кореня.
Як відрізок a1 , b1  береться відрізок a, b. Точка с1 береться як точка
перетинання з віссю абсцис прямій, що проходить через точки (a, f (a )) й (b, f (b)) .
Укажемо значення для c1 у явній формі:

Із двох відрізків a1 , c1  і c1 , b1  виберемо той, на кінцях якого функція f (x ) має різні
знаки й цей відрізок приймемо за a 2 ,b2 . Потім знайдемо точку c2 по відрізку
a 2 ,b2  точно так само, як знайшли точку c1 по відрізку a1 , c1 : це буде точка
перетинання з віссю абсцис прямій, що проходить через точки (a1 , f (a1 )) й
(b1 , f (b1 )) :

Потім як відрізок a3 , b3  береться той з відрізків a 2 , c 2  і c 2 , b2 , на кінцях якого


f (x ) має різні знаки й т.д. Через послідовність точок c1 ,...c n ,... наближене значення
кореня перебуває так само, як у п.1. Назва методу походить із того, що
конструюються по ходу справи прямі є хордами стосовно графіка функції.

17
3.3. Метод дотичних для розв'язання рівнянь
Знову розглянемо ситуацію відділеного на відрізку a, b кореня рівняння (3.3.1).
Будемо припускати, що функція f (x ) має різні знаки на кінцях цього відрізка, а її
перші дві похідні на цьому відрізку знака не міняють. Перші й друга похідні
функції f (x ) позитивні. У випадку методу дотичні уточнення кореня також
будується послідовність відрізків a n , bn  і точок c n  a n , bn  , що сходяться до
кореня.
Нехай a, b= a1 , b1  . Виберемо той край відрізка a, b, на якому функція має
той же знак, що і її друга похідна. У нашім прикладі на наведеній вище схемі - це
крапка b. Проведемо через точку b, f (b)  дотичну до графіка функції f (x ) . Точку
перетинання цій дотичній з віссю абсцис і приймемо за точку c1. От відповідна
формула для розглянутого випадку:

f ( b)
c1  b  .
f (b)

Неважко одержати аналогічні формули для випадків, коли знаки згаданих вище
значень інші. Важливий принцип: дотична проводиться до графіка в тій точці, де
знак значення функції збігається зі знаком її другої похідної. Після цього із двох
відрізків a1 , c1  і c1 , b1  виберемо той, на кінцях якого функція f (x ) має різні знаки
й цей відрізок приймемо за a 2 ,b2 . Потім знайдемо крапку c2 по відрізку a 2 ,b2 
точно так само, як знайшли точку c1 по відрізку a1 , c1  й т.д. Через послідовність

точок c1 ,...c n ,... наближене значення кореня перебуває так само, як у п.1.

3.4. Методика рішення алгебраїчного рівняння

Ми зупинимося тут докладніше на методиці рішення алгебраїчного


рівняння, тобто рівняння виду: a0 x n  a1 x n1  ...  an  0 , ліву частину якого
будемо позначати також через f (x) ; нагадаємо, що мова йде тільки про речовинні
коріння.
При роботі тої або іншої процедури часто виникає необхідність обчислити
значення f (u ) при якімсь u ; організацію обчислення значення f (u ) зручно
проводити за схемою Горнера: будується рекурсія zi  zi 1u  ai , де z0  a0 ,
i  0,1,2,..., n , так що z n  f (u ) .

18
Далі помітимо, що з алгебри відомо наступне: існує проста формула, по якій
установлюється інтервал (-R,R) такий, що якщо рівняння f ( x)  0 має який-
небудь (нагадуємо: речовинний!) корінь, то він виявляється усередині цього
інтервалу, а саме:

A
R 1 ,
a0

де A  max ai .
i 1

Припустимо тепер, що відносно похідній f (x ) багаточлена f (x ) відомі


інтервали її знакопостоянства, тобто такі точки a1  a2  ...  an , що на ділянках
( , a 1 ), ( a1 , a2 ), ( a2 , a3 ), ... , ( an 1 , an ), ( an , ) функція f (x ) знак не міняє, а проходячи

через кожну із крапок a i міняє знак. Неважко обґрунтувати в цій ситуації


наступні висновки: 1) якщо усередині інтервалу (-R,R) крапок a i немає взагалі й
f ( R )  0 , те корінь (нагадуємо: речовинний!) у рівняння f ( x )  0 немає; 2) якщо в
інтервалі (-R,R) крапки a i виявилися, то треба прорахувати f (x ) в цих крапках і в
крапках  R ; якщо серед цих значень нуля немає й всі вони мають той самий
знак, то корінь (нагадуємо: речовинних!) рівняння f ( x )  0 не має; якщо ж серед
цих значень будуть числа з різними знаками, те це дозволить виділити всі
ділянки, на кінцях яких f (x ) має різні знаки, а усередині яких f (x ) знак не
міняє. До кожної такої ділянки застосовна процедура уточнення кореня (ділення
відрізка навпіл, методи хорд і дотичних).
І ще одне зауваження. Якщо речовинних коріння (усі) рівняння f ( x )  0
відомі, то по них повністю відновлюються ділянки знакопостоянства функції f (x ) :
треба прорахувати f (x ) між будь-якими двома сусідніми коріннями й по
сукупності знаків отриманих чисел зробити висновок.
Процедуру з'ясування ділянок знакопостоянства похідній f (x) можна
організувати так. Обчислимо похідні багаточлена f (x ) :
f ( x), f ( x), f ( x), ... , f ( n1) ( x) ; помітимо, що похідна f ( n1) ( x) - лінійна функція.
Тому ділянки її знакопостоянства можна обчислити. Якщо n  2 , то вже можливі
формальні дії по описаній вище схемі по уточненню корінь вихідного рівняння.
Якщо ж n  2 , то вирішимо по описаній вище схемі рівняння f ( n2) ( x)  0 й по
його коріннях установимо ділянки знакопостоянства функції f ( n2) ( x) ; потім

19
вирішимо по описаній вище схемі рівняння f ( n3) ( x)  0 й по його коріннях
визначимо ділянки знакопостоянства функції f ( n 3) ( x) й так далі, поки не
виявиться вирішеним вихідне рівняння f ( x )  0 .
Отримана в процесі рішення інформація дозволяє встановити також і
кратність кожного кореня рівняння f ( x )  0 ; нагадаємо, що корінь c рівняння
f ( x)  0 вважається має кратність k , якщо f (c)  f (c)  ...  f ( k 1) (c)  0 , але
f ( k ) (c)  0 . У цьому випадку, як відомо з алгебри, має місце представлення
f ( x)  ( x  c) k g ( x) , де g (x ) - багаточлен ступеня n  k .

Для визначення значення полінома використовується таблиця Горнера.

20
Лекция 4

МЕТОДИ РОЗВ’ЯЗКУ СИСТЕМ АЛГЕБРАЇЧНИХ РІВНЯНЬ. ЧИСЕЛЬНІ


РІШЕННЯ РІВНЯНЬ. МЕТОД ПРОСТИХ ІТЕРАЦІЙ І МЕТОД ЗЕЙДЕЛЯ
ДЛЯ РІШЕННЯ АЛГЕБРАЇЧНИХ ЛІНІЙНИХ СИСТЕМ. МЕТОД
ІТЕРАЦІЙ ДЛЯ РІШЕННЯ НЕЛІНІЙНИХ АЛГЕБРАЇЧНИХ І
ТРАНСЦЕНДЕНТНИХ РІВНЯНЬ
І ЇХНІХ СИСТЕМ

4.1. Метод простих ітерацій

Будемо використовувати позначення попередньої лекції. Зокрема, ми


будемо розглядати систему лінійних алгебраїчних рівнянь (1.3.1), яку можна
записувати й у матричному виді, згаданому в попередній лекції:
(3.1.1) .
Нагадаємо, що тут А - матриця системи, B - стовпець вільних членів, а X -
стовпець невідомих. У попередній лекції мова йшла про таке рішення системи
(3.1.1), що з математичної точки зору є точним. У дійсності жоден комп'ютер не
маніпулює з точними числами - там числа наближені; тому й при методі Гаусса, і
при методі Крамера, і при методі жордановых виключень у дійсності комп'ютер
видасть не точний, а наближена відповідь, хоча в самих цих методів «погрішність
методу» дорівнює нулю.
Існують, однак, методи рішення системи (3.1.1), які по самій своїй природі
дають не точний, а наближена відповідь. Найвідомішим з таких методів є метод
простих ітерацій. От його опис.
Перетворимо систему (3.1.1) до іншого виду, виражаючи всі невідомі через
самих себе, -

(3.1.2)

де - нові числові матриці, а Х - колишній


стовпець невідомих. Перехід від (3.1.1) до (3.1.2) можна зробити багатьма
способами. От приклад: є система

21
з першого рівняння одержимо із другого рівняння
отже, при такому перетворенні

Нехай стовпцю невідомих Х довільним образом приписане конкретне числове


значення Тоді виникає можливість за допомогою матричної рівності (3.1.2)
побудувати рекурентно стовпці , де k=2,3,4,... . Виявляється, що
при деяких умовах на D стовпці «наближаються як завгодно близько» до
рішення системи (3.1.1). Дія по обчисленню за допомогою називається
ітерацією; звідси – метод ітерацій.
Уведемо нові терміни для точного вираження останнього твердження.
Нехай - стовпець із n чисел, записаний заради економії місця у
вигляді рядка, заданий для кожного k=1,2,3,... . Нехай, далі, є стовпець
Назвемо відстанню від до число

ясно, що - числова послідовність; якщо ця числова послідовність прагне до


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

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

22
Як і раніше розглядається питання про рішення системи (3.1.1). У
попередньому пункті
був описаний метод простих ітерацій для рішення такої системи. Суть методу
полягала в тому, що від системи (3.1.1) треба перейти до системи (3.1.2), а потім
організувати процес ітерацій . Метод Зейделя полягає в тому, що
ітерації здійснюються трохи інакше. А саме, розпишемо рівність
у вигляді звичайних числових рівностей:

згідно із цими рівностями, числа відшукуються через числа


Зейдель запропонував відшукувати по
, використовуючи ті ж самі формули. Іншими словами, в
ітераціях по Зейделю враховуються вже знайдені значення наближень.
Сформулюємо остаточно метод Зейделя: послідовність ітерацій будується по
формулах:

Питання про збіжність процесу ітерацій до рішення вирішується тут так само, як і
вище у випадку простих ітерацій: все залежить від матриці D. Умови тут ті ж, що
й вище.

4.3. Метод ітерацій для рішення рівнянь

Мова йтиме про відшукання корінь рівняння

(3.3.1) ,

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


виходить тотожність. Саме собою зрозуміло, що тут, як і всюди в цьому курсі,
мова йде тільки про речовинні числа.
Відокремити корінь рівняння (3.3.1) - це значить знайти такий інтервал
(a,b), що, в перших, містить корінь рівняння (3.3.1) і, по-друге, містить тільки
23
один корінь цього рівняння. Доводиться, що якщо на кінцях деякого інтервалу
(a,b) функція має різні знаки, а усередині цього інтервалу похідна знак
не міняє, то в інтервалі (a,b) корінь рівняння (3.3.1) є й, притім, тільки один.
Припустимо, що за допомогою тотожних перетворень це рівняння наведене
до виду

(3.3.2)

Тоді для довільного числа можна побудувати послідовність чисел


Можна довести, що якщо в околиці передбачуваного
кореня рівняння (3.3.1), те ця послідовність сходиться саме до цього кореня.
Метод ітерацій для рішення рівнянь типу (3.3.1) полягає в тому, що спочатку
відділяється корінь рівняння, потім воно перетвориться до виду (3.3.2) із правою
частиною, що має похідну по модулі меншу, чим 1, на всьому відрізку, що
відокремлює корінь, після чого будується послідовність для
довільного з відрізка, у якому відділений корінь.
Процес побудови послідовності треба перервати тоді, коли два рази підряд вийде
те саме число із заданим ступенем точності.
Варто спеціально підкреслити, що перетворення рівняння (3.3.1) до виду
(3.3.2) з дотриманням умови для похідної є самостійною складною задачею, що
вирішують у кожному конкретному випадку заново.

4.4. Метод ітерацій для рішення систем нелінійних алгебраїчних і


трансцендентних рівнянь

Припустимо, що є система рівнянь виду:

Її рішення - це будь-який набір чисел такий, що при підстановці


в систему ci замість xi , i=1,2,...,n, всі рівності стають тотожностями (тобто
виходять вираження типу «0=0»). Вирішити систему - це значить знайти всі
рішення. Ми це робили поки тільки для частки випадку - коли всі ліві частини -
функції лінійні, тобто мають вигляд

24
причому - константи. Ми шукали рішення систем
лінійних рівнянь різними способами, у тому числі - методом ітерацій. У
загальному випадку схему ітерацій можна також відтворити. А саме, припустимо,
що тотожними перетвореннями дану на початку цього пункту систему рівнянь
удалося представити у вигляді:

Тоді, почавши з довільного набору , можна організувати


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

25
Лекция 5

ЗВЕРНЕННЯ МАТРИЦЬ. ПОДВІЙНІСТЬ У ЛІНІЙНОМУ


ПРОГРАМУВАННІ. ОДНОЧАСНЕ РІШЕННЯ ПАРИ ДВОЇСТИХ ЗАДАЧ
ЛІНІЙНОГО ПРОГРАМУВАННЯ.

Зворотна матриця

Нехай А и В - дві матриці наступного виду:

 a11  a1n   b11  b1r 


   
A       і B     ;
a  b 
 m1  a mn   n1  bnr 

оборотний увага на те, що в першій з них стовпців стільки ж, скільки в другий з


них - рядків. У цьому випадку можна побудувати нову матрицю З

 c11  c1r 
 
C     ,
c 
 m1  cmr 

називану добутком А на В (пишуть ІЗ=АВ), за правилом

n
cij   aik bkj ,
k 1

де i=1,...,m і j=1,...,r. Серед матриць прийнято виділяти й позначати буквою E


наступну матрицю, називану одиничної, -

1 0  0
 
0 1  0
E  ;
   
 
0 0  1

пояснимо: одинична матриця завжди квадратна, по її діагоналі коштує 1, а всі


інші елементи - нулі, тобто якщо Е=(еij), i,j=1,...,n, те

26
1, если i  j
eij   .
0, если i  j

Говорять, що квадратна матриця А и квадратна матриця В того ж розміру є


зворотними по відношенню друг до друга, якщо виконано хоч одне з матричних
рівностей - або АВ=Е або ВА=Е. Можна перевірити, що якщо одне із цих
матричних рівностей виконується, то виконується й інше. Про всякий випадок
пояснимо, що слова «матрична рівність» означають рівність заелементне, тобто
якщо має місце рівність матриць U=V, те це означає, що в них рівні кількості
рядків і рівні кількості стовпців і при цьому uij=vij для всіх i і j. Зокрема, система
лінійних алгебраїчних рівнянь із п.3 Лекції 1 може бути записана у вигляді AX=B,
де
 x1 
 
X    ,
x 
 n

а А и В мають той же змив, що й у п.3 Лекції 1.


Неважко помітити, що якщо для квадратної матриці А потрібно знайти
зворотну матрицю В, те треба вирішити n систем лінійних алгебраїчних рівнянь із
однієї й тої ж матрицею: запишемо матричну рівність АВ=Е поелементно (тут
усього вийде n2 рівностей), причому будемо послідовно дорівнювати стовпці -
перший стовпець лівої частини до першого стовпця правої частини, другий
стовпець лівої частини до другого стовпця правої частини й т.д. –

Із цього спостереження треба, що знайти зворотну матрицю можна


вирішуючи одночасно n систем лінійних алгебраїчних рівнянь із однієї й тією же
матрицею А.

Визначення пари двоїстих задач лінійного програмування.

Нагадаємо, що основна задача лінійного програмування - це задача пошуку


максимуму лінійної функції

при обмеженнях
27
.

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


рівності й для визначеності будемо вважати, що для i  1,..., k мають місце
неточні рівності, а для i  k  1,..., m - рівності точні:

Ясно, що таке припущення не зменшує спільності задачі. Припустимо, далі (і це


теж не зменшить спільність задачі), що є невільні невідомі x  0, j  1,..., l й вільні
j

x , j  l  1,..., n .
j

Задачею, двоїстої до ОЗЛП, називається задача пошуку мінімуму лінійної


функції

при обмеженнях:

а також при невільних невідомих ui  0,i  1,..., k , і вільних невідомих u i , i  k  1,..., m .


Тут треба звернути увагу, що цільова функція двоїстої задачі виходить із
коефіцієнтів, які дорівнюють правим частинам у вихідних обмеженнях,
обмеження у двоїстій задачі відповідають стовпцям матриці коефіцієнтів вихідної
ОЗЛП, причому обмеження-нерівності відповідають невільним невідомим, а
обмеження - рівності відповідають вільним змінним; нарешті, невільні змінні у
двоїстій задачі відповідають нерівностям вихідної ОЗЛП, а вільні змінні двоїстої
задачі відповідають рівностям вихідної ОЗЛП.
Обидві сформульовані задачі називаються парою двоїстих задач. Про такі
пари доводиться наступне принципове положення:
1) існує тоді й тільки тоді, коли існує min(w) й при цьому має
місце рівність: max( z )  min(w) ;
28
2) якщо одна із задач суперечлива, те інша або теж суперечлива, або
необмежена;
3) якщо одна із задач необмежена, те інша суперечлива.

Одночасне рішення пари двоїстих задач лінійного програмування.

Неважко помітити, що двоїста задача до основної задачі лінійного


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

v 1= ... vj= ... v n= w=


-x1 ... -xj ... -xn 1
u1 y1= a11 ... a1j ... a1n c1
... ... ... ... ... ... ... ...
ui yi= ai1 ... ai,j ... ai,n ci
... ... ... ... ... ... ... ...
um ym= am1 ... am,j ... am,n cm
1 z= -p1 ... -pj ... -pn 0

Можна помітити, що проведення симплекс-методу із цією таблицею у


відношенні змінних xj, yi дає рішення й для двоїстої задачі, якщо на кожному
кроці міняти місцями й відповідні ui, vj. Ми продемонструємо це нижче на
конкретному прикладі.
Приклад одночасного рішення пари двоїстих задач лінійного
програмування.

Отже, потрібно вирішити одночасно дві екстремальні задачі. Задача перша:

29
Перш, ніж записати другу задачу, сформуємо стандартну робочу таблицю
для пари двоїстих задач, дотримуючись правила з попереднього пункту:

v1= v2= v3= v4= w=


-x1 -x2 -x3 -x4 1
u1 y1= -3 1 4 1 1
u2 y2= 3 -2 2 -2 -9
u3 0 -2 1 1 3 2
u4 0 -3 2 -3 0 7
1 z= -10 1 42 54

Тепер по таблиці нам легше буде записати умова двоїстої задачі. А саме:

Таким чином, змінні u3, u4 - вільні. Алгоритм симплекс-методу нам уже відомий з
попереднього викладу; тому будемо лише вказувати розв'язні елементи для
чергових модифікованих жордановых виключень (як звичайно, що дозволяє
елемент виділяється в таблиці сірим тлом):

v1= v2= v3= v4= w=


-x1 -x2 -x3 -x4 1
u1 y1= -3 1 4 1 1
u2 y2= 3 -2 2 -2 -9
u3 0 -2 1 1 3 2
u4 0 -3 2 -3 0 7
1 z= -10 1 42 54

30
От результат відповідного модифікованого жорданова виключення:

v1= u1= v3= v4= w=


-x1 -y1 -x3 -x4 1
v2 x2= -3 1 4 1 1
u2 y2= -3 2 10 0 -7
u3 0 1 -1 -3 2 1
u4 0 3 -2 -11 -2 5
1 z= -7 -1 38 53 -1

Наступний розв'язний елемент:


v1= u1= v3= v4= w=
-x1 -y1 -x3 -x4 1
v2 x2= -3 1 4 1 1
u2 y2= -3 2 10 0 -7
u3 0 1 -1 -3 2 1
u4 0 3 -2 -11 -2 5
1 z= -7 -1 38 53 -1

Проводимо відповідне модифіковане жорданово виключення:

u3= u1= v3= v4= w=


0 -y1 -x3 -x4 1
v2 x2= 3 -2 -5 7 4
u2 y2= 3 -1 1 6 -4
v1 x1 1 -1 -3 2 1
u4 0 -3 1 -2 -8 2
1 z= 7 -8 17 67 6
Черговий розв'язний елемент:

u3= u1= v3= v4= w=


0 -y1 -x3 -x4 1
v2 x2= 3 -2 -5 7 4
u2 y2= 3 -1 1 6 -4
v1 x1 1 -1 -3 2 1
u4 0 -3 1 -2 -8 2
1 z= 7 -8 17 67 6
31
Стовпець, що починається з нуля, ураховувати далі, мабуть, не має змісту.
Черговий результат:

u4= v 3= v 4= w=
0 -x3 -x4 1
v2 x 2= 2 -9 -9 8
u2 y 2= 1 -1 -2 -2
v1 x1 1 -5 -6 3
u1 y 1= 1 -2 -8 2
1 z= 8 1 3 22

І знову стовпець під нулем не будемо далі враховувати; розв'язний елемент:

v3= v4= w=
-x3 -x4 1
v2 x2= -9 -9 8
u2 y2= -1 -2 -2
v1 x1 -5 -6 3
u1 y1= -2 -8 2
1 z= 1 3 22

Результат відповідного модифікованого жорданова виключення:

u2= v4= w=
-y2 -x4 1
v2 x2= -9 9 26
v3 x3= -1 2 2
v1 x1 -5 4 13
u1 y1= -2 -4 6
1 z= 1 1 20
32
Отже, висновки:

крапка екстремуму для z:

крапка екстремуму для w:

33
Лекція 6

СИСТЕМИ ЛІНІЙНИХ РІВНЯНЬ ТА ПЕРЕТВОРЕННЯ


ЧИСЕЛЬНЕ ДИФЕРЕНЦІЮВАННЯ Й ЧИСЕЛЬНЕ ІНТЕГРУВАННЯ
ФУНКЦІЇ ОДНІЄЇ ЗМІННОЇ. МЕТОДИ ЧИСЕЛЬНОГО РІШЕННЯ
ЗВИЧАЙНОГО ДИФЕРЕНЦІАЛЬНОГО РІВНЯННЯ, А ТАКОЖ СИСТЕМ
ТАКИХ РІВНЯНЬ

6.1. Чисельне диференціювання функції однієї змінної.

Нехай на відрізку задана функція в деякій системі крапок:

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

По цьому принципі можна обчислити в точках . Потім по перших


похідних і колишньому принципі можна знайти в точках потім - -
у точках і т.д.

6.2. Чисельне інтегрування функції однієї змінної.

Потрібно знайти
34
с тим або іншим ступенем точності. Відомі три класичних способи зробити це.
Спосіб № 1: метод прямокутників. Відрізок розбивається на
рівних частин: довжиною ,

де .

Потім на кожній ділянці функція заміняється на


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

Можна довести, що справедливо наступну оцінку:

де - максимум модуля першої похідної функції на відрізку .

Спосіб № 2: метод трапецій.


У цьому методі шуканий інтеграл після розбивки відрізка на рівні частини
заміняється на наступну суму (підсумуються площі трапецій, а не прямокутників,
як у попередньому випадку):

де Можна довести, що якщо - вихідний обговорюваний


інтеграл, то

де на відрізку .

35
Спосіб № 3: метод парабол. У цій ситуації відрізок розбивається на
рівних частин: , де . На
ділянках , функцію заміняють на параболу, що
проходить через крапки й інтегралом від цієї
параболи на ділянці заміняють інтеграл від функції на цій же
ділянці, після чого всі ці інтеграли підсумують і результати приймають за інтеграл
від по всьому відрізку . Отримана наближена формула називається
формулою парабол або формулою Симпсона. От її остаточний вид:

Якщо ліву частину цього наближеної рівності позначити через , а праву - через
, то виявиться виконаної наступна формула для оцінки погрішності:

де - максимум на інтервалі четвертої похідної функції .

6. 3. Постановка задачі про чисельне рішення звичайного диференціального


рівняння.
Звичайним диференціальним рівнянням називається рівність

(6.3.1) ,

у якому - незалежна змінна, що змінюється в деякому відрізку ,а -


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

т.е. у крапці функція і її перші похідних приймають наперед задані


значення. У цій ситуації число називається порядком рівняння.
36
Метод Ейлера чисельного рішення звичайного диференціального рівняння.

Припустимо, що порядок рівняння (6.3.1) дорівнює 1 і, більше того, його


можна представити виді
(6.4.1) .

У випадку першого порядку початкові умови перетворюються в єдину рівність:


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

виявилася таблицею значень шуканої функції. Для цього, у свою чергу, досить за
заданим значенням уміти знаходити значення в будь-якій крапці
. От метод Ейлера для цього останнього пошуку:
1й крок. Фіксуємо точність, з якої потрібно знайти значення .
Позначимо це число через . Пояснимо, що це означає, що числа, що
відрізняються менше, ніж на , уважаються однаковими.
2й крок. Фіксуємо довільне й розділимо відрізок на рівних
частин: , де .
3й крок. Побудуємо послідовність чисел
,
у якій, нагадаємо, . Позначимо через .
4й крок. Замінимо на й повторимо кроки 2 і 3. Отримане число
(тобто останнє з обчислюються на кроці 3) позначимо тепер через .
5й крок. Якщо виявиться, що числа й відрізняються друг від друга
менше, ніж на , то число вважається знайденим і рівним . У противному
випадку перепозначимо через і повернемося до кроку 4.
Можна довести, що коли функція з (6.4.1) має безперервні частки
похідні, описана процес обов'язково кінцевий і відповідь перебуває дійсно з кожної
наперед заданою точністю.

37
6.5. Метод Рунге-Кутта чисельного рішення звичайного диференціального
рівняння.

У тій же ситуації, що й вище, тобто при пошуку числа по числу й


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

3й крок. Побудуємо послідовність чисел

де

у якій, нагадаємо, . Позначимо через .

4й крок. Замінимо на й повторимо кроки 2 і 3. Отримане число


(тобто останнє з обчислюються на кроці 3) позначимо тепер через .
5й крок. Якщо виявиться, що числа й відрізняються друг від друга
менше, ніж на , то число вважається знайденим і рівним . У противному
випадку перепозначимо через і повернемося до кроку 4.
Можна довести, що коли функція з (7.4.1) має безперервні частки
похідні, описана процес обов'язково кінцевий і відповідь перебуває дійсно з кожної
наперед заданою точністю.
38
6.6. Підхід до чисельного рішення системи звичайних диференціальних
рівнянь.

Система звичайних диференціальних рівнянь - це система рівнянь виду

(6.6.1)

Тут - аргумент, що змінюється в деякому проміжку ,а - функції


цього аргументу, що зустрічаються в рівностях системи (6.6.1) під знаками
похідних, порядок яких не вище для . Знайти ці функції - нехай у
вигляді таблиць значень - і означає вирішити систему (6.6.1). Існує клас задач, у
яких треба знайти функції - функції, що задовольняють початковим
умовам у деякій крапці :

Існує простий прийом відомості довільної системи рівнянь типу (6.6.1) до системи
рівнянь, у якій похідні не бувають порядку вище першого: якщо, допустимо, ,
те думають

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

(6.6.2) ,

Так само, як і у випадку одного рівняння, прийнято аналізувати лише ту ситуацію,


при якій (6.6.2) можна дозволити відносно похідних, тобто звести все до системи

(6.6.3)

39
Легко, однак, для системи (6.6.3) відтворити, як формули Ейлера, так і формули
Рунге-Кутта, причому твердження про те, що за допомогою цих формул можна
наблизитися як завгодно точно до значень невідомих функцій у деякій крапці
при наявності у функцій певних властивостей, залишається
справедливим.

40
Лекция 7

МЕТОДИ РОЗВ’ЯЗКУ ДИФЕРЕНЦІАЛЬНИХ


РІВНЯНЬ ТА ЇХ СИСТЕМ. РОЗВ'ЯЗАННЯ СИСТЕМ ЛІНІЙНИХ
АЛГЕБРИЧНИХ РІВНЯНЬ ІЗ ДОПОМОГОЮ ЖОРДАНОВИХ
ВИКЛЮЧЕНЬ

Запишемо співвідношення (1.3.1) у вигляді жордановой таблиці:

x1 x2 ... xn
b1= a1,1 a1,2 ... a1,n
b2= a2,1 a2,2 ... a2,n
... ... .... ... .....
bm= am,1 am,2 ... am,n

Умовимося стовпець таблиці називати ненульовим, якщо серед чисел, що a ij


перебувають у ньому, є відмінне від нуля; у противному випадку стовпець буде
називатися нульовим.
Переведемо за допомогою жордановых виключень максимальну кількість
невідомих x j у ліву частину таблиці; отриманий результат досліджуємо.
Випадок 1. У таблиці не виявилося жодного розв'язного елемента (усе a ij  0
). Якщо серед коефіцієнтів bi виявиться хоч один відмінний від нуля, то система
несовместна. Якщо ж всі bi  0 , то система має як рішення будь-який набір чисел
( x1 ,..., x n ) .
Випадок 2. У таблиці розв'язні елементи виявилися й у результаті
жордановых виключень ліворуч від таблиці виявилися тільки невідомі x i ,..., x i , а 1 k

над таблицею всі вільні члени bi й кілька невідомих x i ,..., x i . У цьому випадку
1 k

кожне з x i ,..., x i1 k можна, дешифруючи відповідні рядки в таблиці, виразити


лінійно через ті x j , які залишилися розташовані над таблицею. Виникає запис
загального рішення.
Випадок 3. Те ж, що у Випадку 2, але тільки над таблицею змінних x j не
залишилося, а ліворуч від таблиці розташовані все x j . У цьому випадку,
дешифруючи рядка, ми одержимо точні значення невідомих x j . Система - певна.
Випадок 4. У результаті максимального числа жорданових виключень
ліворуч від таблиці залишилися константи. Дешифруючи кожний рядок таблиці,
ліворуч від якої коштує константа, на-до одержати рівність і з'ясувати його
справедливість. Якщо хоч одне з таких рівність виявиться суперечливим (типу
41
«5=6»), то система несовместна. У противному випадку виникне система
рівностей, що описують загальне рішення.

Швидке перетворення Фур'є.


У попередньому пункті було описано дискретне перетворення Фур'є -
зіставлення набору значень функції набору коефіцієнтів
. Процес цього зіставлення в деяких випадках
можна прискорити, спеціальним образом організувавши відповідні
підсумовування.
Звернемося, для визначеності, до формули (7.2.3а). Припустимо, що число
є складовим, тобто при натуральних . Розділимо з остачею
число на й число (індекс підсумовування) на ; одержимо:
. Помітимо, що в позначеннях, що
утворилися, підсумовування по еквівалентне повторному підсумовуванню за
схемою:

перетворимо тепер сумируемое вираження:

уведемо позначення:

тоді вираження (7.2.3а) представляється у вигляді:


42
.

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


чого знову виникнуть ті ж ; у підсумку вийде:

звідси виникає співвідношення:

Звідси виникає інша можливість обчислення дискретного перетворення


Фур'є, відмінна від прямого обчислення: треба спочатку знайти вираження
, а потім уже самі числа ; буде потрібно, як неважко помітити,
менше арифметичних операцій. Звідси й назва - «Швидке перетворення Фур'є.»

43
Лекция 8

ЧИСЕЛЬНЕ ДИФЕРЕНЦІЮВАННЯ ТА ІНТЕГРУВАННЯ.


ОСНОВНА ЗАДАЧА ЛІНІЙНОГО ПРОГРАМУВАННЯ. ДОСЛІДЖЕННЯ ЇЇ
ОКРЕМИХ ВИПАДКІВ. МОДИФІКОВАНИЙ ВАРІАНТ ЖОРДАНОВЫХ
ВИНЯТКІВ

8.1. Постановка основної задачі лінійного програмування (ОЗЛП)

Основною задачею лінійного програмування - скорочено ОЗЛП - називається


задача відшукання максимуму функції

при обмеженнях

Тут - змінні (аргументи), а , -


константи. Функцію в цій ситуації називають цільовий.

8.2. Екстремальні задачі, що зводяться до ОЗЛП заміною змінних

Найпростіший випадок екстремальної задачі, що зводиться до ОЗЛП,


виглядає точно так само, як задача з п.1, але тільки замість максимуму потрібно
знайти мінімум. Очевидно, у цьому випадку досить у цільової функції поміняти
знак, знайти, вирішуючи ОЗЛП, максимум цієї зміненої функції, а потім поміняти
знак у знайденого максимуму - отримане число буде шуканим мінімумом.
Не менш простим є випадок екстремальної задачі, що виглядає так само, як
ОЗЛП із п.1, але одне або кілька обмежень виглядають так:

для деяких . У цьому випадку такі обмеження множаться на -1 і, природно, знак


«більше або дорівнює» заміняється на знак «менше або дорівнює».
44
Нарешті, третім випадком екстремальної задачі, що зводиться до ОЗЛП, є
випадок, коли деякі обмеження виглядають як точні рівності:

при деяких . У такій ситуації кожна така рівність заміняється на парі


нерівностей:

і ,

одночасне виконання яких і є заданою рівністю.

8.3. Лінійна заміна змінних і її використання в дослідженні основної


задачі лінійного програмування

Ідея методу, яким традиційно вирішується ОЗЛП, полягає в тому, щоб


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

(8.3.1)

так, щоб у результаті формулювання ОЗЛП стала дуже простій і відповідь


виявилася очевидним (використовувані тут символи ніяк не пов'язані із
символами з формулювання ОЗЛП). Ми вже розглядали в Лекції 1 один варіант
роботи з рівностями типу (8.3.1), які в математику називаються лінійною заміною
змінних - це жордановы виключення; у п.4 нижче розглядається ще один варіант
роботи з рівностями типу (8.3.1).

8.4. Модифікований варіант жордановых виключень як спосіб


організації лінійної заміни змінних

45
З Лекції 1 відомий дуже зручний спосіб організації обчислень, які
виробляються при вираженні змінних через змінні на основі рівностей
(8.3.1): він називається жордановыми виключеннями.
А зараз ми введемо ще один тип жордановых винятків, які називаються
модифікованими жордановыми винятками. Розглянемо систему рівностей,
аналогічну системі (8.3.1), але зі зміненими знаками:

(8.4.1) .

Зашифруємо цю систему рівностей за допомогою таблиці:

- - ... - ... -
... ...
... ...
... ... ... ... ... ... ...
... ...
... ... ... ... ... ... ...
... ...

Знову припустимо, що й виразимо з рівності

змінну через змінні :

Якщо тепер підставити (8.4.2) в усі рівності (8.4.1), крім i-го, а i-е рівність
замінити на (8.4.2), то вийде нова система рівностей, у якій змінні й
помінялися ролями. Запишемо відповідну таблицю:

- - ... - ... -
... ...
... ...
... ... ... ... ... ... ...
... ...
46
... ... ... ... ... ... ...
... ...

і виразимо коефіцієнти через коефіцієнти .

Описана дія й називається модифікованим жордановым виключенням з розв'язним


елементом . Ми надалі для цього виключення будемо використовувати
скорочений запис МЖИ, а для простого виключення, описаного раніш, - запис
ПЖИ.

47
Лекция 9

ДИФЕРЕНЦІЮВАННЯ ІНТЕРПОЛЯЦІЙНИХ ФОРМУЛ.


МОВА « N-МІРНИХ» ТОЧОК. ГЕОМЕТРІЯ ЗАДАЧІ ЛІНІЙНОГО
ПРОГРАМУВАННЯ. ОПОРНЕ РІШЕННЯ Й ОПТИМАЛЬНЕ РІШЕННЯ.
ЗАГАЛЬНІ УСТАНОВКИ СИМПЛЕКСА-МЕТОДУ

9.1.Мова n-мірних точок.

Прийнято використовувати ряд геометричних термінів у контексті задачі


лінійного програмування. Всі вони виникли в аналітичній геометрії й лінійній
алгебрі. Ми нагадаємо тут їхнього визначення.
Набір чисел називається точкою -мірного простору або
просто - крапкою. Коли =2 або 3 ми маємо точку звичайної площини або
звичайного тривимірного простору. У задачі лінійного програмування мова, отже,
іде про пошук точки, у якій деяка функція досягає максимуму.

9.2. Геометрія задачі лінійного програмування.

Розглянемо обмеження в ОЗЛП. Кожне з них має вигляд:

Це означає, що кожне з них виділяє тільки такі точки, які цій умові
задовольняють. Коли =2, ці крапки являють собою напівплощину. Отже, при
=2 всі умови в сукупності вказують на точки площини, що належать відразу
декільком напівплощинам. Ця область може являти собою звичайний
багатокутник, може являти собою необмежену множину із прямолінійно - ломаній
границею, може бути
порожньою множиною; в останньому випадку говорять, що ОЗЛП - суперечливо.
Ці ж терміни прийнятий переносити й на -мірний випадок, у якому, отже,
мова йде про крапку, що дає максимум функції щодо значень цієї функції на
перетинанні півпросторів (слово півпростір заміняє слово напівплощина).

48
9.3. Опорне рішення й оптимальне рішення. Загальні установки
симплекс-методу

Можна довести, що якщо вже в ОЗЛП рішення є, то розташовано воно на


границі тої багатокутної області, що задають обмеження й, більше того - в одній з
вершин цієї багатокутної границі. Коли =2 все сказане має природний
геометричний зміст (і багатокутна границя, і її вершина). У загальному ж -
мірному випадку сказане означає, що якщо необхідна точка максимуму існує, то
вона обертає хоч одне обмеження в рівність.
Є класичний симплекс-метод рішення ОЗЛП, що складає в тім, що
спочатку відшукується хоч якась точка, що задовольняє всім обмеженням і,
притім, що обертає хоч одне з обмежень у рівність. Ця точка відшукується
безвідносно до цільової функції. Якщо з'ясовується, що такої точки ні, то
говорять, що задача суперечлива (обмеження не здійсненні одночасно). Якщо така
точка відшукується, то неї називають опорним рішенням ОЗЛП.
Потім, відповідно до симплекс-методом, проводиться спеціальний відбір
опорних рішень для того, щоб знайти серед них точку максимуму. Якщо така
відшукується, то ОЗЛП вирішена й знайдена точка називається оптимальним
рішенням. Якщо з'ясовується, що такої точки ні, то це означає, що цільова
функція необмежена в заданої обмеженнями області.
Коли =2, неважко намалювати приклади ОЗЛП, що є суперечливої, або
має необмежену цільову функцію або, нарешті, що має конкретне рішення й,
навіть, не одне.

9.4. Підготовка ОЗЛП до рішення симплекс-методом.

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


симплекс-методу. Отже, є ОЗЛП:

при обмеженнях:

Установимо, є чи серед обмежень такі, які мають такий вигляд:


.
49
Якщо таких обмежень ні, то ніякої підготовки до симплекс-методу не
потрібно. Якщо ж такі є, то з кожним з них треба провести наступні дії. Треба
розглянути знак числа u; якщо , те обмеження заміняється на наступне:
.

Якщо , то зробимо заміну: , тобто всюди замінимо на . Саме


обмеження замінимо на . У результаті такої підготовки в системі
обмежень всі змінні ( і ) розподіляться на дві групи: в одній групі будуть
змінні, на знак яких накладене обмеження (типу ); вони будуть називатися
невільними; в іншу групу ввійдуть всі інші змінні; вони будуть називатися
вільними. На цьому підготовка до включення симплекс-методу закінчена.

50
СПИСОК РЕКОМЕНДОВАНОЇ ЛІТЕРАТУРИ

1. Мэтьюз, Джон,Г., Финк, Куртис, Д. Численные методы. Использование


MATLAB, 3-е издание.: Пер. с англ. – М.: Издательский дом «Вильямс»,
2001. – 2001. – 720 с. : ил. - Парал. тит. англ.

2. Боровиков В. STATISTICA: искусство анализа данных на компьютере. Для


профессионалов. – СПб: Питер, 2001. – 656 с.: ил.

3. Самарский А. А., Гулин А. В. Численные методы. М.: Наука, 1989.

4. Банди Б. Методы оптимизации: Вводный курс. М.: Радио и связь, 1988.

5. Джонсон К. Численные методы в химии. М.: Мир, 1983.

6. Кларк Т. Компьютерная химия. М.: Мир, 1990.

7. Воробьева Г.Н., Данилова А.Н. Практикум по вычислительной


математике. - М.: Высшая школа, 1990. – 208 с.

8. Маликов В.Т., Кветный Р.Н. Вычислительные методы и применение ЭВМ. -


К.: Вища школа, 1989.

9. Ляшенко М.Я., Головань М.С. Чисельні методи. - К.: Либідь, 1996.

10. Копченова Н.В., Марон И.А. Вычислительная математика в примерах и


задачах. - М.: Наука, 1972.

11. Иванов В.А. Математические основы теории автоматического


регулирования. Учеб. пособие для вузов. Под ред. Б.К. Чемоданова. М.,
Высшая школа, 1971. 808 с. с ил.

12. Потемкин В.Г. Система MATLAB 5 для студентов. Справочное пособие.-


M.:-МФТИ, 1998 – 314 с.

13. Кулаков Г.Т. Инженерные экспресс-методы расчета промышленных


систем регулирования.-Мн.: Выш. шк., 1984.-192с.

51

You might also like