Finding the maxima/minima of a function.

80 vues (au cours des 30 derniers jours)
Christopher
Christopher le 6 Sep 2013
Commenté : KADALI le 3 Jan 2023
My lab TA assigned a small project to find and plot the absolute value of the maxima and minima of a given function. I made a quick and dirty algorithm to do so, but I'm having two issues with it and I simply cannot figure out what is wrong with my code.
1.) For some reason, it isn't grabbing the actual highest value, but rather one close to it.
2.) The max/min plot dips down to nearly zero and then climbs up steadily with the Absolute valued function.
I know there are other ways of doing it, including using the derivative of the function, but I would much rather assistance in finding out what is incorrect in my algorithm, which tests surrounding points in order to find maxima and minima.
Here is the code:
________________
%This program plots the abs val of the maxima and minima of a function.
%This max/min value will then continue to be plotted until a new maxima or
%minima is found.
clear,clc;
t=[0:0.1:20];
y=exp(-t).*sin(pi./2.*t); %Our Function
yAbs=abs(y); %Take the absolute value of the function.
yMaxMin=zeros(201); %Create an array of zeros to be filled w/ data.
for(i=2:200)
%If a point is a maxima in yAbs, it will be a maxima or a minima in y.
if(yAbs(i-1)<yAbs(i)&&yAbs(i+1)>yAbs(i))
plotPoint=yAbs(i); %If the value is a max, store it in plotPoint.
end
yMaxMin(i)=plotPoint; %Store the value of plotPoint into yMaxMin(i)
end
plot(t,yAbs);
hold on
plot(t,yMaxMin);
  2 commentaires
Muhammad Sheraz Ali
Muhammad Sheraz Ali le 15 Mar 2022
Question: "How do we find the maxima and minima of a continuous function ff on a closed and bounded interval [a,b]?[a,b]?" • Find the derivative 𝑓′(𝑥) of �
• Find all critical values of 𝑓, let's say 𝑐1, 𝑐2, …, 𝑐𝑘. • Compute 𝑓(𝑎) and 𝑓(𝑏), together with 𝑓(𝑐1),𝑓(𝑐2),…,𝑓(𝑐𝑘). • Compare (order) the values in step 3. • Then the minimum value is global minima of the values in step 4 and the maximum is the global maxima.
KADALI
KADALI le 3 Jan 2023
find 1st and 2nd order derivatives matlab of f(X) = x^3+3xy^2-15x^2-15y^2+72x

Connectez-vous pour commenter.

Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 6 Sep 2013
You can use findpeaks function
  1 commentaire
Christopher
Christopher le 7 Sep 2013
Thank you. I didn't realize that function existed. I rewrote my code and it's now functioning properly!

Connectez-vous pour commenter.

Plus de réponses (4)

Abhay Chaudhary
Abhay Chaudhary le 11 Août 2019
%This program plots the abs val of the maxima and minima of a function.
%This max/min value will then continue to be plotted until a new maxima or
%minima is found.
clear,clc;
t=[0:0.1:20];
y=exp(-t).*sin(pi./2.*t); %Our Function
yAbs=abs(y); %Take the absolute value of the function.
yMaxMin=zeros(201); %Create an array of zeros to be filled w/ data.
for(i=2:200)
%If a point is a maxima in yAbs, it will be a maxima or a minima in y.
if(yAbs(i-1)<yAbs(i)&&yAbs(i+1)>yAbs(i))
plotPoint=yAbs(i); %If the value is a max, store it in plotPoint.
end
yMaxMin(i)=plotPoint; %Store the value of plotPoint into yMaxMin(i)
end
plot(t,yAbs);
hold on
plot(t,yMaxMin);
  1 commentaire
VEMIREDDY
VEMIREDDY le 2 Déc 2022
Maxima and minima of f(x)=x^4-3x^2y^2+4x+y^4

Connectez-vous pour commenter.


Jaideep Banoth
Jaideep Banoth le 24 Fév 2021
if true
% code
end

Ruthika j
Ruthika j le 9 Oct 2021
find the critical points maxima and maxima of the function f(x) = 2x^3-9x^2+12x-3

Dinesh C
Dinesh C le 2 Déc 2021
x*4+y*4-x*2-x*2+1

Catégories

En savoir plus sur Feature Detection and Extraction dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by