Автор работы: Пользователь скрыл имя, 20 Марта 2012 в 18:41, курсовая работа
Практическое освоение типовых вычислительных методов прикладной математики;
совершенствование навыков разработки алгоритмов и построения программ на языке программирования высокого уровня Паскаль;
освоение принципов модульного программирования;
приобретение основных навыков для использования вычислительных методов прикладной математики и техники программирования в процессе изучения всех последующих дисциплин при выполнении курсовых и дипломных проектов.
1. ОГЛАВЛЕНИЕ_________________________________________________2
2. ЦЕЛЬ РАБОТЫ_________________________________________________3
3. МЕТОДИЧЕСКИЕ УКАЗАНИЯ__________________________________3
3.1. Методические рекомендации по аппроксимации методом наименьших квадратов_____________________________________3
3.1.1. Постановка задачи_______________________________________3
3.2. Методика решения системы нормальных уравнений___________6
4. РУЧНОЙ СЧЕТ_________________________________________________8
4.1. Исходные данные__________________________________________8
4.2. Критерий аппроксимации___________________________________8
4.3. Система нормальных уравнений____________________________10
4.4. Решение системы методом обратной матрицы _______________10
4.5. Результаты расчета_______________________________________11
4.6. Аппроксимирующая функция______________________________11
4.7. Оценка погрешности аппроксимации_______________________11
4.8. График__________________________________________________12
5. СХЕМЫ АЛГОРИТМОВ_______________________________________13
5.1. Схема алгоритма основного блока программы_______________13
5.2. Схема алгоритма процедуры решения системы уравнений____15
6. ТЕКСТ ПРОГРАММЫ_________________________________________17
7. РЕЗУЛЬТАТЫ КОНТРОЛЬНОГО РАСЧЕТА_____________________23
8. ВЫВОДЫ_____________________________________________________24
Практическое освоение типовых вычислительных методов прикладной математики;
совершенствование навыков разработки алгоритмов и построения программ на языке программирования высокого уровня Паскаль;
освоение принципов модульного программирования;
приобретение основных навыков для использования вычислительных методов прикладной математики и техники программирования в процессе изучения всех последующих дисциплин при выполнении курсовых и дипломных проектов.
При изучении зависимостей между величинами важной задачей является приближенное представление (аппроксимация) этих зависимостей с помощью известных функций или их комбинаций, подобранных надлежащим образом. Подход к такой задаче и конкретный метод ее решения определяются выбором используемого критерия качества приближения и формой представления исходных данных.
Пусть изучается связь между величинами x и y , из которых первая рассматривается в качестве независимой переменной, а вторая - ее функции. Исходные данные представлены значениями y, заданными на некотором множестве М значений х. Тогда ошибка приближения этой зависимости некоторой аппроксимирующей функцией у = φ(х) для каждого из значений x может быть оценена разностью
.
Значения y = yi заданы для конечного множества (n) значений xi (i = 1..n). Тогда для каждого из этих значений определена и ошибка
.
На основе изучения ошибок формируются различные критерии качества аппроксимации, служащие для определения наилучшей аппроксимирующей функции φ(х). Один из распространенных подходов опирается на использование метода наименьших квадратов (МНК), в соответствии с которым наилучшей считается такая аппроксимирующая функция φ(х), для которой достигается наименьшее значение суммы квадратов ошибок δ во всех точках x, принимаемых во внимание:
В соответствии с требованием (3.1.1.3) наилучшая аппроксимирующая функция φ(х) должна быть определена из условия
Подобное задание исходных данных встречается в задачах технических измерений, когда для каждого из задаваемых значений xi осуществляется измерение величины yi (сопровождающееся возможными ошибками). Аппроксимация позволяет представить изучаемую связь между x и у с помощью известных функций, что облегчает последующее использование данных, позволяет "сгладить" возможные ошибки измерений, а также дает возможность оценивать значения переменной у = φ(х) в точках x интервала [x1, xn], не совпадающих с заданными (т.е. решать задачу интерполяции).
Аппроксимирующую функцию φ(х) выбирают из некоторого семейства функций, для которого задан вид функции, но остаются неопределенными (и подлежат определению) ее параметры С1, С2,…, Сm, т.е.
Определение аппроксимирующей функции φ разделяется на два основных этапа:
подбор подходящего вида функции φ(х);
нахождение ее параметров в соответствии с критерием МНК.
Подбор вида функции φ(х) представляет собой сложную задачу, решаемую методом проб и последовательных приближений. Исходные данные, представленные в графической форме (семейства точек или кривые), сопоставляются с семействами графиков ряда типовых функций, используемых обычно для целей аппроксимации.
После того как выбран вид аппроксимирующей функции φ(х) (или эта функция задана) и, следовательно, определена функциональная зависимость (3.1.1.5), необходимо найти в соответствии с требованиями МНК значения параметров С1, С2,…, Сm.
Для решения задачи подставим выражение (3.1.1.5) в выражение (3.1.1.4) и проведем необходимые операции суммирования. В результате величина J, именуемая в дальнейшем критерием аппроксимации, представится функцией исходных параметров
(3.1.1.6)
Последующее сводится к отысканию минимума этой функции J переменных Сk; определение значений Ck, к = (1,..,m), соответствующих этому минимуму J, и является целью решаемой задачи.
Для решения задачи воспользуемся необходимым условием минимума функции (3.1.1.6) нескольких переменных, в соответствии с которым в точке минимума должны быть равны нулю частные производные этой функции по всем ее аргументам
Полученные m равенств следует рассматривать как систему уравнений относительно искомых значений С1, С2,…, Сm.
Используемые равенства (3.1.1.7) дают лишь необходимые, но не недостаточные условия минимума (3.1.1.6). Поэтому требуется уточнить, обеспечивают ли найденные значения Ck именно минимум функции J (C1, C2,.., Cm). В данной работе мы будем считать, что найденное решение системы отвечает именно минимуму J.
Уравнения (3.1.1.7), встречающиеся в МНК, называют нормальными.
Решение системы нормальных уравнений производится методом обратной матрицы (прямым методом).
Прямые, или конечные, методы позволяют найти решение системы уравнений за конечное число шагов. Это решение будет точным, если все промежуточные вычисления выполняются точно, и приближенным, если вычисления проводятся с ограниченной точностью, как на современных ЭВМ.
Система нормальных уравнений имеет вид:
(3.2.1)
Один из методов решения системы линейных алгебраических уравнений (3.2.1), записываемой в матричной форме AX=B, связан с использованием обратной матрицы А-1 . В этом случае решение системы уравнений получается в виде
X = А-1 B,
где А-1 – матрица, определяемая следующим образом.
Пусть А – квадратная
матрица размером n´ n c ненулевым определителем
det A ¹ 0. Тогда существует обратная
матрица R = А-1, определяемая
условием A R=E, где Е – единичная
матрица, все элементы главной диагонали
которой равны 1, а все элементы вне этой
диагонали – 0, Е=[E1, …, En],
где
Еj – вектор-столбец.
Матрица R – квадратная
матрица размером n´ n
где Rj – вектор-столбец.
Рассмотрим ее первый столбец R1=(r11,
r21, …,rn1)T, где Т означает транспонирование.
Нетрудно проверить, что произведение А·R1 равно
первому столбцу Е1
= (1, 0,…, 0)Т единичной матрицы Е, т.е. вектор R1 можно
рассматривать как решение системы уравнений А R1=E1.
Аналогично m-й столбец матрицы R, Rm, 1£ m £ n, представляет собой решение
уравнения
A Rm=Em,
где Еm=(0,…, 1,…,0)T - m-й столбец единичной
матрицы Е (m-й элемент его
равен 1, остальные равны нулю).
Таким образом, обратная матрица R представляет собой набор из решений n систем линейных уравнений
A Rm = Em, 1 £ m £ n.
Для решения этих систем можно применять любые методы, разработанные для решения систем линейных алгебраических уравнений. Однако метод Гаусса дает возможность решать все эти n систем одновременно, а не независимо друг от друга. Все эти системы уравнений отличаются только правой частью, а все преобразования, которые производятся в процессе прямого хода метода Гаусса, полностью определяются элементами матрицы коэффициентов (матрицы А).
Вариант задания: 18.
i |
1 |
2 |
3 |
4 |
5 |
xi |
0.0 |
0.78 |
1.57 |
2.35 |
3.14 |
yi |
0.0 |
4.0 |
5.0 |
8.0 |
9.0 |
φ1(x) |
φ2(x) |
φ3(x) |
cos(x) |
sin(x) |
1 |
Условие минимума аппроксимации:
Взятие производной и формирование нормальных уравнений:
Первое уравнение:
Второе уравнение:
Третье уравнение:
– алгебраическое дополнение матрицы А.
С1=-3.935
С2=1.119
С3=4.658
i |
xi |
yi |
φ(xi) |
δi=yi-φ(xi) |
1 |
0.0 |
0.0 |
0.723 |
-0.723 |
2 |
0.78 |
4.0 |
2.648 |
1.352 |
3 |
1.57 |
5.0 |
5.774 |
-0.774 |
4 |
2.35 |
8.0 |
8.219 |
-0.219 |
5 |
3.14 |
9.0 |
8.595 |
0.405 |
Минимальное значение качества аппроксимации:
Jmin=(-0.723)2 + (1.352)2 +(-0.774)2 +(-0.219)2 +(-0.405)2 = 3.162
Максимальное по модулю отклонение: