![2023年机械优化设计大作业_第1页](http://file4.renrendoc.com/view/8e45f89cfa1524028b863a32449d5221/8e45f89cfa1524028b863a32449d52211.gif)
![2023年机械优化设计大作业_第2页](http://file4.renrendoc.com/view/8e45f89cfa1524028b863a32449d5221/8e45f89cfa1524028b863a32449d52212.gif)
![2023年机械优化设计大作业_第3页](http://file4.renrendoc.com/view/8e45f89cfa1524028b863a32449d5221/8e45f89cfa1524028b863a32449d52213.gif)
![2023年机械优化设计大作业_第4页](http://file4.renrendoc.com/view/8e45f89cfa1524028b863a32449d5221/8e45f89cfa1524028b863a32449d52214.gif)
![2023年机械优化设计大作业_第5页](http://file4.renrendoc.com/view/8e45f89cfa1524028b863a32449d5221/8e45f89cfa1524028b863a32449d52215.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
高等流体力学
班级:机设15学硕班
学号:_____________
姓名:张湘楠
授课老师:毕新胜
日期:2023年7月1日
£一、研究报告内容:
1、入=0.618的证明、一维搜索程序作业;
2、单位矩阵程序作业;
3、连杆机构问题+自行选择小型机械设计问题或其他工程优化问题;
(1)分析优化对象,根据设计问题的规定,选择设计变量,确立约束条
件,建立目的函数,建立优化设计的数学模型并编制问题程序;
(2)选择适当的优化方法,简述方法原理,进行优化计算;
(3)进行结果分析,并加以说明。
4、写出课程实践心得体会,附列程序文本。
5、为响应学校2023年度教学工作会议的改革规定,探索新的课程考
核评价方法,特探索性设立一开放式考核项目,占总成绩的5%。
试用您自己认为合适的方式(书面)表达您在本门课程学习方面的
努力、进步与收获。(考评将重点关注您的独创性、简洁性与可验证性)。
二、研究报告规定
1、报告命名规则:学号-姓名一《机械优化设计》课程实践报告.doc
2、报告提交邮址:(收到回复,可视为提交成功)。
追求:问题的工程性,格式的完美性,报告的完整性。
不追求:问题的复杂性,方法的惟一性。
评判准则:独一是好,先交为好;切勿拷贝。
目录:
A=0.618的证明、一维搜索程序作业
①关于2=0.618的证明...........................4
②一维搜索的作业
采用matlab进行编程............................5
采用C语言进行编程.............................7
单位矩阵程序作业
①采用matlab的编程...............................9
②采用c语言进行编程..............................9
机械优化工程实例
①连杆机构........................................11
②自选机构........................................16
课程实践心得............................................20
附列程序文
本.........................................................21
进步,努力,建议......................................25
一、人=0.618的证明、一维搜索程序作业
①关于彳=。618的证明
黄金分割法规定插入点a,,a2的位置相对于区间[a,。]两端具有对称性,即
%=b—九(b—d)
a2=。+几(人一a)
其中4为待定常数。
此外,黄金分割法还规定在保存下来的区间内再插入一点所形成的区间新三段,与本来的区间三
段具有相同的比例分布。
黄金分割法还规定在保存下来的区间内再插一点所形成的区间新三段,与本来的区间三段有相同
的比例分布。
设原区间[凡句的长度为1,如图一所示,保存下来的区间[四,长度为几,区间缩短率为4。为
了保持相同的分别比例。插入新点/应在丸(LX)位置上,/在原区间的1-丸1位置应相称于
在保存区间的矛位置。
故有:
1-A=22
A2+4-1=0
解得力=避二lx0.618
2图一
图二
褊写0.618的程序,并计算下列问
题
NOA:a=()b=2兀/(x)=cosx
NO.2:a=0ft=10/(x)=(x-2)2+3
(1)采用MATLAB进行编程
%%
%fun.m:黄金分割法求极值点
%输入数据
%a-搜索区间下限
%b-搜索区间上限
%e-精度
%输出数据:
%x-极小值点
%其他常量:
%cl,c2,c3-区间
%r-黄金分割比例0.618
%%
%定义函数
functionx=fun(a,b,e)
r=0.618;
c1=b—r*(b-a);c2=a+r*(b・a);
yl=f(cl);y2=f(c2);
while(abs((b—a)/b)>e)&&(abs((y2-yl)/y2)>e)
ifyl>=y2
a=cl;cl=c2;y1=y2;
c2=a+r*(b-a);y2=f(c2);
else
b=c2;c2=c1:y2=y1;
cl=b-r*(b-a);yl=f(cl);
end
end
x=0.5*(a+b);
end
对f函数的确立
10funotiony=f(x)
y=(x-2)八2+3;
end
11functiony=f(x)
y=cosx
end
假如要计算y=(x-2»2+3;的黄金分割法,则需要将图所示的f脚本中的函数写成如①所示
假如要计算y=cosx;黄金分割法,则需要将图所示的f脚本中的函数写成如②所示
fun函数表达对matIab的主程序语言。
Editor-D:\matiab\bin\futun|CQT)4S.
FileEditTextGoCellToolsDebugDesktopWindowHelp'•X
■*Xi万石.•““♦心》•€i幻・ITini«S3*A田tn曰日回
-io+<O.____________________________________________________________________
①Thisfileu$«tCellMod*Forinformation.s«ethe,ao;dcode“Etionvideo,theoublkhingvideo,orMidX
2主分制选求炎值0
3MA人做错:
4*a—搂索区日下编
SKb-桢索区可上用
6»e—
74蝌出我据:
8kX—银小信直
9kMfesa:
10kcl,c2,c3一区同
11、r一■金外界比倒0.618
12**
13'定义由故:
14functionx=fun<a>b,e)
15-r=0.618.
1ft-cl»b-t»(b-a).c2»a+r»(b-a>
17-yi=f(cl):)r2=f(c2).
IS-Sale<abs<(b-a)/b)>e>U(«b»(<y2-yl)/y2)>•)
19-ifyl>=y2
20-a=clci=c2.yl=y2:
2t-c2«a*i*(b-a);y2af(c2);
22-else
23-b»c2.e2«cl.y2^rl.
24—cl=b-r«(b-»);yl=f(cl);
2$-«nd
26-end
27-x=0.;
28-end
P中J3.E3«>OVR-
Editor-D:\madab\bic\fm
FileEditTextGoCellToolsDebugDesktopWindowHelp
「UJ,.刁①、N,***拒fej;©刷・•加・■SuctaB^-A田[D曰占回
:G值I-旧口+1+向*|由由IQ
functiony=f(x>
jr=(x-2)-2+3.
◎中J,四W>',二
L-*二-二而段
函数N0.2运算结果:CommandWindow
»fun(0,2*pi,le-10)
»fund,10,le-10)ans=
ans=3.1416|
2.0000A»l
A»
函数NO.1运算结果:
(2)采用C语言进行编程
#inc1ude<stdio.h>
#defineK0.618
doub1ef(double);/*****函数值计算函数声明*火***/
voidmain(void)
doublea,b,size;。
doubleal,a2;
ntI;
oprintf(“请输入区间两端点(端点值应大于0)
oscanf(w%lf,%1f“,&a,&b);/*****输入端点值*****/
printf("请输入精度:”);
oscanf(“%1f”,&size);/*****输入精度*****/
printf(“区间为(%1f精度为f\n",a,b,size);
printf("序号\ta1\t\ta2\t\tf(al)\t\tf(a2)\nv;
ofor(i=0;i<64;i++)
printf("-“);
printf("\n”);
oi=0;
while((b-a)>size)/*****用精度控制循环次数*****/
(
五++;
al=b-K*(b-a);/*****按0.618法插入两点*****/
阳2=a+K*(b—a);
printf(“%2d:\t%f\ta%f\t%f\t%f\n,>,I,al,a2,f(a1),f(a2));
/*****输出每次计算后a1,a2,f(al),f(a2)
的值****文/
“if(f(al)>=f(a2))
。a=al;
geIse
b=a2;
printf(“所求极小值点为:x=%lf\t极小值f(x)=%f\n”,a,f(b));
}
doublef(doub1ex)/*****函数值计算函数*****/
»doublef;
«f=(x—2)*(x-2)+3;
•return(f);
}
对于y=cosx,须在程序中加一个#inelude(math.h)头程序,以示我要调用函数语句.再将
倒数第三行函数改为y=cos(x),再次编译运算即可。
69functionZ•MicrosoftVisu»lJ♦0:®1S|
文件正)«S(£)麦配)插入①IS®3®IHd)«Q(W)
由ca;Q0Efe®»口围岩铁IJ«
|[Globals]HlfAIIglobalmembe"三]&▼,合住11
0正菽cpp
i-0;
while((b-a)>size)■用精度控制循环次数,
a1«b-K«(b-a);/..........号机618法插入两息
a2-a»K«(b-a);
八出每式计茸后aM
if(f(a1)>>F(a2))
a»a1;
else
b-a2;
>
printf(“所求极小值点为:x=%lf\t极小值f(x)Cf\n”,a,
doubleF(doublex)/*"■”附数值计算函数***1…
<
doublef;
f«(x-2)*(x-2)«3;
return(F);
II"I
-Function2.exe-0error(s).0uarning(s)
组建/调试入在文件1中宣我\在文件2单查找土结果工8LDebusing/~~B«lI帛
行37,列1,
&】.3国,7•⑤词•»仆15J6
运营如图所示
我们可以看出,大约在X=2处取到极值。与理论相符。
Sfunction2•Microsoft5s3C*.
文件(D«i(i)ss(y)插入①工程®第建⑥UKD■口必«riHi
国%ea-0强音快———3M
|[Globals]:||阳1globalinembe”/口三]遇,‘口⑤曲¥(陋g
♦function?classes
aSR.cpp
ltinclude<nath.h>
-一-092502
Sinclude<stdio.h>5;7312
a3-TU984995
KdefineK0.618W
/啕数值计算函效用a3-T999208
doublef(double);a3--B995875
voidnain(uoid)a3H-R999208
a3099966
-T9
doublea,b,size;:a3099994
1M--7
doublea1,a2;a3U999966
a3-T
inti;W
a3--B
printfC请输入区间两端点(端点1值,应大于©):,,);
a3--1
M…端入端素值"■”・
scanf(Uf.tlf.Ra.6b);a3--0
p”ntf(”请输入精度:“);a3-T1
scanf(-t;)f,fisize);/“・・•嘲人精度,a3-
a3-B
printf(“近回为Clf,21f),精度为初八n”.a,b,size);;-1
«3-
print"”序号\ta1\t\ta2\t\tf(a3-1
for(i-a;i<64;i»«)A3--1
-
printFC'-0);a3--1
printFCXn");a3-1
a3--1
a3-1
uhile((b-a)>size),用精度控制循环次彳A3-
--1
a3-1
-1
,按。.618法插入西-
a1=b-K*(b-j);--1
a2=a*K»(b-a);-1
printF(,(Vd:\ttF\ta%F\tlF\t%F\n",i.a1,a2.f(-
八"”嗡出在次计算后,
■:ClassV…mFileView|11"1
Function2.exe-0error(s),0wjrning(s)
TEA组建9调试X在文件1中查找X在文件2中Jg找)结果XSQLDebu«ing/
酣1・
运营如图所示
我们可以看出,大约在口处取到极值。与理论相符。
用简朴的语句写一个单位矩阵
①采用matlab构造:
.MATLABR2012aI
FileEditDebugParallelDesktopWindowHelp
-3?/QCurrentFold«nD:\matlab\bin
Mat1ab构造的矩阵最是简便,由于自身就有一个单位矩阵的函数。
由于matlab是基于C语言而设立的一个数学运用软件,所以他的集成度非常高,并且具有很好的开
放性,于是我们得知eye函数,将其构造。
Eg:
若要构造一个3维的单位矩阵,则输入eye(3)
若要构造一个n为的单位矩阵,这输入eye(n)
②用C语言构造
程序如图所示:
#include<stdio.h>
intmain(){
int工,j,n;
whi1e(scanf("%d",&n)==1){
for(I=0;I<n;++i){
for(j=0;j<n;++j)
printf(f<%d'[==j);
printf(rf\nw);
)
)
return0;
)
Smartrix-MicrosoftVisualC-»
文侬DKBGO超人0)(89(6)UKD■口业)»«NtD
国&。O物SB6,口⑻古,[3H
^Globals)^£][(A1Iglobalmember?2Jl♦main三]W,/时,!"冷
:4目
martrixclasses
三、机械优化设计工程实例
①连杆机构问题
(1)连杆机构问题描述
设计一曲柄连杆摇杆机构,规定曲柄L从%=/+90°时,摇杆。的转角最佳再现已知的运
动规律:,£=〃o+—(夕-死尸且/1=1,4=5,%为极位角,其传动角允许在45°4”135°范
围内变化。
(2)数学模型的建立
设计变量:这里有两个独立参数(和4。因此设计变量为“=[西々『=[/2/3]/
目的函数:将输入角提成30等分,并用近似公式计算,可得目的函数的表达式
30
/W=E[fe-%丫3-%)]
/=1
约束条件:
GX(1)=-X(l)^0
GX(2)=-X(2)<0
oGX(3)=-(X(1)+X(2))+6.0^0
•GX(4)=-(X(2)+4.0)+X(1)WO
«GX(5)=-(4.0+X(1))+X(2)<0
«GX(6)=-(l.4142*X(1)*X(2)-X(1)**2-X(2)**2)-16.040
GX(7)=-(X(1)**2+X(2)**2+1.4142*X⑴*X⑵)+36.0«0
(3)程序编制
C
SUBROUTINEFFX(N,X,FX)
C__________________________
oDIMENSIONX(N)
COMMON/ONE/I1,12,13,I4,NFX,I6
oNFX=NFX+1
PO=ACOS(((1.0+X(1))**2・X(2)**2+25.0)/(10.0*(1.0+X(l))))
oQ0=ACOS(((1.0+X(l))**2—X(2)**2-25.0)/(l0.0*X(2)))
T=90.0*3.1415926/(180.0*30.0)
FX=0.0
oDO10K=0,30
PI=P0+K*T
QE=Q0+2.0*(PI-PO)**2/(3.0*3.1415926)
D=SQRT(26.0-10.0*COS(PI))
oAL=ACOS((D*D+X(2)*X(2)-X(l)*X(l))/(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)T
ELSE
FX=FX+(QLQE)**2*T/2.0
ENDIF
12CONTINUE
RETURN
oEND
^—
oSUBROUTINEGGX(N,KG,X,GX)
C<>=========================
oDIMENSIONX(N),GX(KG)
GX(1)=-X(1)
GX(2)=-X(2)
oGX(3)=-(X(l)+X(2))+6.0
GX(4)=-(X(2)+4.0)+X(l)
oGX(5)=-(4.0+X(l))+X(2)
oGX(6)=-(l.4142*X(1)*X(2)-X(l)**2-X(2)**2)-16.0
GX(7)=-(X(1)**2+X(2)**2+1.4142*X(1)*X(2))+36.0
^RETURN
oEND
oSUBROUTINEHHX(N,KH,X,HX)
DIMENSIONX(N),HX(KH)
X(1)=X(1)
^RETURN
END
输入数据如下:
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将程序文本保存成文献tOO1.txt,存放在OPT_EXAM\FORTRAN\0-fortran目录
下。
14使用口05操作界面,<2^1'_£*人1'4卜01?T区八1\1\0101「211目录下,输入命令
asumt.for+tOOl.txttOO1.for回车。生成tOOl.for文献。
15fori1001;回车;
@for2回车;
⑤linktOOl;回车,即生成可执行程序tOOl.exe。
⑥从tOOl.dat文献中加载数据,运营tO01.exe。
tOOKtOOI.dat>tO0l.rtf回车得到结果。
操作过程如图:
操作环节
(5)结
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO 965-1:2013/Amd 1:2021 EN ISO general purpose metric screw threads - Tolerances - Part 1: Principles and basic data - Amendment 1
- 【正版授权】 ISO 9393-1:1994 EN Thermoplastics valves - Pressure test methods and requirements - Part 1: General
- 【正版授权】 ISO 9379:2005 EN Operating forces - Test method - Doors
- 【正版授权】 ISO 93-2:2006 EN Textile machinery and accessories - Cylindrical sliver cans - Part 2: Spring bottoms
- 【正版授权】 ISO 9233-1:2007/Amd 1:2012 EN Cheese,cheese rind and processed cheese - Determination of natamycin content - Part 1: Molecular absorption spectrometric method for cheese ri
- 【正版授权】 ISO 9177-1:2011 EN Mechanical pencils - Part 1: Classification,dimensions,performance requirements and testing
- 【正版授权】 ISO 9158:1988 EN Road vehicles - Nozzle spouts for unleaded gasoline
- 【正版授权】 ISO 9073-3:1989 EN Textiles - Test methods for nonwovens - Part 3: Determination of tensile strength and elongation
- 【正版授权】 ISO 9004:1987 EN Quality management and quality system elements - Guidelines
- 【正版授权】 ISO 900:1977 EN Aluminium oxide primarily used for the production of aluminium - Determination of titanium content - Diantipyrylmethane photometric method
- 毕业论文-基于PLC控制的门禁系统设计
- 鸿蒙OS技术发展研究报告
- 2022年内蒙古鄂尔多斯市康巴什区引进优秀成熟教师53人笔试备考题库及答案解析
- 研究开发费用自查报告
- 《scratch趣味编程》校本课程计划
- 液化天然气(LNG)购销总协议
- 牛头刨床课程设计
- 沁园春长沙教材解读
- GB/T 5237.1-2017铝合金建筑型材第1部分:基材
- 2023年江西电力职业技术学院高职单招(数学)试题库含答案解析
- GB/T 2506-2005船用搭焊钢法兰
评论
0/150
提交评论