Iнтерполяція функцій
На практиці зазвичай задана таблиця значень деякої невідомої функції f(x) на відрізку [a,b] і необхідно знайти її значення у проміжних точках, що не входять у таблицю. Для цього будують апроксимуючу функцію (x), яка наближено дорівнює функції f(x), і використовують її для знаходження приблизних значень f(x) у проміжних точках. На відміну від цього у даній роботі для того, щоб студент мав можливість порівняти наближене та точне значення, функція f(x) задана. Треба спочатку побудувати таблицю її значень і потім провести інтерполяцію.
Функцiя y=f(x) та iнтервал [a,b], на якому виконується iнтерполяцiя, наведено у табл.2.1, варiанти завдань - у табл.2.2. На початку програми, використовуючи y=f(x), побудувати таблицю її значень в (n+1)-й точцi xi=a+iH, H=(b-a)/n, i=0,1,…,n. В усiх варiантах, якщо не вказано iншого, взяти n=5. Якщо поліном будується у канонічному вигляді, надрукувати його коефіцієнти.
У програмі побудуйте таблицю значень: x; точне f(x), наближене (x), абсолютну похибку f(x)-(x), відносну похибку (f(x)-(x))100/ f(x) з кроком h=(b-a)/(4n) для відрізку [a-H, b+H]. У будь-якому вариантi необхiдно надрукувати на одному полi в загальному масштабi графiки функцiй f(x) та (x) на тому ж відрізку.
Таблиця 2.1
№ |
Функція |
Відрізок |
№ |
Функція |
Відрізок |
1 |
x2+sin x |
[-2;3] |
16 |
(1+x)e-2x |
[-1;1.5] |
2 |
+sin x |
[0;2.5] |
17 |
th(1-x) |
[1;5] |
3 |
+cos x |
[0;5] |
18 |
e-xsin x |
[-1;3] |
4 |
sin x-cos(2x) |
[1;3.5] |
19 |
x4+3x+1 |
[-1;1] |
5 |
e0,2x+cos x |
[-1;3] |
10 |
cos x-sin(2x) |
[1;3.5] |
6 |
x2+sin x |
[1;3] |
21 |
(1+x)e-2x |
[-1;3] |
7 |
+sin x |
[0;6] |
22 |
th(1-x) |
[1;3] |
8 |
+cos x |
[1;4] |
23 |
e-xsin x |
[0;6] |
9 |
sin x-cos(2x) |
[2;5] |
24 |
x4+3x+1 |
[1;4] |
10 |
e0,2x+cos x |
[-2;3] |
25 |
cos x-sin(2x) |
[2;5] |
11 |
x2+sin x |
[-1;3] |
26 |
(1+x)e-2x |
[-2;3] |
12 |
+sin x |
[1;3] |
27 |
th(1-x) |
[-1;3] |
13 |
+cos x |
[0;6] |
28 |
e-xsin x |
[1;3] |
14 |
sin x-cos(2x) |
[1;4] |
29 |
x4+3x+1 |
[0;6] |
15 |
cos x-sin(2x) |
[2;5] |
30 |
e0,2x+cos x |
[0;5] |
Спосіб інтерполяції:
1) Кусково-лiнiйна iнтерполяцiя. 2) Кусково-параболiчна iнтерполяцiя, n=4. 3) Кусково-кубiчна iнтерполяцiя, n=6. 4) Iнтерполяцiйний полiном Лагранжа.
Спосiб обчислення:
1. Програмно одержати полiном у виглядi , визначивши коефіцієнти ak, а потім використати його для обчислення φ(zj). У випадку багатоiнтервальної інтерполяції (x) являє собою набір поліномів невеликого степеня, коефіцієнти яких зберігаються в прямокутному масиві.
2. Значення (z) обчислювати безпосередньо згідно з відповідною інтерполяційною формулою.