📄 14-人字架结构尺寸的优化设计-1.m__.htm
字号:
<html><head><title>MATLAB.rar 14-人字架结构尺寸的优化设计-1.m</title>
<LINK href="/inc/read_style.css" type=text/css rel=stylesheet></head>
<body>
<p><a href=http://www.pudn.com>www.pudn.com</a> > <a href="http://www.pudn.com/downloads111/sourcecode/graph/detail461284.html">MATLAB.rar</a> > 14-人字架结构尺寸的优化设计-1.m</p><!-- saved from http://www.pudn.com -->
<script src="/inc/gg_read1.js"></script><BR>
<pre name="code" class="m">
% 人字架体积优化设计
% 1----主程序
% 人字架优化调用目标函数文件与非线性约束文件
% 设计变量的初始值
x0=[100;800];
% 设计变量的下界与上界
lb=[20;200];
ub=[140;1200];
% 线性不等式约束(g3、g4、g5、g6)中设计变量的系数矩阵
a=zeros(4,2);
a(1,1)=-1;a(2,1)= 1;
a(3,2)=-1;a(4,2)= 1;
% 线性不等式约束中常数项列阵
b=[-20;140;-200;1200];
% 调用多维约束优化函数
% 等式约束参数Aeq,beq定义为空矩阵符号“[ ]”
[x,fn]=fmincon(@rzjyh_f,x0,a,b,[],[],lb,ub,@rzjyh_g);
disp ' ******** 人字架体积优化设计最优解 ********'
fprintf (1,' 钢管平均直径 D = %3.4f mm \n',x(1))
fprintf (1,' 人字架高度 H = %3.4f mm \n',x(2))
fprintf (1,' 人字架体积 V = %3.4f mm^3 \n',fn)
% 调用多维约束优化非线性约束函数(jsqyh_g)计算最优点x*的性能约束函数值
g=rzjyh_g(x);
disp ' ======== 最优点的性能约束函数值 ========'
fprintf (1,' 人字架钢管压缩强度 g1 = %3.4f \n',g(1))
fprintf (1,' 人字架钢管稳定性 g2 = %3.4f \n',g(2))
% 2----目标函数(rzjyh_f)
function f=jsqyh_f(x);
% 人字架跨距B;钢管厚度T;
B=1520;T=2.5;
f=2*pi*x(1)*T*sqrt((B/2)^2+x(2)^2);
% 3----非线性不等式约束函数(rzjyh_g)
function [g,ceq] = rzjyh_g(x);
% 人字架跨距B;钢管厚度T;载荷P;弹性模量E;许用压应力Cy;
B=1520;T=2.5;P=294300;E=2.119e5;Cy=690;
% 钢管压缩强度条件
Q=0.5*P*sqrt((B/2)^2+x(2)^2)/x(2); % 钢管轴向压力
sgm=Q/(pi*T*x(1)); % 钢管压应力
g(1)=sgm-Cy;
% 钢管稳定性条件
Cc=0.125*pi^2*E*(x(1)^2+T^2)/((B/2)^2+x(2)^2); % 稳定临界应力
g(2)=sgm-Cc;
ceq=[];
</pre>
<script src="/inc/gg_read2.js"></script><BR>
<script src="http://s117.cnzz.com/stat.php?id=1236358&web_id=1236358&show=pic" language="JavaScript" charset="gb2312"></script>
</body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -