Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Тема 6.3. Интерполяция функций



Тема 6.3. Интерполяция функций

 

6.3.1. Постановка задачи

6.3.2. Интерполяционная формула Лагранжа

6.3.3. Интерполяционные формулы Ньютона

6.3.3.1. Конечные разности

6.3.3.2. Первая интерполяционная формула Ньютона

6.3.3.3. Вторая интерполяционная формула Ньютона

6.3.4. Сплайн – интерполяция

6.3.5. Сравнение интерполяционных многочленов по применению

6.3.6. Технология интерполяции функций в среде математических пакетов

6.3.6.1. Технология интерполяции функций в среде системы MathCad

6.3.6.2. Технология интерполяции функций в среде MatLab

6.2.7. Тестовые задания по теме «Интерполяция функций»

 

Постановка задачи

 

Вычисление значений функции y = f(x) – одна из тех задач, с которой приходится постоянно сталкиваться в инженерной практике. Однако сделать это не всегда возможно. Примером тому следующие типичные ситуации:

· функция задана таблицей значений (нет аналитического выражения)
, (i = 0, 1, 2, …, n), необходимо вычислить значения функции в точках, не совпадающих с табличными;

· аналитическое выражение f(x) есть, но получение ее значений затруднено громоздкими и сложными вычислениями;

· значения функции в требуемых точках могут быть получены только экспериментально.

 

В этих и ряде других случаев возникает необходимость приближенного вычисления функции y = f(x).

Задача аппроксимации состоит в следующем. Функцию f(x), заданную таблично, требуется приближенно заменить (аппроксимировать) некоторой функцией j(х ) так, чтобы отклонение j(х) от f(x) в некоторой области удовлетворяло заданному условию. Функция j(х) называется аппроксимирующей функцией.

В качестве аппроксимирующей функции часто используют алгебраический многочлен вида:

 

jm(x) = a 0 + a 1 x + a 2 x2 + … + a m xm . ( 6.3.1-1 )

 

В этом случае говорят о параболической аппроксимации.

Частным случаем задачи аппроксимации таблично заданной функции является интерполирование. Интерполирование состоит в следующем. Для функции y = f(x), заданной в (n + 1) точке , найти функцию j(х), принимающую в этих точках заданные значения, то есть

 

, i = 0, 1, 2, … n. ( 6.3.1-2 )

 

Будем называть (6.3.1-2) условием интерполяции, точки – узлами интерполяции, а функцию j(х) – интерполирующей функцией.

При интерполяции критерием приближения аппроксимирующей функции к заданной является совпадение их значений в узлах интерполяции.

Геометрической интерпретацией задачи интерполяции является нахождение функции, график которой проходит через заданную систему точек , i = 0, 1, …, n (рис. 6.3.1-1). Если в качестве интерполирующей функции используется алгебраический многочлен
(6.3.1-1) степени не выше n, то задача имеет единственное решение.

 

  ___ интерполируемая функция   ----- интерполирующая функция    

 

Рис.6.3.1-1

 

Применяя интерполирующую функцию (6.3.1-1), запишем условие (6.3.1-2) для каждого из (n + 1 ) узлов. В результате получим следующую систему (n + 1) линейных уравнений:

 
 

Эта система однозначно разрешима, так как ее определитель (определитель Вандермонда) отличен от нуля, если узлы интерполяции различны. Решение полученной системы n+1 линейных уравнений относительно неизвестных а0, а1, …, аn позволяет найти коэффициенты интерполирующего многочлена (6.3.1-1).

 

Пример 6.3.1-1.Пусть функция y = f(x) задана таблично:

 

xi 1.2 1.4 1.6 1.8
y i -0.16 -0.24 -0.24 -0.16

 

Требуется построить интерполяционный многочлен, позволяющий вычислить значение f(x) в точке x = 1.43.

Полагая x0 = 1.2, x1 = 1.4, x2 = 1.6,

y0 =-0.16, y1 = -0.24, y2 = -0.24, получим систему уравнений

 

 

Решая систему уравнений, получим следующие значения а0 = 2, а1 = -3, а2 = 1. Тогда интерполяционный многочлен имеет следующий вид: P2(x) = 2 – 3x + x2, а значение многочлена в точке 1.43 равно P2(1.43) = - 0.2451.

 

 

