Finding Min and Max of a sinusoidal function
    24 views (last 30 days)
  
       Show older comments
    
Hi, 
So I have the following code and I want to find the min and max of the function. I tried using 'xmin' and 'ymin' but it outputs all of the values instead of the ones I am looking for. Based off the plot I should be getting 4 xmin and 4ymin points as well as 3xmax and 3ymax points. 
Anything would help! Thanks. 
1 Comment
  Walter Roberson
      
      
 on 3 Apr 2019
				You define
fv = 1:n;
What is it that you expect
minx = min(fv,fv(:,1))
to return?
Accepted Answer
  Star Strider
      
      
 on 3 Apr 2019
        I note that you’re using the code change I suggested, even though you did not Accept my previous Answer.  
If you have R2017a or later, you can use the islocalmax (link) and the related islocalmin (linked to in that page) functions: 
Try this instead: 
min_y = find(islocalmin(TL));
max_y = find(islocalmax(TL));
The correspoinding ‘f’ values are ‘fv(min_y)’ and ‘fv(max_y)’.  
If you don’t have those functions and do have the Signal Processing Toolbox, use the findpeaks function instead.  
0 Comments
More Answers (1)
  Walter Roberson
      
      
 on 3 Apr 2019
        
      Edited: Walter Roberson
      
      
 on 3 Apr 2019
  
      findpeaks(x,y) for the maxima, and findpeaks(x,-y) for the minima.
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

