Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Численные методы в задачах математического моделирования и исследования математических моделей объектов. Учебно-методическое пособие

.pdf
Скачиваний:
0
Добавлен:
15.08.2026
Размер:
928 Кб
Скачать

класса аппроксимирующих функций выбрать ту, для которой это «расстояние» минимально.

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

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

Однако вопрос о возможности сколь угодно точного приближения функции f (x) , зависящий от перечисленных выше «параметров», таких

как узлы xi , класс функций G(x) , критерий согласия f (x) и G(x) , в об-

щем случае остается открытым и подлежит исследованию для каждого конкретного аппроксимационного процесса.

Если приближение строится на заданном дискретном множестве точек xi 0n , то аппроксимация называется точечной. К ней относятся

интерполирование, среднеквадратичное приближение и др. При построении приближения на непрерывном множестве точек (например, на отрезке a, b ) аппроксимация называется непрерывной (или инте-

гральной).

Информация относительно аппроксимируемой функции

 

Постановка задачи интерполяции.

Пусть заданы точки x0 , x1,..., xn

и значения функции f (x) в этих точках

f (x0 ), f (x1),..., f (xn ) . Примером

такого задания может являться таблица:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x0

 

x1

 

 

 

xn

 

 

f (x0 )

 

f (x1)

 

 

 

f (xn )

 

 

Соответствие будем называть таблицей значений функции f (x) в

узлах x0 , x1,..., xn

и говорить, что функция f (x)

задана таблицей своих

значений

 

 

 

 

 

 

 

 

 

 

yi f (xi ) , 0 i n .

(3.1)

21

G(xi ) f (xi ) .

Класс аппроксимирующих функций

В качестве аппроксимирующей функции будем принимать многочлен некоторой степени n.

n

 

Gn (x) a0 a1 x a2 x2 ... an xn ak xk .

(3.2)

k 0

Выбор критерия согласия

Наибольший интерес представляет частный случай, когда для аппроксимирующей функции расстояние 0 . Это означает, что для табулирования функции y f (x) , заданной своими значениями (3.1), требуется построить аппроксимирующую функцию G(x) , совпадающую в узлах xi со значениями заданной функции y f (x) , т. е. такую, чтобы выполнялось условие G(xi ) yi .

Задача интерполяции состоит в построении функции G(x) , удовлетворяющей условию:

(3.3)

Другими словами, ставится задача о построении функции G(x) , график которой проходит через заданные точки xi , yi . Указанный способ приближения функций принято называть интерполяцией (или интерполированием), а точки с координатами xi , yi – узлами интерполяции.

Выбор функции G(x) неоднозначен, так как по заданной таблице

можно построить бесконечно много интерполирующих функций.

Для практики весьма важен случай аппроксимации функции многочленом (3.2). При этом коэффициенты ak будут подбираться так, чтобы достичь наименьшего отклонения многочлена от данной функции.

Экстраполяция

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

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

22

Алгебраическим интерполяционным многочленом Gn (x) назовем многочлен, определяемый формулой (3.2), степени не выше n, который

в узлах x0 , x1,..., xn принимает значения

f (x0 ), f (x1),..., f (xn ) ,

 

Gn (xi ) f (xi ) ,

0 i n .

(3.4)

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

Теорема 3.1. Существует единственный интерполяционный многочлен степени n, удовлетворяющий условиям (3.4).

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

Интерполяционный многочлен в форме Лагранжа

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

n

(x x0 )(x x1)...(x

xi 1)(x xi 1)...(x xn )

 

Ln (xi ) yi

.

(x

x )(x x )...(x

x

)(x x

)...(x x )

i 0

 

i

0 i 1

i

i 1

i i 1

i n

 

Если ввести в рассмотрение многочлен специального вида степени

n 1(x) (x x1)(x x2 )...(x xn ) ,

тогда многочлен Лагранжа можно записать в виде

n

n 1

(x)

 

Ln (xi ) yi

.

(x x )

(x )

i 0

 

i

n

i

 

(3.5)

(n 1)

(3.6)

(3.7)

В инженерной практике наиболее часто используется интерполяция первой ( n 1), второй ( n 2 ) и третьей ( n 3 ) степени (линейная, квадратичная и кубическая интерполяция).

Интерполяционный многочлен в форме Ньютона. Конечные разности

