Содержание
-
ИНТЕРПОЛИРОВАНИЕ ФУНКЦИЙ
-
Локальная интерполяция 1. Кусочно–постоянная интерполяцияНа каждом отрезке [xi-1,xi]интерполя-ционный многочлен равен константе , а именно левому или правому значе-нию функции. Для левой кусочно-постоянной интерполяции
-
-
Для правой кусочно-постоянной интерполяции
-
Для левой кусочно- постоянной интерполяции имеем графическое представление
-
Кусочно–линейная интерполяция
На каждом интервале [xi–1, xi]функция является линейной . Значения коэффициентов находятся из выполнения условий интерполяции в концах отрезка:
-
Получаем систему уравнений: откуда находим
-
Следовательно, функцию F(z) можно записать в виде
-
Т.е.
-
Или F(x) = ki * (x - xi-1) + fi-1, ki = (fi - fi-1) / (xi - xi-1), xi-1 ≤ x ≤ xi, i=1,2,...,N-1 При использовании линейной интерполяции сначала нужно определить интервал, в который попадает значение х, а затем подставить его в формулу. Итоговая функция будет непрерывной, но производная будет разрывной в каждом узле интерполяции.
-
Иллюстрация кусочно–линейной интерполяции приведена на рисунке
-
-
Пример:
Заданы значения некоторой функции:
-
Требуется найти значение функции при х=1 и х=3.2по кусочно–постоянной и кусочно–линейной интерполяции. РЕШЕНИЕ. Точка х=1принадлежит первому локальному отрезку [0, 2], т.е. i=1 и, следовательно, по формулам левой кусочно–постоянной интерполяции F(1) = f0= –1, по формулам правой кусочно–постоянной интерполяции F(1)=f1=0.2. Воспользуемся формулами кусочно–линейной интерполяции:
-
-
Точка х=3.2 принадлежит третьему интервалу [3, 3.5], т.е. и, следовательно, по формулам левой кусочно – постоянной интерполяции F(3.2)==0.5, по формулам правой кусочно – постоянной интерполяции F(3.2)= =0.8. Воспользуемся формулами кусочно–линейной интерполяции:
-
-
Глобальная интерполяция
В случае глобальной интерполяции отыскивается единый полином на всём интервале [a, b], т. е. строится полином, который используется для интерполяции функции f(x) на всём интервале изменения аргумента х. Будем искать интерполирующую функцию в виде полинома (многочлена) m–ой степени Pm(x)=a0+a1x+a2x2+a3x3+…+amxm.
-
Допустим, что заданы две точки: (x0,f0) и (x1, f1), т.е. N=1. Через эти точки можно провести единственную прямую, т.е. интерполирующей функцией будет полином первой степени P1(x)=a0+a1x. Через три точки (N=2) можно провести параболу P2(x)=a0+a1x+a2x2 и т.д. Рассуждая таким способом, можно предположить, что искомый полином должен иметь степень N
-
Для того, чтобы доказать это, выпишем систему уравнений на коэффициенты. Уравнения системы представляют собой условия интерполяции при каждом x=xi
-
-
Определитель данной системы носит имя определителя Вандермонда.
-
Из курса математического анализа известно, что определитель отличен от нуля, если xk≠xm (т. е. все узлы интерполяции различные). Таким образом, доказано, что система имеет решение. Для нахождения коэффициентов а0, а1, а2, …, аn надо решить СЛАУ, что является сложной задачей. Но есть другой способ построения полинома N-ой степени, который не требует решения такой системы.
-
Полином Лагранжа
Решение ищем в виде где li(z) – базисные полиномы N–й степени, для которых выполняется условие: .
-
Убедимся в том, что если такие полиномы построены, то Ln(x) будет удовлетворять условиям интерполя-ции:
-
Каким образом построить базисные полиномы? Определим i=0,1,…, N
-
Легко понять, что Функция li(z) является полиномом N–й степени от zи для нее выполняются условия "базисности": =0
-
i≠k;, т.е. k=1,…,i-1 или k=i+1,…,N. Таким образом, нам удалось решить задачу о построении интерполирующего полинома N-ой степени, и для этого не нужно решать СЛАУ. Полином Лагранжа можно записать в виде:
-
-
Погрешность метода зависит от свойств исходной функции, а также от расположения узлов интерполяции и точки z. Полином Лагранжа имеет малую погрешность при небольших значениях N
-
Рассмотрим частные случаи. Пусть N=1, т.е. заданы значения функции только в двух точках. Тогда базовые полиномы имеют вид:
-
т.е. получаем формулы кусочно–линейной интерполяции.
-
Пусть N=2. Тогда: В результате мы получили ф-лыквад-ратичной или параболической интерпо- ляции
-
Пример: Заданы значений неко-торой функции: Требуется найти значение функ-ции при z=1, используя интерпо-ляционный полином Лагранжа. Для этого случая N=3, т.е. полином Лагранжа имеет третий порядок. Вычислим значения базисных полиномов при z=1:
-
-
-
Кубический интерполяционный сплайн
На каждом i–м отрезке [xi–1, xi], i=1, 2,…, N, решение будем искать в виде полинома третьей степени: Si(x)=ai+bi(x–xi)+ci(x–xi)2/2+di(x–xi)3/6 Неизвестные коэффициенты ai, bi, ci, di, i=1, 2,..., N, находим из: • условий интерполяции: Si(xi)=fi, i=1, 2,..., N; S1(x0)=f0, • непрерывности функции Si(xi–1)=Si–1(xi–1),i=2, 3,..., N,
-
• непрерывности первой и второй производной: S /i(xi–1)=S /i–1(xi–1), S //i(xi–1)=S //i–1(x i–1), i=2, 3,..., N. Учитывая, что , для определения 4N неизвестных получаем систему 4N–2 уравнений:
-
ai=fi, i=1, 2,..., N, bi hi – cihi2/2 + di hi3/6=fi – fi–1, i=1, 2,..., N, bi – bi–1 = ci hi – dihi2/2, i=2, 3,..., N, di hi = ci – ci–1 , i=2, 3,..., N. гдеhi=xi – xi–1.
-
Недостающие два уравнения выводятся из дополнительных условий: S //(a)=S //(b)=0. Можно показать, что при этом . Из системы можно исключить неизвестные bi, di, получив систему N+1 линейных уравнений (СЛАУ) для определения коэффициентов ci: c0 =0, cN =0, hici–1+2(hi+hi+1)ci+h i+1ci+1=6 i=1, 2,…, N–1. (1)
-
После этого вычисляются коэффициенты bi,di: i=1, 2,..., N. (2) В случае постоянной сетки hi=hэтасистема уравнений упрощается.
-
-
Данная CЛАУ имеет трехдиагональную матрицу и решается методом прогонки. Коэффициенты определяются из формул:
-
Для вычисления значения S(x) в произвольной точке отрезкаz∈[a, b] необходимо решить систему уравнений на коэффициенты ci, i=1,2,…, N–1, затем найти все коэффициенты bi, di. Далее, необходимо определить, на какой интервал [xi0, xi0–1] попадает эта точка, и, зная номер i0, вычислить значение сплайна и его производных в точке z S(z)=ai0 +bi0(z–xi0)+ci0(z–xi0)2/2+di0(z–x i0)3/6 S /(z)=bi0+ci0(z–xi0)+di0(z–x i0)2/2, S //(z)=ci0+di0(z–x i0).
-
пример
-
Требуется вычислить значения функции в точках 0.25 и 0.8, используя сплайн – интерполяцию. В нашем случае: hi=1/4, Выпишем систему уравнений для определения :
-
-
Решая эту систему линейных уравнений, получим:
-
-
Рассмотрим точку 0.25, которая принадлежит первому отрезку, т.е. i=1. Следовательно, получим,
-
Рассмотрим точку 0.8, которая принадлежит четвертому отрезку, т.е. i=4. Следовательно,
-
пример
Выполнить интерполяцию сплайнами третьей степени. Построить график и отметить на нем узлы интерполяции.
-
Интерполяционная формула Ньютона.
Построение интерполяционного многочлена в форме Ньютона применяется главным образом когда разность xi+1-xi=h постоянна для всех значений x=0..n-1. Конечная разность k-го порядка: Δyi=yi+1-yi Δ2yi= Δyi+1- Δyi=yi+2-2yi+1+yi ……………………………… Δkyi=yi+k-kyi+1-k+k(k-1)/2!*yi+k-2+...+(-1)kyi
-
Будем искать интерполяционный многочлен в виде: Pn(x)=a0+a1(x-x0)+a2(x-x0)(x-x1)+...+an(x-x0)(x-x1)...(x-xn-1) Найдем значения коэффициентов a0, a1, a2, ...,an: Полагая x=x0, находим a0=P(x0)=y0; Далее подставляя значения x1, x2, ...,xn получаем:
-
a1=Δy0/h a2=Δ2y0/2!h2 a3=Δ3y0/3!h3 .................... an=Δny0/n!hn Таким образом:Pn(x)=y0+ Δy0/h*(x-x0)+ Δ2y0/2!h2*(x-x0)(x-x1)+...+ Δny0/n!hn*(x-x0)(x-x1)...(x-xn-1) (1)
-
Практически формула (1) применяется в несколько ином виде. Возьмем: t=(x-x0)/h, тогда x=x0+th и формула (1) переписывается как: Pn(x)=y0+tΔy0+t(t-1)/2! Δ2y0+...+t(t-1)...(t-n+1)/n!Δny0 (2) Формула (2) называется интерполяционнойформулой Ньютона.
-
пример
Построить интерполяционный многочлен Ньютона. Начертить график и отметить на нем узлы интерполяции. Вычислить значение функции в точке х=1.25.
-
Решение. Построим таблицу конечных разностей в виде матрицы:
-
Воспользуемся интерполяционной формулой Ньютона: Pn(x)=y0+tΔy0+t(t-1)/2! Δ2y0+...+t(t-1)...(t-n+1)/n!Δny0 Подставив значения получим многочлен пятой степени, упростив который получим: P5(x)=2.2x5-24x4+101.783x3-20.2x2+211.417x-80.7 Вычислим значение функции в точке x=1.25; P(1.25)=2.0488;
Нет комментариев для данной презентации
Помогите другим пользователям — будьте первым, кто поделится своим мнением об этой презентации.