《机械优化设计》课程实践报告doc.docx

上传人:b****2 文档编号:1831331 上传时间:2023-05-01 格式:DOCX 页数:17 大小:395.74KB
下载 相关 举报
《机械优化设计》课程实践报告doc.docx_第1页
第1页 / 共17页
《机械优化设计》课程实践报告doc.docx_第2页
第2页 / 共17页
《机械优化设计》课程实践报告doc.docx_第3页
第3页 / 共17页
《机械优化设计》课程实践报告doc.docx_第4页
第4页 / 共17页
《机械优化设计》课程实践报告doc.docx_第5页
第5页 / 共17页
《机械优化设计》课程实践报告doc.docx_第6页
第6页 / 共17页
《机械优化设计》课程实践报告doc.docx_第7页
第7页 / 共17页
《机械优化设计》课程实践报告doc.docx_第8页
第8页 / 共17页
《机械优化设计》课程实践报告doc.docx_第9页
第9页 / 共17页
《机械优化设计》课程实践报告doc.docx_第10页
第10页 / 共17页
《机械优化设计》课程实践报告doc.docx_第11页
第11页 / 共17页
《机械优化设计》课程实践报告doc.docx_第12页
第12页 / 共17页
《机械优化设计》课程实践报告doc.docx_第13页
第13页 / 共17页
《机械优化设计》课程实践报告doc.docx_第14页
第14页 / 共17页
《机械优化设计》课程实践报告doc.docx_第15页
第15页 / 共17页
《机械优化设计》课程实践报告doc.docx_第16页
第16页 / 共17页
《机械优化设计》课程实践报告doc.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

《机械优化设计》课程实践报告doc.docx

《《机械优化设计》课程实践报告doc.docx》由会员分享,可在线阅读,更多相关《《机械优化设计》课程实践报告doc.docx(17页珍藏版)》请在冰点文库上搜索。

《机械优化设计》课程实践报告doc.docx

《机械优化设计》课程实践报告doc

 

合肥工业大学

《机械优化设计》课程实践

研究报告

 

班级:

机设五班

学号:

20100539

姓名:

张荣华

授课老师:

王卫荣

日期:

2013年5月8日

(课程实践与研究报告要求)

1、一维搜索程序作业;

2、单位矩阵程序作业;

3、连杆机构问题+自行选择小型机械设计问题或其他工程优化问题;

(1)分析优化对象,根据设计问题的要求,选择设计变量,确立约束条件,建立目标函数,建立优化设计的数学模型并编制问题程序;

(2)选择适当的优化方法,进行优化计算;

(3)分析计算结果,并加以说明。

4、写出课程实践心得体会,附列程序文本。

一、一位搜索程序作业:

用黄金分割法(0.618法)解决优化问题。

用0.618法求函数在〔a,b〕区间上的极小值。

用C语言编写程序如下:

(1)a=0,b=10,y=(x-2)2+3,收敛精度e=0.001,

#include

#include

voidmain()

{

floata,b,c=0.618,x[4],y[4],e;

scanf("%f,%f,%f",&a,&b,&e);

x[1]=b-c*(b-a);

x[2]=a+c*(b-a);

y[1]=(x[1]-2)*(x[1]-2)+3;

y[2]=(x[2]-2)*(x[2]-2)+3;

do{if(y[1]>=y[2])

{a=x[1];

x[1]=x[2];

y[1]=y[2];

x[2]=a+c*(b-a);

y[2]=(x[2]-2)*(x[2]-2)+3;

}

else

{b=x[2];

x[2]=x[1];

y[2]=y[1];

x[1]=b-c*(b-a);

y[1]=(x[1]-2)*(x[1]-2)+3;

}

}while(fabs((b-a)/b)>e);

x[0]=(a+b)/2;

y[0]=(x[0]-2)*(x[0]-2)+3;

printf("x*=%f\n",x[0]);

printf("y=%f\n",y[0]);

}

输入a,b,及精度e的值,输出极小点,函数极小值。

如下:

(2)、a=0,b=2π,y=cosx,收敛精度e=0.001,

#include

#include

#definef(x)cos(x)

doublecalc(double*a,double*b,doublee,int*n)

