Peak-finding function doesn't work.

1 view (last 30 days)
Jan
Jan on 30 Mar 2011
function [M] = peak(A)
for j=2:size(A,2)
if A(j,2)-A(j-1,2) >= 0 && A(j,2)-A(j+1,2) >= 0
M=[M,A(j,1)];
end
end
This is supposed to be a function that makes a vector M that contains all local peaks from a vector A. It doesn't do anything. Could anyone tell me what is wrong?
Greetings and thanks in advance

Accepted Answer

Matt Fig
Matt Fig on 30 Mar 2011
What do you mean by, "Doesn't do anything?" Do you mean you get an error? I would imagine that the error is something about an undefined variable M. If you are going to do it this way, you should define M before the loop.
M = [];
  2 Comments
Jan
Jan on 30 Mar 2011
I did that the first time, added it again and now it works. Very strange...
Matt Fig
Matt Fig on 30 Mar 2011
Does this mean that you accept the answer? Please indicate this by pushing the appropriate button.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!