ИНТЕРПОЛЯЦИЯ ТАБЛИЧНО ЗАДАННЫХ ЗАВИСИМОСТЕЙ ПОЛИНОМАМИ В СРЕДЕ ЭТ MS EXCEL И МАТЕМАТИЧЕСКОГО ПАКЕТА MATHCAD - Студенческий научный форум

IX Международная студенческая научная конференция Студенческий научный форум - 2017

ИНТЕРПОЛЯЦИЯ ТАБЛИЧНО ЗАДАННЫХ ЗАВИСИМОСТЕЙ ПОЛИНОМАМИ В СРЕДЕ ЭТ MS EXCEL И МАТЕМАТИЧЕСКОГО ПАКЕТА MATHCAD

Алёшин А.О. 1, Растеряев Н.В. 1
1Донской государственный технический университет (ДГТУ)
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
Химия ‒ древнейшая наука о строении, свойствах веществ и их химических превращениях. За многовековой период в теоретической и прикладной химии накоплен громаднейший информационный потенциал в виде несистематизированных и необработанных надлежащим образом сведений о физико-химических свойствах (ФХС) неорганических и органических веществ. Сегодняшние исследователи в области химии и химики-технологи, имеющие возможность использовать мощь современных компьютерных систем, все еще вынуждены пользоваться информацией, представленной в многотомных справочниках в виде таблиц, номограмм и графических зависимостей.

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

Задача интерполяции данных состоит в построении такой функции, чтобы в узлах сетки эта интерполирующая функция принимала заданные значения из таблицы, а в других точках – по возможности приемлемые значения. Если значения функции в таблице вычислены точно, то можно надеяться, что сформулированные задачи имеют разумные решения. Этот круг задач носит название интерполирование функции. Интерполяция – способ обработки экспериментальных данных, предложенный еще в 18 веке Ньютоном и Лагранжем. С интерполяцией тесно связанны процедуры интегрирования и дифференцирования табличных функций, вычисление значений табличных функций вне сетки и т.д.

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

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

Пусть значения некоторой функции f(x) образуют следующую таблицу:

Таблица 1

x

x1

x2

xn

f(x)

y1

y2

yn

Требуется получить значение функции f(x) для значения аргумента xx1,xn, несовпадающего ни с одним из значений хi (i = 1,2,..,n).

Совокупность значений независимой переменной {x1, x2, …, xn} называют сеткой, на которой задана функция, отдельные значения независимой переменной называют узлами сетки. Обычно предполагается, что узлы упорядочены по возрастанию:

x1< x2< … < xn.

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

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

Классический подход к решению задачи построения приближающей функции основан на требовании строгого совпадения значений функций f(x) и F(x) в точках

f(xi) = F(xi) = yi . (1)

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

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

Будем искать интерполирующую функцию F(x) в виде многочлена степени m:

(2)

Старшая степень переменной x определяет степень полинома. Очевидно, что полином степени m полностью определяется m+1 параметром ai. Поэтому для интерполяции функции, заданной в n узлах можно использовать полином степени m = n – 1.

Условия (1), наложенные на многочлен, позволяют однозначно определить его коэффициенты. Действительно, требуя для выполнения условий (1), получаем линейную систему, состоящую из n уравнений:

. (3)

Решив систему (3) относительно неизвестных , находим значения этих неизвестных и, подставив в (2), определяем аналитическое выражение интерполирующей функции F(x).

Система (3) всегда имеет единственное решение, т. к. ее определитель

,

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

Следовательно, интерполяционный многочлен существует и единственен.

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

Пусть известны значения зависимой переменной y от x в четырех точках:

х

1

2

3

4

у

5

1

4

3

Требуетсяинтерполировать заданную табличную зависимость кубическим многочленом Р3(x) =A.х3+B.х2.х+D.

Если эти табличные значения изобразить на координатной плоскости, то, соединив их отрезками прямых, получим ломаную 1-2-3-4. Необходимо интерполировать эту табличную зависимость многочленом 3-й степени

,

т.е. найти такие коэффициенты A,B,C,D чтобы график многочлена прошел через заданные точки.

Эти коэффициенты можно найти из решения системы

Р3(xi) = yi, (i=1,2,3,4)

или

(4)

В матричной форме эта система в общем виде для заданной таблицы будет иметь вид Х*K=Y:

Матричный способ решения системы линейных уравнений (СЛАУ) достаточно прост. Обе части матричного равенства Х*K=Y умножим слева на обратную матрицу Х-1. Получим Х-1 *X*K = X -1 *Y. Т.к. Х-1 *X =E, где E – единичная матрица (диагональная матрица, у которой по главной диагонали расположены единицы). Тогда решение системы запишется в следующем виде K= X -1 *Y. Т.е. для решения системы, вычисления вектора-столбца K, необходимо найти для матрицы X обратную X -1 и умножить ее справа на вектор-столбец Y свободных членов.

Решим систему (4) с помощью электронных таблиц MS Excel. Задав матрицы Х и Y (смотри рабочий лист Excel), воспользуемся функциями Excel. Выделим диапазон A12:D15, вызовем функцию =МОБР(A6:D9). Нажмем клавиши CTRL+SHIFT+ENTER и найдем обратную матрицу.

Далее выделим диапазон F12:F15 и введем формулу =МУМНОЖ(A11:D14;F6:F9). Нажмите клавиши CTRL+SHIFT+ENTER.

Решив эту систему, получим искомый многочлен

Приведем пример решения рассматриваемой задачи с помощью пакета Mathcad.

Просмотров работы: 569