?? 14-人字架結構尺寸的優(yōu)化設計-1.m
字號:
% 人字架體積優(yōu)化設計
% 1----主程序
% 人字架優(yōu)化調(diào)用目標函數(shù)文件與非線性約束文件
% 設計變量的初始值
x0=[100;800];
% 設計變量的下界與上界
lb=[20;200];
ub=[140;1200];
% 線性不等式約束(g3、g4、g5、g6)中設計變量的系數(shù)矩陣
a=zeros(4,2);
a(1,1)=-1;a(2,1)= 1;
a(3,2)=-1;a(4,2)= 1;
% 線性不等式約束中常數(shù)項列陣
b=[-20;140;-200;1200];
% 調(diào)用多維約束優(yōu)化函數(shù)
% 等式約束參數(shù)Aeq,beq定義為空矩陣符號“[ ]”
[x,fn]=fmincon(@rzjyh_f,x0,a,b,[],[],lb,ub,@rzjyh_g);
disp ' ******** 人字架體積優(yōu)化設計最優(yōu)解 ********'
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)
% 調(diào)用多維約束優(yōu)化非線性約束函數(shù)(jsqyh_g)計算最優(yōu)點x*的性能約束函數(shù)值
g=rzjyh_g(x);
disp ' ======== 最優(yōu)點的性能約束函數(shù)值 ========'
fprintf (1,' 人字架鋼管壓縮強度 g1 = %3.4f \n',g(1))
fprintf (1,' 人字架鋼管穩(wěn)定性 g2 = %3.4f \n',g(2))
% 2----目標函數(shù)(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----非線性不等式約束函數(shù)(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;
% 鋼管穩(wěn)定性條件
Cc=0.125*pi^2*E*(x(1)^2+T^2)/((B/2)^2+x(2)^2); % 穩(wěn)定臨界應力
g(2)=sgm-Cc;
ceq=[];
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -