声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1265|回复: 2

[编程技巧] 关于fmincon符号变量的使用求助

[复制链接]
发表于 2007-8-12 23:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
被这个问题困扰好久了!
具体如下:
[x,fval]=fmincon(@J,x0,[],[],[],[],lb,ub,@Risk,[],l,m,n,gxf(j),gyf(j),xs,ys,D);
其中J.m如下:
function f=J(x,l,m,n)
J=-1/2*log((2*pi*exp(1))^2*(l*n-m^2))
Risk.m如下:
function c=Risk(x,gxf[j],gyf[j],xs,ys,D)
c=D-sqrt((gxf-xs)^2+(gyf-ys)^2);
其中l,m,n,xs,ys均为与x有关的符号变量,是前面程序中推出来的;gxf(j),gyf(j),D为常数;j用来循环。@J与@Risk需要代入的变量还不一样,分别为l,m,n及gxf(j),gyf(j),xs,ys,D。
版上一位朋友告诉我用subs,但我还是不会用。。。。
我把程序附在下面,需要改错的地方用醒目的%%%标出来了,请大家帮我看一下,应该怎么改。万分谢谢!
(因为不能上传打包的格式,于是把程序一一附上,其中运行main.m出错。)

[ 本帖最后由 eight 于 2007-8-15 20:24 编辑 ]

main.m

4.92 KB, 下载次数: 23

J.m

109 Bytes, 下载次数: 21

Risk.m

183 Bytes, 下载次数: 19

ywgn.m

120 Bytes, 下载次数: 16

Evolution.m

432 Bytes, 下载次数: 15

observation.m

91 Bytes, 下载次数: 16

SysEqu.m

94 Bytes, 下载次数: 17

回复
分享到:

使用道具 举报

 楼主| 发表于 2007-8-13 17:50 | 显示全部楼层
解决了,用struct传递参数,用subs进行符号变量置换。

评分

1

查看全部评分

发表于 2008-1-18 19:07 | 显示全部楼层
解决了,用struct传递参数,用subs进行符号变量置换。

能够表述清楚一点吗?

[ 本帖最后由 eight 于 2008-1-22 16:12 编辑 ]
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-4 18:13 , Processed in 0.068973 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表