Рис.7 Интерполяция B-cплайнами
Чуть более сложный тип интерполяции – так называемая полиномиальная сплайн-интерполяция, или интерполяция B-сплайнами. В отличие от обычной сплайн-интерполяции, сшивка элементарных B-сплайнов производится не в точках (ti,xi), а в других точках, координаты которых обычно предлагается определить пользователю. Таким образом, требование равномерного следования узлов при интерполяции B-сплайнами отсутствует, и ими можно приближать разрозненные данные.
Сплайны могут быть полиномами первой, второй или третьей степени (линейные, квадратичные или кубические). Применяется интерполяция B-сплайнами точно так же, как и обычная сплайн-интерполяция, различие состоит только в определении вспомогательной функции коэффициентов сплайна.
bspline (vx, vy, u, n) Возвращает вектор, содержащий коэффициенты В- сплайна степени n для данных, которые находяться в векторах vx и vy (с учетом значений узлов, которые заданы в u). Возвращаемый вектор становится первым аргументом функции interp.
interp (vs, vx, vy, x) Возвращает B- сплайн интерполированной величины vy в точке x, где vs – результат работы функции bspline.