y = diff(sin(2*pi*t))./diff(t);
plot(t,y)
Remember diff() shortens the length of your vector by one so you will need to define a new time vector to plot against. ---- how do i do this?
thank you

 채택된 답변

Yu Jiang
Yu Jiang 2014년 10월 6일

1 개 추천

plot(t(2:end),y)

댓글 수: 8

Andrew
Andrew 2014년 10월 6일
yeah works for sin(), however when you try to do it for t^2. come sup with error.
Geoff Hayes
Geoff Hayes 2014년 10월 6일
What is the error, and the line(s) of code that you are using?
using your fix for the plot(t(2:end),y), as plot(t,y) doesn't work
Error using diff
Difference order N must be a positive integer scalar.
y=diff(t,t);
plot(y,t)
returning an error
Yu Jiang
Yu Jiang 2014년 10월 6일
편집: Yu Jiang 2014년 10월 6일
what is the t vector? What is the expected result from y=diff(t,t)?? This is different from you original post.
I tried the following on my machine, and it worked
t = linspace(-10,10,100);
y = diff(sin(2*pi*t))./diff(t);
plot(t(2:end),y)
Andrew
Andrew 2014년 10월 6일
yeah it works, but when u integrate that technique into a different equation, it triggers an error.
Andrew
Andrew 2014년 10월 6일
its ok, i fixed it. thanks for your help sir.
Yu Jiang
Yu Jiang 2014년 10월 6일
You are welcome.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터 및 File Exchange에서 Mathematics에 대해 자세히 알아보기

질문:

2014년 10월 6일

댓글:

2014년 10월 6일

Community Treasure Hunt

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

Start Hunting!

Translated by