Borrar filtros
Borrar filtros

How can I differentiate my B-Splines?

3 visualizaciones (últimos 30 días)
Fabian Schaum
Fabian Schaum el 27 de Ag. de 2016
Respondida: Shruti Shivaramakrishnan el 31 de Ag. de 2016
Trying to differentiate these B-Splines over [0,1], where n : order of b-spline, u : breaks.
I do not have the curve fitting toolbox and I have already tried to find something here/on stackexchange, but nothing seems to work. I'd appreciate help or explanation/ pointing out my mistakes or just plain code to make it work. Thanks!
function y = splines(u,n)
if n>2
y = ((u/(n-1)).*splines (u,n-1))+ (((n-u)/(n-1)).*splines(u-1,n-1));
else
y = zeros(size(u));
ind = find(u>0 & u<2) ;
y(ind) = 1 - abs(u(ind)-1);
end
end
  1 comentario
dpb
dpb el 27 de Ag. de 2016
Editada: dpb el 28 de Ag. de 2016
If you define the coefficients properly(), couldn't you then just use *polyder for each segment?
() Same order as used by *polyfit and friends, that is...

Iniciar sesión para comentar.

Respuestas (1)

Shruti Shivaramakrishnan
Shruti Shivaramakrishnan el 31 de Ag. de 2016
A similar question has been answered on the following MATLAB Answers link :
https://www.mathworks.com/matlabcentral/answers/95194-how-do-i-find-the-derivative-of-a-spline-curve-in-matlab-7-9-r2009b
You could refer to the second part of the answer that describes the differentiation of a spline without using the curve-fitting toolbox.

Categorías

Más información sobre Spline Postprocessing en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by