声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1064|回复: 0

[混合编程] 求助程序编写,毕业在即,设计遇到障碍,望各位能助小弟一把

[复制链接]
发表于 2010-6-15 00:46 | 显示全部楼层 |阅读模式

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

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

x
我编的如下,不知怎么搞的,错误的我不知所云,多谢您的精妙指点
目标函数
syms x S0
S0=x*tg(α/2)+(D-d)/4-l/2*tg(α/2);
S1=int(S0;x;0;l); S2=int(S0^2;x;0;l);
function f=rzjqh(x);
ρ=7.81e-3; f=Pi*x(1)*ρ*S1+Pi*ρ*S2;
约束函数
function[g,ceq]=rzjqh(x);
бmax=150*D*d^3/(D^4-d^4); τmax=140*D*d^3/(D^4-d^4);
F1=[б]65mn=430; F2=[τ]65mn=570;
g(1)=бmax-F1; g(2)=τmax-F2; ceq=[];
调用函数
X0=[40;35;6;15°]; lb=[32;28;5.3;12°]; ub=[114;100;18.7;17.5°];
b=[-32;114;-28;100;5.3;18.7;12°;17.5°];
options=optiomset('display','iter','largescale','off');
[x,fval,exitflag,output]=fmincon(@rajzh,x0,a,b,[],[],lb,ub,@rzjyh,options);
[g]=rzjyh(x)
disp'胀紧套质量最优化设计最优解'
fprintf(1,'胀套外环直径D=%3.4f mm/n',x(1))
fprintf(1,'胀套内环直径d=%3.4f mm/n',x(2))
fprintf(1,'胀套外环直径l=%3.4f mm/n',x(3))
fprintf(1,'胀套的锥度α=%3.4f mm/n',x(4))
fprintf(1,'胀套的质量m=%3.4f g/n',fval)

多谢各位大虾的指点

[ 本帖最后由 ChaChing 于 2010-6-15 09:45 编辑 ]

目标函数

目标函数

约束函数

约束函数

边界条件

边界条件
回复
分享到:

使用道具 举报

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-11-26 02:01 , Processed in 0.066114 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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