using diff or gradient function normalized the vector

for some reason when i use gradient function over a vector the scale get lowerd for example of sin function: the maximum is divided by 10 and in other cases the maximum is divided by something else

回答 (1 件)

Jos
Jos 2015 年 4 月 4 日

0 投票

you have to divide by the time step. For instance, this gives you what you want
dt=0.1;
t=-2*pi:dt:2*pi;
subplot(3,1,1)
plot(t,sin(t))
subplot(3,1,2)
plot(t,gradient(sin(t),dt))
subplot(3,1,3)
plot(t(1:end-1),diff(sin(t))/dt)

製品

タグ

質問済み:

2015 年 4 月 3 日

回答済み:

Jos
2015 年 4 月 4 日

Community Treasure Hunt

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

Start Hunting!

Translated by