Список условий для подбора кривой сплайна

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

Интервалы

Поскольку MATLAB® использует обозначение [a,b], чтобы указать на матрицу с этими двумя столбцами, a и b, это руководство использует обозначение [a .. b], чтобы указать на закрытый интервал с конечными точками a и b. Это руководство делает то же самое для открытых и полуоткрытых интервалов. Например, [a .. b), обозначает интервал, который включает его левую конечную точку, a, и исключает его правильную конечную точку, b.

Векторы

D-вектор является списком вещественных чисел d, т.е. точкой в ℜd. В MATLAB d - вектор хранится как матрица размера [1, d], т.е. как вектор - строка, или как матрица размера [d, 1], т.е. как вектор-столбец. В функциях сплайна Curve Fitting Toolbox™ векторы являются вектор-столбцами.

Функции

В этом тулбоксе термин функция используется в ее математическом смысле, и так описывает любое правило, которое сопоставляет к каждому элементу определенного набора, названного его областью, некоторый элемент в определенном наборе вызвал свою цель. Типичные примеры в этом тулбоксе являются полиномами и сплайнами. Но даже точка x в ℜd, т.е. d - вектор, может считаться функцией, а именно, функция, с областью набор {1..., d} и предназначаться для вещественных чисел ℜ, который, для i = 1..., d, сопоставляет к i вещественное число x (i).

Область значений функции является набором своих значений.

Там со скалярным знаком, с векторным знаком, с матричным знаком, и ND - оцененные сплайны. Скалярные функции имеют вещественные числа ℜ (или, в более общем плане, комплексные числа) как их цель, в то время как d - со знаком вектор-функций имеет ℜd как их цель; если в более общем плане d является вектором положительных целых чисел, то функции d-valued имеют d-dimensional действительные массивы как свою цель. Функции сплайна Curve Fitting Toolbox могут иметь дело с одномерными и многомерными функциями. У первого есть некоторый действительный интервал, или, возможно, все ℜ как их область, в то время как m - функции варьируемой величины имеют некоторое подмножество, или возможно все, ℜm как их область.

Обозначение заполнителя

Если является двумерной функцией, и y является некоторым определенным значением своей второй переменной, то

f(,y)

одномерная функция, значением которой в x является f (x, y).

Кривые и поверхности по сравнению с функциями

В этом тулбоксе термин функция обычно относится к скалярной функции. Функция с векторным знаком вызвана здесь a:

изогнитесь, если его область является некоторым интервалом

появитесь, если его область является некоторым прямоугольником

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

Продукты Tensor

Двумерным продуктом тензора является любая взвешенная сумма продуктов функции в первой переменной с функцией во второй переменной, т.е. любой функцией формы

f(x,y)=ija(i,j)gi(x)hj(y).

В более общем плане m - продуктом тензора варьируемой величины является любая взвешенная сумма продуктов g 1 (x 1) g 2 (x 2)... g m (x m) m одномерные функции.

Многочлены

Одномерный полином со скалярным знаком задан списком его полиномиальных коэффициентов. Длина того списка является порядком того полинома, и, в этом тулбоксе, список всегда хранится как вектор - строка. Следовательно m - список полиномов порядка k всегда хранится как матрица размера [ m, k ].

Коэффициенты в списке полиномиальных коэффициентов перечислены от "самого высокого" до "самого низкого", чтобы соответствовать соглашению MATLAB, как в команде polyval(a,x). Вспоминать: предположение, что x является скаляром и что a имеет записи k, эту команду, возвращает номер

a(1)xk1+a(2)xk2++a(k1)x+a(k).

Другими словами, команда обрабатывает список a как коэффициенты в форме степени. По причинам числовой устойчивости такой список коэффициентов обработан в этом тулбоксе, в более общем плане, как коэффициенты в переключенном, или, локальная форма степени, для некоторого данного центра c. Это означает, что значение полинома в какой-то момент x предоставляется командой polyval(a,x-c).

Полином с векторным знаком обработан точно таким же образом, за исключением того, что теперь каждый полиномиальный коэффициент является вектором, скажите d-вектор. Соответственно, список коэффициентов теперь становится матрицей размера [d,k].

Многомерные полиномы появляются в этом тулбоксе в основном как продукты тензора. Принятием сначала, для простоты, что рассматриваемый полином со скалярным знаком, но m - варьируемая величина, это означает, что ее коэффициент “перечисляет” a, является m - размерный массив, размера [k 1..., km] говорит, и его значение в некотором m - векторным x, соответственно, дают

i1=1k1im=1kma(i1,...,im)(x(i1)c(i1))k1i1(x(im)c(im))kmim,

для некоторого "центра" c.

Кусочные полиномы

