
- •Интерполяция и экстраполяция
- •Составители в.П. Житников, н.М. Шерыхалина, а.Р. Ураков
- •Содержание
- •Лабораторная работа №1 интерполяция функций
- •3. Вводная часть
- •4. Теоретические основы
- •4.1. Постановка задачи
- •4.2. Методы решения задачи
- •5. Методы оценки погрешности интерполяции
- •5.1. Оценка погрешности метода
- •5.2. Оценка погрешностей исходных данных и округления
- •6. Критерий качества оценки погрешности
- •7. Численный эксперимент. Применим этот способ оценки к конкретной задаче интерполяции. Пусть
- •8. Порядок решения задачи на эвм
- •9. Требования к отчету по лабораторной работе
- •10. Вопросы для самопроверки
- •Лабораторная работа №2 применение экстраполяции для ускорения сходимости последовательностей
- •1. Цель работы
- •2. Задачи работы
- •3. Вводная часть
- •4. Теоретические основы
- •4.1. Постановка задачи
- •4.2. Экстраполяция и оценка погрешности при известном порядке аппроксимации.
- •5. Верификация методов оценки погрешности. Повторная экстраполяция
- •5.1. Критерий качества оценки погрешности
- •5.2. Оценка погрешности методов повторной экстраполяции
- •6. Численный эксперимент
- •7. Порядок решения задачи на эвм
- •8. Требования к отчету по лабораторной работе
- •9. Вопросы для самопроверки
- •Лабораторная работа №3 экстраполяция при неизвестном порядке аппроксимации
- •1. Цель работы
- •2. Задачи работы
- •3. Вводная часть
- •4. Теоретические основы
- •4.1. Процесс Эйткена
- •5. Порядок решения задачи на эвм
- •6. Требования к отчету по лабораторной работе
- •7. Вопросы для самопроверки
4. Теоретические основы
4.1. Постановка задачи
Пусть некоторая функция f(x) задана своими значениями yj=f(xj) на дискретном множестве точек xj., j=0,…,m. Требуется приближенно определить аналитический вид этой функции и тем самым получить возможность вычислить ее значения в промежуточных точках x(xj,xj+1). График, иллюстрирующий данную задачу, изображен на рис. 1.1.
Рис. 1.1. К задаче интерполяции функций.
Интерполирующую функцию будем искать в виде алгебраического многочлена
. (1.1)
Поскольку многочлен
в узловых точках должен совпадать с
заданными значениями функции, то задача
сводится к решению системы линейных
алгебраических уравнений
(1.2)
относительно неизвестных ai (k – номер начальной узловой точки, используемой в данном расчете).
Эта система уравнений имеет единственное решение (если mn+k, и все xj различны), так как определитель этой системы – определитель Вандермонда - не равен нулю.
4.2. Методы решения задачи
Интерполяционный многочлен Лагранжа. Решение системы уравнений (1.2) можно представить в форме интерполяционного многочлена Лагранжа:
. (1.3)
В частном случае n=1 (линейная интерполяция)
,
а при n=2
.
Нетрудно заметить,
что структура этих формул такова, что
для каждой узловой точки x=xj
из входящих в набор используемых формулой
узловых точек, только одно слагаемое
отлично от нуля и именно то, в которое
входит yj.
Кроме того, дробь, входящая в это отличное
от нуля слагаемое, при x=xj
равна единице. Поэтому
.
Интерполяционный многочлен Ньютона. Сначала необходимо дать несколько определений. Для упрощения записи введем обозначение: fk=f(xk).
Конечной разностью первого порядка функции f в точке xk называется величина
,
а конечной разностью n-го порядка (n>1) величина
. (1.4)
Отсюда, в частности, следует, что разность второго порядка
.
Разделенными разностями нулевого порядка называются значения функции fk. Разделенной разностью первого порядка называется величина
.
Разделенная разность n-го порядка определяется через разделенные разности n-1-го порядка по рекуррентной формуле
. (1.5)
Другое выражение разделенной разности n-го порядка
. (1.6)
Интерполяционным многочленом Ньютона называется алгебраический многочлен
.
. (1.7)
Этот многочлен тождественно равен многочлену n-й степени, записанному в форме Лагранжа или в какой-то другой форме в силу единственности интерполяционного многочлена.
Однако такая форма записи позволяет при необходимости увеличения степени многочлена не перестраивать весь многочлен заново, а только добавлять дополнительные слагаемые.
5. Методы оценки погрешности интерполяции
5.1. Оценка погрешности метода
Теоретическая оценка погрешности интерполяции. Справедлива следующая оценка погрешности интерполяции [1-4]
, (1.8)
где
xj
- узлы сетки,
,
x – значение аргумента,
где оценивается погрешность интерполяции.
Для непосредственного
применения этой формулы необходимо
иметь верхнюю оценку модуля n+1-й
производной функции
.
Если речь идет об интерполяции известной
функции по ее табличным значениям, то
такая оценка может быть получена
аналитически. Например, производная
любого порядка от функций sinx
и cosx по
модулю не превышает единицы.
Необходимо отметить,
что значения
между узлами xj
вблизи концов интервала интерполяции
существенно больше (по модулю), чем в
середине. Кроме того, при увеличении n
значения
быстро растут. Отсюда следует, что
повышение степени многочлена может
привести к увеличению погрешности
интерполяции, если с увеличением порядка
производной достаточно быстро
увеличивается ее величина.
Практическая оценка погрешности интерполяции по результатам численного эксперимента. В случае, когда интерполируемая функция является результатом численного решения некоторой задачи, вся информация об искомой функции исчерпывается ее значениями в узловых точках. Задача интерполяции при этом является некорректной, поскольку может существовать сколько угодно функций, графики которых проходят через данные точки (рис 1.2а). То есть, решение задачи может быть получено только с точностью до произвольной аддитивной составляющей, имеющей нулевые значения во всех заданных узловых точках.
В оправдание этого можно сказать, что если сетка выбирается произвольно, то существование функции, равной нулю именно в узловых точках этой сетки, маловероятно. Можно также указать разные способы использования нескольких сеток для повышения надежности получаемых результатов.
В случае, рассмотренном на рис 1.2б, функция имеет резкий всплеск на одном из частичных отрезков. При этом интерполяционная формула может просто «не заметить» этого всплеска, так как в узловых точках его влияние может быть очень малым. «Почувствовать» такой всплеск можно только при уточнении результата (например, путем повышения степени интерполяционного многочлена, сгущением сетки).
а) |
б) |
Рис. 1.2. Некорректность задачи интерполяции
Таким образом, хотя полностью исключить возможность ошибки (указания неправильной оценки погрешности результата), связанной с wнекорректностью задачи нельзя, но есть пути уменьшения такой возможности.
Рассмотрим способ оценки погрешности интерполяции, не требующий использования никакой другой информации, кроме значений функции в узловых точках.
Для этого на основании (1.8) представим математическую модель погрешности интерполяции в следующем виде
. (1.9)
Здесь
- узлы некоторой сетки; j=0,...,
,
c - величина, предполагаемая независимой
от положения узлов; k1 - номер
начального узла, используемого
интерполяционной формулой; 1(x)
- дополнительная часть погрешности,
полагаемая малой величиной по сравнению
с первым слагаемым.
Теперь изменим
сетку, используя новые узлы
,
j=0,...,
.
Тогда получим второе уравнение для
нахождения неизвестных c и f(x)
. (1.10)
Вычитая (1.9) из (1.10) и пренебрегая малыми, найдем c
,
, (1.11)
оценку погрешности интерполяции
(1.12)
и более точное значение функции
. (1.13)
Формировать разные сетки можно различными способами (например, уменьшением шага в 2 раза, выбором закона распределения узлов). В том числе для оценки интерполяции можно использовать значения функции в других узлах той же самой сетки. Последнее может оказаться более удобным с практической точки зрения. Способ выбора узлов также может быть различным.
Рассмотрим случай,
когда второй набор
состоит из узлов
с номерами от k+1 до n+k+1 (т.е.
k1=k,
k2=k+1).
В этом случае согласно (1.12) погрешность
оценивается по формуле
, (1.14)
а (1.13) принимает вид
. (1.15)
Функция (1.15) в действительности представляет собой интерполяционный многочлен степени n+1, так как:
-
является алгебраическим многочленом
степени n+1;
- в узлах с номерами
от i=k+1 до i=k+n оба многочлена
и
,
а, следовательно, и
,
совпадают с
;
-
;
-
.
Рекуррентная формула (1.15) используется при интерполяции по схеме Эйткена [1].
Таким образом,
данный способ оценки погрешности
интерполяции сводится к построению
интерполяционного многочлена
и сравнению проверяемых значений
с
как с более точными.