The maximum value assumed by the function on the interval

202 views (last 30 days)
What is the maximum value assumed by the function f(x) = sin(5*cos(x))*cos(5*sin(x)) on the interval [0,1] ?

Answers (2)

James Browne
James Browne on 12 Jun 2019
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 Comments
Walter Roberson
Walter Roberson on 8 Apr 2021
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')

Sign in to comment.


Walter Roberson
Walter Roberson on 12 Jun 2019
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.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by