How to properly take derivative of discrete data ?

108 vues (au cours des 30 derniers jours)
Ole
Ole le 30 Déc 2015
Modifié(e) : Rohit Garud le 16 Août 2020
Taking derivative of discrete data requires some fitting and then using the b-form of the polynomial.
How to make a 'good' fit and properly take derivative? I am confused what is the right behavior of the derivative. Things change quite rapidly with small adjustments of the fitting scaps coefficient 0.09 in the example below.
The test.txt data is attached.
T = load('test.txt'); x = T(:,1); y=T(:,2)
pp22 = csaps(x,y,0.09);%some fit b-form
pp22val = ppval(pp22,x);
figure(1012)
plot(x,pp22val,x,y) %quality of fit
p_der202 = fnder(pp22,2);
y_prime22 = ppval(p_der202,x); % values
figure(101)
plot(x,y_prime22)

Réponses (1)

Rohit Garud
Rohit Garud le 16 Août 2020
Modifié(e) : Rohit Garud le 16 Août 2020
You can use the gradient() function in newer versions of matlab
dy_by_dx = gradient(y(:)) ./ gradient(x(:))

Catégories

En savoir plus sur Linear and Nonlinear Regression dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by