Интерполяционные формулы Ньютона

 

Рассмотрим случаи, когда интерполируемая функция y=f(x) задается в равноотстоящих узлах так, что = x0 + ih, где h – шаг интерполяции, а i = 0, 1, …, n.
В этом случае для нахождения интерполяционного многочлена могут применяться формулы Ньютона, которые используют конечные разности.

 

 

Конечные разности

 

Конечной разностью первого порядка называется разность Dyi = yi+1-yi, где yi+1= f(xi+h) и yi = f(x i). Для функции, заданной таблично в (n+1) узлах, i = 0, 1, 2, …, n, конечные разности первого порядка могут быть вычислены в точках 0, 1, 2, …, n-1:

 

Используя конечные разности первого порядка, можно получить конечные разности второго порядка:

 

Отметим, что любые конечные разности можно вычислить через значения функции в узлах интерполяции, например:

 

(6.3.3-1)

 

Для конечной разности k - го порядка в узле с номером i справедлива формула, позволяющая вычислять конечные разности с помощью таблицы конечных разностей:

 

.

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

Рассмотрим, например, таблицу конечных разностей для многочлена y=x2- 3x+2.

 

Таблица 6.3.3-1

x y Dy D2y D3y
1.0 -0.16 0.08
1.2 -0.16 -0.08 0.08
1.4 -0.24 0.08  
1.6 -0.24 0.08    
1.8 -0.16      

 

В данном примере конечные разности третьего порядка равны нулю, а все конечные разности второго порядка равны 0.08. Это говорит о том, что функцию, заданную таблично, можно представить многочленом второй степени.

Введя понятие конечных разностей, рассмотрим еще две формы записей интерполяционных полиномов.

 

Выполнить линейную интерполяцию данных (экспериментальные точки соединяются отрезками прямой) с использованием функции linterp(x, y, t), где x – вектор значений аргументов, y – вектор значений функции и t – текущее значение аргумента, при котором вычисляется функция.

 

 

Пример 6.3.6-2. Выполнить интерполяцию таблично заданной функции по методу Лагранжа.

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

 

 

 

Помимо вычисления значений функций в пределах интервала данных все рассмотренные ранее функции могут осуществлять экстраполяцию (прогнозирование поведения функции за пределами интервала заданных точек) с помощью зависимости, основанной на анализе расположения нескольких исходных точек на границе интервала данных. В Mathcad имеется и специальная функция предсказания predict(Y, m, n), где Y – вектор заданных значений функции, обязательно взятых через равные интервалы аргумента, а m – число последовательных значений Y, на основании которых функция predict возвращает n значений Y.

Значений аргумента для данных не требуется, поскольку по определению функция действует на данных, идущих друг за другом с одинаковым шагом. Функция использует линейный алгоритм предсказания, который точен, когда экстраполируемая функция гладкая. Функция может быть полезна, когда требуется экстраполировать данные на небольшие расстояния. Вдали от исходных данных результат чаще всего оказывается неудовлетворительным.

Пример 6.3.6-3. Задан массив из 60 точек .

Узлы интерполяции – это

1) значения функции, заданной таблично

2) значения xi (i = 0, 1, 2, … n)

3) значения интерполяционного многочлена в точках xi (i = 0, 1, 2, … n)

4) в списке нет правильного ответа

 

Шаг интерполяции – это

1) шаг интегрирования

2) разность между соседними значениями функции

3) расстояние между узлами интерполяции

4) в списке нет правильного ответа

 

4. Основное условие интерполяции это

1) совпадение значений интерполируемой и интерполирующих функций во всех узлах интерполяции с заданной степенью точности

2) значения интерполируемой и интерполирующих функций в узлах интерполяции не должны совпадать

3) в списке нет правильного ответа

4) полное совпадение значений интерполируемой и интерполирующих функций во всех узлах интерполяции

 

Тема 6.3. Интерполяция функций

 

6.3.1. Постановка задачи

6.3.2. Интерполяционная формула Лагранжа

6.3.3. Интерполяционные формулы Ньютона

6.3.3.1. Конечные разности

6.3.3.2. Первая интерполяционная формула Ньютона

6.3.3.3. Вторая интерполяционная формула Ньютона

6.3.4. Сплайн – интерполяция

6.3.5. Сравнение интерполяционных многочленов по применению

6.3.6. Технология интерполяции функций в среде математических пакетов

6.3.6.1. Технология интерполяции функций в среде системы MathCad

6.3.6.2. Технология интерполяции функций в среде MatLab

6.2.7. Тестовые задания по теме «Интерполяция функций»

 

Постановка задачи

 

Вычисление значений функции y = f(x) – одна из тех задач, с которой приходится постоянно сталкиваться в инженерной практике. Однако сделать это не всегда возможно. Примером тому следующие типичные ситуации:

· функция задана таблицей значений (нет аналитического выражения)
, (i = 0, 1, 2, …, n), необходимо вычислить значения функции в точках, не совпадающих с табличными;

· аналитическое выражение f(x) есть, но получение ее значений затруднено громоздкими и сложными вычислениями;

· значения функции в требуемых точках могут быть получены только экспериментально.

 

В этих и ряде других случаев возникает необходимость приближенного вычисления функции y = f(x).

Задача аппроксимации состоит в следующем. Функцию f(x), заданную таблично, требуется приближенно заменить (аппроксимировать) некоторой функцией j(х ) так, чтобы отклонение j(х) от f(x) в некоторой области удовлетворяло заданному условию. Функция j(х) называется аппроксимирующей функцией.

В качестве аппроксимирующей функции часто используют алгебраический многочлен вида:

 

jm(x) = a 0 + a 1 x + a 2 x2 + … + a m xm . ( 6.3.1-1 )

 

В этом случае говорят о параболической аппроксимации.

Частным случаем задачи аппроксимации таблично заданной функции является интерполирование. Интерполирование состоит в следующем. Для функции y = f(x), заданной в (n + 1) точке , найти функцию j(х), принимающую в этих точках заданные значения, то есть

 

, i = 0, 1, 2, … n. ( 6.3.1-2 )

 

Будем называть (6.3.1-2) условием интерполяции, точки – узлами интерполяции, а функцию j(х) – интерполирующей функцией.

При интерполяции критерием приближения аппроксимирующей функции к заданной является совпадение их значений в узлах интерполяции.

Геометрической интерпретацией задачи интерполяции является нахождение функции, график которой проходит через заданную систему точек , i = 0, 1, …, n (рис. 6.3.1-1). Если в качестве интерполирующей функции используется алгебраический многочлен
(6.3.1-1) степени не выше n, то задача имеет единственное решение.

 

  ___ интерполируемая функция   ----- интерполирующая функция    

 

Рис.6.3.1-1

 

Применяя интерполирующую функцию (6.3.1-1), запишем условие (6.3.1-2) для каждого из (n + 1 ) узлов. В результате получим следующую систему (n + 1) линейных уравнений:

 
 

Эта система однозначно разрешима, так как ее определитель (определитель Вандермонда) отличен от нуля, если узлы интерполяции различны. Решение полученной системы n+1 линейных уравнений относительно неизвестных а0, а1, …, аn позволяет найти коэффициенты интерполирующего многочлена (6.3.1-1).

 

Пример 6.3.1-1.Пусть функция y = f(x) задана таблично:

 

xi 1.2 1.4 1.6 1.8
y i -0.16 -0.24 -0.24 -0.16

 

Требуется построить интерполяционный многочлен, позволяющий вычислить значение f(x) в точке x = 1.43.

Полагая x0 = 1.2, x1 = 1.4, x2 = 1.6,

y0 =-0.16, y1 = -0.24, y2 = -0.24, получим систему уравнений

 

 

Решая систему уравнений, получим следующие значения а0 = 2, а1 = -3, а2 = 1. Тогда интерполяционный многочлен имеет следующий вид: P2(x) = 2 – 3x + x2, а значение многочлена в точке 1.43 равно P2(1.43) = - 0.2451.

 

 


Поделиться:



Последнее изменение этой страницы: 2017-03-17; Просмотров: 3682; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.063 с.)
Главная | Случайная страница | Обратная связь