{doublex1,x2,s;

if(fabs(*b-*a)<=e)

s=f((*b+*a)/2);

else

{

x1=*b-0.618*(*b-*a);

x2=*a+0.618*(*b-*a);

if(f(x1)>f(x2))

*a=x1;

else

*b=x2;

*n=*n+1;

s=calc(a,b,e,n);

}

returns;

}

main()

{doubles,a,b,e;

intn=0;

scanf("%lf%lf%lf",&a,&b,&e);

s=calc(&a,&b,e,&n);

printf("a=%lf,b=%lf,s=%lf,n=%d\n",a,b,s,n);

}

输入a,b,及精度e的值,输出极小点,函数极小值。

如下:

 

2、单位矩阵程序作业

用最简捷的语言生成一个n维单位矩阵,n为输入量。

用C语言编写程序如下:

#include

voidmain(void)

{inti,j,n;

printf("%3d",n);

scanf("%3d",&n);

for(i=0;i<=n;i++)

{

for(j=0;j<=n;j++)

{

if(i==j)

printf("%3d",1);

elseprintf("%3d",0);

}

printf("\n");}

}

运行结果:

当n=6时:

当n=15时:

3、工程优化问题:

(一)连杆机构问题:

设计一曲柄连杆摇杆机构,要求曲柄l1从

时,摇杆

的转角最佳再现已知的运动规律:

=1,

=5,

为极位角,其传动角允许在

范围内变化。

解:

1、分析:

这里有两个独立参数和。

因此设计变量为

将输入角分成30等分,并用近似公式计算,可得目标函数的表达式

约束条件是:

 GX

(1)=-X

(1)0

GX

(2)=-X

(2)0

GX(3)=-(X

(1)+X

(2))+6.00

GX(4)=-(X

(2)+4.0)+X

(1)0

GX(5)=-(4.0+X

(1))+X

(2)0

GX(6)=-(1.4142*X

(1)*X

(2)-X

(1)**2-X

(2)**2)-16.00

GX(7)=-(X

(1)**2+X

(2)**2+1.4142*X

(1)*X

(2))+36.00

程序文本(随机方向法)为:

procedureffx;

var

p0,q0,T,PI,QE,D,AL,BT,QI:

real;

K:

integer;

test:

string;

begin

withform1.randdobegin

NFX:

=NFX+1;

p0:

=arccos((sqr(1.0+X[1])-sqr(X[2])+25.0)/(10.0*(1.0+X[1])));

q0:

=arccos((sqr(1.0+X[1])-sqr(X[2])-25.0)/(10.0*X[2]));

T:

=90.0/30.0*(3.1415926/180.0);

FX:

=0.0;

ForK:

=0To30do;

begin

PI:

=p0+K*T;

QE:

=Q0+2.0*sqr(PI-p0)*2/(3.0*3.1415926);

D:

=SQRT(26.0-10.0*COS(pI));

AL:

=ArcCos((D*D+X[2]*X[2]-X[1]*X[1])/(2.0*D*X[2]));

BT:

=arccos((D*D+24.0)/(10.0*D));

IF((PI>=0.0)AND(PI<3.1415926))

THEN

QI:

=3.1415926-AL-BT

ELSE

QI:

=3.1415926-AL+BT;

IF((K<>0)OR(K<>30))

THEN

FX:

=FX+sqr(QI-QE)*T

ELSE

FX:

=FX+sqr(QI-QE)*T/2.0;

end;

end;

end;

procedureggx;

begin

withform1.randdobegin

GX[1]:

=-X[1];

GX[2]:

=-X[2];

  GX[3]:

=-(X[1]+X[2])+6.0;

  GX[4]:

=-(X[2]+4.0)+X[1];

  GX[5]:

=-(X[1]+4.0)+X[2];

  GX[6]:

=-(1.4142*X[1]*X[2]-X[1]*X[1]-X[2]*X[2])-16.0;

  GX[7]:

=-(X[1]*X[1]+X[2]*X[2]+1.4142*X[1]*X[2])+36.0;

end;

end;

数据输入:

程序结果:

 

(2)其他工程优化问题

设计一个压缩圆柱螺旋弹簧,要求其质量最小。

弹簧材料为65Mn,最大工作载荷为

,最小工作载荷为0,载荷变化频率

,弹簧寿命为

h,弹簧钢丝直径d的取值范围为1-4mm,中径

