Монотонная сплайн-интерполяция класса C2 на основе однопараметрических групп диффеоморфизмов

Бесплатный доступ

В работе обсуждаются вопросы построения сплайн-интерполянтов класса 𝐶2, сохраняющих монотонность исходных данных, с использованием однопараметрических групп диффеоморфизмов единичного отрезка [ 0, 1]. Выбор локальных интерполянтов в виде суперпозиций диффеоморфизмов, принадлежащих определенным однопараметрическим группам, гарантирует для строго монотонных данных сохранение монотонности получаемым интерполянтом. Как и в случае кубических сплайнов, для обеспечения повышенной (класса 𝐶2) гладкости интерполянта достаточно потребовать, чтобы выполнялись условия непрерывности второй производной интерполянта во внутренних узлах заданной сетки. В работе для интерполянтов рассматриваемого типа получен явный вид соответствующих уравнений и предложен способ их численного решения. При этом для одной разновидности таких интерполянтов уравнения оказываются нелинейными, но их можно легко решить методом Ньютона; другая же разновидность обсуждаемых интерполянтов вообще не требует решения каких-либо уравнений: достаточно вычислить требуемые значения пер- вой производной во внутренних узлах, используя метод среднего гармонического (HMM). Проведенные вычисли- тельные эксперименты подтвердили эффективность предложенного подхода.

Еще

Монотонная интерполяция, сплайны, однопараметрические группы, уравнение шрёдера

Короткий адрес: https://sciup.org/142212731

IDR: 142212731

Текст научной статьи Монотонная сплайн-интерполяция класса C2 на основе однопараметрических групп диффеоморфизмов

В теории сплайн-интерполяции задачи формосохраняющей (или изогеометрической [1, с. 8]) интерполяции, в которых от интерполянта требуется, чтобы он обладал некоторыми геометрическими свойствами (положительность, монотонность, выпуклость и другое), присущими интерполируемой функции, считаются в настоящее время изученными достаточно хорошо [2] . Рассмотрим, в частности, задачу монотонной интерполяции .

Предполагается, что на отрезке [а, 6] числовой прямой R заданы функция /: [а, 6] ^ R и сетка Л из конечного числа узлов Х г : а = Х 0 Х 1 < ... < Х ^ = b (так что указанный отрезок разбит на п отрезков разбиения [Х ^ , Х ^ +1 ], г = 0,..., п 1), причем значения У = /(Х ^ ) функции / в узлах сетки известны. Требуется найти интерполянт — такую сплайн-функцию F , которая принимает в узлах сетки те же значения [3, с. 347–350, 390–391, 485].

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

F t (x) = а г + 6 г Х г ) + с г Х ; ) 2 + й г (х — Х г ) 3 ;                     (1)

коэффициенты звеньев не произвольны, а подчинены условиям непрерывности низших производных сплайна F во внутренних узлах сетки. Если в роли интерполянта F выступает кубический сплайн дефекта 1 (такие сплайны являются дифференцируемыми функциями класса С2, а образуемое ими векторное пространство далее, как и в [4], мы обозначаем Pg\), то непрерывными должны быть его первая и вторая производные; задание (наряду с условиями F(Xi) = У) двух граничных условий, налагаемых на сплайн в точках а и Ь, позволяет однозначно найти искомый интерполянт [3, с. 390—393]. Интерполяция здесь является нелокальной: значения коэффициентов сплайна зависят от всех значений У [5, с. 32].

Для кубических сплайнов дефекта 2 (они являются дифференцируемыми функциями класса С 1 и образуют [4] векторное пространство P 3X2 ) естественной является задача эрмитовой интерполяции — когда в узлах заданы также значения У = / г ), а от интерполянта, кроме выполнения условий F г ) = Уг , требуют, чтобы значения его первой производной в узлах (называемые наклонами сплайна [3, с. 391]) были такими же: F г ) = У/. Здесь уже интерполяция носит локальный характер и может быть проведена для каждого отрезка разбиения независимо [5, с. 25–26].

Теперь предположим, что интерполируемая функция / либо строго возрастает на отрезке [а, Ь], либо строго убывает:

V i У г +1 Уг либо V i Уг+1 < Уг , (2) и надо обеспечить строгую монотонность интерполянта F ; это и есть задача монотонной интерполяции (точнее говоря, ее частный случай: строго монотонная интерполяция, когда все знаки неравенства являются строгими; как и в [4] , мы ограничиваемся здесь именно этим случаем).

Кубические сплайны обеспечивают сохранение формы далеко не всегда [1, с. 141–145, 151]. Заметим, что необходимые и достаточные условия монотонности для сплайнов из Р ^2 найдены Ф. Фричем и Р. Карлсоном в 1980 году (см. [6] ), а в работах В. Л. Мирошниченко 1984 и 1990 года (см. [7, 8] ) получены достаточные условия монотонности при интерполяции сплайнами из P3\; в 2001 году Ю. С. Волков получил, исходя из иного представления интерполяционного сплайна, другой вариант таких достаточных условий [9, 10] .

В этой ситуации были предложены различные подходы к решению возникшей проблемы. Фрич и Карлсон отказались от выполнения условий F г ) = У и предложили алгоритм локальной монотонной интерполяции класса С 1 кубическими сплайнами дефекта 2, в котором наклоны сплайна во внутренних узлах сетки выступают как свободные параметры, выбираемые так, чтобы обеспечить монотонность интерполянта. Развитием данного подхода стала интерполяция весовыми кубическими сплайнами [11] .

В основе другого направления исследований лежало обобщение конструкции кубических спланов, и на этом пути было предложено несколько типов обобщенных кубических сплайнов: рациональные, с дополнительными узлами, экспоненциальные, гиперболические и другие [12] . Наибольшее внимание привлекли рациональные сплайны, звенья которых — дроби с кубическим многочленом в числителе и многочленом 1-й или 2-й степени в знаменателе; здесь следует упомянуть работы [13 –15] , где рассматривались локальные схемы интерполяции и были построены сохраняющие монотонность эрмитовы ин-терполянты класса С 1 , и работы [ 16, 17] , где предложены нелокальные монотонные интерполянты класса С 2 (для их получения нужно — как и в случае кубических сплайнов дефекта 1 — решать систему линейных уравнений с трехдиагональной матрицей). Однако при интерполяции рациональными сплайнами возникает достаточно сложная проблема управления дополнительными свободными параметрами, характерными для такой интерполяции.

