ВЕСТНИК ТОМСКОГО ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА
< м.
2010 Математика и механика № 1(9)
УДК 519.6
О.П. Федорова, О.В. Кулиш
О ЗАДАНИИ ДОПОЛНИТЕЛЬНЫХ УСЛОВИЙ В МЕТОДЕ ПОСТРОЕНИЯ СПЛАЙНА, СОХРАНЯЮЩЕГО ИНТЕГРАЛ ФУНКЦИИ ПО ОБЛАСТИ ЕЕ ЗАДАНИЯ
В настоящей работе исследуются способы задания дополнительных условий, необходимых при вычислении коэффициентов сплайна, аппроксимирующего функцию одного переменного, так что интеграл сплайна по области задания совпадает с соответствующим интегралом функции.
Ключевые слова: аппроксимация сплайнами, приближение функции одной переменной, оценивание погрешности приближения.
Пусть задана функция /(х), х е Б с Як , такая, что существует конечный интеграл от функции по области Б
I / (х )<Лх
Б
Приблизим функцию сплайнами так, чтобы значения определенного интеграла по области задания приближаемой функции и сплайна совпадали. Рассмотрим функцию одной переменной. Для построения сплайна будем использовать аппроксимацию сплайнами дефекта 1 [1, 2].
На сетке Д : -ж < х-т <... < х0 < х1 <... < хп < хп+1 <... < хп+т < ж сплайн 5(х) степени т на отрезке [ х0; хп ] выражается линейной комбинацией нормализованных базисных В сплайнов
5 (х ) = £ ^ (/) Вг (х) , (1)
г
где (/) - последовательность линейных функционалов, способ задания которых определяет вид приближения. Выберем (/) так, чтобы значения определенного интеграла по области задания приближаемой функции и сплайна были равными [1].
На промежутке [ хг; хг+1 ] кубический сплайн 5(х) дефекта 1 (1) запишется в виде
5 (х)= 12 2рвр (х). (2)
р=г-1
Для определения п+3 коэффициентов сплайна (2) имеется п условий, которые обеспечивают выбор коэффициентов так, что интегралы от функции и сплайна по области Б совпадают и выражаются системой
х,-+1 ________________
°г2г-1 + Ъг2г + Сг2г+\ + ёг2г+2 = | /(х¥х , г = 0 п-1 . (3)
хг
хг+1 х1+1 хг+1 хг+1
Здесь аг = | Вг -1 (х) ёх, = | Вг (х) ёх, сг = | В+ (х) ёх , = | Вг+2 (х) ёх.
Для разрешения системы (3) относительно коэффициентов сплайна необходимо задать дополнительные условия, которые можно задать различными способами, исходя из знаний о свойствах приближаемой функции fx). Если fx) - плотность некоторого распределения, о котором заранее известно, что оно является симметричным относительно нуля, то можно положить в качестве дополнительного условия следующее:
| x • S(x)dx = 0 .
D
Заметим, что для кусочно-непрерывной функции, принимающей ненулевые значения на конечной области, существуют моменты любого порядка. Можно также потребовать, чтобы сплайн был интерполирующим для функции f (x) или значения производной сплайна и функции совпадали в каких-либо точках.
В настоящей работе рассматриваются дополнительные условия, заключающиеся в том, что совпадают значения сплайна или его первой, или второй производной и соответственно значения функции или ее первой, или второй производной в трех точках из шести: x0, x1, x2, xn-2, xn-1, xn:
X zp+kB(r (xk) = f(r)(xk), k = 0, 1, 2, n - 2, n - 1, n; r = 0, 1, 2. (4)
p=-i
Система (3) с дополнительными условиями (4) имеет четырехдиагональную матрицу коэффициентов, решение которой будем искать методом прогонки в виде [1]
z, = Wizi+i + Qz+2 + R.
Здесь W =- C-tSnlOL, Q: =-----------d------, R = , i = 0П-1.
' b + W,-1 • a, * b, + W,-1 • a, S b,+ W,-1 • a,
Некоторые способы задания граничных условий
1. Дополнительные условия задаются в точках x0, xn-1, xn или в x1, xn-1, xn. Если дополнительное условие задается в точке x0, то уравнение, которое может быть использовано для вычисления коэффициентов сплайна, имеет вид
X zPBPr) (x0) = f (r)(x0). ()
p=-1
Из (5) получим для прогоночных коэффициентов следующие выражения:
W-1 =-B0r)(x0)/B-1)(x0), Q-1 =-B1r)(x0)/B-1)(x0),
R-1 = f(r\x0)/B-;)(x0).
Если же дополнительное условие задано в точке x1, то коэффициенты прогонки при ' = -1 при r Ф 1 определим из решения системы:
X zp+1BPr} (x1) =f (r )(x1К p=-1
x1 (6)
a0z-1 + b0z0 + c0z1 + d0z2 = | f (x)dx.
Разрешаем систему (6):
*1
«оЯ-1 = | /(х)ёх-й?0/(г)(х)/В1Г)(х) ,
*0
«оЖ-1 = ^В-1) (*1)/В1Г)(*1)-Ьоо,
«о6-1 = ^оВ0 ) (*1 ) / В1 ) (*1 ) - Со.
Из последнего равенства выражаем Ж-1, 6_1 и Л-ь
В том и другом случае на правой границе имеем в точках х„_1, х„ систему
X 2рВр ] (*п-1) = /(Г )(х«-1 Ь
р=п-2
П+1
X гВ](*п) = /(9](х„) ■ (7)
р=п-1
Здесь г = 0,1, 2 и q = 0,1, 2. Заметим, что значение первой производной сплайна В'к(х) в точке хк равно нулю и при некоторых сочетаниях значений г и q система (7) является неразрешимой относительно коэффициентов. Положим
«п = ВПГ-1 (*п К Ьп = ВПГ](хп ) , Сп = ВП+1 (*п ) , dn = 0.
Из первого уравнения системы (7) выражаем коэффициенты Жп, 6п и Кп.
Для вычисления коэффициентов гп-2, гп-1, хп, гп+1 будем использовать систему
гп-2 = Жп-2гп-1 + бп-2гп + Кп ,
гп-1 = Жп-1гп + бп-1 гп+1 + Яп-1 , гп = Жпгп+1 + Кп ,
п+1
X грВр)(хп) = /(q](хп) ■ (8)
р=п-1
Разрешаем систему (8), получим выражение для гп+1 и определим хп, гп-1, ..., гО, г-1. Заметим, что значение первой производной сплайна Вк(х) в точке хк равно нулю и при некоторых сочетаниях г и q система (7) является неразрешимой относительно коэффициентов гп_2, гп-1, гп, гп+1.
2. Потребуем, чтобы значение сплайна или его первой, или второй производной и соответственно значения функции или ее первой, или второй производной совпадали в трех начальных точках: хо, х1, х2.
Для равномерной сетки «, = ^ = А/24, с, = Ь, = 11А/24 введем обозначения « = А/24, Ь = 11А/24,
а1 = В-1)( хо), Р1 = В0г)(хо), У! = В( г)(хо),
а2 = В« (х1), Р2 = ВО ^ (х), у 2 = В1 ^ (х1),
аз = В^ (х2), Рз = В^ (х2), у3 = Вq) (х2). (9)
В обозначениях (9) для определения коэффициентов 2-1, 20:, 21, 12, 23 имеем систему
а12_1 + Р120 +У121 = /(г)(х0) ,
С2__1 + Ъ20 + Й71 + С22 = р0,
С20 + Й71 + Ъ12 + С23 = р1,
а 2 20 +Р2 21 + У 2 22 = / (")(
а3 21 +Рз ^ +Уз 23 = /(д)(х2), (10)
где г, 5, q - степень производной в точках х0, х1, х2. Для условий интерполирования функции сплайном в точках х0, х1, х2, разрешая систему (10), получим следующие выражения для коэффициентов:
23 3 11 1
2-1 = у / (х0 ) + 16/ (х1 ) + 2 / (х2 )_ — Р0 _ 4 Р1,
2 111
*>=_ з / (х0)-5/ (х1)-2 / (х2)+4 Р0 +— рь
^1=2 / (х0)+4 / (х1)+2 У (х2)-12 Р0 _ 12 Рl,
1 3 11
22 = _ 2 У (х0 )-5/ (х1 )-2 / (х2 )+12 Р0 + 4 Рl,
= -2 / (х0 ) + 16 У (х1 )+ 23 У (х2 )_ 1 Р0 _ 12 Р1. (11)
Далее находятся коэффициенты сплайна по формулам
х,+1
: ( | /(х)ёх_С,_1 + Ъ21 + Ъгг+1))/с , , = 1, 2,..., п-1.
,+2
На рис. 1 сплошной линией показан график плотности вероятности распределения Фишера при степенях свободы 10 и 25 на промежутке [0; 5]. В качестве дополнительных условий задавались значения функции в точках х0, хп-1, хп . При числе разбиений 10 шаг дискретизации к = 0,5, максимальное отклонение значений, вычисляемых по сплайн-функции (показаны заполненными кружками) от точных значений, не превосходит в этом случае 3,5 % при условии, что значения
х,+1
| /(х)ёх вычислялись с высокой точностью (10-8). Квадратами показаны значе-
х, х,+1
ния сплайна в узловых точках для случая, когда значения интеграла | / (х) с1х
х,
вычислялись приближенно по таблице значений функции с использованием метода трапеции. Ошибка составила примерно 9 %. Во всех проведенных численных экспериментах погрешность соответствует оценкам, построенным в [1].
Рис. 1. Распределение Фишера с числами степеней свободы 10 и 25 (сплошная линия) и значения сплайн-функции, построенной по 10 значениям (кружки и квадраты)
Общее решение разностного уравнения
Система уравнений (4) с дополнительными условиями (7) - (10) для случая кубического сплайна есть разностное уравнение третьего порядка с постоянными коэффициентами, общее решение которого 2^ , согласно [2], может быть найдено как сумма общего решения однородного уравнения 7 (с неоднородными дополнительными условиями) и частного решения неоднородного уравнения * *
(с однородными дополнительными условиями): или, согласно [1],
= 51 (-1) + 52 (-5 + 2\/б) + 53 (-5 - 2л/б) + 7* . Коэффициенты 5Ь S2, 53 находятся
из дополнительных условий. Если в качестве дополнительных заданы условия совпадения значений функции и сплайна в трех точках х0, х, х2, то коэффициенты выражаются следующим образом:
= 3 ,, 15 ,
51 = ^ '(/0 + /2) 4 ' Л ,
52 =-^• (11 • /0 +12• / + /2)-114• (81 • /0 + 90• / + 9• /2) ,
53 = -4!^(11 ^/0 +12• / + /2)-^4• (81 • /0 + 90• / + 9• /2) .
Обозначим и(у) = (-1) \ v(у) = (-5 + 2 л/б )3, w(у) = (-5 - 2 46) \ тогда частное решение неоднородного уравнения с нулевыми значениями в точках х0, х\, х2 для
I = 3, 4,..., п + 1 имеет вид [3]
и( ] +1) К ] +1) м>( у +1)
и( ] + 2) v( ] + 2) м>( ] + 2)
и (/) v(i) м>(0 /у+1
и( ] +1) и( у + 2) и( у + 3)
v( ] +1) К У + 2) v( ] + 3)
м>( у +1) м>( ] + 2) ™(] + 3)
ЛИТЕРАТУРА
1. Федорова О.П. Об одном подходе к приближению функций сплайнами // Вестник ТГУ. Математика и механика. 2008. № 2(3). С. 61 - 66.
2. Завьялов Ю.С., Квасов Б.И., Мирошниченко В.Л. Методы сплайн-функций. М.: Наука, 1980. 352 с.
3. Самарский А.А., Николаев Е.С. Методы решения сеточных уравнений. М.: Наука, 1978. 589 с.
СВЕДЕНИЯ ОБ АВТОРАХ:
ФЕДОРОВА Ольга Петровна - кандидат физико-математических наук, доцент кафедры вычислительной математики и компьютерного моделирования механико-математического факультета Томского государственного университета. Е-таі1: [email protected] КУЛИШ Ольга Валерьевна - студентка механико-математического факультета Томского государственного университета.
Статья принята в печать 08.02.2010 г.