Сглаживание сплайна
Примечание
Для более простого, но менее гибкого метода, чтобы сглаживать сплайны, попробуйте приложение Аппроксимирование Кривыми или fit
функция.
возвращает B-форму самой гладкой f функции, которая лежит в заданном допуске sp
= spaps(x
,y
,tol
) tol
из заданных точек данных (x(j), y(:,j)), j=1:length(x)
. Значения данных y(:,j)
являются скалярами, векторами, матрицами или даже ND-массивами. Точки данных с тем же сайтом данных заменяются их взвешенными средним значением, с его весом, суммой соответствующих весов и допуском tol
уменьшается соответственно.
[sp,
также возвращает сглаженные значения. values
] = spaps(x,y,tol) values
то же, что и fnval(sp,x)
.
Здесь расстояние между функциями, f от заданных данных, измеряется
с выбором по умолчанию для весов w
делая E (f) составной метод трапеций , и |<reservedrangesplaceholder0>|2 обозначающая сумму квадратов значений z.
Кроме того, самое плавное означает, что следующая мера шероховатости минимизируется:
где Dmf обозначает m
1-я производная f. Значение по умолчанию для m
является 2
значение по умолчанию для λ веса измерения шероховатости является константой 1, и это делает f кубическим сглаживающим сплайном.
Когда tol
является неотрицательной, затем f сплайна определяется как уникальный минимайзер выражения E (f) + F (Dmf), с параметром сглаживания, (опционально возвращенным) таким образом выбранным, чтобы E (f) равнялось tol
. Следовательно, когда m
является 2
, затем, после преобразования в ppform, результат должен быть таким же (вплоть до round-off), как получен csaps (x, y, Далее, когда tol
равен нулю, затем возвращается «естественная» или вариационная сплайн интерполяция порядка 2 m. Для достаточно больших tol
аппроксимация данных методом наименьших квадратов полиномами степени < m
возвращается.
Когда tol
отрицательна, тогда, - -tol
.
Значение по умолчанию для функции веса, λ в мере шероховатости, является постоянной функцией 1. Но можно выбрать его, чтобы быть, в более общем плане, кусочно-постоянной функцией, с пропусками только на сайтах данных. Предположение о векторном x
чтобы строго увеличиться, вы задаете такую кусочно-постоянную λ путем ввода tol
как вектор того же размера, что и x
. В этом случае tol(i)
принимается как постоянное значение λ на интервале (x(i-1)
.. x(i)
), i=2:length(x)
, в то время как tol(1)
продолжает использоваться в качестве заданного допуска.
[sp,values,
также возвращает фактическое значение ρ, используемого в качестве третьего выходного аргумента.rho
] = spaps(x,y,tol)
[...] = spaps(x,y,tol,
позволяет задать вектор веса w
,m
) w
и/или целое число m
, путем предоставления их как argi
. Для этого w
должен быть неотрицательным вектором того же размера, что и x
; m
должен быть 1
(для кусочно-линейного сглаживающего сплайна), или 2
(для кубического сглаживающего сплайна по умолчанию), или 3
(для квинтического сглаживающего сплайна).
Если результат сглаживания сплайна sp должен быть оценен вне его основного интервала, он должен быть заменен fnxtr(sp,m)
для обеспечения того, чтобы его m
-ая производная равна нулю за пределами этого интервала.
[...] = spaps({x1,...,xr},y,tol,...)
возвращает B-форму r
-variate tensor-product сглаживание сплайна, который находится примерно в пределах заданного допуска к данным с сеткой. Для данных , имеющих разбросов используйте tpaps
. Теперь y
ожидается, что соответствующие значения в сетке будут снабжены size(y)
равно [length(x1),...,length(xr)]
в случае, если функция является скалярной и равной [d,length(x1),...,length(xr)]
в случае если функция d
-значен. Далее, tol
должен быть массивом ячеек с r
записи, с tol{i}
допуск, используемый во время i
-й шаг, когда одномерное (но векторное) сглаживание сплайна в i
-я переменная создается. Необязательный вход для m
должен быть r
-вектор (с записями из набора {1,2,3}
) и необязательный вход для w
должен быть массивом ячеек длиной r
, с w{i}
либо пустой (чтобы указать, что требуется выбор по умолчанию), либо положительный вектор той же длины, что и xi
.
Эта функция использует подход Рейнша [1], включая его способ выбора уравнения для оптимального параметра сглаживания таким образом, чтобы было доступно хорошее начальное предположение, и метод Ньютона гарантированно сходится и быстро сходится.
[1] C. Reinsch. Сглаживание сплайн. Числитель. Математика 10 (1967), 177-183.