matlab 单纯性方法 工具箱,MATLAB Optimization Toolbox应用基础

三、上机内容与步骤:

1、熟悉MATLAB软件环境,了解用户界面、掌握帮助系统使用等(重点)。

2、如求解函数f(x)=sin(x)在区间[0, 2π]内的最小值及最小值点,使用如下命令即可:

>> [x, fval] = fminbnd(@sin, 0, 2*pi)?

%符号“@”表明目标函数为MATLAB自定义的正弦函数sin.m。

x =4.7124 %最小值点赋值给x。fval =-1.0000 %最小值赋值给fval。

3、如果目标函数并不是MATLAB自定义的函数,需要首先定义一个函数M 文件,以该文件的名称来代替上述命令行中的“sin”部分。

如希望求出

3

e

x

log

x

x

cos

x

)x(f

+

+

=在[0,1]内的最小值及最小值点,首先编

写目标函数的M文件opt1.m,如下:

function f = myfun(x)

%编写函数M文件时,上句代码中的“myfun”并不一定与文件名相同。

f = (x^3+cos(x)+x*log(x))/exp(x)

然后调用fminbnd函数,在命令窗口中输入:

>> [x, fval]=fminbnd(@opt1, 0, 1)?

x =0.5223

fval =

0.3974

%注意此处使用“opt1”而不是“myfun”。

4、如果目标函数的表达式较为简单,也可以使用表达式的字符串而不必编写目标函数。如上例也可以使用[x, fval]=fminbnd('(x^3+cos(x)+x*log(x))/exp(x)',0,1)实现。

注:在MATLAB软件中,function为关键字,%为注释符号,>>为命令窗口中的提示符。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值