exponenta event banner

NURBS и другие рациональные сплайны

Введение в рациональные сплайны

Рациональный сплайн - это, по определению, любая функция, являющаяся отношением двух сплайнов:

r (x) = s (x )/w (x)

Это требует, чтобы w было скалярным, но s часто выбирают векторным. Кроме того, желательно, чтобы w (x) не было нулевым для любого x, представляющего интерес.

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

rsform: rpform, rBform

Два сплайна, s и w, в рациональном сплайне r (x) = s (x )/w (x) не обязательно должны быть связаны друг с другом. Они могут быть даже разных форм. Но в контексте этого инструментария удобно ограничивать их одной и той же формой, и даже одинаковым порядком и с одинаковыми разрывами или узлами. Для, в этом предположении, можно представить такой рациональный сплайн с помощью (векторной) сплайновой функции

R (x) = [s (x); w (x)]

чьими значениями являются векторы с одним больше входом, чем значениями рационального сплайна r, и называют это rsform рационального сплайна, или, точнее, rpform или rBform, в зависимости от того, находятся ли s и w в ppform или в B-форме. Внутри, единственное, что отличает эти рациональные формы от их соответствующих обычных сплайновых форм, rpform и B-form, это их часть формы, то есть строка, полученная через fnbrk(r,'form'). Этого достаточно, чтобы предупредить fn... для выполнения соответствующих действий над функцией в одной из rsforms.

Например, как это делается в fnval, очень легко получить r (x) из R (x). Еслиv является значением R при x, то v(1:end-1)/v(end) является значением r в x. Если, кроме того, dv DR (x), затем(dv(1:end-1)-dv(end)*v(1:end-1))/v(end) является Dr (x). В более общем плане, по формуле Лейбница ,

Djs = Dj (wr) =∑i=0j (ji) DiwDj − ir

Поэтому

Djr = (Djs−∑i=1j (ji) DiwDj ir )/w

Это показывает, что можно вычислить производные r индуктивно, используя производные s и w (т.е. производные R) вместе с производными r порядка менее j, чтобы вычислить j-ю производную r. Эта индуктивная схема используется в fntlr для обеспечения первых стольких производных рационального сплайна. Существует соответствующая формула для частных и направленных производных для многомерных рациональных сплайнов.

Связанные темы