《机械优化设计》大作业Word文件下载.doc

上传人:wj 文档编号:8695761 上传时间:2023-05-13 格式:DOC 页数:26 大小:1.64MB
下载 相关 举报
《机械优化设计》大作业Word文件下载.doc_第1页
第1页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第2页
第2页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第3页
第3页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第4页
第4页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第5页
第5页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第6页
第6页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第7页
第7页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第8页
第8页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第9页
第9页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第10页
第10页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第11页
第11页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第12页
第12页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第13页
第13页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第14页
第14页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第15页
第15页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第16页
第16页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第17页
第17页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第18页
第18页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第19页
第19页 / 共26页
《机械优化设计》大作业Word文件下载.doc_第20页
第20页 / 共26页
亲,该文档总共26页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

《机械优化设计》大作业Word文件下载.doc

《《机械优化设计》大作业Word文件下载.doc》由会员分享,可在线阅读,更多相关《《机械优化设计》大作业Word文件下载.doc(26页珍藏版)》请在冰点文库上搜索。

《机械优化设计》大作业Word文件下载.doc

机械优化工程实例

①连杆机构…………………………………………………………………11

②自选机构…………………………………………………………………16

课程实践心得……………………………………………………………………20

附列程序文本……………………………………………………………………21

进步,努力,建议………………………………………………………………25

一、λ=0.618的证明、一维搜索程序作业

①关于的证明

黄金分割法要求插入点,的位置相对于区间两端具有对称性,即

其中为待定常数。

此外,黄金分割法还要求在保留下来的区间内再插入一点所形成的区间新三段,与原来的区间三段具有相同的比例分布。

黄金分割法还要求在保留下来的区间内再插一点所形成的区间新三段,与原来的区间三段有相同的比例分布。

b

α1

α2

1

1-λ

λ

图一

设原区间的长度为1,如图一所示,保留下来的区间长度为,区间缩短率为。

为了保持相同的分别比例。

插入新点应在位置上,在原区间的1位置应相当于在保留区间的位置。

故有:

a

2

α3

λ(1-λ)

λ2

图二

解得

编写0.618的程序,并计算下列问题

程序框图

(1)采用MATLAB进行编程

%%

%fun.m:

黄金分割法求极值点

%输入数据

%a–搜索区间下限

%b–搜索区间上限

%e–精度

%输出数据:

%x–极小值点

%其他常量:

%c1,c2,c3–区间

%r–黄金分割比例0.618

%定义函数

functionx=fun(a,b,e)

r=0.618;

c1=b-r*(b-a);

c2=a+r*(b-a);

y1=f(c1);

y2=f(c2);

while(abs((b-a)/b)>

e)&

&

(abs((y2-y1)/y2)>

e)

ify1>

=y2

a=c1;

c1=c2;

y1=y2;

c2=a+r*(b-a);

else

b=c2;

c2=c1;

y2=y1;

c1=b-r*(b-a);

y1=f(c1);

end

end

x=0.5*(a+b);

end

对f函数的确立

10functiony=f(x)

y=(x-2)^2+3;

11functiony=f(x)

y=cosx

如果要计算y=(x-2)^2+3;

的黄金分割法,则需要将图所示的f脚本中的函数写成如①所示

如果要计算y=cosx;

黄金分割法,则需要将图所示的f脚本中的函数写成如②所示

fun函数表示对matlab的主程序语言。

26

函数NO.2运算结果:

函数NO.1运算结果:

(2)采用C语言进行编程

#include<

stdio.h>

#defineK0.618

doublef(double);

/*****函数值计算函数声明*****/

voidmain(void)

