?? 15-優化設計的分析與計算-1.m__.htm
字號:
<html><head><title>MATLAB.rar 15-優化設計的分析與計算-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> > 15-優化設計的分析與計算-1.m</p><!-- saved from http://www.pudn.com -->
<script src="/inc/gg_read1.js"></script><BR>
<pre name="code" class="m">
% 例1-水槽定截面時周長最小的二維無約束優化
% 1----無約束優化函數命令程序
% 初始點
x0=[25;45];
% 調用梯度法搜索
[x,Fmin]=fminunc('sc_wysyh',x0);
disp ' ******** 輸出最優解 ********'
fprintf (1,' 截面高度h x(1)* = %3.4f mm \n',x(1))
fprintf (1,' 斜邊夾角theta x(2)* = %3.4f 度 \n',x(2))
fprintf (1,' 截面周長s f* = %3.4f mm \n',Fmin)
% 2----二維無約束優化目標函數文件(sc_wysyh.m)
function f=sc_wysyh(x)
a=64516;hd=pi/180;
f=a/x(1)-x(1)/tan(x(2)*hd)+2*x(1)/sin(x(2)*hd);
% 3----繪制水槽截面周長等高線和曲面圖的程序
% 按(初值,終值,等分數)產生等間隔向量xx1,xx2
xx1=linspace(100,300,25);
xx2=linspace(30,120,25);
% 產生兩個[5x10]的網格矩陣x1,x2
[x1,x2]=meshgrid(xx1,xx2);
% 定義目標函數
a=64516;hd=pi/180;
f=a./x1-x1./tan(x2*hd)+2*x1./sin(x2*hd);
% 將整個圖形窗口分隔成2個子窗口,取左邊窗口
subplot(1,2,1);
% 繪制等值線并標注函數值
h=contour(x1,x2,f);
clabel(h);
% 定義左邊窗口坐標軸刻度范圍
axis([100 300 30 120])
% 標注左邊窗口和坐標軸
xlabel('高度 h (mm)')
ylabel('傾斜角 theta (度)')
title('目標函數(截面周長)等值線')
% 將整個圖形窗口分隔成2個子窗口,取右邊窗口
subplot(1,2,2);
% 繪制曲面圖
surfc(x1,x2,f);
% 定義右邊窗口坐標軸刻度范圍
axis([100 300 30 120 600 1200])
% 標注右邊窗口
title('目標函數(截面周長)曲面圖')
</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 + -