This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
courses:computational_mathematics:prac5 [2022/04/16 18:35] andrey.suchkov [Постановка задачи] |
courses:computational_mathematics:prac5 [2022/04/17 02:07] andrey.suchkov [Порядок выполнения работы] |
||
---|---|---|---|
Line 6: | Line 6: | ||
===== Постановка задачи ===== | ===== Постановка задачи ===== | ||
Построить набор случайных данных для функции $ f(x) $ на промежутке $ [0, b] $ разбив его на $ n $ участков при параметре зашумления $ fluc $. Аппроксимировать полученные данные с помощью МНК по трём моделям: полиномиальной, экспоненциальной и ДПФ. Повторить ДПФ, изменив коэффициент при $ x $ так, чтобы функция стала периодической. | Построить набор случайных данных для функции $ f(x) $ на промежутке $ [0, b] $ разбив его на $ n $ участков при параметре зашумления $ fluc $. Аппроксимировать полученные данные с помощью МНК по трём моделям: полиномиальной, экспоненциальной и ДПФ. Повторить ДПФ, изменив коэффициент при $ x $ так, чтобы функция стала периодической. | ||
+ | |||
+ | ===== Порядок выполнения работы ===== | ||
+ | - Реализовать функцию ''f (x)'' для вычисления значений функции $ f(x) $. | ||
+ | - Реализовать функцию ''mnk ()'' для построения модели с помощью МНК. | ||
+ | - Разбить отрезок $ [0, b] $ на $ n $ участков и вычислить значения функции $ f(x) $ для каждого $ x $. | ||
+ | - Аппроксимировать полученные данные с помощью функции ''mnk ()'' по двум моделям: полиномиальной и экспоненциальной. Построить графики аппроксимационных функций вместе с облаком значений. Вычислить среднеквадратические отклонения для каждой модели. Сделать выводы. | ||
+ | - Построить набор случайных данных с параметром зашумления $ fluc $. Рекомендуется использовать следующий скрипт (здесь ''std_num'' -- номер студенческого билета, e.g.: ''std_num = 130301''): <code octave> | ||
+ | rand ("state", std_num) | ||
+ | x = linspace (0, b, n); | ||
+ | y = f (x) + (2 * rand (1, n) - 1) * fluc; | ||
+ | </code> | ||
+ | - Аппроксимировать полученные данные с помощью функции ''mnk ()'' по трём моделям: полиномиальной, экспоненциальной и ДПФ. Построить графики аппроксимационных функций вместе с облаком значений. Вычислить среднеквадратические отклонения для каждой модели. Сделать выводы. | ||
+ | - Изменить коэффициент при $ x $ так, чтобы функция $ f(x) $ стала периодической, т.е. $ f(0) = f(b) $. Реализовать периодическую функцию ''f_T (x)''. | ||
+ | - Построить набор случайных данных по подвергнутой периодизации функции $ f_T(x) $. | ||
+ | - Аппроксимировать полученные данные с помощью функции ''mnk ()'' с помощью ДПФ. Построить графики аппроксимационных функций вместе с облаком значений. Вычислить среднеквадратические отклонения для каждой модели. Сравнить результаты аппроксимации с непериодической функцией $ f(x) $, сделать выводы. | ||
+ |