В статье [4] автором была предложена иная процедура эрмитовой сплайн-интерполяции класса С 1 , гарантирующая для строго монотонных данных строгую монотонность получаемого интерполянта. Здесь i-е звено искомого интерполянта F имеет вид

F (т) = У г + (У г +1 - У г ) F(s) , (3) где s = (т Х г )/(Х г +1 Х г ), а F — диффеоморфизм (заданной степени гладкости г) единичного отрезка I = [0, 1], сохраняющий ориентацию и являющийся суперпозицией диффеоморфизмов (функциональных сомножителей) из некоторых выбранных заранее однопараметрических групп.

′′

Выбор сомножителей должен обеспечить выполнение условий F г (0) = р г , F г (1) = д г (в задаче эрмитовой интерполяции р г = У//Д г и д г = У +1 / Д .^ , где Д г = (У +i —У г )/ г +1 —Х г )). В [4] предпочтение было отдано суперпозициям типа «сэндвича»:

̂︀

~

F i = F g . о F 7 i о F g . ,

̂︀

где F g . — функциональный квадратный корень из функции F g . (то есть функция F g . = F ^^ ), а F g . и F 7i элементы однопараметрических групп типа G a и G s соответственно, причем р г = ^ Р г /<1 г и

^ i = aJ p i q i — значения соответствующих параметров (мультипликативных). Для элементов групп типа G a и G s по определению имеют место соотношения

П (0) = г , F^ (1) = 1/Д,                                (5)

F ^ (0) = F ^ (1) = ^ i ,                                   (6)

откуда и следует выполнение условий F i (0) = p i , F i (1) = q i .

Автор хотел бы отметить, что его интерес к интерполяции сплайнами наметился в 1990-е годы и стимулировался прежде всего их применениями к задачам построения программного движения манипуляционных роботов (см. [18 –20] ). Идея построения локального монотонного интерполянта как «сэндвича» из диффеоморфизмов, принадлежащих определенным однопараметрическим группам, оформилась к 2000 году; тогда же было решено использовать группы G 1 a [4] она обозначалась G a ), G 1 s и G 2 s (чуть позднее функции из этих групп нашли применение при решении некоторых задач управления движением механических систем [21 –23] ). Но законченный вид описанная в [4] процедура эрмитовой сплайн-интерполяции класса С 1 обрела в апреле—мае 2017 года.

Настоящая же работа посвящена интерполяции класса С 2 сплайнами вида ( 3) ,( 4 ) и отражает результаты исследований, проведtнных в июле–августе 2017 года.

  • 2.    Выбор групп диффеоморфизмов

Итак, рассмотрим для строго монотонной функции / интерполяционный сплайн F вида ( 3 ),( 4 ), но уже не требуем, чтобы его наклоны во внутренних узлах сетки совпадали со значениями ¥‘. Будем использовать для наклонов данного сплайна обозначение m i (именно так обычно обозначают наклоны кубических сплайнов [5, с. 31]).

Тогда для производных локального интерполянта F i на концах отрезка I имеем: p i = m i /A i и q i = m i +i /A i . Элементы F k однопараметрических групп диффеоморфизмов этого отрезка, то есть функции вида у = F k (ж), где к — параметр группы (мы сейчас временно обозначаем их аргумент ж, а не s), являются [4, 24] решениями соответствующего уравнения Шрёдера

Ф(у) = к Ф(ж),                                         (7)

где Ф — функция Шрёдера (своя для каждой группы). На функцию Ф далее налагаем условия нормировки: Ф(0) = 0, Ф' (0) = 1 (нормированную таким образом функцию Шрёдера называют еще функцией Кёнигса [25, 26] ); в этом случае параметр к совпадает со значением производной функции F k при ж = 0.

Как уже отмечалось, среди однопараметрических групп диффеоморфизмов отрезка I в [4] выделялись группы типа G a и G s , элементы которых удовлетворяли соотношениям ( 5 ) и ( 6) соответственно. Однако приведенные в [4] конкретные примеры таких групп в действительности, как мы сейчас покажем, обладают более сильными свойствами симметрии.

Именно, наряду с группой Diff + ( I ) всех диффеоморфизмов единичного отрезка I , сохраняющих ориентацию, рассмотрим более широкую группу Diff т ( I ) диффеоморфизмов этого отрезка, включающую также и диффеоморфизмы, которые ориентацию не сохраняют. Простейшим примером последних служит функция l , определяемая равенством l (ж) = 1 ж. Очевидно, l о l = id, где id — тождественное отображение отрезка I на себя, то есть функция у = ж; отсюда следует, что l -1 = l .

Заменив в уравнении Шрёдера ( 7 ) функцию Ф функцией Ф о L и решив полученное уравнение, приходим к новой функции F ^ из Diff + ( I ), связанной с исходной функцией F k соотношением F k = l о F k о l -1 (по терминологии, принятой в общей алгебре, отображение I L , определяемое для элементов д группы Diff r ( I ) формулой I t (y) = l о д о l -1 , называется внутренним автоморфизмом данной группы, порожденным ее элементом l , а элемент I t (g) — элементом, сопряженным к элементу д [27, с. 444, 454]; для группы Diff + ( I ), впрочем, I L является внешним автоморфизмом). Будучи автоморфизмом, отображение I L удовлетворяет тождеству I L (g 1 од 2 ) = I t (g 1 ) о I t (g 2 ).

Таким образом, F k (ж) = 1 F k (1 ж), откуда получаем следующие соотношения:

F k ' ( ж ) = F k (1 ж ) ,      F k "( ж ) = Fk (1 ж ) .                          (8)

Теперь выпишем явные выражения для функций из групп G 1 a , G 1 s и G 2 s , указывая каждый раз вид соответствующей нормированной функции Шрёдера:

S is :

G 2s :

G a : F <*> = н/Ь

<ж <ж

, х         ж

Ф( ж ) = 1 - ж;

ж- 1 /

2    2 V (?ж(1 - ж)) 2 + (ж - 1 / 2 ) 2 + 7ж(1 - ж)

,

ж (1 - ж)

Ф = 12

;

