Аппроксимация функций. Выбор эмпирических формул
Автор: Пользователь скрыл имя, 11 Октября 2014 в 23:06, курсовая работа
Краткое описание
Аппроксимация (от латинского "approximate" -"приближаться")- приближенное выражение каких-либо математических объектов (например, чисел или функций) через другие более простые, более удобные в пользовании или просто более известные. В научных исследованиях аппроксимация применяется для описания, анализа, обобщения и дальнейшего использования эмпирических результ.
В курсовой работе также представлены реализация расчетов апроксимации на языках программирования.
Оглавление
Введение………………………………………………..……………………..3
Глава 1. Теоретическая часть……………………….…………………….4
Глава 2. Практическая часть……………………………….………..…..18
Заключение………………………………………….………………………36
Список используемой литературы
Файлы: 1 файл
курсовая.doc
— 1.45 Мб (Скачать)Из этой формулы следует, что погрешность метода зависит от свойств функции g(x), а также от расположения узлов интерполяции и точки z. Как показывают расчетные эксперименты, полином Лагранжа имеет малую погрешность при небольших значениях N<20. При бόльших N погрешность начинает расти, что свидетельствует о том, что метод Лагранжа не сходится (т.е. его погрешность не убывает с ростом N).
Рассмотрим частные случаи. Пусть N=1, т.е. заданы значения функции только в двух точках. Тогда базовые полиномы имеют вид:
, т.е. получаем формулы кусочно–
Пусть N=2. Тогда:
В результате мы получили формулы так называемой квадратичной или параболической интерполяции.
Пример: Заданы значений некоторой функции:
x |
0 |
2 |
3 |
3.5 |
f |
-1 |
0.2 |
0.5 |
0.8 |
Требуется найти значение функции при z=1, используя интерполяционный полином Лгранжа. Для этого случая N=3, т.е. полином Лагранжа имеет третий порядок. Вычислим значения базисных полиномов при z=1:
1.3.2. Подбор эмпирических формул
При интерполировании функций мы использовали условие равенства значений интерполяционного полинома и данной функции в узлах интерполяции. Если же исходные данные получены в результате опытных измерений, то требование точного совпадения не нужно, так как данные не получены точно. В этих случаях можно требовать лишь приближенного выполнения условий интерполяции . Это условие означает, что интерполирующая функция F(x) проходит не точно через заданные точки, а в некоторой их окрестности, так, например, как это показано на рис.
Тогда говорят о подборе эмпирических формул. Построение эмпирической формулы состоит из двух этапов6 подбора вида этой формулы , содержащей неизвестные параметры , и определение наилучших в некотором смысле этих параметров. Вид формулы иногда известен из физических соображений (для упругой среды связь между напряжением и деформацией) или выбираются из геометрических соображений: экспериментальные точки наносятся на график и примерно угадывается общий вид зависимости путем сравнения полученной кривой с графиками извесиных функций. Успех здесь в значительной степени определяется опытом и интуицией исследователя.
Для практики важен случай аппроксимации функции многочленами, т.е. .
После того, как выбран вид эмпирической зависимости степень близости к эмпирическим данным определяется, используя минимум суммы квадратов отклонений вычисленных и экспериментальных данных.
Метод наименьших квадратов
Пусть для исходных данных xi, fi, i=1,…,N (нумерацию лучше начинать с единицы), выбран вид эмпирической зависимости: с неизвестными коэффициентами . Запишем сумму квадратов отклонений между вычисленными по эмпирической формуле и заданными опытными данными:
.
Параметры будем находить из условия минимума функции . В этом состоит метод наименьших квадратов (МНК).
Известно, что в точке минимума все частные производные от по равны нулю:
(1)
Рассмотрим применение МНК для частного случая, широко используемого на практике. В качестве эмпирической функции рассмотрим полином
.
Формула (1) для определения суммы квадратов отклонений примет вид:
(2)
Вычислим производные:
Приравнивая эти выражения нулю и собирая коэффициенты при неизвестных , получим следующую систему линейных уравнений:
Данная система уравнений называется нормальной. Решая эту систему линейных уравнений, получаем коэффициенты .
В случае полинома первого порядка m=1, т.е. , система нормальных уравнений примет вид:
При m=2 имеем:
Как правило, выбирают несколько эмпирических зависимостей. По МНК находят коэффициенты этих зависимостей и среди них находят наилучшую по минимальной сумме отклонений.
Пример. Заданы координаты точек:
x |
-5 |
-3.5 |
-2 |
1.5 |
3.25 |
5 |
f |
0.5 |
1.2 |
1.4 |
1.6 |
1.7 |
1.5 |
т.е. N=6. Требуется найти эмпирические зависимости: линейную , квадратичную , гиперболическую по методу МНК и выбрать среди них наилучшую по наименьшей сумме квадратов отклонений.
Система нормальных уравнений для линейной зависимости:
Учитывая, что N=6, , получим
Решая систему линейных уравнений, получим . Следовательно, линейная зависимость имеет вид: .
Вычислим сумму квадратов отклонений: .
Рассмотрим квадратичную зависимость. Система нормальных уравнений имеет вид
Найдем неподсчитанные суммы:
Решая СЛАУ, получим
Следовательно, квадратичная зависимость имеет вид: .
Вычислим сумму квадратов отклонений: .
Выпишем систему нормальных уравнений для гиперболической зависимости. Согласно МНК находим сумму квадратов отклонений:
. Составляем систему нормальных уравнений:
Или
Учитывая, что , получим
Сумма квадратов отклонений:
Из трех зависимостей выбираем наилучшую, т.е. квадратичную.
2.Практическая часть.
2.1. Выполнение аппроксимации MathCAD
В MathCAD применяются 2 способа аппроксимации таблично заданной функции по МНК:
- Формируем матрицу Грама и решаем систему линейных уравнений методом Гаусса, в результате получаем вектор коэффициентов полинома C.
- Используем встроенную функцию системы linfit, возвращающую коэффициенты линейной аппроксимации по методу наименьших квадратов, используя заданные базисные функции, хранящиеся в векторе-функции.
Примеры:
2.2. Выполнение аппроксимации в Matlab
Метод наименьших квадратов позволяет по экспериментальным данным подобрать такую аналитическую функцию, которая проходит настолько близко к экспериментальным точкам, насколько это возможно.
Идея метода наименьших квадратов заключается в том, что функцию:
Y=f(x, a0, a1 ..., ak)
необходимо подобрать таким образом, чтобы сумма квадратов отклонений измеренных значений уi. от расчетных Y. была наименьшей.
Пример:
x=[1 2.2 2.4 2.7 3.1 3.5 4.5 5];
y=[9.054 15.077 15.754 18.3 17.984 15.852 1.772 -13.042];
%Вычисление вектора коэффициентов полинома y=a1*x^3+a2*x^2+a3*x+a4
a=polyfit(x,y,3)
%Вычисление значений полиномов на интервале от 10 до 20
x1=0.9:0.5:5.1;
y1=polyval(a,x1);
%Построение графика полинома и экспериментальных точек в одной
%графической области
plot(x1,y1,'-k',x,y,'ok')
grid %Сетка
Результат:
a =
-1.3534 7.2257 -6.9270 10.0393
2. 3. Расчет коэффициентов аппроксимации в Microsoft Excel.
Функция y=f(x) задана таблицей 1
Таблица 1
Исходные данные.
12.85 |
154.77 |
9.65 |
81.43 |
7.74 |
55.86 |
5.02 |
24.98 |
1.86 |
3.91 |
12.32 |
145.59 |
9.63 |
80.97 |
7.32 |
47.63 |
4.65 |
22.87 |
1.76 |
3.22 |
11.43 |
108.37 |
9.22 |
79.04 |
7.08 |
48.03 |
4.53 |
20.32 |
1.11 |
1.22 |
10.59 |
100.76 |
8.44 |
61.76 |
6.87 |
36.85 |
3.24 |
9.06 |
0.99 |
1.10 |
10.21 |
98.32 |
8.07 |
60.54 |
5.23 |
25.65 |
2.55 |
6.23 |
0.72 |
0.53 |
Требуется выяснить - какая из функций - линейная, квадратичная или экспоненциальная наилучшим образом аппроксимирует функцию заданную таблицей 1.
Решение.
Поскольку в данном примере каждая пара значений встречается один раз, то между и существует функциональная зависимость.
Для проведения расчетов данные целесообразно расположить в виде таблицы 2, используя средства табличного процессора Microsoft Excel.
Таблица 2
Расчет сумм.
Поясним как таблица 2 составляется.
Шаг 1. В ячейки A2:A26 заносим значения .
Шаг 2. В ячейки B2:B26 заносим значения .
Шаг 3. В ячейку C2 вводим формулу =A2^2.
Шаг 4. В ячейки C3:C26 эта формула копируется.
Шаг 5. В ячейку D2 вводим формулу =A2*B2.
Шаг 6. В ячейки D3:D26 эта формула копируется.
Шаг 7. В ячейку F2 вводим формулу =A2^4.
Шаг 8. В ячейки F3:F26 эта формула копируется.
Шаг 9. В ячейку G2 вводим формулу =A2^2*B2.
Шаг 10. В ячейки G3:G26 эта формула копируется.
Шаг 11. В ячейку H2 вводим формулу =LN(B2).
Шаг 12. В ячейки H3:H26 эта формула копируется.
Шаг 13. В ячейку I2 вводим формулу =A2*LN(B2).
Шаг 14. В ячейки I3:I26 эта формула копируется.
Последующие шаги делаем с помощью автосуммирования .
Шаг 15. В ячейку A27 вводим формулу =СУММ(A2:A26).
Шаг 16. В ячейку B27 вводим формулу =СУММ(B2:B26).
Шаг 17. В ячейку C27 вводим формулу =СУММ(C2:C26).
Шаг 18. В ячейку D27 вводим формулу =СУММ(D2:D26).
Шаг 19. В ячейку E27 вводим формулу =СУММ(E2:E26).
Шаг 20. В ячейку F27 вводим формулу =СУММ(F2:F26).
Шаг 21. В ячейку G27 вводим формулу =СУММ(G2:G26).
Шаг 22. В ячейку H27 вводим формулу =СУММ(H2:H26).
Шаг 23. В ячейку I27 вводим формулу =СУММ(I2:I26).
Аппроксимируем функцию линейной функцией . Для определения коэффициентов и воспользуемся системой
Используя итоговые суммы таблицы 2, расположенные в ячейках A27, B27, C27 и D27, запишем систему в виде
решив которую, получим и .
Таким образом, линейная аппроксимация имеет вид .
Решение системы проводили, пользуясь средствами Microsoft Excel.
Результаты представлены в таблице 3.
Таблица 3
Результаты коэффициентов линейной аппроксимации.
В таблице 3 в ячейках A37:B38 записана формула {=МОБР(A33:B34)}.
В ячейках D37:D38 записана формула {=МУМНОЖ(A37:B38;C33:C34)}.
Далее аппроксимируем функцию квадратичной функцией . Для определения коэффициентов , и воспользуемся системой
Используя итоговые суммы таблицы 2,
расположенные в ячейках A27, B27, C27, D27, E27, F27 и G27 запишем систему в виде
решив которую, получим , и .
Таким образом, квадратичная аппроксимация имеет вид
Решение системы проводили, пользуясь средствами Microsoft Excel. Результаты представлены в таблице 4.
Таблица 4
Результаты коэффициентов квадратичной аппроксимации.
В таблице 4 в ячейках E38:G40 записана формула {=МОБР(E33:G35)}.
В ячейках I38:I40 записана формула {=МУМНОЖ(E38:G40;H33:H35)}.
Теперь аппроксимируем функцию экспоненциальной функцией . Для определения коэффициентов и прологарифмируем значения и используя итоговые суммы таблицы 2, расположенные в ячейках A27, C27, H27 и I27 получим систему
где .
Решив систему, найдем , .
После потенцирования получим .
Таким образом, экспоненциальная аппроксимация имеет вид
.
Решение системы проводили, пользуясь средствами Microsoft Excel. Результаты представлены в таблице 5.
Таблица 5
Результаты коэффициентов экспоненциальной аппроксимации.
В таблице 5 в ячейках D45:E46 записана формула {=МОБР(D42:943)}.
В ячейках G45:G46 записана формула {=МУМНОЖ(D45:E46;F42:F43)}.
В ячейке G47 записана формула =EXP(G45).
Вычислим среднее арифметическое и по формулам:
Результаты расчета и средствами Microsoft Excel представлены в таблице 6.
Таблица 6
Вычисление средних значений X и Y.
В ячейке F49 записана формула =A26/25.
В ячейке F50 записана формула =B26/25.
Для того, чтобы рассчитать коэффициент корреляции и коэффициент детерминированности данные целесообразно расположить в виде таблицы 7, которая является продолжением таблицы 2.
Таблица 7
Вычисление остаточных сумм.
Поясним как таблица 7 составляется.
Ячейки A2:A27 и B2:B27 уже заполнены (см. табл. 2).
Далее делаем следующие шаги.
Шаг 1. В ячейку J2 вводим формулу =(A2-$F$49)*(B2-$F$50).
Шаг 2. В ячейки J3:J26 эта формула копируется.