的取值范围为10-30mm,工作圈数n不应小于4.5圈,弹簧旋绕比C不应小于4,弹簧一端固定,一端自由,工作温度为50℃,弹簧变形量不小于10mm。

解:

1设计变量

本题优化目标是使弹簧质量最小,圆柱螺旋弹簧的质量可以表示为:

式中,

-弹簧材料的密度,对于钢材

=

-工作圈数;

-死圈数,常取

=1.5-2.5,现取

=2;

-弹簧中径(mm);

-弹簧钢丝直径(mm);

将d,n,D2作为设计变量,即

=

2、目标函数

将已知参数代入公式,进行整理后得到问题的目标函数为

3、约束条件

根据弹簧性能和结构上的要求,可写出问题的约束条件:

(1)强度条件

(2)刚度条件

(3)稳定性条件

(4)不发生共振现象,要求

(5)弹簧旋绕比的限制

(6)对

的限制

且应取标准值,即1.0,1.2,1.6,2.0,2.5,3.0,3.5,4.0mm,等。

4、建立优化模型

由上可知,该压缩圆柱螺旋弹簧的优化设计是一个三维的约束优化问题,其数学模型为:

(计算时系数无影响可舍去)

5编写程序并运行结果

从上面的分析,以重量最轻为目标的汽门弹簧的优化设计问题共有3个设计变量,11个约束条件。

按优化方法程序的规定,编写数学模型的程序如下:

FX=0.0000192457*(X

(2)+2)*X

(1)**2*X(3)

RETURN

END

SUBROUTINEGGX(N,KG,X,GX)

DIMENSIONX(N),GX(KG)

GX

(1)=350*X

(1)**(2.86)-163*X(3)**(0.86)

GX

(2)=0.004*X

(2)*X(3)**3-10*X

(1)**4

GX(3)=3.7*X(3)*X

(1)**4-(X

(2)+1.5)*X

(1)**5-0.0044*X

(2)*X(3)**3

GX(4)=356000*X

(1)-375*X

(2)*X(3)**2

GX(5)=X(3)-4*X

(1)

GX(6)=X

(1)-1

GX(7)=4-X

(1)

GX(8)=X

(2)-4.5

GX(9)=50-X

(2)

GX(10)=X(3)-10

GX(11)=30-X(3)

RETURN

END

利用惩罚函数法(SUMT法)计算,得到的计算结果如下:

优化结果一:

优化结果二:

两种不同结果比较:

优化结果比较

d/mm

n/圈数

D2/mm

第一次优化

.176910E+01

.574960E+01

.162097E+02

第二次优化

.176910E+01

.574960E+01

.162097E+02

不同初值所得到的结果相同。

优化的结果为:

x=[1.7691,5.7496,16.2097],圆整为标准值为:

x=[1.6,6,16],经检验合格,相应弹簧的最轻质量6.3g。

4、课程实践心得体会

王老师,您好!

在您七个星期教导下,我对《机械优化设计》这门课有了一个深入的认识,从一开始的懵懵懂懂,不知道学习这门课的意义,到现在学会了运用这门课所学的方法去解决一些工程实际问题,我理解了这门课的重要性,实用性,和优美性。

机械优化设计是应用数学方法寻求机械设计的最优方案,它的目的是解决工程实际问题。

但我刚开始却有一个错误的认识,我的思想一直局限于高中阶段所学的线性规划问题,对于您所教授的一维搜索,牛顿法,共轭梯度法,惩罚函数法等一系列优化方法甚是不解,更不知道为什么要用那么多方法去寻求一个函数的最小值,但随之您给我们的作业中的一句话点醒了我,您说,“要追求系统的完整性,问题的工程性,格式的完美性,不追求:

问题的复杂性,方法的惟一性”。

我明白了,这不就是优化设计所追求的宗旨吗?

也是我们作为一名工科人才所应必备的素质。

只有拥有了各种各样不同的方法,我才能对一些实际问题分析的更透彻,也才有选择最优解的可能。

但这七个星期的学习,我所得到的不仅是专业方面的知识,更多的是端正了学习的态度,明白了学习的重要,还有时刻被您踏实敬业的工作作风,乐观向上的人生观念所折服,由此产生的敬意我将终身受用。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2