工程结构优化设计编程作业.DOC

上传人:天*** 文档编号:943593 上传时间:2018-11-09 格式:DOC 页数:11 大小:94KB
下载 相关 举报
工程结构优化设计编程作业.DOC_第1页
第1页 / 共11页
工程结构优化设计编程作业.DOC_第2页
第2页 / 共11页
工程结构优化设计编程作业.DOC_第3页
第3页 / 共11页
工程结构优化设计编程作业.DOC_第4页
第4页 / 共11页
工程结构优化设计编程作业.DOC_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、工程结构优化设计编程作业1.用黄金分割法求方程 在区间-1,1上的解。33+1=0在 MATLAB 中没有专门的函数实现黄金分割法求解线性方程,可通过编写 glodf.m 函数实现黄金分割法求解,其代码如下:function x=glodf(f,a,b,eps)if(nargin=3)eps=1.0e-4;endf1=subs(sym(f),findsym(sym(f),a);f2=subs(sym(f),findsym(sym(f),b);if(f1=0)x=a;endif(f2=0)x=b;endif(f1*f20)disp(两端点函数值乘积大于0!);return;elset1=a+(b

2、-a)*0.382;t2=a+(b-a)*0.618;f_1=subs(sym(f),findsym(sym(f),t1);f_2=subs(sym(f),findsym(sym(f),t2);tol=abs(t1-t2);while(toleps)if(f_1*f_20)a=t2;elseb=t1;endendt1=a+(b-a)*0.382;t2=a+(b-a)*0.618;f_1=subs(sym(f),findsym(sym(f),t1);f_2=subs(sym(f),findsym(sym(f),t2);tol=abs(t2-t1);endx=(t1+t2)/2;end其实现的 M

3、ATLAB 代码如下: clear all; tic x=glodf(x3-3*x+1,-1,1,1e-6)x =0.34732.用抛物线法求解 的极值点,取值范围0.5,1,允许误差为 1e-6。=3+20.2在 MATLAB 中没有专门的函数实现抛物线法求解线性方程,可通过编写 paowuxian.m 函数实现抛物线法求解,其代码如下:function x=paowuxian(f,x0,x1,x2,e)if nargineh1=y-z;h2=x-y;c1=(feval(f,y)-feval(f,z)/h1;c2=(feval(f,x)-feval(f,y)/h2;d=(c1-c2)/(h2

4、+h1);w=c2+h2*d;xi=x-(2*feval(f,x)/(w+(w/abs(w)*sqrt(w2-4*feval(f,x)*d);z=y;y=x;x=xi;end其实现的 MATLAB 代码如下: fun=inline(x3+2*x-0.2); paowuxian(fun,0,0.5,1,1e-6),format shortans =0.09953.用齿形法对下图的结构进行杆件截面优化设计:节点处作用两种工况:(1) P1=2000kN,P2=0kN ;(2)P1=0kN,P2=2000kN。各杆采用同一材料制成,弹性模量 E 为常数,容许应力分别为: +=2107kPa ,-=1

5、.5107kPa。此结构为对称结构,工况也对称,所以 A1=A3,计算时只取两个变量 A1 和 A2,一种工况 P1=2000kN,P2=0kN。目标函数取为结构总重量:在 MATLAB 中没有专门的函数实现齿形法求解线性方程,可通过编写 Zigzag.m 函数实现齿形法求解,其代码如下:function newA1,newA2,newA3,W,exitflag =Zigzag( A1,A2,maxstep)if narginw1newA1=A11;newA2=A22;newA3=A11;W=vpa(w1*p*l,4);exitflag=1;lAW)2(1return;endu1=max(U)

6、;A=A.*u1;A11=A(1);A22=A(2);U=U./u1;U=roundn(U,-4);w=sqrt(2)*2*A11+A22;w1=w;if w1w2newA1=A13;newA2=A24;newA3=A13;W=vpa(w2*p*l,4);exitflag=0;return;endA=A.*U;A1=A(1);A2=A(2);U=(1e-4)*(sqrt(2)*A1+A2)/(sqrt(2)*A12+2*A1*A2);(1e-4)*(sqrt(2)*A1)/(sqrt(2)*A12+2*A1*A2);u1=max(U);A=A.*u1;A13=A(1);A24=A(2);U=U

7、./u1;U=roundn(U,-4);w=sqrt(2)*2*A13+A24;w2=w;A=A.*U;A1=A(1);A2=A(2);U=(1e-4)*(sqrt(2)*A1+A2)/(sqrt(2)*A12+2*A1*A2);(1e-4)*(sqrt(2)*A1)/(sqrt(2)*A12+2*A1*A2);endend其实现的MATLAB代码如下: clear;A1=1e-4;A2=1e-4;Anew1,Anew2,Anew3,W,exitflag=Zigzag(A1,A2)Anew1 =7.7346e-05Anew2 =4.5309e-05Anew3 =7.7346e-05W =0.0

8、002641*l*pexitflag =04. 用修改齿形法对结构进行杆件截面优化设计。在 MATLAB 中没有专门的函数实现修改齿形法求解线性方程,可通过编写 IZigzag.m 函数实现修改齿形法求解,其代码如下:function newA1,newA2,newA3,W,exitflag =IZigzag( A1,A2,v,maxstep)if narginw1newA1=A11;newA2=A22;newA3=A11;W=vpa(w1*p*l,4);exitflag=1;return;endu1=max(U);A=A.*u1;A11=A(1);A22=A(2);U=U./u1;x1=U(

9、1);x2=U(2);y1=1-v*(1-x1);y2=1-v*(1-x2);U=y1;y2;U=roundn(U,-4);w=sqrt(2)*2*A11+A22;w1=w;if w1w2newA1=A13;newA2=A24;newA3=A13;W=vpa(w2*p*l,4);exitflag=0;return;endA=A.*U;A1=A(1);A2=A(2);U=(1e-4)*(sqrt(2)*A1+A2)/(sqrt(2)*A12+2*A1*A2);(1e-4)*(sqrt(2)*A1)/(sqrt(2)*A12+2*A1*A2);u1=max(U);A=A.*u1;A13=A(1);

10、A24=A(2);U=U./u1;x1=U(1);x2=U(2);y1=1-v*(1-x1);y2=1-v*(1-x2);U=y1;y2;U=roundn(U,-4);w=sqrt(2)*2*A13+A24;w2=w;A=A.*U;A1=A(1);A2=A(2);U=(1e-4)*(sqrt(2)*A1+A2)/(sqrt(2)*A12+2*A1*A2);(1e-4)*(sqrt(2)*A1)/(sqrt(2)*A12+2*A1*A2);endend其实现的 MATLAB 代码如下: clear;A1=1e-4;A2=1e-4;v=0.5;Anew1,Anew2,Anew3,W,exitfla

11、g=IZigzag(A1,A2,v)Anew1 =7.8168e-05Anew2 =4.2839e-05Anew3 =7.8168e-05W =0.0002639*l*pexitflag =05. 用满应力法对结构进行杆件截面优化设计在 MATLAB 中没有专门的函数实现满应力法求解线性方程,可通过编写Full_Stressed.m 函数实现满应力法求解,其代码如下:function newA1,newA2,newA3,exitflag =Full_Stressed( A1,A2,wucha,maxstep)if nargin clear all;close all;A1=1e-4;A2=1e

12、-4;newA1,newA2,newA3,exitflag=Full_Stressed (A1,A2)newA1 =9.8988e-05newA2 =1.4373e-06newA3 =9.8988e-05exitflag =-16. 用加松弛因子满应力法对结构进行杆件截面优化设计在 MATLAB 中没有专门的函数实现加松弛因子满应力法求解线性方程,可通过编写SRF_Full_Stressed.m 函数实现满应力法求解,其代码如下:function newA1,newA2,newA3,exitflag =SRF_Full_Stressed( A1,A2,B,wucha,maxstep)if nargin clear all;close all;A1=1e-4;A2=1e-4;B=1.1;wucha=0.05;newA1,newA2,newA3,exitflag=SRF_Full_Stressed (A1,A2,B,wucha)newA1 =9.5527e-05newA2 =6.3262e-06newA3 =9.5527e-05

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 重点行业资料库 > 1

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。