The maximum value assumed by the function on the interval

99 ビュー (過去 30 日間)
Eralp Ali Zeydan
Eralp Ali Zeydan 2019 年 6 月 12 日
コメント済み: Walter Roberson 2021 年 4 月 8 日
What is the maximum value assumed by the function f(x) = sin(5*cos(x))*cos(5*sin(x)) on the interval [0,1] ?

回答 (2 件)

James Browne
James Browne 2019 年 6 月 12 日
Greetings,
I wrote an example for you which finds the maximum value of f(x) over the specified interval and plots the resuts. Here you go, hope this helps!
%Define the interval over which f(x) will be evaluated
xInterval = [0 1];
%specify resolution of the evaluation
dx = 0.0001;
%Create a vector of x values based on the interval of evaluateion and
%resolution specifications
x = xInterval(1): dx : xInterval(2);
%Calculate f(x) values
for i = 1:length(x)
fx(i) = sin(5*cos(x(i)))*cos(5*sin(x(i)));
end
%Find the magnitude and index of the maximum f(x) value and print the
%maximum magnitude to the command window
[M,idx] = max(fx);
fprintf('The maximum value in the given range of x is: %5.4f\n',M)
%Use the index of the maximum f(x) value to find the x value which produced
%the maximum f(x) value
xForMaxFx = x(idx);
%Determine title based on interval of evaluation parameters
titleName = strcat('Maximum f(x) Value over the interval [',num2str(xInterval(1)),',',num2str(xInterval(2)),']');
%Plot f(x) and highlight the maximum value
plot(x,fx,xForMaxFx,M,'kd')
title(titleName)
xlabel('x (units)')
ylabel('f(x) (units)')
ylim([-1,1])
legend('f(x)','Maximum f(x) value','location','southeast')
  5 件のコメント
Walter Roberson
Walter Roberson 2021 年 4 月 8 日
The line that defines the function? You mean
fx(i) = sin(5*cos(x(i)))*cos(5*sin(x(i)));
??
But that line only uses scalar values.
Walter Roberson
Walter Roberson 2021 年 4 月 8 日
Example of the function changed to use ^ without using .^
No failure.
%Define the interval over which f(x) will be evaluated
xInterval = [0 1];
%specify resolution of the evaluation
dx = 0.0001;
%Create a vector of x values based on the interval of evaluateion and
%resolution specifications
x = xInterval(1): dx : xInterval(2);
%Calculate f(x) values
for i = 1:length(x)
fx(i) = sin(5*cos(x(i)))^2*cos(5*sin(x(i)))^3;
end
%Find the magnitude and index of the maximum f(x) value and print the
%maximum magnitude to the command window
[M,idx] = max(fx);
fprintf('The maximum value in the given range of x is: %5.4f\n',M)
The maximum value in the given range of x is: 0.9195
%Use the index of the maximum f(x) value to find the x value which produced
%the maximum f(x) value
xForMaxFx = x(idx);
%Determine title based on interval of evaluation parameters
titleName = strcat('Maximum f(x) Value over the interval [',num2str(xInterval(1)),',',num2str(xInterval(2)),']');
%Plot f(x) and highlight the maximum value
plot(x,fx,xForMaxFx,M,'kd')
title(titleName)
xlabel('x (units)')
ylabel('f(x) (units)')
ylim([-1,1])
legend('f(x)','Maximum f(x) value','location','southeast')

サインインしてコメントする。


Walter Roberson
Walter Roberson 2019 年 6 月 12 日
Step 1: Plot the function to see visually the approximate peak. Find an approximate interval for the peak; it does not have to be precise at all.
Step 2: Differentiate the function. Solve for a zero of that over the approximate interval that you identified. That gives the location of the peak.
Step 3: substitute the location of the peak into the formula to get the value of the peak.

カテゴリ

Help Center および File ExchangeDescriptive Statistics についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by