MATLAB. Lab5. Аппроксимация функций

Задание:

  1. Аппроксимировать модельную функцию f(x) из таб. 1.1 двумя методами согласно таб. 8.1.
  2. Определить дифференциальную и интегральную погрешности аппроксимации для всех вариантов.
  3. Построить графики аппроксимируемой и аппроксимирующей функций, а также графики погрешностей от числа узлов аппроксимации.

Функция:

3x4+4x3-12x*x+1=0

 

Методы согласно таблице 8.1:

Метод 1: Метод наименьших квадратов.

Метод 2: Метод Стирлинга.

 

Метод решения СЛАУ: метод с обратной матрицей.

Метод интегрирования: Метод Ньютона-Котеса (n=6).

Число узлов сетки: 12, 16, 25.

Для приближенного поиска первого положительного корня был построен график функции:

график функции

Как видно из графика корень лежит в интервале от 0.2 до 0.4. Для уточнения корня используем метод деления пополам. С помощью этого метода был найден корень:

уточнённый корень: 0.30893109560193.

Отрезок аппроксимации: [0.30893109560193-2, 0.30893109560193+3]

Разработка алгоритмов для –заданных видов аппроксимации

Алгоритм аппроксимации методом наименьших квадратов:

Алгоритм аппроксимации методом наименьших квадратов

Алгоритм аппроксимации методом Стирлинга:

Алгоритм аппроксимации методом Стирлинга

Также для решения СЛАУ был разработан метод с обратной матрицей:

Также для решения СЛАУ был разработан метод с обратной матрицей

Алгоритм Ньютона-Котеса (n=6)

Один шаг:

Алгоритм Ньютона-Котеса (n=6) Один шаг:

Полный алгоритм:

Полный алгоритм

Тексты программ:

Файл «DiffPogr.m»:

Файл «DN.m»:

Файл «DNone.m»:

Файл «func.m»:

Файл «funcappms.m»:

Файл «graphic.m»:

Файл «lab5.m»:

Файл «minsquare.m»:

Файл «NyutonKotes6.m»:

Файл «NyutonKotes6step.m»:

Файл «poldel.m»:

Файл «SLAU.m»:

Файл «Stirling.m»:

Результаты аппроксимации функции:

(на графиках зелёным цветом обозначен график реальной функции, а синим – график аппроксимирующей функции)

Для метода наименьших квадратов:

Число узлов 12:

Число узлов 12

Дифференциальная погрешность = 4.699944137579830e-015

Интегральная погрешность = 0.0767

 

Число узлов 16:

Число узлов 16

Дифференциальная погрешность = 5.141720382795256e-015

Интегральная погрешность = 0.0358

 

Число узлов 25:

Число узлов 25

Дифференциальная погрешность = 1.596639487289053e-015

Интегральная погрешность = 0.0179

 

Для метода Стирлинга:

Число узлов 12:

Число узлов 12

Дифференциальная погрешность = 3.287053575018462e-014

Интегральная погрешность = 0,0000000000002

Для числа узлов 16:

Стирлинг Для числа узлов 16

Дифференциальная погрешность = 2.252785354639464e-013

Интегральная погрешность = 0,0000000000006

 

Для числа узлов 25:

Стирлинг Для числа узлов 25

Дифференциальная погрешность =5.491511713503260e-012

Интегральная погрешность = 0,0000000000027

 

График зависимости интегральной погрешности от числа узлов сетки для метода наименьших квадратов:

График зависимости интегральной погрешности от числа узлов сетки для метода наименьших квадратов

График зависимости дифференциальной погрешности от числа узлов сетки для метода наименьших квадратов:

График зависимости дифференциальной погрешности от числа узлов сетки для метода наименьших квадратов

График зависимости дифференциальной погрешности для метода Стирлинга от числа узлов сетки:

График зависимости дифференциальной погрешности для метода Стирлинга от числа узлов сетки:

График зависимости интегральной погрешности от числа узлов сетки для метода Стирлинга:

График зависимости интегральной погрешности от числа узлов сетки для метода Стирлинга

Анализ полученных результатов: проведенное исследование метода  наименьших квадратов и метода Стирлинга показало, что при помощи этих методов можно аппроксимировать функцию.

Анализ зависимости погрешности от количества узлов показал, что для метода Стирлинга дифференциальная и интегральная погрешность растут с увеличением числа узлов, а для метода наименьших квадратов наблюдается обратная зависимость, что можно объяснить следующим образом: при увеличении числа узлов для метода Стирлинга происходит рост относительной погрешности определения значений конечных разностей, в то время как в случае со методом наименьших квадратов происходит увеличение числа многочленов, график каждого из которых в итоге всё более приближается к графику того участка исходной кривой, за аппроксимацию которого он отвечает.

Просмотр графиков аппроксимирующей и аппроксимируемой функции показал, что «на глаз» они практически неотличимы на заданном отрезке аппроксимации.

 

Выводы: используя 3x4+4x3-12x*x+1=0 в качестве аппроксимируемой функции функцию, мы изучили два метода аппроксимации: метод Стирлинга и метод наименьших квадратов, построили для обоих методов графики аппроксимирующей и аппроксимируемой функций для различного количества узлов. Были оценены зависимости погрешности от числа узлов для обоих методов.

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *