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

Лабораторная работа №2

Приближение функций, заданных таблично

Цель лабораторной работы

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

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

Задание

Для функций, заданных в таблице 1:

· построить интерполяционный многочлен Лагранжа и вычислить по нему значения функции для заданных значений аргумента;

· изучить технологию расчетов интерполяционных многочленов в Excel;

Для функций, заданных в таблице 2:

· Вычислить коэффициенты аппроксимирующих многочленов 1-й и 2-й степени, записать многочлены и построить их графики, на которые нанести также заданные табличные точки (расчеты выполнить в виде таблиц);

· изучить технологию регрессионного анализа с помощью Excel.

Интерполирование функций

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

Для функций, заданных таблицами их значений на конечном интервале, возникает необходимость вычисления значений функций для значений аргументов, отсутствующих в таблице. Тогда строят функцию, которая в заданных точках принимает заданные значения, а в остальных точках интервала приближенно представляет заданную функцию. А затем вычисления значений функции для любых значений аргумента в области определения заданной таблично функции выполняют по построенной функции. Задача интерполирования – построение такой приближенной функции. Чаще всего интерполирующую функцию отыскивают в виде алгебраического многочлена. Геометрически задача интерполирования заключается в построении кривой Интерполяционная формула Лагранжа - student2.ru , проходящей через заданную таблично систему точек.

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

Пусть функция Интерполяционная формула Лагранжа - student2.ru в точках Интерполяционная формула Лагранжа - student2.ru соответственно принимает значения Интерполяционная формула Лагранжа - student2.ru .Требуется построить многочлен Интерполяционная формула Лагранжа - student2.ru степени не выше n, принимающий в точках Интерполяционная формула Лагранжа - student2.ru (узлах интерполирования) значения Интерполяционная формула Лагранжа - student2.ru . Расстояние между узлами интерполирования может быть различным. Решение этой задачи – многочлен Лагранжа.

Интерполяционная формула Лагранжа в общем виде

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

где Интерполяционная формула Лагранжа - student2.ru – базисные функции, числитель которых содержит все разности Интерполяционная формула Лагранжа - student2.ru , а знаменатель – все разности Интерполяционная формула Лагранжа - student2.ru за исключением Интерполяционная формула Лагранжа - student2.ru .

При этом в точках Интерполяционная формула Лагранжа - student2.ru значения многочлена Интерполяционная формула Лагранжа - student2.ru и функции Интерполяционная формула Лагранжа - student2.ru совпадают. При других значениях Интерполяционная формула Лагранжа - student2.ru разность Интерполяционная формула Лагранжа - student2.ru в общем случае отлична от нуля и представляет собой истинную ошибку метода. Величина Интерполяционная формула Лагранжа - student2.ru является остаточным членом интерполяции.

Пример 1.1. Запишем интерполяционный многочлен для функции, заданной тремя точками:

X
Y

Построить интерполяционный многочлен Лагранжа и вычислить приближенно значение функции для Интерполяционная формула Лагранжа - student2.ru .

Для построения интерполяционного многочлена воспользуемся формулой при Интерполяционная формула Лагранжа - student2.ru :

Интерполяционная формула Лагранжа - student2.ru Проверяем значения функции для узлов интерполяции:

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

Вычисляем

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

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

Пример 1.2. Запишем интерполяционный многочлен для функции, заданной шестью точками:

X0 X1 X2 X3 X4 X5 Y0 Y1 Y2 Y3 Y4 Y5 X
1,1 1,2 1,3 1,4 1,5 1,6 0,88 0,91 0,93 0,95 0,96 0,97 1,54

На рис. 1.1 представлены исходные данные, по которым будет выполняться интерполяция. На этом же рисунке проиллюстрирован процесс определения первой базисной функции.

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

Рис. 1.1

В диапазоне ячеек А6:А11представлены заданные значения аргументов функции, а в диапазоне ячеек В6:В11– значения функции для узловых точек аргумента. В ячейку А2вводится значение аргумента, для которого необходимо вычислить значение интерполяционного полинома. Значение полинома будет выводиться в ячейке В2.Важным моментом является заполнение ячеек в диапазоне С6:С11,где будут отображаться значения базисных функций в точке, указанной в ячейке А2.Именно по этим значениям и значениям ячеек из диапазона А6:А11определяется значение интерполяционного полинома (ячейка В2).

Диапазон С6:С11заполняется так: отдельно первая и последняя ячейки диапазона, а все остальные ячейки — распространением одной формулы. В частности, в ячейку С6вводится формула

=ПРОИЗВЕД(А2-А7:А11)/ ПРОИЗВЕД(А6-А7:А11),

согласно которой определяется первая базисная функция. Сразу следует отметить, что и эта формула, и все прочие формулы из диапазона С6:С11,вводятся как формулы для диапазонов, т.е. с помощью нажатия комбинации клавиш Ctrl+Shift+Enter.Причина состоит в том, что аргументами функции ПРОИЗВЕД() указываются результаты арифметическихопераций с диапазонами.

Далее заполняются ячейки из диапазона С7:С10.Для этого в ячейку С7вводится формула

=ПРОИЗВЕД($A$2-$A$6:A6;$A$2-A8:$A$11)/ПРОИЗВЕД(A7-$A$6:A6;A7-A8:$A$11).

Абсолютные и относительные ссылки в формуле подобраны так, чтобы при ее копировании в следующие ячейки, ссылки на начальную А6 и конечную А11ячейки диапазона, равно как и на ячейку А2со значением переменной, для которой вычисляется базисная функция (и весь полином), оставались неизменными. Это абсолютные ссылки. Вместе с тем, в процессе копирования формулы произведения в ней вычисляются без учета значения аргумента в той строке, где размещена формула. После ввода формулы в ячейку С7данная формула с помощью маркера заполнения копируется во все ячейки, вплоть до С10 (Рис. 1.2).

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

Рис. 1.2

Наконец, в ячейку С11необходимо ввести формулу

=ПРОИЗВЕД(А2-А6:А10)/ ПРОИЗВЕД(А11-А6:А10).

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

Рис. 1.3

Поскольку формулы из начальной С6 и конечной С11ячеек диапазона С6:С11никуда копировать не предполагается, то и ссылки там относительные. Результат можно видеть на рис. 1.3.

После этого осталось только вычислить интерполяционный полином. Для этого достаточно в ячейку В2ввести формулу

=СУММПРОИЗВ(В6:В11;С6:С11)

Эта формула вводится как обычная, то есть нужно нажать клавишу Enter.Результат представлен на рис. 1.4.

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

Рис.1.4

Чтобы посчитать значение полинома в какой-то точке, соответствующее значение следует ввести в ячейку А2. В ячейке В2практически сразу появится результат.

Ответ: Интерполяционная формула Лагранжа - student2.ru

На рис. 1.5 проиллюстрирована ситуация, когда в качестве аргумента указано узловое значение. Как и следовало ожидать, в узловой точке значение интерполяционного полинома равно табличному значению функции в этой точке, а все базисные функции, кроме той, что соответствует указанному узлу, равны нулю. Отличная от нуля базисная функция равна единице.

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

Рис. 1.5

Наши рекомендации