Пусть функция y f (x) задана таблицей своих значений. Величину yi yi 1 yi принято называть конечной разностью первого порядка функции y f (x) в точке xi (с шагом h). Конечная разность второго по-

рядка определяется формулой

2 y

y

y

. Аналогично определя-

 

i

i 1

i

 

ются конечные разности третьего и более высоких порядков. Общее определение конечной разности порядка k имеет вид:

k yi k 1 yi 1 k 1 yi , k 1 и 0 yi yi .

23

Наряду с многочленом Лагранжа для аппроксимации функций может использоваться многочлен Ньютона. Для интерполяции функ-

ции, заданной на таблице

с

постоянным

шагом h (т.е.

xi x0 i h ,

0 i n ), многочлен Ньютона можно записать в следующем виде:

 

 

 

 

y

 

2 y

3 y

2

 

 

 

P (x) P (x

i h) y

 

 

0

t

1 t(t 1)

 

t(t 1)(t 2)

...

 

 

 

 

n

n 0

0

 

1!

 

2!

3!

 

 

 

 

 

 

 

 

 

 

 

 

(3.8)

 

 

 

n y

 

 

 

 

 

 

 

 

 

 

n

t(t 1)(t 2)...(t n 1)

,

 

 

 

 

n!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

где t x x0 . h

Многочлен (3.8) называется интерполяционным многочленом Ньютона с конечными разностями для интерполяции вперед.

Если t x xn , то можно записать многочлен в виде интерполяци- h

онного многочлена Ньютона с конечными разностями для интерполяции назад:

 

P (x) P (x i h) y

 

 

y

n 1

t

2 y

n 2

t(t 1)

 

 

n

 

 

 

 

 

n

 

n n

 

 

1!

 

2!

 

 

 

 

 

 

 

 

 

 

 

(3.9)

 

3 y

 

 

 

 

n y

 

 

 

 

 

 

n 3

t(t 1)(t 2)

...

t(t 1)(t 2)...(t n 1).

 

 

0

3!

n!

 

 

 

 

 

 

 

 

 

 

Частные случаи полиномиальной интерполяции

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

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

xi

xi 1 xi h

yi f (xi )

yi 1 f (xi 1)

Первая интерполяционная формула Ньютона имеет вид

 

 

 

 

P y

t y ,

 

 

 

 

1 i

i

где t

x xi

, y y

y

– первая конечная разность в точке x .

 

 

h

i i 1

i

i

 

 

 

 

 

24

Итак, для получения приближенного значения функции y f (x) по формуле Ньютона достаточно к табличному значению yi прибавить

поправку, равную y (x x ) h 1 .

 

 

 

 

 

 

i

i

 

 

 

 

 

 

 

В случае квадратичной интерполяции используют три значения

функции

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xi 1

 

 

xi

 

 

 

 

 

xi 1

yi 1 f (xi 1)

 

 

yi f (xi )

 

 

 

yi 1 f (xi 1)

Вторая интерполяционная формула Ньютона имеет вид

P (x) y

t y

 

 

2 y

2 t(t 1) .

i 1

 

i

2

 

i 1

 

 

 

2!

 

 

 

 

 

 

 

 

 

 

 

Сравнение записей в форме Лагранжа и Ньютона

Для вычисления значения функции

f (x) в точке x , не являющей-

ся узлом интерполяции,

можно положить

f (x) G(x) , где G(x) пред-

ставляет Gn (x) или Pn (x) , или Ln (x) .

Пусть аппроксимирующая функция Gn (x) уже найдена, но для уточнения значений функции необходимо привлечь еще один узел xn 1 и значение функции f (xn 1) в нем. Тогда для вычисления Gn 1(x) с по-

мощью формулы Лагранжа (3.5) или (3.7) необходимо заново провести всю работу.

Для вычисления по формуле Ньютона (3.8) или (3.9) нужно до-

 

n 1 y

t(t 1)...(t n)

 

n 1 y

t(t 1)...(t n) .

считать только поправку

0

 

или

0

 

(n 1)!

(n 1)!

 

 

 

 

При этом сразу можно оценить величину этой поправки.

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

25

Сравнение форм Лагранжа и Ньютона для интерполяционного многочлена позволяет рекомендовать использование представления в форме Лагранжа:

а) во-первых, в теоретических исследованиях, например при изучении вопроса о сходимости Gn (x) к функции f (x) при n ;

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