F'(ж) = 2 + 2 ^

ж - '2

, - ж) + (ж - 1 / 2 ) 2

Ф(ж)

ж (1 - ж) (1 - 2ж) 2

здесь через /3 и 7 обозначены параметры групп.

Выполняя в каждом из этих трех случаях рассмотренный выше переход от функции Ф к функции Ф о L, убеждаемся, что для функций из данных групп справедливы тождества

Fp (ж) = Fp-(ж) = F 1/э (ж) и F° (ж) = F7 (ж);

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

Fp(ж) = 1 - Fi/p (1 -ж), а для функций из групп G1s и G2s имеет место такое свойство:

F7(ж) = 1 - F7(1-ж).

В дальнейшем условимся называть группой типа G a любую однопараметрическую группу сохраняющих ориентацию диффеоморфизмов отрезка I , элементы которой обладают свойством ( 13 ), а группой типа G s — соответственно любую однопараметрическую группу, для элементов которой выполняется свойство ( 14 ). Соотношения же ( 5 ) и ( 6 ) оказываются при этом простыми следствиями свойств ( 13 ) и ( 14 ).

Обозначим через M77 и M ^2 ^ множества интерполянтов вида ( 3 ),( 4) , которые являются дифференцируемыми функциями класса Ст и построены по сетке Д для всевозможных наборов данных У 0 ,..., Уф, удовлетворяющих условиям ( 2 ), при выборе групп S a и S is (соответственно, S a и S 2S ) в качестве конкретных реализаций групп типа S a и S s . В случаях, когда конкретное значение т несущественно или ясно из контекста, соответствующий индекс будем опускать.

На практике важна также быстрота вычисления значений сплайна F . Если в случае кубических и рациональных сплайнов для этого используются лишь четыре основные арифметические операции, то в случае интерполянтов из множеств М ^ и М -7 добавляется еще операция извлечения квадратного корня (не требуется вычислять значения трансцендентных функций, как, например, в случае тригонометрических сплайнов [28, 29] ).

Расчетные формулы остаются достаточно простыми. Приведем фрагмент программы на языке Си, в котором реализуется вычисление значений сплайна из множества М 17 для текущего значения аргумента ж. Имеем:

N = beta * s, u=N/(1.0+N-s);

P = u - 0.5, Q = gamma *u*(1.0-u);

v=0.5+0.5*P/( sqrt(Q*Q+P*P) + Q );

N = beta * v, w=N/(1.0+N-v);

y = Y[i] + ( Y[i+1] - Y[i] ) * w;

Здесь предполагается, что заранее рассчитанные значения параметров 3 = V A и 7 ^ уже считаны из соответствующих массивов и вычислено текущее значение s.

Для сплайна из множества М 72 оператор в третьей строке приведенного фрагмента следует заменить таким:

v=0.5+0.5*P/ sqrt(Q+P*P);

  • 3.    Соотношения непрерывности

Получим для интерполяционного сплайна F вида ( 3 ),( 4) соотношения, при выполнении которых данный сплайн будет на отрезке [а, Ь] дифференцируемой функцией класса С 2 . Если для кубических сплайнов такие соотношения можно получить, приравнивая в каждом внутреннем узле Х г выражения для вторых производных звеньев F г -1 и F [3, с. 392], то нам будет удобнее оперировать производными от логарифмов первых производных звеньев искомого монотонного интерполянта. Иными словами, рассмотрим функции, определяемые соотношениями ′′               ′

  • 8г(х) = Fк(х) /F' (х)    и     S^s) = F г (s) /F г (s).                   (15)

Поскольку

Fг (х) = Дг Fг (s) ,     Fг (х) = Дг Fг (s) / Кг, где Кг = Хг+1 — Хг, то получаем:

8 г (х) = 8 г (s) г .

Следовательно, условие 8 г- 1 г ) = 8 г г ) переходит в такое соотношение непрерывности:

8 г - 1 (1) К г = 8 г (0) К г - 1 .                                       (16)

Поделив обе части равенства ( 16 ) на К г г- 1 , получаем иную форму данного соотношения:

А г 8 г - 1 (1) = М г 8 г (0) ,                                         (17)

где

А = К г              =     К г - 1

К г + К г - 1 ,             К г + К г - 1

С учетом формулы ( 4 ) для локального интерполянта имеем:

ВД = FPi (х),    где х = F- (у) , х = FPi (s), откуда последовательно находим:

F г ( s ) = F ( х ) F - ( х ) F ( s ) ,

′′                 ′′ 2 2 ′                            ′ 2 ′                            ′′

F г ( s )   = F ( х ) F - (х) F ( s ) + IF ( х ) F 7 1 ( х ) F . ( s ) + F/3 . ( х ) F - ( х ) F ^ ( s ) ;

в результате имеем:

S"   = 8 . ( х ) F - г ( х ) F p % ( s ) + 8 - г ( х ) F p % ( s ) + 8 р г ( s ) .                     (19)

Для подстановки в соотношение непрерывности ( 17 ) нужны значения правой части равенства ( 19 ) в точках 0 и 1. Чтобы найти эти значения, не обязательно вычислять в явном виде значения всех фигурирующих в данном равенстве функций при произвольном значении аргумента, поскольку быстрее приводят к нужному результату следующие рассуждения.

Разложения по Маклорену нормированной функции Шрёдера и обратной к ней функции имеют вид:

Ф(х) = х + к X + ... и Ф 1 (z) = z к X + ... ,                 (20)

где к = Ф"(0)/2. Поэтому для решения F ^ уравнения Шрёдера ( 7 ) мы имеем:

