Читать практическое задание по информатике, вычислительной технике, телекоммуникациям: "Інтерполяція та апроксимація даних" Страница 2

назад (Назад)скачать (Cкачать работу)

Функция "чтения" служит для ознакомления с работой. Разметка, таблицы и картинки документа могут отображаться неверно или не в полном объёме!

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

Одним з таких видів є середньоквадратичне наближення функції за допомогою багаточлена (1.1). При цьому m £ n; випадок m = n відповідає інтерполяції. На практиці стараються підібрати апроксимуючий багаточлен якомога меншого ступеня(як правило, m=1, 2, 3).

Мірою відхилення багаточлена g(x) від заданої функції f(x) на множині точок (xi,yi) (i=0,1,…,n) при середньоквадратичному наближенні є величина S, що дорівнює сумі квадратів різниці між значеннями багаточлена і функції в даних точках:

Для побудови апроксимуючого багаточлена необхідно підібрати коефіцієнти a0, a1,…,am так, щоб величина S була найменшою. В цьому і полягає метод найменших квадратів.

Поліноміальна апроксимація даних вимірів, що сформовані як деякий вектор Y, при деяких значеннях аргументу, які утворюють вектор Х такої ж довжини, що й вектор Y, здійснюється процедурою polyfit(X, Y, n). Тут n - порядок апроксимуючого полінома. Результатом дії цієї процедури є вектор довжиною (n +1) із коефіцієнтів апроксимуючого полінома.

Нехай масив значень аргументу є таким: x = [1 2 3 4 5 6 7 8],

а масив відповідних значень виміряної величини - таким:= [ -1. 1 0.2 0.5 0.8 0.7 0.6 0.4 0.1].

Тоді, застосовуючи зазначену функцію при різних значеннях порядку апроксимуючого полінома, одержимо: » x = [1 2 3 4 5 6 7 8];

» y = [ -1.1 0.2 0.5 0.8 0.7 0.6 0.4 0.1];

» polyfit(x,y,1)= 0. 1143 -0. 2393

» polyfit(x,y,2)= -0. 1024 1. 0357 -1. 7750

» polyfit(x,y,3)= 0. 0177 -0. 3410 1. 9461 -2. 6500

» polyfit(x,y,4)= -0. 0044 0. 0961 -0. 8146 3. 0326 -3. 3893. Це означає, що задану залежність можна апроксимувати або прямою

y(x) = 0,1143x − 0,2393, або квадратною параболою y(x) = −0,1024x2 + 1,0357x− 1,775, або кубічною параболою y(x)=0,0177x3−0,341x2+ 1,9461x− 2,65, або параболою четвертого степеня

(x) = −0,0044x4+ 0,0961x3− 0,8146x2 + 3,0326x− 3,3893. Індивідуальне завдання . Стандартний синусоїдальний сигнал з частотою, що дорівнює порядковому номеру в групі, апроксимувати за допомогою:

а) Поліномів 1 і 2 степенів (кожний 1-ий);

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

Синусоїдальний сигнал: t = -1:0.01:1;

f = 15;

omega = 2 * pi * f;

y = sin(omega * t);(t, y, 'k-')= polyfit(omega * t, y, 1);= polyfit(omega * t, y, 3);

k5 = polyfit(omega * t, y, 5);

k7 = polyfit(omega * t, y, 7);

P1 = polyval(k1, omega * t);= polyval(k3, omega * t);= polyval(k5, omega * t);= polyval(k7, omega * t);on(t,P1, t,P3, t,P5, t,P7)

Рис. 1а. Апроксимація синусоїдального сигналу з частотою 15 Гц за допомогою поліномів 1, 3, 5, 7 степенів з кроком 0.05

Рис. 1б. Апроксимація синусоїдального сигналу з частотою 15 Гц за допомогою поліномів 1, 3, 5, 7 степенів з кроком 0.01

Стандартний трикутний сигнал. Виконаємо ці самі перетворення зі стандартним трикутним сигналом. Для цього у програмі замінимо функцію синусоїдального сигналу на функцію трикутного сигналу: y = sawtooth(omega * t, 0.5); Поліноміальна апроксимація прямокутного сигналу

Рис. 2. Апроксимація стандартного трикутного сигналу з частотою 15 Гц за допомогою


Интересная статья: Основы написания курсовой работы