Погрешность интерполяции

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

Оценить значение погрешности позволяет следующая теорема.

 

Теорема 3.2. Пусть функция f (x)

 

дифференцируема (n 1)

раз на

отрезке a, b , содержащем узлы интерполяции xi , 0 i n . Тогда

 

 

 

 

 

 

 

 

 

 

 

 

(x)

 

f

 

(n 1) ( )

 

 

 

(x) ,

 

[a, b] .

(3.10)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n 1

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

(n 1)!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Из формулы (3.10) следует оценка погрешности интерполяции

 

 

 

 

(x)

 

 

M (n 1)

 

 

(x)

 

,

 

M

 

 

max

 

f (n 1) (x)

 

.

(3.11)

 

 

 

 

 

 

 

 

 

 

 

 

 

n 1

 

 

 

 

 

 

n

 

 

 

 

 

 

 

(n 1)!

 

 

n 1

 

 

 

 

 

 

 

 

 

 

[a, b]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Погрешность интерполяции в точке

x a, b относительно пере-

менной t можно представить в виде

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(x)

 

f (x) P (x)

 

f (n 1) ( )

h(n 1)t (t 1)...(t n) ,

(3.12)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

(n 1)!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

где (кси) – некоторая точка, принадлежащая интервалу a, b .

 

 

 

 

 

 

 

 

 

Если M

n 1

max

f (n 1) (x)

, то оценка погрешности интерполяции в

 

 

 

 

 

[a, b]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

точке x a, b , имеет вид

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n (x)

 

 

 

M n 1

 

h

(n 1)

t (t

1)...(t n) .

(3.13)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(n

 

1)!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Интерполирование сплайнами

Информация относительно аппроксимируемой функции. Пусть

функция

f (x) определена на отрезке [a, b], который разбит точками

a x0 x1

... xn b на n частичных отрезков [xi 1, xi ], и задана табли-

цей своих значений yi f (xi ) , 1 i n .

26

Класс аппроксимирующих функций. Интерполяционным сплайном степени m называется функция Sm (x) , обладающая следующими свойствами:

1) на каждом из частичных отрезков [xi 1, xi ], (1 i n ) Sm (x) является многочленом степени m;

2) функция Sm (x) непрерывна на отрезке [a, b] вместе со всеми

своими производными до порядка m 1 включительно;

3) Sm (xi ) f (xi ) , (1 i n ).

Если m 2 , то для единственности Sm (x) следует задать еще m 1 условий, которые обычно задаются на концах отрезка [a, b] либо произвольно, либо из дополнительной информации о поведении функции f (x) .

Разность между степенью сплайна и наивысшим порядком непрерывной на отрезке [a, b] производной называется дефектом сплайна.

Если m 1, то имеем сплайн первой степени (метод ломаных) с дефектом, равным единице, так как непрерывна только сама функция (нулевая производная), а первая производная уже разрывная.

Наиболее широкое распространение на практике получили сплайны S3 (x) третьей степени (кубические сплайны) с дефектом, равным 1 или 2.

На каждом из отрезков [xi 1, xi ] полином S3 (x) является кубическим многочленом вида

S

(x) a

b

(x x ) c

(x x )2

d

(x x )3 ,

x

x x , 1 i n .

(3.14)

3

i

i

i

i

 

i

i

i

i 1

i

 

 

Выбор критерия согласия. Функция S3 (x) обладает следующими

свойствами:

 

 

 

 

 

 

 

 

 

 

1) функция S3 (x)

непрерывна вместе со своими производными до

второго порядка включительно;

 

 

 

 

 

 

2) в узлах сетки x

n

выполняются равенства

 

 

 

 

 

i

i 1

 

 

 

 

 

 

 

 

 

 

 

 

S3 (x) f (xi ) , 1 i n ;

 

(3.15)

 

3) S3 (x) удовлетворяет граничным условиям

 

 

 

 

 

 

S (a) S (b) 0 , 1 i n .

(3.16)

 

 

 

 

 

3

 

3

 

 

 

 

 

 

 

Метод наименьших квадратов

 

 

Информация относительно аппроксимируемой функции. Пусть

функция y f (x) задана таблицей приближенных значений

 

 

 

 

 

 

yi f (xi ) ,

1 i n .

 

 

(3.17)

27

Эти значения получены с ошибками i yi(0) yi , где yi0 f (xi ) .

