Материал: Larin_Anton_8383_cm_21_9

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Пусть – интерполяционный многочлен, определяемый парами ( , ), ( , ), ( , ), … так, что 012 … = ( ). Интерполяционные многочлены возрастающих степеней получают последовательно следующим образом:

 

=

 

 

1

 

( 0

0)

 

 

01

 

 

1

1

 

 

1

0

 

 

12

=

 

 

1

 

( − 1

1)

 

 

 

 

2

1

 

 

− 2

2

 

 

=

 

 

1

 

( 0

01)

 

 

012

 

 

2

12

 

 

2

0

 

 

 

 

=

 

 

1

 

( 0

012)

 

 

0123

 

 

3

123

 

 

3

0

 

 

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

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

В ходе работы студенты должны самостоятельно разработать программу на одном из языков программирования, обеспечивающую решение одного из вариантов, полученного от преподавателя. Используя интерполяционную схему Эйткена и/или интерполяционную формулу Ньютона, необходимо вычислить значение в точке x функции, заданной таблицей. Порядок выполнения работы следующий:

1.Составить подпрограмму-функцию для вычисления значения в заданной точке по формуле Ньютона INEWTON и/или схеме Эйткина AITKEN.

2.Составить головную программу, содержащую обращение к соответствующим подпрограммам и осуществляющую печать результатов (в

том числе и промежуточных вычислений) как на экран, так и в файл. Входные данные также считываются из файла.

6

3. Провести вычисления по программе. Построить график полученной функции (множество точек, соединённых последовательно), отметить искомую

точку.

Выполнение работы.

Интерполируем значения неизвестной функции ( ) по набору значний представленных в таб. 1.

Таблица 1 – Данный набор точек неизвестной функции ( )

Номер

Значение

Значение

 

 

 

 

 

 

0

0.2376

-3.7117

 

 

 

1

0.7368

-0.7525

 

 

 

2

1.1448

0.2297

 

 

 

3

1.9872

0.0128

 

 

 

4

2.5392

-0.3824

 

 

 

5

2.7648

-0.3175

 

 

 

6

3.0616

0.1348

 

 

 

7

3.2088

0.5575

 

 

 

8

3.2784

0.8109

 

 

 

9

3.6904

3.1398

 

 

 

10

3.9368

5.3285

 

 

 

Требуется интерполировать значение функции в точке = 2.2248

Визуализируем данные значения на графике. График представлен на рис.

1.

Была написана программа для интерполяции функции многочленом Ньютона для неравноотстоящих узлов. Она принимает на вход следующие значения: n – количество известных точек, x – интерполируемая точка, xx,yy

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

7

Аппроксимированная при помощи данной программы функция представлена на графике на рис. 2. Слагаемые многочлены и значение функции в точке = 2.2248 представлен в таб. 2. Значение функции в точке = 2.2248

рассчитано: ( ) = −0.21331084

Таблица 2 – Значения слагаемых многочлена Ньютона

1

1.178E+01

2

-1.147E+01

3

3.193E+00

4

2.282E-05

5

1.844E-05

6

2.365E-05

7

3.343E-05

8

3.498E-05

9

1.565E-05

10

-9.280E-06

Рисунок 1 – Исходный набор точек функции

8

Рисунок 2 – Аппроксимированные по методу Ньютона значения на промежутке

Была написана программа для интерполяции функции по схеме Эйткена.

Она принимает на вход следующие значения: x – интерполируемая точка, xx,yy – список известных точек, их абсциссы и ординаты соответственно, a,b

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

Код программы представлен в приложении А.

Аппроксимированная при помощи данной программы функция представлена на графике на рис. 3. Значение функции в точке = 2.2248

рассчитано: ( ) = −0.21331721

Разница

между

найденными

значениями

 

( ) − ( ) =

 

 

 

 

 

 

0,00000637065148667 т.е. совпали 5 знаков.

9

Рисунок 3 – Аппроксимированные по методу Эйткена значения на промежутке

Выводы.

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

Метод Эйткена менее удобен в использовании так как при изменении набора точек либо потребности посчитать значение в новой точке требует проводить расчеты заново. Однако по получившимся интерполированным значениям функции в данной точке видим, что при расчете обеими методами для данной получаем значения совпадающие до 5-ти знаков после запятой, то есть дают достаточно хороший результат.

10