F k (х) = Ф 1 (А' Ф(х)) = Ф - 1 ( кх + к к х 2 + . ..) = = (кх + к кх + .. .) к ( кх + к кх + .. .) 2 + ... =               (21)

= кх + к (1 к) кх 2 + ... ;

почленное дифференцирование разложения ( 21 ) дает:

F к (х) = к + 2 к к (1 к) х + ... ,      F к (х) = 2 к к (1 к) + ...

и, следовательно,

F к (0) = к,     F к (0) = 2 к к (1 к),      8 к (0) = 2 к (1 к).               (22)

Для получения соответствующих формул при значении аргумента, равном 1, перейдем к сопряженной функции F k и воспользуемся соотношениями ( 8) ,( 12) . В случае группы типа G a получим:

F g (1) = 1/3,     F g (1) = 2 к a (1 -/ 3 )/3 2 ,      S p (1) = 2 к a (1 - /3)//3,          (23)

а в случае группы типа G s будем иметь:

F I (1) = 7,     F ^ (1) = - 2 к s 7 (1 - 7),    S 7 (1) = - 2 к s (1 - 7)           (24)

(значения параметра κ для каждого из этих случаев мы различаем с помощью нижнего индекса).

Далее в качестве группы типа G a мы будем рассматривать группу G 1a (для которой к a = 1), а конкретный выбор группы типа G s пока отложим.

В силу ( 19 ) для значений S i (0) и S t (1), учитывая формулы ( 22) — ( 24 ), получаем:

ft (0) = 2(1 -ft ) - 7 •& + 2 к s (1 - 7) •& + 2(1-Д) =

= 27 ft - 27 ft + 2 к s (1 - 7) ft + 2 - 2 ft =

= 2 - 27 ft + 2(1 - 7 » )(к s - 1) ft ,

™ _ 2(1 - 3 t )     1   9 n          2(1-Д) _

St(1) =            • 7t •    - 2 кs(1 -7t) •    +             = ft          ft                   ft ft

= 27/ft - 27/ ft - 2 к s (1 - 7 t )/ A + 2/3 t - 2 =

= - 2 + 27/ft - 2(1 - 7 » )(к s - 1)/ Д

(здесь ft = V 3D-

Соотношение непрерывности ( 17 ) принимает вид:

A t (- 2 + 2 7 t - i /3 t - i - 2(1 - 7^ 1 ) ( к s - ft/ft - i ) = щ ( 2 - 2 7 t ft + 2(1 - 7 t ) ( к s - 1) ft) .    (2 5)

4. Уравнения для обратных наклонов

Если в случае кубических сплайнов класса С 2 соотношения непрерывности служат основой при получении системы уравнений для наклонов m t интерполяционного сплайна, то нам будет удобнее работать с обратными наклонами — величинами N t = 1/ | m t | (знак модуля здесь актуален для монотонно убывающих данных). После нахождения величин N t обратный переход к наклонам m t , разумеется, не составит труда.

Выразим отдельные величины и выражения, входящие в соотношения ( 25 ), через обратные наклоны N t . Имеем:

Pt = mt/|At| ,  qt = mi+i/|Ai|, ft = VPt/qt = Vmt/mt+i = Nt+/12 Nt-1/2 , ft = Vft = N^ Nt 1/4 ,  7t = VPt qt = Vmt mi+i/|Ai| = Nt+1/2 N 1/2/ |At |,

7 t - i /3 t - i = (N t - 1 / 2 N t Z 1 / 2 / | A t - i |) /(N t 1 / 2 N t Z 1 / 2) = N t - 1 / | A_i | ,

(︁

N t +1 / 2 N t 1 / 2 / | A t |)^ N t + / i2 N t 1 / 2) =N t - 1 / | A t | .

Теперь подставим все эти выражения в равенство ( 25) (не трогая пока множители 1 - 7 t- 1 и 1 - 7 t ), раскроем внешние скобки, соберем все слагаемые в одной части равенства и учтем, что A t + ^ t = 1:

2 - 2 A t N t - 1 / | A t - i | - 2 M t N t - 1 / | A t | + 2 A t (1 - 7 t - 1 )(к s - 1) N t - 1 / 4 N +

+ 2 M t (1 - 7 t )(к s - 1)N t + /4 N t- 1 / 4 = 0 .

Умножим обе части полученного равенства на N t /2:

N t - A t / | A t - i | - P t / | A t | + A t (1 - 7 t - i ) ( к s - 1) N t 3 / N t 1 +

+ p t (1 - 7 t )(к s - 1)N t +/4N t 3 / 4 = 0 ,  / = 1,...,n - 1.

Обсудим смысл отдельных слагаемых в уравнениях ( 26 ).

В литературе по эрмитовой сплайн-интерполяции описаны три основных метода приближенного вычисления наклонов m i интерполяционного сплайна для случая, когда значения Y i первой производной интерполируемой функции во внутренних узлах сетки недоступны: метод среднего арифметического (Arithmetic Mean Method, AMM), метод среднего геометрического (Geometric Mean Method,

GMM) и метод среднего гармонического (Harmonic Mean Method, HMM) [30] . Они сводятся к за-

мене наклонов mi величинами т0, где [15,29,30]: т0 = Ai Ai-x + —i Ai , (AMM) (27) т0 = A- x Ar, (GMM) (28) т0 = = Ai-x Ai / A* , (HMM) (29) а A* = (Y+x -Yi-x )/(Xi+x-Xi-x).

Методу HMM соответствует такое значение обратного наклона:

| A * |      = | (Y +x - Y i ) + (Y -Y - 1 ) |

| A i || A i - 1 |           ( h i + h i - 1 ) | A i || A i - 1 |

h i | A i | + h i - 1 | A i x |    A i          hi

(h i + н г - 1 ) | A i || A i- i | = i AZT i + j A “| ;

таким образом, 2-е и 3-е слагаемые в ( 26 ) можно интерпретировать как взятое со знаком «минус» значение обратного наклона, вычисленное методом HMM.

В [4] для сплайна из множества Mfp (или M^2)указан способ приближенного вычисления наклона в узле Xi, при котором этот наклон вычисляют как значение в данном узле производной от вспомогатель- ного интерполянта вида

Е^ж) = Y i - x + (Y i +x - Y i )Ер ( Г X i-x ) , \Xi +x - X i - x /

где Е р е G 1a , а параметр р задают выражением „ у (1 - ж)           _

Р =          , где ж ж (1-У)

X i - X i - 1

Y i - Y i - x

------------, У = ----------- X i +x - X i - x ’ У Y i +x -Y i - x

.

Действуя данным способом, находим:

E ) = А * Е р (ж) = А * (1 + рр - ж ) 2 ;

выполнив несложные преобразования, нетрудно убедиться, что E ( i ) (X i ) = A i- x A i / A * . Данное обстоятельство дает, кстати, прозрачную интерпретацию для метода HMM.

