МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
ІНТЕРПОЛЯЦІЯ ФУНКЦІЙ В ПАКЕТІ MATHCAD
МЕТОДИЧНІ ВКАЗІВКИ
ДО ЛАБОРАТОРНОЇ РОБОТИ №4
З КУРСУ “КОМП’ЮТЕРНА ОБРОБКА ІНФОРМАЦІЇ”
для студентів базового напряму
6.170103 «Управління інформаційною безпекою»
№2882 від 8.10.09
Затверджено
на засіданні кафедри
“Захист інформації” протокол № 3 від 24.09.2009 р.
Львів – 2009
Інтерполяція функцій в пакеті Mathcad: Методичні вказівки до лабораторної роботи з курсу “Комп’ютерна обробка інформації” для студентів базового напряму 6.170103 «Управління інформаційною безпекою» / Укл. Л.В.Мороз, Л.М.Ракобовчук, І.І.Рудик, О.В.Пашук - Львів: НУЛП, 2009, - 10 с.
Укладачі: Мороз Л.В., канд. техн. наук, доц. Ракобовчук Л.М., канд. техн. наук, доц.
Рудик І.І., інженер
Пашук О.В., асистент
Відповідальний за випуск: Дудикевич В.Б., проф., д.т.н, зав.каф. Захисту інформації
Рецензент:
Максимович В.М., доктор техн. наук, проф.
Мета: навчитись проводити інтерполяцію функцій в середовищі Mathcad, навчитися застосовувати набуті знання для комп’ютерної обробки інформації.
1. Теоретична частина
В наукових і інженерних розрахунках часто доводиться оперувати наборами значень, отриманих експериментальним шляхом або методом випадкової виборки. Як правило, на підставі цих наборів потрібно побудувати функцію, на яку могли б з високою точністю будуть включені отримані значення. Таке завдання називається апроксимацією кривої. Екстраполяція - методи знаходження точок за межами заданого інтервалу (продовження кривої).
Інтерполяція - спосіб знаходження проміжних значень величини по наявному дискретному набору відомих значень. Інтерполяцією називають такий різновид апроксимації, при якій крива побудованої функції проходить точно через наявні точки даних, тобто - це методи побудови наближених кривих.
Наприклад, дана таблична функція, на зразок описаної нижче, яка для декількох значень визначає відповідні значення f:
0
0
1
0,8415
2
0,9093
3
0,1411
4
−0,7568
5
−0,9589
6
−0,2794
Інтерполяція допомагає дізнатися яке значення може мати така функція в точці, відмінній від вказаних, наприклад, при x = 2,5?
Існує безліч різних способів інтерполяції. Вибір найбільш відповідного алгоритму залежить від точності вибраного методу, витрат на його використання, наскільки гладкою є інтерполяційна функція, якої кількості точок даних вона вимагає і т.п.
Способи інтерполяції.
1. Інтерполяція многочленами
На практиці найчастіше застосовують інтерполяцію многочленами. Це пов'язано перш за все з тим, що многочлени легко обчислювати, легко аналітично знаходити їх похідні і безліч многочленів щільно в просторі безперервних функцій. До цього типу інтерполяції (обчислення у при заданому x) відносяться:
- лінійна інтерполяція;
- інтерполяційна формула Ньютона;
- метод кінцевих різниць;
- многочлен Лагранжа.
Оберенена інтерполяція (обчислення x при заданом у):
- поліном Лагранжа;
- обернена інтерполяція за формулою Ньтона;
- обернена інтерполяція за формулою Гауса.
2. Інтерполяція функції декількох змінних:
- білінійна;
- бікубічна.
3. Інші способи інтерполяції:
- рацінальна;
- тригонометрична..
2. Порядок виконання роботи.
2.1. Проведення лінійної інтерполяції.
Лінійна інтерполяція – інтерполяція алгебраїчним двочленом
P1(x) = ax + b
функції f, заданої в двох точках x0 і x1 відрізку [a, b].
Використовується для стиснення таблиць.
Формула лінійної інтерполяції є окремим випадком інтерполяційних формул Лагранжа і Ньютона.
Приклад 2.1. Дана таблиця значень функції з сталим кроком, де перший стовпець, х - координата, а другий, y - координата.
Провести інтерполяцію функції заданої таблично.
Для простоти вважаємо, що значення аргументу функції впорядковані за зростанням.
Обчислити значення функції в точці x=0.53. Очевидно, необхідно побудувати рівняння прямої такою, що проходить через дві найближчі точки і обчислити значення функції для даного значення аргументу. Це лінійне наближення.
В Mathcad реалізована стандартна функція для лінійної інтерполяції linterp().
Функція
linterp(vx, vy,x):
де vx , vy - вектори даних впорядковані за зростанням; x - аргумент, для якого повертається обчислене значення.
Розв’язок:
i := 0..10
Операція вирізає стовпець двовимірної матриці.
Побудуємо на графіку початкову залежність vyi і набір лінійно інтерпольованих точок:
2. 2. Проведення кубічної сплайн-інтерполяції.
Під сплайном (від англ. spline - планка, рейка) розуміють фукнцію, якв співпадає з функціями більш простої природи на кожному елементі розбиття своєї області визначення.
Класичний сплайн однієї змінної будується так: область визначення розбивається на скінченне число відрізків, на кожному з яких сплайн співпадає з деяким алгебраїчним поліномом. Максимальна степінь з використаних поліномів називається степенем сплайна. Різниця між степенем сплайна і отриманою гладкістю називається дефектом сплайна. Наприклад, неперервна ламана є сплайн ступеня 1 і дефекту 1.
Сплайни мають численні застосування як в математичній теорії, так і в різноманітних обчислювальних застосуваннях. Зокрема, сплайни двох змінних використовуються для задання поверхонь в різних системах комп'ютерного моделювання.
Нехай деяка функція f(x) задана на відрізку [а,b], розбитому на частини
[xi − 1,xi], a = x0 < x1 < ... < xN = b.
Кубічним сплайном називається функція S(x), яка:
- на кожному відрізку [xi − 1,xi] є многочленом третього ступеня;
- має неперервні першу і другу похідні на всьому відрізку [а,b];
- в точках xi виконується рівність S(xi) = f(xi);
- S''(a)= S''(b)= 0.
По побудові сплайн S(x) інтерполює функцію f в точках xi.
В Mathcad реалізована стандартна функція interp() для кубічної сплайн-інтерполяциі.
Кубічна сплайн-інтерполяція дозволяє провести через набір точок гладку криву так, щоб в цих точках були неперервні перша і друга похідні. Спочатку обчислюється вектор других похідних для чого є набір з 3-х функцій:
-- генерує криву, яка є кубічним поліномом в граничних точках;
- відповідно, параболу;
- пряму.
Приклад 2.2. Провести кубічну сплайн-інтерполяці функції, заданої в прикладі 2.1.
Обчислимо:
Будуємо графікі для всіх 3-х варіантів.
Графік змістили на 0.1 в обидві сторони, щоб побачити різницю у згладжуванні на межах інтервалу.
3. Завдання для виконання роботи.
3.1. Функція задана таблицею значень:
Впорядкувати масив даних за зростанням аргументу (1 рядок).
Побудувати графік залежності, згладжуючи сплайнами.
4. Зміст звіту.
4.1. Представити результати обчислень і графічний матеріал відповідно п.2.
4.2. Представити результати обчислень і графічний матеріал відповідно п.3.
Список літератури.
Кирьянов Д.А. Самоучитель MathCad 11.– Санкт-Петербург: БВХ- Петербург, 2003.– 540 с.
Гурский Д.А., Турбина Е.А. Вычисления MathCad 12– Санкт-Петербург: Питер, 2006.– 546 с.
Навчальне видання
Інтерполяція функцій в пакеті Mathcad: Методичні вказівки до лабораторної роботи з курсу “Комп’ютерна обробка інформації” для студентів базового напряму 6.170103 «Управління інформаційною безпекою»
Укладачі: Мороз Л.В., канд. техн. наук, доц. Ракобовчук Л.М., канд. техн. наук, доц.
Рудик І.І., інженер
Пашук О.В., асистент