Функция кусочного полинома относится к функции, соединенной от полиномиальных частей. Если функция является одномерной, то, для некоторой строго увеличивающейся последовательности ξ 1 < ... < ξ l + 1, и для i = 1:l, она согласовывает с некоторым полиномиальным pi на интервале [ξi .. ξ i + 1). Вне интервала [ξ 1 .. ξ l + 1), его значение дано его первым, соответственно его последняя, полиномиальная часть. ξi является своими пропусками. Все многомерные кусочные полиномы в этом тулбоксе являются продуктами тензора из одномерных единиц.

B-сплайны

В этом тулбоксе термин B-сплайн используется в его исходном значении только, как дали ему его создателем, мной. Дж. Шеенберг, и далее усиленный в его основных 1 966 статьях с Карри и используемый в PGS и многих других книгах по сплайнам. По словам Шеенберга, B-сплайна с узлами tj ..., t j +k дан следующей несколько неясной формулой (см., например, IX (1) в PGS):

Bj,k(x)=B(x|tj,...,tj+k)=(tj+ktj)[tj,...,tj+k](x)+k1.

Безусловно, это - только одна из нескольких разумной нормализации B-сплайна, но это - то, используемое в этом тулбоксе. Это выбрано так, чтобы

j=1nBj,k(x)=1,tkxtn+1.

Но, вместо того, чтобы пытаться понять вышеупомянутую формулу для B-сплайна, посмотрите на страницы с описанием для графический интерфейса пользователя bspligui для некоторых основных свойств B-сплайна и используйте тот графический интерфейс пользователя, чтобы получить некоторый собственный опыт с этой интригующей функцией. Его самое важное свойство в целях этого тулбокса является также причиной, Шеенберг использовал букву B на его имя:

Каждый пробел (одномерных) кусочных полиномов данного распоряжения имеет Основание, состоящее из B-сплайнов (следовательно “B” в B-сплайне).

Сплайны

Рассмотрите набор

S:=Πξ,kμ

из всех кусочных полиномов (с скалярным знаком) порядка k с пропусками ξ 1 < ... < ξ l + 1, что, для i = 2... l, может иметь скачок через ξi в его μi th производная, но не иметь никакого скачка там ни в какой производной более низкоуровневой. Этот набор является линейным пробелом, в том смысле, что любое скалярное кратное, функция в S находится снова в S, как сумма любых двух функций в S.

Соответственно, S содержит основание (на самом деле, бесконечно много основ), то есть, последовательность f 1..., fn так, чтобы каждый f в S мог быть записан исключительно в форме

f(x)=j=1nfj(x)aj,

для подходящих коэффициентов aj. Номер n, появляющийся вот, является размерностью линейного пробела S. Коэффициенты aj часто упоминаются как координаты f относительно этого основания.

В частности, согласно Теореме Шеенберга Карри, наш пробел S имеет основание, состоящее из B-сплайнов, а именно, последовательность всех B-сплайнов формы B(·|tj,...,tj+k), j = 1... n, с последовательностью узла t получил из последовательности пропуска ξ и последовательность µ следующими условиями:

  • Имейте и ξ 1 и ξ, l + 1 происходит в t точно времена k

  • Для каждого i = 2:l, имейте ξi, происходят в t точно k – времена µi

  • Убедитесь, что последовательность не уменьшает и только содержит элементы от ξ

Отметьте соответствие между кратностью узла и гладкостью сплайна через тот узел. В частности, на уровне простого узла, который является узлом, который появляется точно однажды в последовательности узла, только (k – 1) производная Св. может быть прерывистой.

Рациональные сплайны

Рациональный сплайн является любой функцией формы r (x) = s (x)/w (x), и с s и со сплайнами w и, в частности, w сплайн со скалярным знаком, в то время как s часто с векторным знаком. В этом тулбоксе существует дополнительное требование что и s и w иметь ту же форму и даже того же порядка, и с тем же узлом или последовательностью пропуска. Это позволяет сохранить рациональный сплайн r как обычный сплайн R, значение которого в x является вектором [s (x); w (x)]. Легко получить r из R. Например, если v является значением R в x, то v(1:end-1)/v(end) является значением r в x. Как другой пример, рассмотрите получение производных r от тех из R. Поскольку s = wr, Лейбниц' правило говорит нам это

Dms=j=0m(mj)DjwDmjr.

Следовательно, если v(:,j) содержит D j –1R (x), j = 1... m + 1, то

