- •Математическое моделирование в расчетах на эвм
- •Предисловие
- •Лабораторная работа №1. Основы работы с MathCad
- •Математические выражения
- •Типы данных
- •Текстовые фрагменты
- •Графические области
- •Операторы
- •Функции
- •Дискретные аргументы
- •Массивы
- •Создание анимационного клипа
- •Сообщения об ошибках
- •Порядок выполнения лабораторной работы №1
- •Лабораторная работа №2. Решение уравнений
- •Итерационные методы
- •Решение уравнений средствами MathCad
- •Символьное решение уравнений и систем уравнений
- •Порядок выполнения лабораторной работы №2
- •Лабораторная работа №3. Интерполяция и предсказание
- •Интерполяция
- •Глобальная интерполяция
- •Локальная интерполяция
- •Предсказание
- •Порядок выполнения лабораторной работы № 3
- •Лабораторная работа №4. Математическая обработка результатов экспериментальных данных
- •Метод наименьших квадратов
- •Регрессионный анализ
- •Линейная регрессия
- •Полиномиальная регрессия
- •Обобщенная регрессия
- •Сглаживание
- •Порядок выполнения лабораторной работы № 4
- •Лабораторная работа №5. Численное интегрирование и дифференцирование
- •Квадратурные формулы
- •Метод Монте-Карло
- •Численное дифференцирование
- •Символьное интегрирование и дифференцирование
- •Порядок выполнения лабораторной работы №5
- •Лабораторная работа №6. Решение обыкновенных дифференциальных уравнений
- •Задача Коши
- •Одношаговые методы
- •Многошаговые методы
- •Решение задачи Коши средствами MathCad
- •Краевые задачи
- •Символьное решение линейных дифференциальных уравнений
- •Варианты задания 4
- •Лабораторная работа №7. Решение дифференциальных уравнений в частных производных
- •Метод конечных разностей
- •Гиперболические уравнения в частных производных
- •Параболические уравнения в частных производных
- •Эллиптические уравнения в частных производных
- •Порядок выполнения лабораторной работы 7
- •Лабораторная работа №8. Спектральный анализ и синтез
- •Гармонический анализ и синтез
- •Классический спектральный анализ
- •Численный спектральный анализ
- •Спектральный анализ на основе быстрого преобразования Фурье
- •Фильтрация аналоговых сигналов
- •Порядок выполнения лабораторной работы № 8
- •Библиографический список
- •Содержание
Лабораторная работа №4. Математическая обработка результатов экспериментальных данных
Изучая в лабораторной работе № 3 теорию интерполяции, вы познакомились с интерполяционными формулами, которые в точности воспроизводят значения данной функции в узлах интерполяции. Однако в ряде случаев выполнение этого условия затруднительно или даже нецелесообразно:
Если заданные величины х и у являются экспериментальными данными, то могут содержать в себе существенные ошибки, т.к. получены в результате измерений или наблюдений. Поэтому построение аппроксимирующего многочлена, воспроизводящего в точности заданное значение функции, означало бы тщательное копирование допущенных при измерениях ошибок.
Если имеются точные значения функции в некоторых точках, но число таких точек n весьма велико, то интерполяционный многочлен будет очень высокой степени (если только разности не будут становиться постоянными).
Поэтому возникает задача построения многочлена некоторой вполне определенной степени, но меньшей чем n - 1, который хотя и не дает точных значений функции в узлах интерполяции, но достаточно близко к ним подходит.
Метод наименьших квадратов
Метод наименьших квадратов (МНК) состоит в следующем: для данных значений x = х0, х1, . . ., хn и y = y0, y1, . . ., yn подобрать многочлен заданной степени m < n вида
|
(1) |
принимающий в заданных точках хi значения как можно более близкие к табличным значениям yi. Коэффициенты ai многочлена (1) находят из решения системы
где
|
(2) |
Регрессионный анализ
Пусть имеются два ряда чисел x = х0, х1, . . ., хn и y = y0, y1, . . ., yn, при этом предполагается, что ряд у каким-либо образом зависит от ряда х. Задача регрессионного анализа состоит в восстановлении математической зависимости (регрессии) у(х) по результатам измерений (xi, yi), i = 0, 1, . . ., n.
MathCAD включает ряд функций для вычисления регрессии. Функции отличаются прежде всего типом кривой, которую они используют, чтобы аппроксимировать данные.
Линейная регрессия
Встроенные функции intercept (to intercept – отложить отрезок на линии) и slope (наклон) решают самую простую и распространенную задачу линейной регрессии экспериментальных данных:
f(x) = slope(vx, vy) x + intercept(vx, vy)
slope(vx, vy) |
Возвращает скаляр: наклон линии для данных из vx и vy. |
intercept(vx, vy) |
Возвращает скаляр: смещение по оси ординат линии регрессии для данных из vx и vy. |
Полиномиальная регрессия
Используйте функцию regress, когда нужно получить единственный полином произвольной степени, чтобы приблизить все данные. Не рекомендуется делать степень аппроксимирующего полинома выше 4 - 6, поскольку погрешности реализации регрессии сильно возрастают.
regress(vx, vy, n) |
Возвращает вектор vs, требуемый interp (см. лабораторную работу № 3), чтобы найти полином порядка n, который наилучшим образом приближает данные из vx и vy. |
Пример 1 рис. 6 иллюстрирует использование функции regress. Так как regress приближает все точки данных, используя один полином, это не дает хороший результат, когда данные не связаны единой полиномиальной зависимостью.
Функция loess облегчает эти проблемы, выполняя локальное приближение. Вместо одного полинома loess создает различные полиномы второго порядка в зависимости от расположения на кривой (см. пример 2 на рис. 6).
loess(vx, vy, span) |
Возвращает вектор vs, требуемый interp, чтобы найти набор полиномов второго порядка, которые наилучшим образом приближают определенные окрестности выборочных точек, определенных в векторах vx и vy. Аргумент span > 0 определяет, насколько большие окрестности loess будет использовать при выполнении локального приближения. |
Рис. 6. Полиномиальная регрессия
