Практическая работа №5: Аппроксимация функций. Метод наименьших квадратов и дискретное преобразование Фурье

Цель работы

Сформировать навыки и умения решения задачи аппроксимации функции с помощью метода наименьших квадратов (МНК) и дискретного преобразования Фурье (ДПФ); освоить реализацию МНК и ДПФ с помощью математического пакета GNU Octave.

Постановка задачи

Построить набор случайных данных для функции на промежутке разбив его на участков при параметре зашумления . Аппроксимировать полученные данные с помощью МНК по трём моделям: полиномиальной, экспоненциальной и ДПФ. Повторить ДПФ, изменив коэффициент при так, чтобы функция стала периодической.

Порядок выполнения работы

Реализовать функцию f (x) для вычисления значений функции .

Реализовать функцию mnk () для построения модели с помощью МНК.

Разбить отрезок на участков и вычислить значения функции для каждого .

Аппроксимировать полученные данные с помощью функции mnk () по двум моделям: полиномиальной и экспоненциальной. Построить графики аппроксимационных функций вместе с облаком значений. Вычислить среднеквадратические отклонения для каждой модели. Сделать выводы.

Построить набор случайных данных с параметром зашумления . Рекомендуется использовать следующий скрипт (здесь std_num -- номер студенческого билета, e.g.: std_num = 130301):

rand ("state", std_num) x = linspace (0, b, n); y = f (x) + (2 * rand (1, n) - 1) * fluc;

Аппроксимировать полученные данные с помощью функции mnk () по трём моделям: полиномиальной, экспоненциальной и ДПФ. Построить графики аппроксимационных функций вместе с облаком значений. Вычислить среднеквадратические отклонения для каждой модели. Сделать выводы.

Изменить коэффициент при так, чтобы функция стала периодической, т.е. . Реализовать функцию f_T (x).

Построить набор случайных данных по подвергнутой периодизации функции .

Аппроксимировать полученные данные с помощью функции mnk () с помощью ДПФ. Построить графики аппроксимационных функций вместе с облаком значений. Вычислить среднеквадратические отклонения для каждой модели. Сравнить результаты аппроксимации с непериодической функцией , сделать выводы.