Обратимся теперь к 4-му и 5-му слагаемым в уравнениях ( 26 ). Заметим, что при достаточно густой сетке эти нелинейные слагаемые малы. В самом деле, разлагая Е (ж) и Е ' (ж) в точке ж = X i по Тейлору и полагая ж = X i +x , получаем:

Е (X i +x ) = Е (X i ) + Е ' (X i ) h i + Е '' (X i ) h 2 /2 + Е ''' (X i ) h 3 /6 + О (h ^    и

Е ' (X i +x ) = Е ' (X i ) + Е '' (X i ) h i + Е ''' (X i ) h 2 /2 + О (h0), откуда для параметров р и ^ i находим:

Р = 1 - Е ( X i ) hi + О (h 0 ) и = 1 + —(^ h + О (h 3 ). (33) Pi ' (X i ) i V i! 12Е ' (X i ) i V i! V 7

Из формул ( 33 ) следует, что при измельчении сетки p i ^ 1 и 7 i ^ 1, причем 7 i стремится к 1 значительно быстрее, чем p i . При этом 4-е и 5-е слагаемые в ( 26 ) за счет наличия в них множителей 1 - 7 i- x и 1 - 7 i быстро становятся малыми.

Данное обстоятельство позволяет применить для решения уравнений ( 26 ) метод простых итераций [3, с. 243–244] и сделать вывод о том, что решение этих нелинейных уравнений в случае густой сетки существует и единственно (впрочем, скорость сходимости метода простых итераций невелика, и на практике, как мы увидим позже, значительно лучшие результаты дает применение метода Ньютона). Вопрос же о разрешимости уравнений ( 26 ) при больших значениях шага сетки требует дальнейших исследований.

  • 5. Решение уравнений для обратных наклонов

Переходя к решению уравнений для обратных наклонов сплайна, конкретизируем выбор группы типа G s . Сначала рассмотрим случай группы G 2S , для которой к s = 3.

Подставим в уравнения ( 26 ) это значение параметра к s и выражения множителей 1 7 ^ - 1 и 1 7 ^ через обратные наклоны N t . Дополним систему соотношениями для обратных наклонов N 0 и N , (мы ограничиваемся случаем граничных условий I типа , когда заданы значения первой производной интерполируемой функции в узлах Х 0 и Х , и требуется, чтобы значения первой производной сплайна F в этих узлах были такими же: F 0 ) = У д , F ' л ) = У , [5, с. 31]); тогда система уравнений для обратных наклонов примет вид

N g 1 / | У | = 0 ,

N А г / | А^ 1 | — щ / | А г | + 2 А г Л\ 3 4 N^ t 2 А г N^4 N^4 / | А г- 1 | +

+ 2 щ Л\ 3 4 N + 2 щ Л . ' 4 a/V | А г | = 0 ,          i = 1,...,п — 1 ,

N , 1 / | У , | = 0 .

Данная система нелинейных уравнений допускает компактную запись в виде единого уравнения Ф (Х) = 0, где роль столбца Х играет набор значений No,..., N . Для ее решения будем использовать метод Ньютона [3, с. 249], расчетные формулы которого представим в форме:

Х к +1 = х к + P k ,    P k = Ф(Х к )\Ф к ),

где к — номер итерации, р к — вектор полного шага (разность значений Х на двух последовательных итерациях), Ф ' к ) — вычисленная для текущего значения Х к матрица Якоби (матрица из частных производных компонент вектор-функции Ф по компонентам ее аргумента), а обратной дробной чертой обозначена операция левого деления столбца на матрицу, то есть операция вычисления решения системы линейных алгебраических уравнений Ф к ) р к = Ф (Х к ).

В рассматривамом случае в качестве начальных приближений к решению системы ( 34 ) естественно при i = 1,..., п 1 использовать значения N 0 , вычисляемые по формуле ( 30) (для Ng и N , в силу ( 34) фактически известны точные значения), что мы и будем далее предполагать.

Для дважды непрерывно дифференцируемой функции Ф при условии невырожденности матрицы Якоби в окрестности точного решения метод Ньютона сходится весьма быстро (с квадратичной скоростью), но его сходимость носит локальный характер (требуется достаточная близость начального приближения к точному решению) [3, с. 250–251]. С целью обеспечить увеличение области сходимости метода Ньютона применяют различные его модификации, предусматривающие контроль нормы текущей невязки Ф (Х к ) и дробление полного шага, если на текущей итерации эта норма возрастает или жеубы-вает, но недостаточно быстро.

Изложим алгоритм к-й итерации применявшейся нами конкретной реализации одного из вариантов модификации метода Ньютона, предложенных в 1980 году О. П. Бурдаковым (см. [31] ); предполагаем, что заданы требуемая точность е решения уравнения Ф (Х) = 0 и априорная верхняя граница Н для величины шага. Алгоритм состоит из шести этапов:

  • 1)    вычислить р к = Ф (Х к ) \ Ф ' к );

  • 2)    (условие останова): если || р к ^ < е, то принять Х к + р к за искомое приближенное значение точного решения и завершить итерации метода;

  • 3)    положить р к = р к , если || р к || 6 Н , и р к = Нр к / || р к || в противном случае;

  • 4)    взять i = 0;

  • 5)    если || Ф (Х к + р> к /2 г ) || 6 (1 1/2 г +1 ) || Ф (Х к ) || , то перейти к следующему этапу, а иначе увеличить i на единицу и повторить данный этап;

  • 6)    принять за Х к +1 ту из рассмотренных точек Х к + р к /2 г , для которой значение нормы невязки является наименьшим, и перейти к следующей итерации.

Теперь заметим, что в рассматриваемом случае матрица Якоби является трехдиагональной и при i = 1,..., п 1 i-е уравнение системы Ф к ) р к = Ф (Х к ) имеет вид:

  • c i p k,i - 1 + a i p k,i + b i Р к,г +1         E k,i ,

где E kji г-я компонента невязки, вычисленной в точке X к (то есть значение левой части г-го уравнения системы ( 34 ) при текущих значениях обратных наклонов N i ), а c i = д Фк дХ^ 1 , a i = дФ i /9N i , b i = дФ i /дN i +1 . Явные выражения для этих коэффициентов таковы:

C i = A i N i 1 / 2 (N i 1 / 4 N i 1 - / 4 + N i - 1 / 4 N i - 1/4 / | A i - i | ) / 2N_ 1 , a i = 1 + ( 3A i N i 1 / 4 N i 1 / 14 - A i N i - 1 / 4 N i Z 1/4 / | A i - 1 | + 1 / 4 1 / 4             - 1 / 4 - 1 / 4                  1 / 2

  • + 3 ^ i N i    N i +1 - M i N i     N i +1 / | A i | )/ 2 N i    ,

  • 6.    Результаты вычислительных экспериментов

b i = M i N i 1 / 2 ( N i 1 / 4 n + + N i - 1 / 4 N i +1 / 4 / | A i | ) / 2N i +1 .

Мы уже отмечали, что для достаточно густой сетки нелинейные слагаемые в уравнениях для обратных наклонов малы. В этих условиях матрица коэффициентов системы Ф (X к ) р к = Ф (X k ) имеет выраженное диагональное преобладание. Отсюда следует [5, с. 60–62], что она заведомо невырождена, а для решения рассматриваемой системы можно эффективно использовать метод монотонной прогонки. После того, как обратные наклоны N i будут вычислены, можно по явным формулам найти и сами наклоны m i , и значения коэффициентов Д и ^ i , чем и завершается процесс построения интерполяционного сплайна из множества M ^22 .

Подчеркнем отличие таких сплайнов от сплайнов из пространства P3\. Для последних уравнения для наклонов являются линейными, и решение системы линейных уравнений с трехдиагональной матрицей коэффициентов выполняется один раз; в случае же сплайнов из множества M ^22 такую систему приходится решать несколько раз — в зависимости от того, насколько быстро для конкретных данных сходится метод Ньютона и каково значение параметра е.

Теперь рассмотрим случай группы G 1s . Для нее к s = 1; это означает, что в системе уравнений для обратных наклонов ( 26 ) 4-е и 5-е слагаемые обращаются в нуль, и непрерывность второй производной интерполяционного сплайна будет обеспечена, если в качестве обратных наклонов N i взять значения N 0 , вычисленные в соответствии с формулой ( 30) .

Таким образом, интерполяция сплайнами из множества M 1 Δ 1 2 вообще не требует решения систем линейных уравнений (автор должен признаться, что этот результат, полученный 26 августа — через несколько дней после завершения вычислительных экспериментов со сплайнами из множества M 1 Δ 2 2 , стал для него ошарашивающим!).

В то же время нужно отметить, что с этой разновидностью интерполяционных сплайнов не все обстоит вполне благополучно. Они действительно успешно решают задачу монотонной интерполяции класса С 2 ; однако расчет наклона т 0 по любой из формул ( 27 ) — ( 29) основан на использовании всего трех значений интерполируемой функции: Y i - 1 , У ^ , Y i +i (и представляет собой модификацию интерполяции кубическими многочленами Бесселя; известно, что порядок погрешности при такой интерполяции составляет O(h 3 ), где h — максимальный шаг сетки [32, с. 50]). Интерполяция же сплайнами из пространства P 3 Δ 1 обеспечивает для достаточно гладкой интерполируемой функции порядок погрешности O(h 4 ) [5, с.33].

Рассмотрим результаты ряда вычислительных экспериментов по интерполированию монотонных функций сплайнами из множеств M 1 Δ 1 2 и M 1 Δ 2 2 .

Пример 1. Как и в [4] , выполним интерполирование на отрезке [0, 1] функции у = е - Кх , где К = 4, при граничных условиях типа I (начнем с числа п отрезков разбиения, равного 1, и будем последовательно сгущать используемые сетки, каждый раз деля отрезки разбиения пополам). Для сравнения приведем также результаты эрмитовой интерполяции данной функции (взятые из [4] ) и результаты интерполяции кубическими сплайнами дефекта 1.

Отметим, что интерполянты из пространств P ^2 и P ^1 сохраняют монотонность исходной функции лишь при п> 1. Что касается точности приближения, то поведение норм погрешностей таково:

п

1

2

4

8

16

32

P 3Δ2

0.119

0.0165

0.00161

0.000127

0.00000899

0.000000597

M 1Δ11

0.072

0.0133

0.00204

0.000283

0.00003741

0.000004786

M 1Δ21

0.059

0.0082

0.00080

0.000064

0.00000449

0.000000298

P 3Δ1

0.119

0.0219

0.00200

0.000149

0.00000969

0.000000621

M 1Δ12

0.072

0.0485

0.01014

0.001658

0.00023705

0.000031712

M 1Δ22

0.059

0.0071

0.00076

0.000062

0.00000442

0.000000296

Обращает на себя внимание высокая точность приближения, получаемая при выборе группы G 2 s в качестве реализации группы типа G s .

Для оценивания скорости приближения вычислим для приведенных данных значения показателей затухания , введенных с этой целью К. Де Бором [32, с. 30] и определяемых так:

« rnn = (ln( H М) - ln( H е т|| )) / 1п(п/т) ,                         (37)

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

т, п

1,2

2, 4

4, 8

8, 16

16, 32

P 3Δ2

4.88

4.55

4.31

4.17

4.09

M 1Δ11

4.16

3.67

3.36

3.18

3.10

M 1Δ21

4.87

4.55

4.31

4.17

4.09

P 3Δ1

4.18

4.68

4.46

4.26

4.14

M 1Δ12

0.97

3.06

3.08

3.06

3.03

M 1Δ22

5.22

4.39

4.26

4.14

4.08

Для сплайнов из множества M f'l2 (а также для эрмитовых интерполянтов из множества M f'l 1 ) значения показателей затухания соответствуют погрешности O(h 3 ) (чего и следовало, как мы отмечали выше, ожидать), а для остальных интерполянтов — погрешности 0(^ 4 ).

Отметим также, что построение интерполянта из множества M ^22 при е = 10 - 14 (это значение, использовавшееся во всех представленных здесь вычислительных экспериментах, лишь на полтора десятичных порядка больше емаш — машинного эпсилон , служащего [3, с. 41—44] мерой относительной точности машинной арифметики; для чисел двойной точности в стандарте IEEE емаш « 2.22 10 - 16 ) потребовало 4 итераций метода Ньютона при п = 2, 4, 8 и 3 итераций при п = 16, 32.

Пример 2. Рассмотрим с целью тестирования алгоритмов монотонной интерполяции следующую функцию:

/ (ж) = 4ж 9 ж 7 + 4ж 3 2 + 3ж. (38)

Данная функция на отрезке [ 0, 1] монотонно возрастает от 0 до 4, принимая при ж = 1 / 2 значение 1 / 2 . Ее интерполирование кубическими сплайнами представляет определенные трудности в плане обеспечения монотонности интерполянта, поскольку ее первая производная на данном отрезке изменяется резко неравномерно: при ж = 0 она принимает «умеренное» значение, равное 3, при ж = 1 / 2 — весьма малое значение, равное 1 / 32 , а при ж =1 — «большое» значение, равное 32.

Вычислительные эксперименты по интерполированию данной функции показали, что при п = 1 и п = 2 интерполянты из пространств P3Δ2 и P3Δ1 не являются монотонными. На рисунках 1 и 2 представлены результаты интерполирования функции (38) при п = 2 сплайнами соответственно из пространства Р^ и из множества M ^22 (тонкая линия отвечает интерполируемой функции, более толстая — интерполянту).

Нормы погрешностей ведут себя так:

п

1

2

4

8

16

32

64

P 3Δ2

2.25

0.48

0.059

0.0052

0.00038

0.000026

0.00000168

M 1Δ11

0.91

1.31

0.105

0.0127

0.00159

0.000199

0.00002466

M 1Δ21

1.01

1.18

0.076

0.0061

0.00044

0.000030

0.00000193

P 3Δ1

2.25

0.65

0.079

0.0062

0.00042

0.000027

0.00000172

M 1Δ12

0.91

0.49

0.394

0.0644

0.00939

0.001267

0.00016284

M 1Δ22

1.01

0.26

0.198

0.0116

0.00040

0.000028

0.00000188

В данном случае интерполянты из множеств M 1 Δ 2 1 и M 1 Δ 2 2 практически не уступают по точности приближения интерполяционным кубическим сплайнам. Показатели затухания а ттг при этом принимают такие значения:

т, п

1,2

2, 4

4, 8

8, 16

16, 32

32, 64

P 3Δ2

- 3.79

- 4.11

- 4.15

- 4.10

- 4.06

- 4.03

M 1Δ11

0.90

- 4.94

- 3.60

- 3.27

- 3.13

- 3.08

M 1Δ21

0.40

- 5.37

- 4.29

- 4.13

- 4.07

- 4.04

P 3Δ1

- 3.06

- 4.13

- 4.33

- 4.23

- 4.13

- 4.07

M 1Δ12

- 1.55

- 0.42

- 3.08

- 3.03

- 3.02

- 3.03

M 1Δ22

- 3.36

- 0.53

- 4.82

- 5.30

- 3.99

- 4.00

Вновь для интерполянтов из множеств M 1 Δ 1 1 и M 1 Δ 1 2 значения показателей затухания соответствуют погрешности O(h 3 ), а для остальных интерполянтов — погрешности O(h 4 ). Построение интерполян-та из множества M 1 Δ 2 2 во всех случаях потребовало 5 итераций метода Ньютона.

Пример 3. Рассмотрим следующий набор данных, взятый из работы [16] :

Х г  1000  1250  1500  1920  1960  1980  1990  2000  2005  2011

Хг   0.31   0.40   0.50   1.86   3.02   4.44   5.27   6.06   6.45   7.02

Здесь представлены значения численности населения земного шара (млрд человек) с 1000 по 2011 год по оценкам Бюро переписи населения США (United States Census Bureau, USCB). Эти данные являются строго монотонными, и при их интерполировании естественно, как отмечается в [16] , потребовать строгой монотонности и от интерполянта.

На рисунке 3 видно, что интерполяционный сплайн из пространства Р-^, построенный для этих данных, монотонным не является.

В то же время (Рис. 4) интерполянт из множества M ^ 2 2 (его построение потребовало 5 итераций метода Ньютона) сохраняет монотонность. В обоих случаях для задания значений производных в узлах Х 0 и Х 9 использовалась линейная интерполяция по двум узлам (характер данных это допускает).

Рис. 3. Данные из [16] : интерполянт из P 3 Δ 1 Рис. 4. Данные из [16] : интерполянт из M 1 Δ 2 2

В работе [16] эти данные интерполировались рациональными сплайнами класса С 2 с двумя свободными параметрами, выбираемыми эмпирически. Построенные интерполянты также сохраняли монотонность данных, однако представленный на рисунке 4 график является более плавным; на приведенных же в [16] графиках интерполянтов на отрезке [Х 3 , Х 4 ] (то есть между 1920 и 1960 годом) заметна точка перегиба. Согласно [32, с. 229], точка перегиба на отрезке [Х г , Х г +1 ] — чужеродная , если величины 5 г = Д г Д г - 1 и 5 г +1 = Д г +1 Д г имеют одинаковый знак; в нашем же случае 5 3 « 0.026 и 5 4 « 0.042, так что упомянутая точка перегиба действительно является чужеродной.

Интерполирование этих же данных сплайнами из множества M 1 Δ 1 2 дало результат, мало отличающийся от представленного на рисунке 4. Максимальное различие между обоими интерполянтами на всем отрезке [Х 0 , Х 9 ] составляло менее 2 %.

Заметим также, что при построении интерполянтов из множества M 1 Δ 2 2 во всех выполненных вычислительных экспериментах метод Ньютона сходился без каких-либо осложнений, и на всех итерациях шаги метода были полными.

  • 7.    Заключение

В данной работе для сплайн-интерполянтов, построенных с использованием однопараметрических групп диффеоморфизмов единичного отрезка [0, 1] и сохраняющих при строго монотонных исходных данных свойство строгой монотонности, предложены способы обеспечения гладкости класса С 2 для получаемого интерполянта. Обсуждаются свойства интерполянтов предложенного вида. Приведены результаты ряда вычислительных экспериментов, подтвердивших эффективность предложенного подхода.

Список литературы Монотонная сплайн-интерполяция класса C2 на основе однопараметрических групп диффеоморфизмов

  • Квасов Б.И. Методы изогеометрической аппроксимации сплайнами. М.: Физматлит, 2006. 360 с
  • Богданов В.В., Волков Ю.С. Об условиях формосохранения при интерполяции параболическими сплайнами по Субботину//Труды Ин-та математики и механики УрО РАН. 2016. Т. 22. № 4. С. 102-113
  • Амосов А.А., Дубинский Ю.А., Копчёнова Н.В. Вычислительные методы. 3-е изд. М.: Издат. дом МЭИ, 2008. 672 с
  • Осадченко Н.В. Локальная монотонная интерполяция и однопараметрические группы//Пространство, время и фундаментальные взаимодействия. 2017. № 2. С. 60-73
  • Завьялов Ю.С., Леус В.А., Скороспелов В.А. Сплайны в инженерной геометрии. М.: Машиностроение, 1985. 224 с
  • Fritsch F.N., Carlson R.E. Monotone Piecewise Cubic Interpolation//SIAM Journal on Numerical Analysis. 1980. Vol. 17. № 2. P. 238-246
  • Miroshnichenko V.L. Convex and Monotone Spline Interpolation//Constructive Theory of Functions '84: Proc. Internat. Conf. Varna, 1984. P. 610-620
  • Мирошниченко В.Л. Достаточные условия монотонности и выпуклости для интерполяционных кубических сплайнов класса �2//Вычислительные системы: cб. научн. тр. Вып. 137. Приближение сплайнами. Новосибирск: Ин-т математики СО АН СССР, 1990. С. 31-57
  • Волков Ю.С. О монотонной интерполяции кубическими сплайнами//Вычислительные технологии. 2001. Т. 6. № 6. С. 14-24
  • Волков Ю.С., Богданов В.В., Мирошниченко В.Л., Шевалдин В.Т. Формосохраняющая интерполяция кубическими сплайнами//Математические заметки. 2010. Т. 88. Вып. 6. С. 836-844
  • Квасов Б.И. Монотонная и выпуклая интерполяция весовыми кубическими сплайнами//Журнал вычислительной математики и математической физики. 2013. Т. 53. № 10. С. 1610-1621
  • Богданов В.В., Волков Ю.С. Выбор параметров обобщенных кубических сплайнов при выпуклой интерполяции//Сибирский журнал вычислительной математики. 2006. Т. 9. № 1. С. 5-22
  • Hussain M.Z., Sarfraz M., Shaikh T.S. Monotone Data Visualization using Rational Functions//World Applied Sciences Journal. 2012. Vol. 16. № 11. P. 1496-1508
  • Merrien J.-L., Sablonnie` re P. Rational Splines for Hermite Interpolation with Shape Constraints//Computer Aided Geometric Design. 2013. Vol. 30. № 34. P. 296-309
  • Karim S.A.A., Kong V.P. Monotonicity-Preserving Using Rational Cubic Spline Interpolation//Research Journal of Applied Sciences. 2014. Vol. 9. № 4. P. 214-223
  • Abbas M., Majid A.A., Ali J.M. Monotonicity-Preserving �2 Rational Cubic Spline for Monotone Data//Applied Mathematics and Computation. 2012. Vol. 219. P. 2885-2895.
  • Karim S.A.A., Kong V.P. Shape Preserving Interpolation Using �2 Rational Cubic Spline//Journal of Applied Mathematics. 2016. Vol. 2016. Article ID 4875358. P. 1-14
  • Корецкий А.В., Осадченко Н.В., Погорелов Д.Ю. Практика моделирования робототехнических систем средствами программного комплекса "Универсальный механизм"//Информационные средства и технологии: тезисы докладов междунар. конференции. Москва, 1996. Т. 2. М.: Изд-во "Станкин", 1996. С. 54-59
  • Корецкий А.В., Осадченко Н.В. Статический и кинематический анализ манипуляционных роботов на базе теории винтов//Автоматическое управление и интеллектуальные системы: межвузовск. сб. научн. трудов. М.: Моск. гос. ин-т радиотехники, электроники и автоматики, 1996. С. 114-119
  • Корецкий А.В., Осадченко Н.В. Компьютерное моделирование кинематики манипуляционных роботов. М.: Изд-во МЭИ, 2000. 48 с
  • Мартыненко Ю.Г., Осадченко Н.В. Движение шарнирного двухзвенника по гладкой кривой переменной кривизны//Вестник МЭИ. 2001. № 3. С. 14-18
  • Корецкий А.В., Осадченко Н.В. Решение задач кинематики на персональном компьютере. М.: Изд-во МЭИ, 2004. 48 с
  • Осадченко Н.В., Абдельрахман А.М.З. Моделирование движения робота, ползающего по гладкой поверхности//Вестник МЭИ. 2010. № 3. С. 28-36
  • Curtright T., Zachos C. Evolution Profiles and Functional Equations//Journal of Physics A: Mathematical and Theoretical. 2009. Vol. 42. Article ID 485208. P. 1-16
  • Горяйнов В.В., Кудрявцева О.С. Однопараметрические полугруппы аналитических функций, неподвижные точки и функция Кёнигса//Математический сборник. 2011. Т. 202. № 7. С. 43-74
  • Горяйнов В.В. Полугруппы аналитических функций в анализе и приложениях//Успехи математических наук. 2012. Т. 67. Вып. 6 (408). С. 5-52
  • Винберг Э.Б. Курс алгебры. 3-е изд. М.: МЦНМО, 2017. 592 с
  • Ibraheem F., Hussain M., Hussain M.Z. Monotone Data Visualization Using Rational Trigonometric Spline Interpolation//The Scientific World Journal. 2014. Vol. 2014. Article ID 602453. P. 1-14
  • Dube M., Rana P.S. Positivity Preserving Interpolation of Positive Data by Rational Quadratic Trigonometric Spline//IOSR Journal of Mathematics. 2014. Vol. 10. № 2. P. 42-47
  • Delbourgo R., Gregory J.A. The Determination of Derivative Parameters for a Monotonic Rational Quadratic Interpolant//IMA Journal of Numerical Analysis. 1985. Vol. 5. № 4. P. 397-406
  • Бурдаков О.П. Некоторые глобально сходящиеся модификации метода Ньютона для решения систем нелинейных уравнений//Докл. АН СССР. 1980. Т. 254. № 3. С. 521-523
  • Де Бор К. Практическое руководство по сплайнам. М.: Радио и связь, 1985. 304 с
Еще
Статья научная