{

doublea,b,size;

doublea1,a2;

intI;

printf(“请输入区间两端点(端点值应大于0):

”);

scanf(“%lf,%lf”,&

a,&

b);

/*****输入端点值*****/

printf(“请输入精度:

scanf(“%lf”,&

size);

/*****输入精度*****/

printf(“区间为(%lf,%lf),精度为%lf\n”,a,b,size);

printf(“序号\ta1\t\ta2\t\tf(a1)\t\tf(a2)\n”);

for(i=0;

i<

64;

i++)

printf(“-“);

printf(“\n”);

i=0;

while((b-a)>

size)/*****用精度控制循环次数*****/

{

i++;

a1=b-K*(b-a);

/*****按0.618法插入两点*****/

a2=a+K*(b-a);

printf(“%2d:

\t%f\ta%f\t%f\t%f\n”,I,a1,a2,f(a1),f(a2));

/*****输出每次计算后a1,a2,f(a1),f(a2)的值*****/

if(f(a1)>

=f(a2))

a=a1;

else

b=a2;

}

printf(“所求极小值点为:

x=%lf\t极小值f(x)=%f\n”,a,f(b));

}

doublef(doublex)/*****函数值计算函数*****/

doublef;

f=(x-2)*(x-2)+3;

return(f);

对于y=cosx,须在程序中加一个#include(math.h)头程序,以示我要调用函数语句。

再将倒数第三行函数改为y=cos(x),再次编译运算即可。

运行如图所示

我们可以看出,大约在x=2处取到极值。

与理论相符。

我们可以看出,大约在π处取到极值。

二、用简单的语句写一个单位矩阵

①采用matlab构造:

Matlab构造的矩阵最是简便,因为本身就有一个单位矩阵的函数。

由于matlab是基于C语言而设立的一个数学运用软件,所以他的集成度非常高,而且具有很好的开放性,于是我们得知eye函数,将其构造。

Eg:

若要构造一个3维的单位矩阵,则输入eye(3)

若要构造一个n为的单位矩阵,这输入eye(n)

②用C语言构造

程序如图所示:

intmain(){

intI,j,n;

while(scanf(“%d”,&

n)==1){

for(I=0;

I<

n;

++i){

for(j=0;

j<

++j)

printf(“%d“,I==j);

printf(“\n”);

}

}

return0;

三、机械优化设计工程实例

①连杆机构问题

(1)连杆机构问题描述

图1机构简图

设计一曲柄连杆摇杆机构,要求曲柄从时,摇杆的转角最佳再现已知的运动规律:

且=1,=5,为极位角,其传动角允许在范围内变化。

(2)数学模型的建立

设计变量:

这里有两个独立参数和。

因此设计变量为

目标函数:

将输入角分成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

(3)程序编制

C ======================

SUBROUTINEFFX(N,X,FX)

DIMENSIONX(N)

COMMON/ONE/I1,I2,I3,I4,NFX,I6

NFX=NFX+1

P0=ACOS(((1.0+X

(1))**2-X

(2)**2+25.0)/(10.0*(1.0+X

(1))))

Q0=ACOS(((1.0+X

(1))**2-X

(2)**2-25.0)/(10.0*X

(2)))

T=90.0*3.1415926/(180.0*30.0)

FX=0.0

DO10K=0,30

PI=P0+K*T

QE=Q0+2.0*(PI-P0)**2/(3.0*3.1415926)

D=SQRT(26.0-10.0*COS(PI))

AL=ACOS((D*D+X

(2)*X

(2)-X

(1)*X

(1))/(2.0*D*X

(2)))

BT=ACOS((D*D+24.0)/(10.0*D))

IF(PI.GE.0.0.AND.PI.LT.3.1415926)THEN

QI=3.1415926-AL-BT

ELSE

QI=3.1415926-AL+BT

ENDIF

IF(K.NE.0.OR.K.NE.30)THEN

FX=FX+(QI-QE)**2*T

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

12CONTINUE

RETURN

END

C =========================

SUBROUTINEGGX(N,KG,X,GX)

DIMENSIONX(N),GX(KG)

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)=-(4.0+X

(1))+X

(2)

GX(6)=-(1.4142*X

(1)*X

(2)-X

(1)**2-X

(2)**2)-16.0

GX(7)=-(X

(1)**2+X

(2)**2+1.4142*X

(1)*X

(2))+36.0

SUBROUTINEHHX(N,KH,X,HX)

DIMENSIONX(N),HX(KH)

X

(1)=X

(1)

输入数据如下:

2,7,0

4.3,3.2

2.,0.2,0.01,0.00001,0.00001

0,1,0

3.5,2.8,5.5,4.5

(4)可执行程序的生成

13将程序文本保存成文件t001.txt,存放在OPT_EXAM\FORTRAN\0-fortran目录下。

14使用DOS操作界面,OPT_EXAM\FORTRAN\0-fortran目录下,输入命令

asumt.for+t001.txtt001.for回车。

生成t001.for文件。

15for1t001;

回车;

④for2回车;

⑤linkt001;

回车,即生成可执行程序t001.exe。

⑥从t001.dat文件中加载数据,运行t001.exe。

t001<

t001.dat>

t001.rtf回车得到结果。

操作过程如图:

操作步骤

(5)结果与分析

结果显示如下:

==============PRIMARYDATA==============

N=2KG=7KH=0

X:

.4300000E+01.3200000E+01

FX:

.7847605E-02

GX:

-.4300000E+01-.3200000E+01-.1500000E+01-.2900000E+01-.5100000E+01

-.6729390E+01-.1218939E+02

HX:

PEN=.3974390E+01

R=.2000000E+01C=.2000000E+00T0=.1000000E-01

EPS1=.1000000E-04EPS2=.1000000E-04

==============ITERATIONCOMPUTE==============

*****IRC=1R=.2000000E+01PEN=.3974390E+01

*****IRC=2R=.4000000E+00PEN=.3119361E+01

*****IRC=3R=.8000001E-01PEN=.6407908E+00

*****IRC=4R=.1600000E-01PEN=.1439420E+00

*****IRC=5R=.3200000E-02PEN=.3733451E-01

*****IRC=6R=.6400000E-03PEN=.8986510E-02

*****IRC=7R=.1280000E-03PEN=.2346609E-02

*****IRC=8R=.2560000E-04PEN=.9042178E-03

*****IRC=9R=.5120001E-05PEN=.5396702E-03

*****IRC=10R=.1024000E-05PEN=.4410887E-03

*****IRC=11R=.2048000E-06PEN=.4128061E-03

*****IRC=12R=.4096001E-07PEN=.4071001E-03

*****IRC=13R=.8192003E-08PEN=.4014154E-03

*****IRC=14R=.1638401E-08PEN=.3992769E-03

*****IRC=15R=.3276801E-09PEN=.3987240E-03

*****IRC=16R=.6553602E-10PEN=.3984505E-03

*****IRC=17R=.1310720E-10PEN=.3983411E-03

*****IRC=18R=.2621441E-11PEN=.3982889E-03

===============OPTIMUMSOLUTION==============

IRC=18ITE=35ILI=94NPE=447NFX=482NGR=0

R=.2621441E-11PEN=.3982696E-03

.4135127E+01.2315381E+01

.3982623E-03

-.4135127E+01-.2315381E+01-.4505072E+00-.2180254E+01-.5819746E+01

-.7079845E+01-.3633157E-03

Stop-Programterminated.

从结果中得知当X1=4.135127,X2=2.315381时,目标函数取得最小值,摇杆的转角最佳再现已知的运动规律:

②自选结构模型

设计某带式输送机减速器的高速级齿轮传动。

已知高速级输入功率P1=10kW,小齿轮转速n1=960r/min,传动比i=3.2。

齿轮材料和热处理:

大齿轮45号钢(调质)硬度为217~255HBS,小齿轮40Cr(调质)硬度为241~286HBS,工作寿命15年,假设每年工作300天,两班制,带式输送机工作平稳,转向不变。

常规设计方案采用直齿圆柱齿轮:

m=2.5,z1=30,Φd=1。

解:

(1)设计变量,

单级直齿圆柱齿轮传动的中心距:

齿宽:

将m,,作为设计变量,即:

=

2)目标函数

