- •Возможности matlab для решения систем нелинейных уравнений.
- •Возможности matlab для решения систем нелинейных уравнений.
- •Интерполирование функций.
- •Интерполирование функции каноническими полиномами.
- •Реализация интерполяции в matlab.
- •Интерполирование функции полиномами Лагранжа.
- •Реализация интерполяции в matlab.
- •Полином Ньютона.
- •Интерполирование функций сплайнами.
- •Многомерная интерполяция.
- •Аппроксимация экспериментальных данных.
- •Сглаживание опытных данных методом наименьших квадратов.
- •Реализация аппроксимации мнк в matlab.
Интерполирование функций.
Дана табличная функция, т.е. дана таблица, в которой для некоторых дискретных значений аргумента xi, расположенных в порядке возрастания, заданы соответствующие значения функции уi:
Точки с координатами (xi, yi) называются узловыми точками или узлами. Количество узлов в табличной функции равно N=n+1. На графике табличная функция представляется в виде совокупности узловых точек. Длина участка [x0, xn] равна (xn - x0).
Интерполирование функции каноническими полиномами.
Искомую функцию F(x) будем искать в виде канонического полинома степени n:
Этот многочлен должен пройти через все узловые точки, т.е.
Поэтому
степень многочлена n зависит от количества
узловых точек N и равна количеству
узловых точек минус один, т.е. n=N-1.
Многочлен вида (2), который проходит
через все узловые точки табличной
функции, называется интерполяционным
многочленом.
Интерполирование с помощью алгебраических
многочленов называется параболическим
интерполированием. Итак,
для решения задачи интерполирования
необходимо:
для
функции
заданной
таблично, построить интерполяционный
многочлен степени n, который проходит
через все узловые точки таблицы, где n
- степень многочлена, равная количеству
узловых точек N минус один.
В результате, в любой другой промежуточной точке хk, расположенной внутри отрезка [x0,xn] выполняется приближенное равенство Pn(xk) =f(xk) =yk.
Для построения интерполяционного многочлена вида (2) необходимо определить его коэффициенты a0, a1, :, an, т.е. ai i=0,1,2,:,n. Количество неизвестных коэффициентов равно
n+1=N, где n-степень многочлена (2), N-количество узловых точек табличной функции. Учитывая уравнение и то, что интерполяционный многочлен должен пройти через каждую узловую точку (xi, yi) таблицы, имеем
Подставляя
в уравнение каждую узловую точку таблицы
получаем систему линейных алгебраических
уравнений:
Решая
эту систему относительно неизвестных
a0,
a1,
a2,
…, an
, найдём коэффициенты многочлена .
Получившаяся СЛАУ относительно свободных параметров ai имеет решение, если среди узлов хi нет совпадающих. Ее определитель –
-
называется определитель
Вандермонда.
Реализация интерполяции в matlab.
Для реализации интерполяции в MATLAB есть встроенная функция interp1 следующего вида: yi = interp1 (x,y,xi, metod),
где х – массив абсцисс экспериментальных точек, у – массив ординат экспериментальных точек, xi – точки, в которых необходимо вычислить значения с помощью сплайна, metod – определяет метод построения сплайна.
Функция interp1 (x,y, xi, metod) возвращает значения интерполирующей функции в точках xi, но не позволяет получить интерполяционный полином в аналитическом виде.
Функция spline (x,y,хх) осуществляет кубическую сплайн-интерполяцию функции, заданной векторами х и у, и вычисляет значение интерполяционного кубического сплайна в точках хх.
---------------------------------------------------------------------------------------------------------------------
ВОПРОС №20
Интерполирование функций полиномами Лагранжа, оценка погрешности. Реализация интерполяции в MATLAB.
---------------------------------------------------------------------------------------------------------------------