2. Класс аппроксимирующих функций. В качестве аппроксимиру-

ющей функции будем принимать многочлен некоторой степени m:

m

 

Gm (x) a0 xm a1xm 1 ... am 1x am x ak xm k ,

(3.18)

k 0

где a0 , a1 ,…, am – параметры модели, являющиеся коэффициентами

многочлена Gm (x) .

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

Отказываясь от требования выполнения в точках точных равенств, следует все же стремиться к тому, чтобы в этих точках выполнялись соответствующие приближенные равенства Gm (xi ) yi . Из раз-

личных критериев, позволяющих выбрать параметры a0 , a1 ,…, am модели так, чтобы приближенные равенства Gm (xi ) yi удовлетворялись наилучшим в некотором смысле образом, наиболее часто используется критерий наименьших квадратов. Согласно этому критерию параметры a0 , a1 ,…, am выбираются так, чтобы минимизировать среднеквадратич-

m

ное уклонение многочлена Gm (x) ak xm k от заданных табличных

k 0

значений yi 1 i n .

Итак, задача метода наименьших квадратов состоит в следующем.

Требуется найти многочлен Gm (x) ,

для которого среднеквадратичное

 

m

 

уклонение функции Gm (x) ak xm k

от функции f (x) принимает ми-

 

k 0

 

n

n

 

нимальное значение i2

Gm (xi ) f (xi ) 2 min .

i 1

i 1

 

1. Если m n (степень аппроксимирующего многочлена не меньше числа наблюдений), то существует бесконечное множество много-

n

членов, для которых выполняется равенство i2 0 .

i 1

2. Если m n 1 (степень аппроксимирующего многочлена на

n

единицу меньше числа наблюдений), равенство i2 0 обеспечивает-

i 1

28

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

3. Если m n 1 (в дальнейшем рассматривается только этот слу-

n

чай), то i2 0 , при любых значениях коэффициентов многочлена

i 1

Gm (x) нужно так выбрать коэффициенты этого многочлена, чтобы ве-

n

личина i2 была минимальной.

i 1

Погрешность метода наименьших квадратов

Оценить значение погрешности метода наименьших квадратов позволяет следующая формула для среднеквадратичного уклонения:

 

 

 

1

 

n

2

1 2

 

 

 

Gm (x), y

 

 

Gm (xi ) f (xi )

.

(3.19)

 

 

n 1

 

 

 

i 1

 

 

 

 

В точке минимума функции δ каждая из ее частных производных

 

ak

обращается в нуль. Дифференцируя

и приравнивая к нулю

производные, получим так называемую нормальную систему метода наименьших квадратов. Эта система линейных алгебраических уравнений (СЛАУ) относительно неизвестных a0 , a1 ,…, am . Можно показать, что определитель этой системы отличен от нуля, т.е. решение системы существует и единственно. Однако на практике описанную методику применяют только для нахождения многочленов, степень которых не выше 4 5. При более высоких степенях нормальная система становится плохо обусловленной и погрешности определения коэффициентов велики.

Вопросы для самопроверки

1.Сформулируйте постановку задачи об аппроксимации функции.

2.Каковы основные вопросы численной реализации задачи об аппроксимации функции?

3.Сформулируйте постановку задачи интерполяции.

4.В чем заключается отличие интерполяции функции от экстраполяции?

5.Что такое интерполяционный многочлен?

6.От чего зависит интерполяционный многочлен Лагранжа?

7.От чего зависит погрешность интерполяционного многочлена Лагранжа?

29

8.В чем состоят свойства конечных разностей?

9.В чем заключается контроль таблицы конечных разностей?

10.В чем заключаются достоинства и недостатки записей в форме Лагранжа и Ньютона?

11.Что представляет собой график интерполяционного многочлена при значениях n 1 и n 2 ?

12.Какими формулами (Лагранжа или Ньютона) удобнее пользоваться в случае равноотстоящих узлов интерполяции и почему?

13.Сколько интерполяционных многочленов можно построить для одной функции и одной системы узлов интерполяции?

14.Почему погрешность интерполяции для интерполяционных многочленов Лагранжа и Ньютона оценивается с помощью одной и той же формулы?

15.В чем заключается задача интерполирования кубическими сплайнами?

16.В чем заключается задача приближения функции методом наименьших квадратов?

30

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]