Линейная интерполяция функций многих переменных
Рассмотрен случай линейной интерполяции функций многих переменных и приведены примеры компьютерных расчетов. Изложен алгоритм решения частного случая указанной задачи полиномами первой степени....
Gespeichert in:
Datum: | 2010 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | Russian |
Veröffentlicht: |
Інститут кібернетики ім. В.М. Глушкова НАН України
2010
|
Schriftenreihe: | Компьютерная математика |
Schlagworte: | |
Online Zugang: | http://dspace.nbuv.gov.ua/handle/123456789/84590 |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Назва журналу: | Digital Library of Periodicals of National Academy of Sciences of Ukraine |
Zitieren: | Линейная интерполяция функций многих переменных / Е.В. Назаренко, Т.М. Фесун // Компьютерная математика: сб. науч. тр. — 2010. — № 2. — С. 91-95. — Бібліогр.: 6 назв. — рос. |
Institution
Digital Library of Periodicals of National Academy of Sciences of Ukraineid |
irk-123456789-84590 |
---|---|
record_format |
dspace |
spelling |
irk-123456789-845902015-07-11T03:01:51Z Линейная интерполяция функций многих переменных Назаренко, Е.В. Фесун, Т.М. Вычислительный эксперимент Рассмотрен случай линейной интерполяции функций многих переменных и приведены примеры компьютерных расчетов. Изложен алгоритм решения частного случая указанной задачи полиномами первой степени. Розглянуто випадок лінійної інтерполяції функцій багатьох змінних та наведено приклади комп’ютерних розрахунків. Викладено алгоритм розв’язування часткового випадку вказаної задачі поліномами першої степені. A case of linear interpolation of multivariable functions is presented. Examples of computations are given. An algorithm solving a special case of the problem using linear polynomials is described. 2010 Article Линейная интерполяция функций многих переменных / Е.В. Назаренко, Т.М. Фесун // Компьютерная математика: сб. науч. тр. — 2010. — № 2. — С. 91-95. — Бібліогр.: 6 назв. — рос. ХХХХ-0003 http://dspace.nbuv.gov.ua/handle/123456789/84590 680.3.06 ru Компьютерная математика Інститут кібернетики ім. В.М. Глушкова НАН України |
institution |
Digital Library of Periodicals of National Academy of Sciences of Ukraine |
collection |
DSpace DC |
language |
Russian |
topic |
Вычислительный эксперимент Вычислительный эксперимент |
spellingShingle |
Вычислительный эксперимент Вычислительный эксперимент Назаренко, Е.В. Фесун, Т.М. Линейная интерполяция функций многих переменных Компьютерная математика |
description |
Рассмотрен случай линейной интерполяции функций многих переменных и приведены примеры компьютерных расчетов. Изложен алгоритм решения частного случая указанной задачи полиномами первой степени. |
format |
Article |
author |
Назаренко, Е.В. Фесун, Т.М. |
author_facet |
Назаренко, Е.В. Фесун, Т.М. |
author_sort |
Назаренко, Е.В. |
title |
Линейная интерполяция функций многих переменных |
title_short |
Линейная интерполяция функций многих переменных |
title_full |
Линейная интерполяция функций многих переменных |
title_fullStr |
Линейная интерполяция функций многих переменных |
title_full_unstemmed |
Линейная интерполяция функций многих переменных |
title_sort |
линейная интерполяция функций многих переменных |
publisher |
Інститут кібернетики ім. В.М. Глушкова НАН України |
publishDate |
2010 |
topic_facet |
Вычислительный эксперимент |
url |
http://dspace.nbuv.gov.ua/handle/123456789/84590 |
citation_txt |
Линейная интерполяция функций многих переменных / Е.В. Назаренко, Т.М. Фесун // Компьютерная математика: сб. науч. тр. — 2010. — № 2. — С. 91-95. — Бібліогр.: 6 назв. — рос. |
series |
Компьютерная математика |
work_keys_str_mv |
AT nazarenkoev linejnaâinterpolâciâfunkcijmnogihperemennyh AT fesuntm linejnaâinterpolâciâfunkcijmnogihperemennyh |
first_indexed |
2025-07-06T11:39:33Z |
last_indexed |
2025-07-06T11:39:33Z |
_version_ |
1836897506077704192 |
fulltext |
Компьютерная математика. 2010, № 2 91
Рассмотрен случай линейной ин-
терполяции функций многих пе-
ременных и приведены примеры
компьютерных расчетов. Изло-
жен алгоритм решения частного
случая указанной задачи полино-
мами первой степени.
_____________________________
© Е.В. Назаренко, Т.М. Фесун,
2010
ÓÄÊ 680.3.06
Å.Â. ÍÀÇÀÐÅÍÊÎ, Ò.Ì. ÔÅÑÓÍ
ЛÈÍÅÉÍÀß ÈÍÒÅÐÏÎËßÖÈß
ÔÓÍÊÖÈÉ ÌÍÎÃÈÕ ÏÅÐÅÌÅÍÍÛÕ
Введение. Задача приближения функций
возникает, когда исходная функция задана в
дискретных точках исследуемого диапазона
(это могут быть, например, замеры некото-
рой физической величины в определенные
моменты времени), при этом необходимо
вычислить значение функции в точках, от-
личных от заданных. Необходимость замены
дискретного представления функции обу-
словлена тем, что во многих задачах, напри-
мер, математического моделирования, требу-
ется наличие аналитических выражений, ха-
рактеризующих поведение функции. Кроме
этого, наличие аналитического выражения
позволяет при необходимости получать до-
полнительные значения функции в точках, не
охваченных измерениями.
Для решения проблемы приближенного
представления функции существуют три
способа приближения, а именно, равномер-
ное, среднеквадратичное и интерполяцион-
ное. Равномерное или наилучшее чебышев-
ское приближение функции f(x) функциона-
лом φ(x) обеспечивает выполнение неравен-
ства |f(x) – φ(x)| < ε на всем интервале при-
ближения. Мерой близости при среднеквад-
ратичном приближении является величина
( ) ( ) ( )( )∑
=
ϕ−=δ
n
i
iii xxfxp
1
2 ,
где ( )p x – заданная неотрицательная функ-
ция (вес). Способ интерполяции состоит в по-
строении для заданных значений функции f(x)
и точек X такой приближающей функции φ(x),
что для каждой точки Xx ∈∗ требуется сов-
падение значений этой функции и заданной;
тогда точки ∗x – суть узлы интерполяции.
Е.В. НАЗАРЕНКО, Т.М. ФЕСУН
92 Компьютерная математика. 2010, № 2
В отличие от способа равномерного приближения, среднеквадратичный и
интерполяционный способы гарантируют близость значений приближающей и
приближаемой функций лишь на некотором конечном наборе точек, при этом
между этими точками они могут сильно отличаться.
Несмотря на указанные недостатки этих способов, в силу простоты их реа-
лизации, они широко используются на практике в инженерных расчетах.
Далее рассмотрен случай линейной интерполяции функции многих пере-
менных и приведены примеры компьютерных расчетов.
Постановка задачи. Выберем в пространстве R действительных функций,
определенных на [a, b], конечную или счетную совокупность { }iϕ его элемен-
тов, причем будем предполагать, что любая конечная система этих элементов
линейно независима. Возьмем первые n+1 элементов { }iϕ и образуем всевоз-
можные линейные комбинации nnϕα++ϕα+ϕα …1100 с действительными ко-
эффициентами iα . Они образуют линейное множество, которое обозначим через
nR , RRn ⊂ . Выберем также некоторую конечную совокупность точек
( )jixxxxx jim ≠≠ ,,,, 10 … , принадлежащих [a, b]. Произвольной функции Rf ∈
требуется поставить в соответствие функцию ,nRϕ∈ такую, чтобы
( ) ( ) , 0, .j jf x x j m= ϕ = [1].
Существует множество методов решения поставленной задачи, которые
описаны, например в [1–4]. Для решения задачи можно использовать интерпо-
ляционную формулу Ньютона с разделенными разностями. Разделенные разно-
сти нулевого порядка ( )ixf совпадают со значениями функции ( )ixf ; разности
1-го порядка определяются равенством ( ) ( ) ( )
,;
ij
ij
ji xx
xfxf
xxf
−
−
= разности 2-го
порядка – равенством ( ) ( ) ( )
,
;;
;;
ik
jikj
kji xx
xxfxxf
xxxf
−
−
= разности k-го порядка
определяются через разности (k–1)-го порядка по формуле
( ) ( ) ( )
.
;;;;
;;
11
112
11 xx
xxfxxf
xxf
k
kk
k −
−=
+
+
+
……
…
Многочлен
( ) ( ) ( )( ) ( )( ) ( )1111211 ;;; −−−++−+= nnn xxxxxxfxxxxfxfxL ……… (1)
называется многочленом Ньютона с разделенными разностями [5].
Для случая многих переменных задача линейной интерполяции сформули-
рована так. Пусть сетка NE n-мерного пространства задана значениями
)()(
2
)(
1 ,,, i
m
ii
i
xxx … по каждой переменной:
( ) ( ) ( ){ } ( ) ( ) ( ){ } ( ) ( ) ( ){ }n
m
nn
mmN n
xxxxxxxxxE ,,,,,,,,, 21
22
2
2
1
11
2
1
1 21
………… ×××= ,
а в узлах сетки заданы значения функции n переменных ( ) ( ) ( )( )nxxxf ,,, 21
… .
ЛИНЕЙНАЯ ИНТЕРПОЛЯЦИЯ ФУНКЦИЙ МНОГИХ ПЕРЕМЕННЫХ
Компьютерная математика. 2010, № 2 93
На сетке функцию f приближенно представим формулой, аналогичной (1) [6]:
( ) ( ) ( )( ) ( ) ( ) ( ) ( )( )1 2
1 1
1 2
1 2 1 1 1
0 0
0 0 0
, , , ; ; ; ; ; ;
n
n n
n
mm m
n n n n
n i i i i
i i i
L x x x f x x x x
= = =
= Ρ Ρ∑∑ ∑… … … … … … ,
( ) ( )( )
>−
=
=Ρ ∏
−
=
0,
0,1
1
0
ixx
i
i
k
j
k
j
j
i .
Ниже приведен алгоритм решения частного случая задачи линейной интер-
поляции функций многих переменных полиномами первой степени.
Алгоритм. Пусть известны значения функции ( ))()2()1( ,,, nxxxf … в точках
прямоугольной сетки NE n-мерного пространства и пусть задана некоторая точ-
ка ( ))()2()1( ,,, nξξξξ … в пределах сетки. Требуется построить для области прямо-
угольника сетки, содержащей данную точку ξ, линейную интерполяционную
функцию ( )(1) (2) ( ) ( )
0
1
, , ,
n
n i
i
i
f x x x p p x
=
= +∑… , которая совпадает с исходной в
узлах интерполяции, и найти ее значение в точке ξ [6].
Прямоугольник
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
1 1 2 2
1 1 2 2
1 1 1 1, , , , , 1,
n n i i
n n i i i
j j j j j j j jx x x x x x x x i n+ + + +
Π = × × × ≤ ξ < = …
сетки NE может быть разбит на n2 прямоугольников вида nk σ××σ×σ=Π …21 ,
где iσ равно либо ( ) ( ) ( )( )[ )2, 1
1 i
j
ii
ji iiji
xxx ++=σ , либо ( ) ( )( ) ( )[ )i
j
i
j
i
ji iii
xxx 11
2 ,2 +++=σ .
Пусть .
k∗ξ∈ Π Тогда в прямоугольнике *k
Π функцию f можно приближен-
но представить функцией
( ) ( ) ( )
1 1 2 2
(1) (2) ( ) (1) (2) ( ) ( ) ( )
1
, , , , , ,
n n i i
n
n n i i
j j j j
i
f x x x f x x x x x+θ +θ +θ +θ
=
= + − ×∑… …
( )
1 1 2 2 1 1 1 1
(1) (2) ( 1) ( ) ( ) ( 1) ( ) ( )
1 0
1
; ; ; ; ; ; ; ;
i i i i i i i i n n
n
i i i i n i
j j j j j j j i
i
f x x x x x x x p p x
− − + +
− +
+θ +θ +θ +θ + −θ +θ +θ
=
× = +∑… … , (2)
где ( )
1 1 1 1 1 1
(1) ( 1) ( ) ( ) ( 1) ( )
1; ; ; ; ; ; ; , 0
i i i i i i i i n n
i i i i n
i j j j j j jp f x x x x x x i
− − + +
− +
+θ +θ +θ + −θ +θ +θ= >… … ,
( )
1 1
(1) ( ) ( )
0
1
; ;
n n i i
n
n i
j j j i
i
p f x x x p+θ +θ +θ
=
= −∑… ,
( )
( )
1
2
0, если ,
1, если
i
i
i i
i
ξ ∈σθ =
ξ ∈σ
,
( )
1 1 2 2 1 1 1 1
(1) (2) ( 1) ( ) ( ) ( 1) ( )
1; ; ; ; ; ; ; ;
i i i i i i i i n n
i i i i n
j j j j j j jf x x x x x x x
− − + +
− +
+θ +θ +θ +θ + −θ +θ +θ =… …
( ) ( )
1 1 2 2 1 1 1 1 1 1 2 2
(1) (2) ( 1) ( ) ( 1) ( ) (1) (2) ( )
1
( ) ( )
1
, , , , , , , , , ,
.i i i i i i n n n n
i i i i
i i i n n
j j j j j j j j j
i i
j j
f x x x x x x f x x x
x x
− − + +
− +
+θ +θ +θ + −θ +θ +θ +θ +θ +θ
+ −θ +θ
−
=
−
… … …
(3)
Е.В. НАЗАРЕНКО, Т.М. ФЕСУН
94 Компьютерная математика. 2010, № 2
Программная реализация. Входные данные программы – массив сетки и
последовательность значений функции, заданные следующим образом:
( ) ( ) ( )
1
(1) (2) ( ) (1) (2) ( ) (1) (2) ( )
1 1 1 2 1 1 1 1, , , , , , , , , , , , ,n n n
mf x x x f x x x f x x x… … … …
( ) ( ) ( )
1
(1) (2) (3) ( ) (1) (2) (3) ( ) (1) (2) (3) ( )
1 2 1 1 2 2 1 1 2 1 1, , , , , , , , , , , , , , , , ,n n n
mf x x x x f x x x x f x x x x… … … … …
( ) ( )( ) ( )
1 2 1 2 3 1 1 2 3
1(1) (2) (3) ( ) (1) (2) (3) ( ) (1) (2) (3) ( )
1 1 1, , , , , , , , , , , , , , , , , , ,
n n
nn n n
m m m m m m m m m mf x x x x f x x x x x f x x x x
−
−
… … … … … …
где im – количество точек сетки по i-й координате.
Значение ( ))()2()1( ,,,
21
n
jjj n
xxxf … является
( ) ( )
1
1 2 1
2 1
, , , 1
n i
n i k
i k
N j j j j j m
−
= =
= + −∑ ∏… -м (4)
элементом последовательности [6], причем номер ( 1 2 1, , , ,lN j j j −…
)11, , ,l l nj j j+− … может быть вычислен через номер ( )njjjN ,,, 21 … по рекур-
рентной формуле
( ) ( )
1
1 2 1 1 1 2
1
, , , , 1, , , , ,
l
l l l n n k
k
N j j j j j j N j j j m
−
− +
=
− = − ∏… … … . (5)
Исходя из (4), имеем
( ) ( ) ( ) +−+−+=− ∏∑ ∏
−
=
−
=
−
=
+−
1
1
1
2
1
1
11121 21,,,1,,,,
l
k
kl
l
i
i
k
kinlll mjmjjjjjjjjN ……
( ) ( ) ( ) ( ) =−+−−+−+=−+ ∑ ∏∏∏∑ ∏∑ ∏
+=
−
=
−
=
−
=
−
=
−
=+=
−
=
n
li
i
k
ki
l
k
k
l
k
kl
l
i
i
k
ki
n
li
i
k
ki mjmmjmjjmj
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1111
= ( ) ( ) ∏∏∑ ∏
−
=
−
==
−
=
−=−−+
1
1
21
1
12
1
1
1 ,,1
l
k
kn
l
k
k
n
i
i
k
ki mjjjNmmjj … .
Аналогично имеем
( ) ( ) ∏
−
=
+− +=+
1
1
211121 ,,,,,1,,,,
l
k
knnlll mjjjNjjjjjjN ……… . (6)
Вычислив за n итераций по формуле (4) номер ( )njjjN ,,, 21 … , за n итераций
(учитывая, что ∏∏
−
==
=
1
11
l
k
kl
l
k
k mmm ) по формулам (5) и (6) получим номера осталь-
ных n узлов интерполяции. Имея номера узлов интерполяции и вычислив разде-
ленные разности по формуле (3), согласно (2) вычислим коэффициенты интер-
полирующей функции.
Задача в такой постановке реализована в виде C++-функции и входит в со-
став библиотеки many_var_interp.a для кластерного комплекса СКИТ.
Для иллюстрации работы программы рассмотрим следующий пример.
Пусть имеем решетку с постоянным шагом x∆ и y∆ по осям x и y соответствен-
но, в узлах которой заданы значения функции. Необходимо вычислить значения
функции в узлах решетки с шагом ∗∆ x и ∗∆ y , причем ∗∆=∆ xx k , а ∗∆=∆ yy t , k > 1
и t > 1 – целые числа. Для этого алгоритм, по которому вычисляется значение
функции только в одной точке, фактически работает многократно для получения
значений функции в выбранных точках. На рисунке изображены исходная
решетка и решетки, полученные из исходной с коэффициентами k = 2, t = 2
и k = 4 и t = 4.
ЛИНЕЙНАЯ ИНТЕРПОЛЯЦИЯ ФУНКЦИЙ МНОГИХ ПЕРЕМЕННЫХ
Компьютерная математика. 2010, № 2 95
РИСУНОК
Заключение. На практике используют способ интерполяционного прибли-
жения функции многих переменных при решении разного рода задач, например,
связанных с картографией. Отметим, что этот способ можно при необходимости
также использовать для частного случая увеличения количества значений сетки
начального задания функции с учетом погрешности вычислений.
Є.В. Назаренко, Т.М. Фесун
ЛІНІЙНА ІНТЕРПОЛЯЦІЯ ФУНКЦІЙ БАГАТЬОХ ЗМІННИХ
Розглянуто випадок лінійної інтерполяції функцій багатьох змінних та наведено приклади
комп’ютерних розрахунків. Викладено алгоритм розв’язування часткового випадку вказаної
задачі поліномами першої степені.
Ye.V. Nazarenko, T.M. Fesun
LINEAR INTERPOLATION OF MULTIVARIABLE FUNCTIONS
A case of linear interpolation of multivariable functions is presented. Examples of computations are
given. An algorithm solving a special case of the problem using linear polynomials is described.
1. Березин И.С., Жидков Н.П. Методы вычислений. – М.: – Государственное издательство
физико-математической литературы, 1959. – 464 с.
2. Стефенсен И.Ф. Теория интерполяции. – Л.: Главная редакция общетехнической литера-
туры и номографии, 1935. – 235 с.
3. Микеладзе Ш.Е. Численные методы математического анализа. – М.: Государственное
издательство технико-теоретической литературы, 1953. – 527 с.
4. Гончаров В.Л. Теория интерполирования и приближения функций. – М.: Государственное
издательство технико-теоретической литературы, 1954. – 327 с.
5. Бахвалов Н.С., Жидков Н.П., Кобельков Г.М. Численные методы. – Спб: Нев. Диалект,
2000. – 630 с.
6. Порханова А.А., Фесун Т.М. Линейное интерполирование функций многих переменных //
Материалы IV республ. науч. конф. молодых исследователей по системотехнике.– 1970. –
Т. 3. – С. 68 – 74.
Получено 02.12.2009
Îá àâòîðàõ:
Назаренко Евгений Владимирович,
младший научный сотрудник Института кибернетики имени В.М. Глушкова НАН Украины,
Фесун Татьяна Михайловна,
младший научный сотрудник Института кибернетики имени В.М. Глушкова НАН Украины.
|