Numerical derivative in matlab

461 次查看(过去 30 天)
Hello,
I'm using Matlab 2012 and would need the numerical derivative of a function. What is the Malab command for that ?
Thank you in advance

采纳的回答

Azzi Abdelmalek
Azzi Abdelmalek 2013-9-26
If you have a series of data
t=[0 1 2 3 4 5] % Vector time
y=[1 2 4 8 12 13] % Your signal
% The derivative can be approximated :
diff(y)./diff(t)
%You can also use symbolic derivative
syms t y
y=cos(t)
dy=diff(y)

更多回答(2 个)

Rohit Garud
Rohit Garud 2020-8-16
编辑:Rohit Garud 2020-8-16
You can use the gradient() function in newer versions of matlab
dy_by_dt = gradient(y(:)) ./ gradient(t(:))
  11 个评论
Daphne PARLIARI
Daphne PARLIARI 2021-1-6
Oh I got confused... What would be the solution to that?
Walter Roberson
Walter Roberson 2021-1-6
for k = 2:length(percent_change)
text(x(k),y(k),sprintf('%0.1f%%',percent_change(k)),...
'HorizontalAlignment','center',...
'VerticalAlignment','bottom')
end

请先登录,再进行评论。


Tamas Kis
Tamas Kis 2021-4-14
Function that can differentiate a set of points given as vectors (such as how you would use cumtrapz to integrate), or differentiate a function defined using a function handle. It can differentiate at any specified point(s) or over an entire domain. Also is of slightly higher accuracy than using diff(y)./diff(t) because it uses central approximation at the interior nodes.

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by