根据多目标优化的线性加权法建立体积最小的目标函数:

f(x)=ω1·

f1(x)+ω2·

f2(x)=ω1·

+ω2·

其中:

ω1,ω2是加权系数,且ω1+ω2=1,分别根据设计时径向和轴向安装位置的要求设定;

取ω1=1表示要求中心距最小,取ω2=1则表示要求齿宽最小。

3)约束条件

模数的限制:

对于传递动力的齿轮,通常要求模数不少于1.5-2,得约束条件:

>

(2)小齿轮齿数的限制:

小齿轮齿数应不大于产生根切的最小齿数17,得约束条件:

(3)齿宽系数的限制:

由于min≤≤max,约束条件为:

(4)齿面接触强度的限制,根据公式并查表得约束条件:

(5)齿根弯曲强度的限制,根据公式查表得约束条件:

4建立数学优化模型

高速级齿轮传动多目标优化设计的数学模型为:

(ω1取0.6,ω2取0.4)

Fun(x)=min[ω1+ω2]

=

5 编写程序并运行结果

目标函数M文件:

functionf=zhwm(x)

f=0.6*2.1*x

(1)*x

(2)+0.4*x

(1)*x

(2)*x(3);

约束函数M文件:

function[cceq]=zhwy(x)

c

(1)=1.04*10^7-2.916*10^5*(x

(1)*x

(2))^3*x(3);

c

(2)=1.04*10^7-8.95*10^6*(x

(1)*x

(2))^3*x(3);

c(3)=1.51*10^6-303.57*x

(1)^3*x

(2)^2*x(3);

c(4)=1.42*10^6-2445.92*x

(1)^3*x

(2)^2*x(3);

ceq=[];

优化函数M文件:

x0=[2321];

lb=[1.5170.7];

ub=[2inf1.15];

u=[];

[x,fval]=fmincon(@zhwm,x0,[],[],[],[],lb,ub,@zhwy)

约束函数

目标函数

经过Matlab优化并圆整后的齿轮参数如下:

设计参数

模数

m/mm

齿数

齿宽系数

中心距

/mm

普通设计

2.5

30

157.5

MATLAB优化

1.7911

27.4377

1.1499

84.5254

圆整后参数

1.75

117.6

经过计算,最小体积为87.15。

四、课程学习心得

从懒懒散散的寒假到匆匆忙忙的考试周,仿佛只是在弹指一挥间。

然而我们就在这段时间内,又学了几门课程,而这些课程中,最有趣,最好玩的当然就是《机械优化设计了》

《机械优化设计》是一门理论性非常强的一门课,刚开始的时候不得要领,但是在王卫荣老师的带领下,逐渐登堂入室,渐渐有所了解。

首先,这门课所依托的最强武器便是数学。

数学即是方法,思维,和逻辑。

其次所依托的便是算法程序语言。

归根结底的还是数学,因为数学赋予了算法以逻辑的力量,分析的过程,以及所能解决的一切问题。

还好我的数学基础还算可以,逻辑思维还算通顺,再加上老师所给予的方法

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

当前位置:首页 > 初中教育 > 学科竞赛

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

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