Экспериментируйте с B-сплайном как функция его узлов
bspligui
bspligui
запускает графический интерфейс пользователя (GUI) для исследования, как B-сплайн зависит от своих узлов. Как вы добавляете, перемещаете или удаляете узлы, вы видите B-сплайн, и его первые три производные изменяются соответственно.
Вы наблюдаете следующие основные факты о B-сплайне с последовательностью узла :
B-сплайн положителен относительно открытого интервала (t 0.. tk). Это - нуль на уровне узлов конца, t 0 и tk, если они не узлы кратности k. B-сплайн является также нулем вне закрытого интервала [t 0.. tk], но та часть B-сплайна не показывают в графический интерфейсе пользователя.
Даже в его максимуме, B-сплайн никогда не больше, чем 1. Это достигает значения 1 внутренняя часть интервал (t 0.. tk) только на уровне узла кратности, по крайней мере, k –1. С другой стороны, тот максимум не может произвольно быть малым; кажется самым маленьким, когда нет никаких внутренних узлов.
B-сплайн является кусочным полиномом порядка k, т.е. его полиномиальные части, все имеют степень <k. Для k = 1:4, можно даже заметить, что все его ненулевые полиномиальные части имеют точную степень k – 1 путем рассмотрения первых трех производных B-сплайна. Это означает, что степень идет/вниз к 1 каждому разу, когда вы добавляете/удаляете узел.
Каждый tj узла является пропуском для B-сплайна, но допустимо для нескольких узлов совпасть. Поэтому количеством нетривиальных полиномиальных частей является максимально k (когда все узлы отличаются), и минимально 1 (когда нет никаких “внутренних” узлов), и любой номер между 1 и k возможен.
Гладкость B-сплайна через пропуск зависит от кратности соответствующего узла. Если пропуск происходит в последовательности узла времена m, то (k –m) th производная B-сплайна имеет скачок через тот пропуск, в то время как все производные порядка ниже, чем (k –m) непрерывны через тот пропуск. Таким образом, путем варьирования кратности узла, можно управлять гладкостью B-сплайна через тот узел.
Когда один узел приближается к другому, самая высокая производная, которая непрерывна и через разрабатывает скачок и через производные высшего порядка, становится неограниченной. Но ничего поразительного не происходит ни в одной из производных более низкоуровневых.
B-сплайн является колоколообразным в следующем смысле: если первая производная не является тождественно нулем, то это имеет точно одно изменение знака в интервале (t 0.. tk), следовательно сам B-сплайн является одномодовым, означая, что это имеет точно один максимум. Далее, если вторая производная не является тождественно нулем, то это имеет точно два изменения знака в том интервале. Наконец, если третья производная не является тождественно нулем, то это имеет точно три изменения знака в том интервале. Это иллюстрирует то, что, для j = 0:k – 1, если j th производная не является тождественно нулем, то это имеет точно изменения знака j в интервале (t 0.. tk); именно это свойство предназначается термином “колоколообразный”. Для этого требования быть строго верным, нужно быть осторожным со значением “изменения знака” в случае, если существуют узлы с кратностью. Например, (k –1) производная Св. является кусочной константой, следовательно это не может иметь k –1 изменение знака в прямом смысле, если нет части полинома k, i.e., если все узлы не просты.