Рациональная интерполяция
Материал из MachineLearning.
м (орфография) |
(→Пример использования) |
||
Строка 28: | Строка 28: | ||
==Пример использования== | ==Пример использования== | ||
+ | Выполним интерполяцию для узлов интерполяции, полученных из функции f(t)=ln(t).<br> | ||
+ | Узлы интерполяции: <br> | ||
+ | :: t:=[1., 2., 3., 4., 5.]; <br> | ||
+ | :: f(t):= [0., 0.69314718055994530942, 1.0986122886681096914, 1.3862943611198906188, 1.6094379124341003746]; <br> | ||
+ | Выполняя интерполяцию по заданным узлам, получаем: <br> | ||
+ | <tex>\Omega(t):=\frac{t-1.}{1.4426950408889634074+\frac{t-2.}{2.6470193430160504848+\frac{t-3.}{5.0781780711298101893+.72138672314187706016*t}}}</tex><br> | ||
+ | Выполним построение графиков функции и выполним оценку погрешностей: | ||
+ | [[Изображение:Thiele_interpolation.jpg|thumb]] | ||
+ | Для исследования функции Ω(t) выполним экстраполяцию внутрь таблицы, взяв для определенности t=1.161.<br> | ||
+ | ln(1.161)=0.14928170271575444560<br> | ||
+ | Ω(1.161)=0.14858464422075798083<br> | ||
+ | |||
+ | Вычислим относительную погрешность для данного значения при использовании рациональной интерполяции<br> | ||
+ | δ<sub>Ω(1.161)</sub>:=0.0046913225700552061895<br> | ||
+ | |||
+ | Выполним экстраполяцию вперед таблицы, взяв для определенности t=6.103.<br> | ||
+ | δ<sub>Ω(6.103)</sub>:=0.00033164210935389932321 | ||
==Литературы== | ==Литературы== |
Текущая версия
Содержание |
Введение
Некоторые функции нельзя с достаточной точностью приблизить полиномами или полиномиальное приближение очень медленно сходится. В этом случае разумно обратиться к другому методу - к дробно-рациональному приближению (иногда называют просто рациональное), которое соответствует отношению двух многочленов.
Коэффициенты можно найти из совокупности соотношений которые можно записать в виде
Таким образом получаем систему n линейных алгебраических уравнений относительно n+1 неизвестных. Функция R(x) может быть записана в явном виде в случаях, когда n нечётное и p=q, и когда n чётное и p-q=1. Для этого следует вычислить обратные разделенные разности, определяемые условиями
и рекуррентным соотношением
после чего интерполирующая рациональная функция записывается в виде цепной дроби
Дробно-рациональное интерполирование при правильном выборе узлов целесообразно использовать для функций с нерегулярным характером поведения.
Погрешность вычислений
Пример использования
Выполним интерполяцию для узлов интерполяции, полученных из функции f(t)=ln(t).
Узлы интерполяции:
- t:=[1., 2., 3., 4., 5.];
- f(t):= [0., 0.69314718055994530942, 1.0986122886681096914, 1.3862943611198906188, 1.6094379124341003746];
- t:=[1., 2., 3., 4., 5.];
Выполняя интерполяцию по заданным узлам, получаем:
Выполним построение графиков функции и выполним оценку погрешностей:
Для исследования функции Ω(t) выполним экстраполяцию внутрь таблицы, взяв для определенности t=1.161.
ln(1.161)=0.14928170271575444560
Ω(1.161)=0.14858464422075798083
Вычислим относительную погрешность для данного значения при использовании рациональной интерполяции
δΩ(1.161):=0.0046913225700552061895
Выполним экстраполяцию вперед таблицы, взяв для определенности t=6.103.
δΩ(6.103):=0.00033164210935389932321
Литературы
- Н.С. Бахвалов, Н.П. Жидков, Г.М. Кобельков. Численные методы. Изд-во "Лаборатория базовых знаний". 2003.