Finding the maxima/minima of a function.

조회 수: 46 (최근 30일)
Christopher
Christopher 2013년 9월 6일
댓글: KADALI 2023년 1월 3일
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
Muhammad Sheraz Ali
Muhammad Sheraz Ali 2022년 3월 15일
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 2023년 1월 3일
find 1st and 2nd order derivatives matlab of f(X) = x^3+3xy^2-15x^2-15y^2+72x

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

채택된 답변

Azzi Abdelmalek
Azzi Abdelmalek 2013년 9월 6일
You can use findpeaks function
  댓글 수: 1
Christopher
Christopher 2013년 9월 7일
Thank you. I didn't realize that function existed. I rewrote my code and it's now functioning properly!

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

추가 답변 (4개)

Abhay Chaudhary
Abhay Chaudhary 2019년 8월 11일
%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
VEMIREDDY
VEMIREDDY 2022년 12월 2일
Maxima and minima of f(x)=x^4-3x^2y^2+4x+y^4

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


Jaideep Banoth
Jaideep Banoth 2021년 2월 24일
if true
% code
end

Ruthika j
Ruthika j 2021년 10월 9일
find the critical points maxima and maxima of the function f(x) = 2x^3-9x^2+12x-3

Dinesh C
Dinesh C 2021년 12월 2일
x*4+y*4-x*2-x*2+1

카테고리

Help CenterFile Exchange에서 Feature Detection and Extraction에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by