
- •6. Обработка экспериментальных данных
- •Линейная интерполяция
- •Кубическая сплайн-интерполяция
- •Полиномиальная сплайн-интерполяция
- •Экстраполяция функцией предсказания
- •Многомерная интерполяция
- •Регрессия
- •Линейная регрессия
- •Полиномиальная регрессия
- •Регрессия отрезками полиномов
- •Двумерная полиномиальная регрессия
- •Регрессия специального вида
- •Регрессия общего вида
- •Сглаживание и фильтрация
- •Скользящее усреднение
- •Устранение тренда
- •Лабораторная работа 6
6. Обработка экспериментальных данных
При обработке экспериментальных данных, полученных в виде таблицы пар чисел (xi, yi), т.е. табличной модели y(x), часто решается задача эквивалентной ее замены непрерывной функцией f(x), т.е. математической моделью. Такая замена дает возможность применить к математической модели весь арсенал вычислительной математики (дифференцирование, интегрирование, построение графиков, гистограмм и т.д.), чего нельзя сделать с табличной моделью. В зависимости от решаемых задач обработки экспериментальных данных, условия эквивалентной замены могут быть разными, например:
- функция f(x) должна проходить через узловые точки (xi, yi), т.е. yi=f(xi), где i=1...n. В этом случае говорят об интерполяции данных y(x) функцией f(х) во внутренних точках между xi, или экстраполяции за пределами интервала, содержащего все xi. Решение задачи интерполяции дает возможность найти значения в промежуточных точках табличной модели, а решение задачи экстраполяции – предсказать поведение ее за пределами рассматриваемого интервала;
- функция f(x) должна иметь минимум среднеквадратичного отклонения в узловых точках yi(xi). Такое условие эквивалентной замены табличной модели математической моделью решает задача регрессии, которую во многих случаях можно назвать сглаживанием данных;
- функция f(x) должна приближать табличную модель yi(xi), с учетом того, что данные (xi, yi) получены с некоторой погрешностью, вызванную шумовой компонентой измерений. При этом функция f(х) с помощью того или иного алгоритма должна уменьшать погрешность, имеющуюся в данных (xi, yi). Такого типа задачи называют задачами фильтрации. Сглаживание - частный случай фильтрации.
Различные виды построения математических моделей f(х) показаны на рис. 6.1. На нем исходные данные обозначены кружками, интерполяция отрезками прямых - пунктирной линией, линейная регрессия - наклонной прямой линией, а фильтрация - жирной гладкой кривой. Эти зависимости приведены в качестве примера и отражают лишь малую часть возможностей Mathcad по обработке данных. Вообще говоря, в Mathcad имеется целый арсенал встроенных функций, позволяющий осуществлять самую различную регрессию, интерполяцию-экстраполяцию и сглаживание данных.
Рис. 6.1. Разные задачи обработки экспериментальных данных
Как в целях подавления шума, так и для решения других проблем обработки данных, широко применяются различные интегральные преобразования. Они ставят в соответствие всей совокупности данных у(х) некоторую функцию другой координаты (или координат). Примерами интегральных преобразований являются преобразование Фурье и и Лапласа. Некоторые преобразования можно осуществить в режиме символьных вычислений. Каждое из интегральных преобразований эффективно для решения своего круга задач анализа данных.
Линейная интерполяция
Самый простой вид интерполяции - линейная, которая представляет искомую зависимость f(x) в виде ломаной линии. Интерполирующая функция f(x) состоит из отрезков прямых, соединяющих точки.
Для построения линейной интерполяции используется встроенная функция linterp():
- linterp(x,y,t) - функция, аппроксимирующая данные векторов х и у кусочно-линейной зависимостью;
- х - вектор действительных данных аргумента;
- у - вектор действительных данных значений того же размера;
- t - значение аргумента, при котором вычисляется интерполирующая функция.
Элементы вектора х должны быть определены в порядке возрастания, т. е. x1<x2<x3<...<xn:
Рис. 6.2. Линейная интерполяция
Как видно из рис.6.2, чтобы осуществить линейную интерполяцию, надо выполнить следующие действия:
- ввести векторы данных х и у;
- определить функцию linterp(х,у, t).
- построить график линейной интерполяции (рис. 6.2).