bfb1988 发表于 2011-4-8 20:34

1stopt这样的函数改怎么写

在用1stopt做优化时碰到一个很复杂的优化函数,比如,我的优化变量是x1~x5,
zp=((4.333*x(1)*cosd(x(4))-(x(1)*cosd(x(5))))/(cosd(x(4))+cosd(x(5))));
zr=(4.333*x(1));
ass=(acosd((x(1)*cosd(22.5))/(x(1)+2.8)));
ap=(acosd((zp*cosd(22.5))/(zp+2.8)));
ar=(acosd((zr*cosd(22.5))/(zr+2.8)));
这些是计算要用的计算式,如有一个约束条件
tand(22.5)-(2/(x(1)*sind(22.5)^2))-tand(x(4))+((zp/x(1))*(tand(ap)-tand(x(4))))<=0,这里就要用到zp,ap两个式子,但我把这两个式子写进去时,提示函数表达式错误,有没有什么方法可以让程序先计算出上面的那些中间计算式,再代进约束里面处理呢?就是说我约束就只用写zp,ap,不用写一堆的关于x1~x5的表达式,太长了

呆呆呆 发表于 2013-6-24 07:06

同问!求高手解答。。。
用conststr还是不行。。。
页: [1]
查看完整版本: 1stopt这样的函数改怎么写