Цветков И. В. - Применение численных методов для моделирования процессов в плазме (2007)
.pdfЛинейная интерполяция (m=2): |
|
|
|
|
||||||
P |
(x) = y |
x − xi2 |
+ y |
x − xi1 |
. Узлы |
x |
, x |
могут выбираться |
||
|
|
|||||||||
2 |
i1 x |
− x |
i2 |
x |
− x |
|
i1 |
i2 |
|
|
|
|
i1 |
i2 |
|
i2 |
i1 |
|
|
|
|
двумя способами. Первый – берутся узлы, ближайшие к x из набора x0 ,.., xn . По второму способу, если x [x0 ; xn ] , то xi1, xi2 − ближайшие к x слева и справа, если
два узла.
Квадратичная интерполяция (m=3):
P (x) = y |
(x − xi2 )(x − xi3 ) |
|
|
+ y |
|
(x − xi1 )(x − xi3 ) |
|
+ |
||||||||||
|
|
) |
|
) |
||||||||||||||
3 |
i1 (x |
− x |
)(x |
− x |
i2 (x |
|
− x |
)(x |
− x |
|
||||||||
|
|
i1 |
i2 |
|
i1 |
|
i2 |
|
|
|
|
i2 |
i1 |
i2 |
i3 |
|
|
|
|
|
|
+yi3 |
(x − xi1 )(x − xi2 ) |
|
. |
|
|
|
|
||||||||
|
|
|
(x |
|
− x |
|
)(x |
− x |
) |
|
|
|
|
|||||
|
|
|
|
|
i3 |
i1 |
|
i3 |
|
i2 |
|
|
|
|
|
|
Узлы xi1, xi2 , xi3 могут выбираться также двумя способами. По первому способу – ближайшие три узла к x . По второму способу, если
x [ |
x1 + x2 |
; |
xn−1 + xn |
] , |
то берутся |
ближайшие, удовлетворяющие |
||||||||
|
2 |
|||||||||||||
2 |
|
|
|
|
|
|
x1 + x2 |
|
xn−1 + xn |
|
||||
условию |
x [ |
xi1 + xi2 |
; |
xi2 + xi3 |
], |
если x [ |
; |
] , то |
||||||
|
|
|||||||||||||
|
|
|
2 |
|
|
2 |
|
2 |
|
2 |
|
просто ближайшие.
Если узлы располагаются равномерно, то чаще используется интерполяционный многочлен Ньютона.
Интерполяционный многочлен Ньютона
Для интерполяции используются конечные разности значений функции yi в узлах интерполирования. Интерполирующая функция имеет вид:
y(x) = y |
|
+ |
x − xi |
( y |
|
− y |
) + |
(x − xi )(x − xi+1 ) |
|
yi+2 − 2 yi+1 + yi |
+... |
|
|
|
2! |
|
|||||||
|
i |
|
h |
i+1 |
i |
|
|
h2 |
|
(x − x )(x − x |
|
)..(x − x ) |
k |
|
m |
m |
|
|
|
i |
i+1 |
n |
∑ |
|
|
|||
+ |
|
|
|
|
(−1) |
|
Ck |
yk −m , |
|
|
n!h |
n |
|
|
|||||
|
|
|
|
m=0 |
|
|
|
|
|
|
|
|
|
81 |
|
|
|
|
|
где h = xi+1 − xi . Интерполяционный многочлен Ньютона 2-го по-
рядка имеет вид: |
|
|
|
|
|
|
|
||||
y(x) = y |
|
+ |
x − xi |
( y |
|
− y |
) + |
(x − xi )(x − xi+1 ) |
|
yi+2 − 2 yi+1 + yi |
, |
|
|
|
2! |
h2 |
|||||||
|
i |
|
h |
i+1 |
i |
|
|
|
где три узла выбираются ближайшими к x .
Приложение 2
Аппроксимация методом наименьших квадратов
При интерполяции интерполирующая функция в точках интерполирования принимает заданные значения. Но это не всегда оправдано, например, если эти значения были получены экспериментально и имеют большой случайный разброс вследствие погрешности измерений. Поэтому возникает так называемая «задача сглаживания» функциональной зависимости. Пусть даны n+1 пары значе-
ний (x0 , y0 ), (x1, y1 ),..., (xn , yn ) . Будем искать аппроксимирующую
функцию в виде многочлена степени m < n:
m
f (x) = a0 +a1x +a2 x2 +.. + am xm = ∑ak xk .
k =0
Коэффициенты ak определяем из условия, чтобы сумма квадратов разностей значений аппроксимирующей функции в точках xi и
|
|
n |
|
|
значений |
yi была минимальной: ∑( yi − f (xi ))2 −min . Таким об- |
|||
|
|
i=0 |
|
|
разом, |
необходимо |
искать |
минимум |
функции |
m
S = ∑( yi −a0 −a1x −a2 x2 −... −am xm )2 , рассматривая эту функ-
i=0
цию как функцию коэффициентов ai . Для этого возьмем частные
производные и приравняем их к нулю. Получим систему m+1 уравнения:
m
−2∑( yi −a0 −a1x −a2 x2 −... −am xm )xik = 0 ,
i=0
82
где k = 0,1,..., m . Эту систему можно переписать в виде:
n |
n |
|
|
n |
|
|
|
n |
n |
a0 ∑xik + a1 ∑xik +1 + a2 ∑xik +2 +... + am ∑xik +m = ∑yi xik . |
|||||||||
i=0 |
i=0 |
|
|
i=0 |
|
|
|
i=0 |
i=0 |
|
|
n |
|
|
n |
|
|
|
|
Сделаем замену |
pk = ∑xik , |
vk = ∑yi xik |
, тогда система примет вид: |
||||||
|
|
i=0 |
|
|
i=0 |
|
|
|
|
|
p0a0 + p1a1 +... + pmam = v0 ; |
|
|||||||
|
p a |
+ p a +... + p |
a |
= v ; |
|
||||
|
|
1 0 |
2 |
1 |
m+1 m |
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
. |
|
|
|
|
|
|
|
|
|
. |
|
|
|
|
|
|
|
|
|
|
|
+ p |
a |
+... + p |
a |
|
= v . |
|
|
p a |
|
|||||||
|
|
m 0 |
m+1 1 |
|
2m m |
|
m |
Это система m+1 линейных уравнений относительно неизвестных a0 , a1,..., am , численные методы решения которой рассмотрены выше. Разберем на примере аппроксимации некоторых значений степенной функцией f (t) = a tb . Перейдем к многочлену первой степени, так как необходимо найти два коэффициента a,b:
g(x) = ln f = ln a +b ln t = a0 + a1x ,
где a0 = ln a, a1 = v, x = ln t . Система для определения коэффициентов a0 , a1 имеет вид:
|
n |
n |
n a0 +∑xi a1 = ∑gi ; |
||
|
i=0 |
i=0 |
n |
n |
n |
∑xi a0 +∑xi2 |
a1 = ∑gi xi . |
|
|
i=0 |
i=0 |
i=0 |
Решая систему, получаем:
|
n |
n |
n |
|
n |
n |
|
∑gi ∑xi −n ∑gi xi |
|
∑gi −∑xi a1 |
|||
a = |
i=0 |
i=0 |
i=0 |
, a = i=0 |
i=0 |
|
1 |
|
n |
n |
0 |
|
n |
|
|
(∑xi )2 −n ∑xi2 |
|
|
||
|
|
i=0 |
i=0 |
|
|
|
и искомые коэффициенты b = a1, a = exp(a0 ) .
83
Игорь Владимирович Цветков
ПРИМЕНЕНИЕ ЧИСЛЕННЫХ МЕТОДОВ ДЛЯ МОДЕЛИРОВАНИЯ ПРОЦЕССОВ В ПЛАЗМЕ
Учебное пособие
Редактор Н.В. Шумакова
Подписано в печать 22.10.2007. Формат 60x80 1/16
Печ.л. 5.25. Уч.-изд.л. 5,25. Изд.№ 4/18
Тираж 200 экз. Заказ
Московский инженерно-физический институт (государственный университет), 115409, Москва, Каширское ш. 31
Типография издательства «Тровант», г. Троицк Московской обл.