Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Численные методы.doc
Скачиваний:
172
Добавлен:
07.11.2018
Размер:
1.08 Mб
Скачать

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

Пусть, как и в случае многочлена Лагранжа, известны n + 1 значений функции y = φ(x) y0, y1, …yn при n + 1 значениях аргумента x0, x1, …, xn. Причем разность между двумя соседними значениями постоянна и равна h. Таким образом, имеем таблицу значений неизвестной функции при соответствующих значениях аргумента.

x

x0

x1 = x0 + h

x2 = x0 + 2h

xn = x0 + n h

y

y0

y1

y2

yn

Составим многочлен P(x) )степени n такой, что P(x i) = yi. Этот многочлен будет приближенно представлять функцию y = φ(x).

Введем обозначения

Δy0 = y1 – y0, Δy1 = y2 – y1, Δy2 = y3 – y2, ….

Δ2y0 = Δy1 − Δy0 = y2 – 2y1 + y0, Δ2y1 = Δy2 – Δy1= y3 – 2y2 + y1, ….

Δ3y0 = Δ2y1 – Δ2y0 = y3 – 3 y2 + 3y1- y0, …

Δn y0 = Δn - 1y1 – Δn - 1y0

Напишем многочлен, принимающий значения y0 и у1 при х = х0 и х = х1 .

P1(x) = y0 +

Действительно, P1(x0) = y0, P1(x1) = y0 + Δy0 h/h = y0 + y1 – y0 = y1.

Напишем, далее многочлен, принимающий значения y0, y1, y2 при x0, x1, x2. Непосредственной проверкой доказывается, что это будет многочлен второй степени

Наконец, многочлен n – го порядка, принимающий значения y0, y1, …, yn при x0, x1, …, x n , будет иметь вид

Это и есть интерполяционная формула Ньютона. По существу многочлен Лагранжа и многочлен Ньютона тождественны,. но по-разному записаны. Во многих случаях многочлен Ньютона более удобен, чем многочлен Лагранжа. Особенность этого многочлена состоит в том, что при переходе от многочлена k – й степени к многочлену k + 1 – й степени первые k + 1 членов не изменяются, а только добавляется новый член, который обращается в нуль при предыдущих значениях аргумента.

Аппроксимация функций по методу наименьших квадратов.

Пусть на основании экспериментов получена зависимость функции y = φ(x), представленная в виде таблицы.

x

x1

x2

x n

y

y1

y2

yn

Задача состоит в аналитическом представлении функции

y = φ(x) 1)

Возможным вариантом решения является интерполирование с помощью многочлена Ньютона или Лагранжа. Однако, этот способ, требующий обязательного совладения табличных и теоретических значений функции не всегда удобен. При большом количестве узлов интерполяции потребует либо отыскания многочлена большой степени, либо другой «извилистой» функции, график которой проходил бы через все указанные точки. Поэтому рассматривается метод аппроксимации», т.е. приближенного представления искомой функции. Вид функции y = φ(x) устанавливается либо из теоретических соображений, либо на основании расположения на координатной плоскости точек, соответствующих экспериментальным данным. Например, если экспериментальные точки расположены так, как на рис.1, то функцию следует искать в виде y = a x + b, а на рис.2 в виде y = ax2 + bx + c.

y •

• •

х

x1 x2 x3 x4 …. xn

Рис. 1

у

• • •

• • • •

• • •

х

Рис. 2.

При выбранном виде функции

y = φ(x, a0, a1, a2, …a k )

следует подобрать параметры a0, a1, a2, …k так, чтобы эта функция в каком-то смысле наилучшим образом описывала рассматриваемый процесс. Наиболее распространенным методом решения данной задачи является метод наименьших квадратов. Этот метод заключается в следующем. Рассмотрим сумму квадратов разностей между экспериментальными значениями и теоретическими значениями функции y = φ(x, a, b, c, …) в соответствующих точках.

(2)

Подберем параметры a0, a1, a2, … так, чтобы эта сумма имела наименьшее значение. Таким образом, задача сведется к нахождению значений параметров a0, a1, a2, …, при которых сумма S(a0, a1, a2, …) имеет минимум.

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

(3)

Или в развернутом виде

(4)

Получили систему уравнений относительно a0, a1, a2, …. . Здесь столько уравнений, сколько неизвестных. В каждом отдельном случае исследуется вопрос о существовании решения этой системы и о существовании минимума функции y = φ(x, a0, a1, a2, …a k ) при найденных значениях a0, a1, a2, ….ak. В математическом анализе доказывается, что если в качестве аппроксимирующей функции y = φ(x, a0, a1, a2, …a k ) берется многочлен

y = φ(x, a0, a1, a2, …,a k ) = a0 xk+ a1xk−1 + a 2xk -2 + …+ a1x + ak, (5)

то решение a0, a1, a2, … системы (4) дает минимум функции y = φ(x, a0, a1, a2, …a k ).

Будем искать аппроксимирующую функцию в виде (5). Тогда система (4) примет вид

(6)

Раскрывая скобки, получим

(7)

………………………………………………………………….

Получаем систему линейных уравнений для определения неизвестных коэффициентов , a0, a1, a2, …an.. Из характера задачи следует, что система имеет единственное решение и что при полученных значениях параметров a0, a1, a2, …a k.

Запишем систему (7) в матричном виде AX = B. Здесь А – матрица системы (матрица, составленная из коэффициентов при неизвестных параметрах a0, a1, a2, …a k), Х – столбец неизвестных, В – столбец свободных членов.

B =

Решение системы (7) в матричном виде запишется X0 = A -1 B.

П р и м е р . Для функции, заданной таблично

x

2.0

2.2

2.4

2.6

2.8

3.0

y

0.3010

0.3424

0.3802

0.4150

0.4472

0.4771

подобрать многочлен второй степени y = a 0 x2 + a1 x + a 2, найдя значения параметров методом наименьших квадратов.

Имеем n =6, k = 2. Блок-схема программы имеет вид.

Ввод x(i),y(i), i = 0,n n – число точек, в которых даны

значения функции.

i = 0, k k – степень аппроксимирующего

многочлена

j =0, k

да

l = 1, n

A(i, j) = A(i, j) + x(l)^(i + j)

Вывод A(i, j )

i = 0, k

да

l1 = 1, n

B(i) = B(i) + y(l1)* x(l1)^(-i + k)

да

Вывод B(i)