# What is the maths behind findpeaks function on matlab?

19 views (last 30 days)
Matlaber on 9 May 2020
Commented: Hsein Ping Kew on 11 May 2020
How can I use maths to explain this matlab function?
findpeaks function

Ameer Hamza on 9 May 2020
Most of the MATLAB algorithms are proprietary, which means their details and code is not publicly available. You cannot get any more information other than specified on the documentation page. If a publicly available algorithm is used, then it is mentioned in the "Algorithm" and "References" section of the documentation. As you can see, the documentation of findpeaks has neither of these sections, so there is no way to get the details of the algorithm.

Matlaber on 9 May 2020
However, the code is available.
I can read the "findpeaks" code in matlab using command
open findpeaks
and the code given below:
[SL: removed the body of the findpeaks function from Signal Processing Toolbox. Please don't post MathWorks functions.]
Ameer Hamza on 10 May 2020
Yes, the code is indeed available in this case, but it didn't mention the name of any known algorithm. If the code is viewable, then you can use a breakpoint to run it line by line to understand its working.
Matlaber on 10 May 2020
Thanks, I did read the code line by line, but is very hard to understand. That is why I am posting this question.

Honglei Chen on 11 May 2020
There is no specific name for the algorithm. Essentially it looks for points that is larger than the two adjacent points. Is there anything specific you want to know?
HTH

Show 1 older comment
Honglei Chen on 11 May 2020
What I said is true though, as that's the main idea behind the code. The code certainly needs to consider the case when the peak is at the edge or something liike that, but what I said is the main idea behind the code.
It will be difficult to give an line by line explanation for the entire code, espeically when there are many codes for parsing and plotting, which is irrelevant to the algorithm. Do you have question for any specific code?
Ameer Hamza on 11 May 2020
Hsein, posting the code of MATLAB function on an online forum is not permitted. Mathworks holds the copyrights for the code. I have removed the code from your comment.
Hsein Ping Kew on 11 May 2020