Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тема 3 Апроксимація (наближення) функцій .doc
Скачиваний:
7
Добавлен:
10.11.2019
Размер:
1.93 Mб
Скачать

Апроксимація (наближення) функцій

Горбійчук, Пістун „ЧМ і моделювання на ЕОМ”

На практиці досить часто бувають випадки, коли неможливо записати зв'язок між "х" та "у" у вигляді деякої залежності у = f(x). Найбільш поширеним випадком, коли вид зв'язку між параметрами х та у невідомий, є задання цього зв'язку у вигляді таблиці {xi, yi}. Цими значеннями можуть бути, наприклад, експериментальні дані. Якщо потрібні значення величини у і в інших точках, то отримувати ці значення кожного разу експериментальним шляхом, не завжди зручно і вигідно. Тому доцільно використати наявні табличні дані для наближеного обчислення значення "у" для деякого проміжногозначення "х".

Ц ій меті служить задача про наближення функцій: – дану функцію f(x) потрібно наближено замінити (апроксимувати) деякою функцією φ(х) так, щоб відхилення φ(х) від f(x) було найменшим. При цьому функція φ(х) називається апроксимуючою. Основне питання апроксимації – як вибрати φ(х) і як оцінити відхилення φ(х) від f(x).

Якщо початкова функція задана таблично, тобто на множині окремих точок, то апроксимація називається точковою. Якщо ж початкова функція задана на неперервній множині точок (наприклад, на відрізку [a; b]), то апроксимація називається неперервною.

Інтерполяція

Одним з основних типів точкової апроксимації є інтерполяція. Для таблично заданої функції уі = f(xі) побудувати функцію φ(х), яка в заданих точках хі ( ) приймає ті ж значення, що і функція f(x), тобто φ(хі) = f(xi), а в решті точок відрізку [х0; хn] наближено представляє f(x) з деякою похибкою. Точки xі називають вузлами інтерполяції, а φ(х) – інтерполюючою функцією.

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

φ(х)=a0 + a1x + a2x2 +…+ amxm

Інтерполяційні многочлени можуть будуватися як для цілого інтервалу зміни х так і для якоїсь його частини. В останньому випадку інтерполяцію буде кускову (локальну).

Як правило, інтерполяційні многочлени застосовують для обчислення функцій у внутрішніх точках інтервалу х0<х<хn. Однак їх можна використати і для наближеного обчислення функції зовні інтервалу (х<х0 або хn>x). Таке наближення називається екстраполяцією.

Інтерполяція використовується в багатьох прикладних напрямках наук про Землю. У метеорології інтерполюються дані спостережень метеостанціи для одержання карт погоди на великі території. У геології – для побудови 2-вимірних і 3-вимірних моделей підземних масивів за даними точкових забурювань. Чи просто 3-вимірні комп’ютерні моделі рельєфу земної поверхні. Для створення інтерпольованої карти як мінімум необхідний набір точок з даними про їх просторове положення (координати х,у в деякій системі або у вигляді широти/довготи) і кількісне значення параметра z у цих точках – висота, тиск,температура, концентрація забруднення та ін.

Розглянемо найпростішу задачу інтерполяції, коли маємо два табличних значення , чи дві точки ( ), ( ) на площині і потрібно знайти середне значення. Як відомо результат буде , a . Якщо ж потрібно знайти значення у будь-якій точці , то найпростішим припущенням буде пропорційна залежність між та . Тоді з подібності трикутників (рис.!) маємо , звідки – рівняня прямої, що проходить через 2 точки, (в інших позначеннях ).

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

Розглянемо загальний випадок. Нехай відомі значення функції , в точках.

xi

x0

x1

x2

xn

yi

y0

y1

y2

yn

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

, . (рис.!) (0)

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

Запишемо многочлен у загальній формі

(0)

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