В настоящей работе исследуются способы задания дополнительных условий, необходимых при вычислении коэффициентов сплайна, аппроксимирующего функцию одного переменного, так что интеграл сплайна по области задания совпадает с соответствующим интегралом функции
Оn assignment of additional conditions in the method ofconstruction of a spline preserving the integral of a function over its domain.pdf Пусть задана функция f (x), x¶D º Rk , такая, что существует конечный инте-грал от функции по области D( )D´ f x dx < M .Приблизим функцию сплайнами так, чтобы значения определенного интегралапо области задания приближаемой функции и сплайна совпадали. Рассмотримфункцию одной переменной. Для построения сплайна будем использовать ап-проксимацию сплайнами дефекта 1 [1, 2].На сетке : − < x−m < ... < x0 < x1 < ... < xn < xn+1 < ... < xn+m < сплайн S(x)степени m на отрезке [x0 ; xn ] выражается линейной комбинацией нормализован-ных базисных B сплайнов( ) i ( ) i ( )iS x =z f B x , (1)где zi ( f ) - последовательность линейных функционалов, способ задания кото-рых определяет вид приближения. Выберем zi ( f ) так, чтобы значения опреде-ленного интеграла по области задания приближаемой функции и сплайна былиравными [1].На промежутке [xi ; xi+1 ] кубический сплайн S(x) дефекта 1 (1) запишется в виде( ) ( )21ip pp iS x z B x+= −= . (2)Для определения n+3 коэффициентов zi сплайна (2) имеется n условий, кото-рые обеспечивают выбор коэффициентов так, что интегралы от функции и сплай-на по области D совпадают и выражаются системой( )11 1 2iixi i i i i i i ixa z b z c z d z f x dx+− + + + + + = ´ , i = 0, n −1 . (3)Здесь ( )11iixi ixa B xdx+= ´ − , ( )i 1ixi ixb B xdx+= ´ , ( )11iixi ixc B xdx+= ´ + , ( )12iixi ixd B xdx+= ´ + .48 О.П. Федорова] , О.В. КулишДля разрешения системы (3) относительно коэффициентов сплайна необходи-мо задать дополнительные условия, которые можно задать различными способа-ми, исходя из знаний о свойствах приближаемой функции f(x). Если f(x) - плот-ность некоторого распределения, о котором заранее известно, что оно являетсясимметричным относительно нуля, то можно положить в качестве дополнитель-ного условия следующее:( ) 0D´ x ⋅ S x dx = .Заметим, что для кусочно-непрерывной функции, принимающей ненулевые зна-чения на конечной области, существуют моменты любого порядка. Можно такжепотребовать, чтобы сплайн был интерполирующим для функции f ( x) или значе-ния производной сплайна и функции совпадали в каких-либо точках.В настоящей работе рассматриваются дополнительные условия, заключаю-щиеся в том, что совпадают значения сплайна или его первой, или второй произ-водной и соответственно значения функции или ее первой, или второй производ-ной в трех точках из шести: x0, x1, x2, xn-2, xn-1, xn:( ) ( ) ( )11r ( ) rp k p k kpz + B x f x=− = , k = 0, 1, 2, n - 2, n - 1, n; r = 0, 1, 2. (4)Система (3) с дополнительными условиями (4) имеет четырехдиагональнуюматрицу коэффициентов, решение которой будем искать методом прогонки ввиде [1]zi =Wi zi+1 +Qi zi+2 + Ri .Здесь 11i i iii i ic Q aWb W a−−+ ⋅= −+ ⋅,1iii i idQb W− a= −+ ⋅, 11i i iii i ip R aRb W a−−− ⋅=+ ⋅, i = 0, n −1 .Некоторые способы задания граничных условий1. Дополнительные условия задаются в точках x0, xn-1, xn или в x1, xn-1, xn. Еслидополнительное условие задается в точке x0, то уравнение, которое может бытьиспользовано для вычисления коэффициентов сплайна, имеет вид( ) ( ) ( )10 01r ( ) rp ppz B x f x=− = . (5)Из (5) получим для прогоночных коэффициентов следующие выражения:( ) ( ) ( ) ( ) 1 0 0 / 1 0 W B r x B r x − = − − , ( ) ( ) ( ) ( ) 1 1 0 / 1 0 Q B r x B r x − = − − ,( ) ( ) ( ) ( ) 1 0 / 1 0 R f r x B r x − = − .Если же дополнительное условие задано в точке x1, то коэффициенты прогон-ки при i = -1 при r 1 определим из решения системы:( ) ( ) ( )( )1011 1 110 1 0 0 0 1 0 2( ) ,.r rp ppxxz B x f xa z b z c z d z f x dx+=−−⎧= ⎪⎪⎨⎪+ + + = ⎪⎩´(6)О задании дополнительных условий в методе построения сплайна 49Разрешаем систему (6):( ) ( ) ( ) ( ) ( )100 1 0 1 / 1 1xr rxa R− = ´ f x dx − d f x B x ,( ) ( ) ( ) ( ) 0 1 0 1 1 / 1 1 0 a W d B r x B r x b − = − − ,( ) ( ) ( ) ( ) 0 1 0 0 1 / 1 1 0 a Q d B r x B r x c − = − .Из последнего равенства выражаем W-1, Q-1 и R-1.В том и другом случае на правой границе имеем в точках xn-1, xn систему( ) ( ) ( ) 1 12( )nr rp p n np nz B x − f x −= − = ,( ) ( ) ( )11( )nq qp p n np nz B x f x+= − = . (7)Здесь r = 0,1, 2 и q = 0,1, 2. Заметим, что значение первой производной сплай-на B'k(x) в точке xk равно нулю и при некоторых сочетаниях значений r и q систе-ма (7) является неразрешимой относительно коэффициентов. Положим( ) ( ) 1ran = Bn− xn , (r ) ( )bn = Bn xn , ( ) ( ) 1rcn = Bn+ xn , dn = 0 .Из первого уравнения системы (7) выражаем коэффициенты Wn, Qn и Rn.Для вычисления коэффициентов zn-2, zn-1, zn, zn+1 будем использовать системуzn−2 =Wn−2 zn−1 +Qn−2 zn + Rn ,zn−1 =Wn−1zn +Qn−1zn+1 + Rn−1 ,zn =Wn zn+1 + Rn ,( ) ( ) ( )11( )nq qp p n np nz B x f x+= − = . (8)Разрешаем систему (8), получим выражение для zn+1 и определим zn, zn-1, …,z0, z-1. Заметим, что значение первой производной сплайна Bk(x) в точке xk равнонулю и при некоторых сочетаниях r и q система (7) является неразрешимой отно-сительно коэффициентов zn-2, zn-1, zn, zn+1.2. Потребуем, чтобы значение сплайна или его первой, или второй производ-ной и соответственно значения функции или ее первой, или второй производнойсовпадали в трех начальных точках: x0, x1, x2.Для равномерной сетки ai = di = h/24, ci = bi = 11h/24 введем обозначенияa = h/24, b = 11h/24,1( )1 ( 0 ), B r x −£ = ( )1 0 ( 0 ), ¤ = B r x ( )1 1 ( 0 ), ¥ = B r x1( )2 ( 1), B s x −£ = ( )2 0 ( 1), ¤ = B s x ( )2 1 ( 1), ¥ = B s x1( )3 ( 2 ), B q x −£ = ( )3 0 ( 2 ), ¤ = B q x ( )3 1 ( 2 ). ¥ = B q x (9)50 О.П. Федорова, О.В. КулишВ обозначениях (9) для определения коэффициентов z-1, z0, z1, z2, z3 имеем сис-тему( )1 1 1 0 1 1 ( 0 ) z z z f r x £ − + ¤ + ¥ = ,1 0 1 2 0 , az− + bz + bz + az = p0 1 2 3 1 , az + bz + bz + az = p( )2 0 2 1 2 2 ( 1), £ z + ¤ z + ¥ z = f s x( )3 1 3 2 3 3 ( 2 ) £ z + ¤ z + ¥ z = f q x , (10)где r, s, q - степень производной в точках x0, x1, x2. Для условий интерполирова-ния функции сплайном в точках x0, x1, x2, разрешая систему (10), получим сле-дующие выражения для коэффициентов:z-1 = ( 0 ) ( 1 ) ( 2 ) 0 123 16 3 11 12 2 12 4f x + f x + f x − p − p ,z0 = ( 0 ) ( 1 ) ( 2 ) 0 12 5 1 1 13 2 4 12− f x − f x − f x + p + p ,z1 = ( 0 ) ( 1 ) ( 2 ) 0 11 4 1 1 12 2 12 12f x + f x + f x − p − p ,z2 = ( 0 ) ( 1 ) ( 2 ) 0 11 5 3 1 12 2 12 4− f x − f x − f x + p + p ,z3 = ( 0 ) ( 1 ) ( 2 ) 0 13 16 23 1 112 2 4 12f x + f x + f x − p − p . (11)Далее находятся коэффициенты сплайна по формулам( )12 ( ( 1 1)) /iixi i i ixz f x dx az bz bz a++ = ´ − − + + + , i = 1, 2,…, n-1.На рис. 1 сплошной линией показан график плотности вероятности распреде-ления Фишера при степенях свободы 10 и 25 на промежутке [0; 5]. В качестве до-полнительных условий задавались значения функции в точках x0, xn-1, xn . Причисле разбиений 10 шаг дискретизации h = 0,5, максимальное отклонение значе-ний, вычисляемых по сплайн-функции (показаны заполненными кружками) отточных значений, не превосходит в этом случае 3,5 % при условии, что значения( )i 1ixxf x dx+´ вычислялись с высокой точностью (10-8). Квадратами показаны значе-ния сплайна в узловых точках для случая, когда значения интеграла ( )i 1ixxf x dx+´вычислялись приближенно по таблице значений функции с использованием мето-да трапеции. Ошибка составила примерно 9 %. Во всех проведенных численныхэкспериментах погрешность соответствует оценкам, построенным в [1].О задании дополнительных условий в методе построения сплайна 510 1 2 3 4 x0,00,20,40,60,8 Значение сплайн-функцииРис. 1. Распределение Фишера с числами степеней свобо-ды 10 и 25 (сплошная линия) и значения сплайн-функции,построенной по 10 значениям (кружки и квадраты)Общее решение разностного уравненияСистема уравнений (4) с дополнительными условиями (7) - (10) для случаякубического сплайна есть разностное уравнение третьего порядка с постоянны-ми коэффициентами, общее решение которого zi , согласно[2], может бытьнайдено как сумма общего решения однородного уравнения zi (с неоднородны-ми дополнительными условиями) и частного решения неоднородного уравнения*zi (с однородными дополнительными условиями): *zi = zi + zi или, согласно [1],( ) ( ) ( ) 1 1 2 5 2 6 3 5 2 6 i i izi s s s zi= − + − + + − − + ∗ . Коэффициенты s1, s2, s3 находятсяиз дополнительных условий. Если в качестве дополнительных заданы условиясовпадения значений функции и сплайна в трех точках x0, x1, x2, то коэффициентывыражаются следующим образом:1 0 2 13 ( ) 158 4s = − ⋅ f + f − ⋅ f ,2 0 1 2 0 1 26 (11 12 ) 1 (81 90 9 )48 144s = − ⋅ ⋅ f + ⋅ f + f − ⋅ ⋅ f + ⋅ f + ⋅ f ,3 0 1 2 0 1 26 (11 12 ) 1 (81 90 9 )48 144s = ⋅ ⋅ f + ⋅ f + f − ⋅ ⋅ f + ⋅ f + ⋅ f .Обозначим u( j) = (-1) j, v( j) = (-5 + 2 6 ) j, w( j) = (-5 - 2 6 ) j, тогда частноерешение неоднородного уравнения с нулевыми значениями в точках x0, x1, x2 дляi = 3, 4,…, n + 1 имеет вид [3]3* 10( 1) ( 1) ( 1)( 2) ( 2) ( 2)( ) ( ) ( )( )( 1) ( 2) ( 3)( 1) ( 2) ( 3)( 1) ( 2) ( 3)
Самарский А.А., Николаев Е.С. Методы решения сеточных уравнений. М.: Наука, 1978. 589 с.
Завьялов Ю.С., Квасов Б.И., Мирошниченко В.Л. Методы сплайн-функций. М.: Наука, 1980. 352 с.
Федорова О.П. Об одном подходе к приближению функций сплайнами // Вестник ТГУ. Математика и механика. 2008. № 2(3). С. 61 - 66.