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

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

Международная «Лига развития науки и образования» (Россия)

Международная ассоциация развития науки, образования и культуры России (Италия)

Международный «ИНСТИТУТ УПРАВЛЕНИЯ»

(г. Архангельск)

КУРСОВАЯ РАБОТА

ПО ДИСЦИПЛИНЕ

«Информатика и программирование»

Тема : «Построение интерполяционного многочлена и вычисление по нему значения функции для заданного аргумента»

Выполнил: студент экономического факультета, группы 12-И Воробьев А.А.

Проверил: Горяшин Ю.В.

Архангельск

2004

Аннотация

Цель курсовой: для функции заданной в таблице построить интерполяционный многочлен и вычислить по нему значение функции для заданного значения аргумента. Составить блок схему алгоритма и программу на одном из языков высокого уровня (С++) для вычисления заданного интерполяционного многочлена. В программе предусмотреть возможности ввода любого числа значений функции для чего организовать хранение ее значении при помощи линейного списка.

Содержание

    Аннотация

    Содержание

    Глава №1

    Глава №2

    Заключение

    Список литературы

    Приложение

    Программа

Введение.

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

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

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

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

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

Глава 1

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

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

Обычно стоится в виде

,

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

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

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

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

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

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

.

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

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

Часто при обработке эмпирических данных коэффициенты в определяют исходя из требования минимизации суммы

- заданные числа, .

Такое построение функции называют интерполированием по методу наименьших квадратов.

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

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

Интерполирование функций и численные методы. Интерполирование функции используется:

    для замены сложно вычисляемой функции другой, вычисляемой проще

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

    для получения сглаживающих функций

    для приближенного нахождения предельных значений функции

    в задачах ускорения сходимости последовательностей и рядов и в других вопросах.

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

Например взяв за корень линейного интерполяционного алгебраического многочлена, построенного по значениям и в узле или по значениям и в узлах и , приходят соответственно к методу Ньютона и метода секущих

,

где - разделенная разность функций для узлов и .

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

Численное интегрирование. Аппарат интерполирования функции лежит в основе построения многих квадратурных и кубатурных формул. Такого рода формулы строятся путем замены интегрируемой функции на всей области или на её составных частях интерполяционными многочленами того или иного вида и последующим интегрированием этих многочленов. Например квадратурные формулы наивысшей алгебраической степени точности, так называемые квадратурные формулы Гаусса:

где - знакопостоянная весовая функция, получаемая в результате замены функции интерполяционным алгебраическим многочленом, построенным по корням ортогонального относительно веса многочлена степени n.

Изложенная выше схема построения формул для приближенного вычисления интегралов применима и в многомерном случае

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

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

Интерполяционная формула- для приближенного вычисления значений функции , основанного вычисления на замене приближаемой функции более простой в каком- то смысле функцией

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

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

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

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

Интерполяционная формула Эверетта:

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

К интерполяционным формулам с центральными разностями относятся формулы Гаусса, Стирлинга, Бесселя, Эверетта и многие другие; формула Эверетта получила наибольшее распространение, она была получена 1900 г.:

где ; ; .

Формуле Эверетта так же можно придать форму, наиболее удобную для вычисления:

если для ее коэффициентов ввести обозначения

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

; ;

Таблица разностей:

x

y

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

, и так далее(можно заметить такую систему в приведенной выше таблице)

Тестовый пример.

П р и м е р. Функция задана таблицей на сегменте . Определим при помощи интерполяции значение .

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

Принимаем =0,85; =0,9; =0,874.

Тогда =0,8273695; =0,8075238, и, далее, так как шаг таблицы =0,05, то

Т а б л и ц а 2

x

0.60

0.65

0.70

0.75

0.80

0.85

0.90

0.95

1.00

0.9120049

0.8971316

0.8812009

0.8642423

0.8462874

0.8273695

0.8075238

0.7867871

0.7651977

-0.0148733

-0.0159307

-0.0169586

-0.0179549

-0.0189179

-0.0198457

-0.0207367

-0.0215894

-0.0010574

-0.0010279

-0.0009963

-0.0009630

-0.0009278

-0.0008910

-0.0008527

0.0000295

0.0000316

0.0000333

0.0000352

0.0000368

0.0000383

0.0000021

0.0000017

0.0000019

0.0000014

0.0000015

-0.0000004

0.0000002

-0.0000005

0.0000001

Т а б л и ц а 2

Эверетта

0

1

2

0.52000

-0.06323

0.01179

0.82273695

-0.0009278

0.0000014

0

1

2

0.48000

-0.06157

0.01160

0.8075238

-0.0008910

0.0000015

Все вычисления по формуле Эверетта представлены в табл. 2.

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

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

Проверка производится непосредственно при помощи степенного ряда для рассматриваемой функции Эверетта согласно которому получим

ГЛАВА №2

MAIN

Заключение

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

Список литературы

    Архангельский Н.А. Вычислительные методы алгебры в приемах и задачах. М.: МАИ, 1976.

    Васильев Ф.П. Численные методы решения экстремальных задачь. М.: Наука,1988.

    Васильков Ф.В., Василькова Н.Н. Компьютерные технологии вычислений в математическом моделировании: Учеб. Пособие. М.: Финансы и статистика, 1999.

    Фильчаков П.Ф., Справочник по высшей математике. Киев: Наукова думка, 1974.

    Фильчаков П.Ф., Численные методы. Киев: Наукова думка, 1976.

    Большая математическая энциклопедия. М.: Олма-Пресс, 2004

    Демидович Б.П., Марон И.А. Основы вычислительной математики. М.: Наука, 1970.

    Тихонов А.Н., Вводные лекции по прикладной математике. М.: Наука, 1984.

    Калиткин Н.Н., Численные методы. М.: Наука, 1987.

    Корн Г., Корн Т. Справочник по математике. М.: Наука, 1984.

3.05 63.96 3.15 44.39 3.25 51.20 3.35 58.44 3.45 50.15 3.55 44.51 3.65 47.25 3.75 35.24 3.85 43.28