(((v(1:конец1,m+1)j=1m(mj)v(конец,j+1)v(1:конец1,j+1))/v(конец,1))

обеспечивает значение DmR (x).

Сплайны тонкой пластины

Двумерный сплайн тонкой пластины имеет форму

f(x)=j=1n3φ(|xcj|2)aj+x(1)an2+x(2)an1+an,

с φ (t) = t logt одномерная функция и y обозначение Евклидовой длины векторного y. Сайты cj называются центрами и радиально симметричной функцией ψ (x) : = φ (|x|2) называется основной функцией этой конкретной stform.

Интерполяция

Интерполяция является конструкцией функционального  f , который совпадает со значениями определенных данных, yi, на сайтах определенных данных, xi, в том смысле, что f (xi) = yi, весь i.

interpolant, f, обычно создается как уникальная функция формы

f(x)=jfj(x)aj

это совпадает с определенными данными с функциями fj, выбранный “соответственно”. Много факторов могут ввести тот выбор. Один из этих факторов, несомненно, будет, что можно совпадать таким образом с произвольными данными. Например, полиномиальной интерполяция популярна потому что, для произвольных точек данных n (xi, yi) с отличными сайтами данных, существует точно один полином порядка n – 1, который совпадает с этими данными. Явным образом выберите fj в вышеупомянутой “модели”, чтобы быть

fj(x)=Πij(xxi),

который является n – 1 полином степени для каждого j. fj (xi) = 0 для каждого i ≠ j, но fj (xj) ≠ 0 пока xi все отличны. Установите aj = yj/fj (xj) так, чтобы

f (xj) = fj (xj) aj = yj для всего j.

В интерполяции сплайна каждый выбирает fj, чтобы быть n последовательные B-сплайны Bj (x) = B (x |tj..., t j +k), j = 1:n, порядка k для некоторой последовательности узла t 1 ≤ t 2 ≤ ... ≤ t n + k. Для этого выбора существует следующая важная теорема.

Шенберг-Уитни Зэорем

Позвольте x 1 < x 2 < ... < xn. Для произвольных соответствующих значений yi, i = 1... n, там существует точно один сплайн f порядка k с последовательностью узла tj, j = 1... n +k, так, чтобы f (xi) = yi, i = 1... n, если и только если сайты удовлетворяют условия Шенберга-Уитни порядка k относительно той последовательности узла t, а именно,

tixit i +k, i = 1... n,

с равенством, позволенным, только если рассматриваемый узел имеет кратность k, т.е. появляется времена k в t. В этом случае создаваемый сплайн может иметь разрыв скачка через тот узел, и именно его предел справа или оставленный на уровне того узла совпадает со значением, данным там.

Приближение наименьших квадратов

В приближении наименьших квадратов данные могут быть соответствующими только приблизительно. А именно, линейная система

f(xi)=jfj(xi)aj=yi, i=1...n,

решен в смысле наименьших квадратов. В этом некоторое взвешивание включено, т.е. коэффициенты, a j определяется, чтобы минимизировать ошибочную меру

E(f)=iwi|yif(xi)|2

для определенных неотрицательных весов wi в распоряжении пользователя, со значением по умолчанию быть, чтобы иметь все эти веса то же самое.

Сглаживание

В сглаживании сплайна каждый также пытается совершить такую ошибку измериться маленький, но попытки в то же время, чтобы сохранить следующую меру по шероховатости маленькой,

F(Dmf)=x1xnλ(x)|Dmf(x)|2 dx,

с λ неотрицательная функция веса, которая является обычно только постоянной функцией 1 и Dmf m th производная f. Притязания маленького E (f) и маленького F (Dmf) установлены параметром сглаживания, например, путем минимизации

ρE(f)+F(Dmf)  или  pE(f)+(1p)F(Dmf),

для некоторого выбора ρ или p, и по всему f , для которого целесообразно это выражение.

Замечательно, если вес шероховатости, λ является постоянным, то уникальный минимизатор f является сплайном порядка 2m, с узлами только на сайтах данных и всех внутренних простых узлах, и с его производными порядков m..., 2m–2 равный нулю на двух экстремальных сайтах данных, так называемых “естественных” граничных условиях. Большее параметр сглаживания ρ ≥ 0 или p ∊ [0.. 1] используемый, более тесно f совпадает с определенными данными, и большим является свой m th производная.

Для значений данных yi на сайтах ci в плоскости каждый использует вместо этого ошибочную меру и меру по шероховатости

E(f)=i|yif(ci)|2,  F(D2f)=(|D11f|2+2|D12f|2+|D22f|2),

и, соответственно, минимизатор суммы ρE (f) + F (D 2f) не является полиномиальным сплайном, но является сплайном тонкой пластины.

Обратите внимание на то, что уникальный минимизатор ρE (f) + F (D 2f) для, учитывая 0 < ρ < ∞ является также уникальным минимизатором p E (f) + (1 – p) F (D 2f) для p = ρ / (1 + ρ) ∊ (0 .. 1) и наоборот.

2D, 3D, ND

Называет, такие как “2D проблема”, или “3D проблема” не используется в этом тулбоксе, потому что они не четко определены. Например, 2D проблемой могло быть любое из следующего:

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

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

  • Сайты данных в плоскости, где необходимо создать двумерную функцию сплайна со скалярным знаком.

“3D проблема” столь же неоднозначна. Это могло включить кривую, поверхность, функцию трех переменных.... Лучше классифицировать проблемы областью и целью функции (функций), которая будет создана.

Почти все команды конструкции сплайна в этом тулбоксе могут иметь дело с данными со знаком ND, означая, что значения данных являются массивами ND. Если d является размером такого массива, то получившийся сплайн называется d - оцененный.

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте