matlab求函数在区间内最大值与最小值

在这里插入图片描述
我用了fminbnd这个函数使用方法如下
详细信息官方文档

方法一

fun = @sin;
x1 = 0;
x2 = 2*pi;
x = fminbnd(fun,x1,x2)
结果
x = 4.7124 %返回的是当极小值点

方法二

求 sin(x) 的最小值的位置以及在 0<x<2π 区间内的最小值。
fun = @sin;
[x,fval] = fminbnd(fun,1,2*pi)
结果
x = 4.7124
fval = -1.0000 %返回的是最小值

所以我们便可以随便用一种方法解出题目,我用的是方法二

clear
f=@(x)2*exp(-x)*sin(x);
[xmin,ymin]=fminbnd(f,0,5)
f1=@(x)(-1)*2*exp(-x)*sin(x);
[xmax,ymax]=fminbnd(f1,0,5)
ymax=-ymax

运行结果如下

在这里插入图片描述

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