Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Числ_мет_учебник.doc
Скачиваний:
4
Добавлен:
01.03.2025
Размер:
3.98 Mб
Скачать

2.13.4. В-сплайны

Рассмотренные ранее полиномиальные сплайны имеют ряд существенных недостатков:

1) при увеличении вычисление коэффициентов становится значительно сложнее из-за увеличения числа уравнений (условий непрерывности функции и ее производных);

2) требуется достаточно большой объем памяти для хранения информации о сплайне: точек разбиения и значений коэффициентов сплайнов.

От этих недостатков в значительной мере избавлен другой вид сплайнов, который основан на базисных функциях и называется В-сплайном.

Для этого типа сплайнов необходимо хранить коэффициентов и точек разбиения, где порядок сплайна. Точки разбиения – это не табличные значения , и их нахождение будет рассмотрено позднее.

Пусть некоторая неубывающая последовательность узлов. Определим В-сплайн -го порядка как некоторым образом нормированные -е разделенные разности усеченной степенной функции. Обозначим -ый В-сплайн -го порядка для последовательности узлов через и определим его правилом

(2.108)

где – номер первой точки; – количество точек, по которым строится В-сплайн и указывается его порядок; – последовательность точек, причем , – разделенная разность -го порядка (см. п.2.5) для функции , которая является усеченной степенной функцией и определяется следующим образом

(2.109)

При вычислении разделенной разности для , функция берется при фиксированном значении , т.е. рассматривается только как функция от . Значение искомой разделенной разности, естественно, зависит от , т.е. конечный результат меняется с изменением , и, таким образом, в итоге получается функция , зависящая от . Так как при вычислении В-сплайнов через разделенную разность возможна большая погрешность, применим рекуррентное соотношение, которое использует формулу Лейбница: если функцию представить в виде , то

.

Если теперь представить в виде двух сомножителей

где

,

то, согласно формуле Лейбница, получим

. (2.110)

При этом учитывается, что разделенные разности для функции равны

для

Тогда можно записать

(2.111)

и (2.110) представить в виде

(2.112)

В обозначении В-сплайнов выражение (2.112) записывается в виде

(2.113)

или

. (2.114)

При этом

(2.115)

Алгоритм построения В-сплайна -го порядка состоит в следующем. Пусть задана таблица значений функции на , т.e. причем последовательность является строго возрастающей на . Строится неубывающая последовательность на такая, что

и

Узлы можно вычислить по формуле

где -порядок В-сплайна. Аппроксимация функции В-сплайном по табличным значениям осуществляется следующим образом

(2.116)

где .

Для нахождения коэффициентов , потребуем совпадения функции в точках с табличными значениями

(2.117)

Соотношение (2.117) является системой из линейных алгебраических уравнений относительно неизвестных коэффициентов В матричном виде эта система имеет вид

(2.118)

где

.

3амечание 2.2. Рекуррентная формула (2.114) применима при условии, что строго возрастающая последовательность. В тоже время обычно задается только таблица значений функции в точках c помощью которых строится неубывающая последовательность . Поэтому при вычислении В-сплайна по рекуррентным формулам (2.114) может возникнуть ситуация ‘деления на ноль’. То же самое произойдет, если

или

. (2.119)

Самый простой способ выхода из этой ситуации состоит в том, что те слагаемые в (2.109), для которых выполняется условие (2.119), обращаются в нуль и вычисление В-сплайнов меньшего порядка не производится.

Пример 2.10. Для исходных данных, приведенных в примере 2.7, построим В-сплайн второго порядка. В-сплайн строится в виде (2.116). Неубывающая последовательность в данном случае имеет вид: 1; 1; 1; 3; 4,5; 6; 6. Матрица и вектор получились следующими:

,

.

На рис. 2.6 приведены кривые, изображающие В-сплайн второго порядка., исходную функцию и точки, соответствующие исходным данным.

Рис. 2.6. Интерполяция В-сплайном 2-го порядка.