How to take time derivatives of a function?

6 visualizzazioni (ultimi 30 giorni)
My objective is to take the first and second time derivatives of my function for displacement 'x'. I have it modelling a function of displacement over angle with respect to time. Does MATLAB have a function that represents dx/dt? Here are the analytical solutions and my code for reference.
h = 60 ;
b =130 ;
r = 28 ;
w = 2*pi; % angular velocity
t =0:(1/36):1 ;
x = b*(r*sin(w*t))./(h-r*cos(w*t));

Risposta accettata

KSSV
KSSV il 25 Lug 2018
dxdt = diff(x)./diff(t) ; % derivative of x w.r.t t
  3 Commenti
KSSV
KSSV il 25 Lug 2018
When we use diff the dimension of vector will be reduced by one. Two options to plot.
v = diff(x)./diff(t) ; % derivative of x w.r.t t
plot(v,t(1:end-1));
OR
v = gradient(x)./gradient(t) ; % derivative of x w.r.t t
plot(v,t);
Roger Bijlani
Roger Bijlani il 27 Ago 2020
Thank you for this answer! All the examples online just show symbolic integration!

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Language Fundamentals in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by