




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
高等流体力学
班级:机设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的证明、一维搜索程序作业
①关于幺=0.618的证明
黄金分割法规定插入点4的位置相对于区间伍,例两端具有对称性,即
%=b-Mb-a)
a2=a+A(b-a)
其中2为待定常数。
%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=cI;cI=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函数的确立
10functiony=f(x)
y=(x-2『2+3;
end
11functiony=f(x)
y=cosx
end
假如要计算y=(x-2A2+3;的黄金分割法,则需要将图所示的f脚本中的函数写成如①所示
假如要计算y=cosx;黄金分害ij法,则需要将图所示的「脚本中的函数写成如②所示
fun函数表达对mat1ab的主程序语言。
,主分界造常B・盛
■•入CH;
、•一BTErtT*
、b—酢旦日上阳
、。一♦范
UktGH;
、x—B小・盛
tKlt-MV;
、cl,c2,c3-E4
•1
■宣义(BII:
jrl«f<eli.y2*f<e2l.
while(«bf<(V-a>/b>>«>U<«bt<(r2-yl)/)r2>>e>
ify17r2
1=cl.€l»c2.yl»y2.
C2»E•吁(0.
else
b>«2.e2Mi
cl«b-r«<b-»><cl);
tni
x-0.5«
电“”
Ed.!o<D\2.bA叭H
MeEd*TertGo€<•TooHDebugDesktop'MxlowM«ip
f:■)・"♦♦/»・€)粕■■sudcB»A田(D曰<90
,a4-J£♦+11_X9£Q
Ifurvetian)Ff<*>
2-y»(M-2)'2*3:
3-«nd
函数NO.1运算结果:
(2)采用C语言进行编程
#inc1ude<stdio.h>
^defineK0.618
doub1ef(double);/*****函数值计算函数声明*****/
voidmain(void)
{
doublea,b,size;。
doubleal,a2;
®intI;
»printf(”请输入区间两端点(端点值应大于0);
®scanf(o%lf,&b);/*****输入端点值*****/
printf("请输入精度:");
»scanf((i%1fw,&size);/*****输入精度*****/
printf("区间为(%1f精度为$1f\n”,a,b,size);
printf("序号\ta1\t\ta2\t\tf(al)\t\tf(a2)\n"1;
吁or(i=0;i<64:i++)
printf("-“);
printf(°\nn);
®i=0;
while((b-a)>size)/*****川精度控制循环次数*****/
(
<»i++;
al=b-K*(b-a);/*****按0.618法插入两点*****/
0a2=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(a1),f(a2)
的值*****/
«if(f(al)>=f(a2))
。a=al;
geIse
b=a2:
printf("所求极小值点为:x=%lf\t极小值f(x)=%f\n”,a,f(b));
)
doublef(doublex)/*****函数值计算函数*火火**/
odoublef;
»f=(x-2)*(x-2)+3;
•return(f);
)
对于y=cosx,须在程序中加一个#include(math.h)头程序,以示我要调用函数语句。再将
倒数第三行函数改为尸cos(x),再次编译运算即可。
♦^lundion?classes
~1
while(<b-j|>size),用精度拄制彷外次故,
1••;
,按・.618法插入两百
print-<-Vd:\t%f\tA»\ttf\t%F\nM.i.j1,42.f<4l
/”••琳出每次计修后“1.
*a1;
else
b-a2;
prle”(•你求极小值点为:极小值“D-XfMT.a.
doublef(doublex)/.・・•.为数值计n劭敛・・.,
doubleF;
f-(x-2)»(x-2)*3:
return(F);
IkiI
Iunctien2.exe-Berror(s).etMrning(s)
J
,’
运营如图所示
我们可以看出,大约在X=2处取到极值。与理论相符。
SKncticoJ-Microw4t€♦♦
文QDMDH9AMD工30T®ZJKD.匚3)W(H)
6300Q如智■1M
[|Gk>bals|二)(Allglobalmemku二][F习X”①匕!"6
3W
Sinclu<lr<iMth.ti>
■include<5tdio.h>3.315111*3.531296984983925H52
MefineMe.61S3.18X39a3.315B4i9992869«W5
doublefCdoub>);“”••讪敢值计算由就J3f833a3.181396V?VW6
voidRain(uoi4)).181422•9.2)244099928?wsrs
3/4fs72c3・l,14A6999%6»592W
double3.138374*3.149862999937””,6
dotible«l.a2;3.W868a3.i&1912“9966“97M
inti;3.142421”9八6
p"n”(RHfi入区间两端6•3.142419“9”3
(X3.14*420・3.145263“9%3
输入精度:“);3.14M63*3.142419
“SA'QU”);3.1424219*3.143506
“in",忑®为度为21八n”.a.b.TzS:1.14i74td14242。
print"”序号\t4l\t\t^2\t\t»(3.141334*3.141748
,or《I;H6E・・)3.14174?«3.142BBS
pri®t("1);3.141S90a3.141748
printF("\f);3.141492a3.1415t0
1-•;1.144.9VIQ.141⑸
用精度控制蔺3砍j1.141SS3«3.14159B
3.141590a3.141613
3.141S74
,•••・哦••♦1噬18人两3.14159。©3.1415”
3.141S8S・3.141590
priN,<・*Vdg八t"VT.iQ1.32•〃3.14159®*3.141593
/・・Ti出怎次计It后d
•:CUsW-fjnieYMw]
fvnctl9n2.exe-6error(s),•wdrninq(s)
7nA田编/清武又在文件!中直找\在文件2甲叠我>结第工现Zbuc”n<7
ftU
运营如图所示
我们可以看出,大约在。处取到极值。与理论相符。
二、用简朴的语句写一个单位矩阵
①采用matlab构造:
MATLABR20U-
MeW<DebugOeskBopWndowx”
:▲■■〈。•干工VCWCM
5>erttutl9HgtoAdd£JNew
,O,xWndw*
■■,:2■%Q?Wectdatatopi..▼
Njme*Vake
«4>4doubted
»«y«(2>
»ey«<5>
CommandH^ory
r-ir^ut<pl«a<«xip*,amabtxI
»eye«»
eyed)
ele
b⑴
»y«<2)
b⑴
不⑷
0美H曰"4市
Matlab构造的矩阵最是简便,由于自身就有一个单位矩阵的函数。
由于matlab是基于C语言而设立的一个数学运用软件,所以他的集成度非常高,并且具有很好的开
放性,于是我们得知eye函数,将其构造。
Eg:
若要构造一个3维的单位矩阵,则输入eye(3)
若要构造一个n为的单位矩阵,这输入eye(n)
②用C语言构造
程序如图所示:
#include<stdio.h>
Intmain(){
intI,j,n;
whi1e(scanf("%d",&n)==1){
for(I=0;I<n;++i){
for(j=0;j<n;++j)
printf(“%d<f,I==j);
printf(r,\nw);
)
)
return0;
}
q2
JI
(S)6uiV4rAD•<5)404^4o--"•XX/lJe
[RIB.(Dirr⑻g@出工(DYVGOWHIM丽N
••□IfAW»2S
三、机械优化设计工程实例
①连杆机构问题
(1)连杆机构问题描述
设计一曲柄连杆摇杆机构,规定曲柄从%=%+90°时,摇杆,3的转角最佳再现已知的运
动规律:“F二%+丁(8-四)2且/尸1,/4二5,%为极位角,其传动角允许在45°4/0135°范
3兀
围内变化。
(2)数学模型的建立
设计变量:这里有两个独立参数’2和’3。因此设计变量为入=[%出F二[/2/31
目的函数:将输入角提成30等分,并用近似公式计算,可得目的函数的表达式
30
J血-%)]
/=1
约束条件:
GX(1)=-X(l)^0
GX(2)=-X(2)<0
<JX(3)=-(X(1)+X(2))+6.0^0
<;X(4)=-(X(2)+4.0)+X(1)<0
0Gx(5)=-(4.0+X(l))+X(2)<0
oGX(6)=-(l.4I42*X(1)*X(2)-X(1)**2-X(2)**2)-16.0^0
GX(7)=-(X(1)**2+X(2)**2+1.4142*X(l)*X(2))+36.0^0
(3)程序编制
C=====================
SUBROUTINEFFX(N,X,FX)
oDIMENSIONX(N)
COMMON/ONE/11,12,13,I4,NFX,I6
oNFX=NFX+1
P0=ACOS(((1,0+X(1))**2-X(2)**2+25.0)/(10.0*(1,0+X(l))))
oQOACOS(((1.0+X(l))**2-X(2)**2-25.0)/(10.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-P0)**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)**2*T
ELSE
FX=FX+(QLQE)**2*T/2.0
ENDIF
12CONTINUE
RETURN
,END
L---------———----------------------------———
6UBROUTINEGGX(N,KG,X,GX)
C«=========================
*DIMENSIONX(N),GX(KG)
GX(1)=-X(1)
GX(2)=-X(2)
<JX(3)=-(X(l)+X(2))+6.0
GX(4)=-(X(2)+4.O)+X(l)
<JX(5)=-(4.0+X(l))+X(2)
•GX(6)=-(1.4142*X(1)*X(2)-X⑴**2・X(2)**2)-16.0
GX(7)=-(X(1)**2+X(2)**2+1.4142*X(1)*X(2))+36.0
^RETURN
正ND
C=========================
SUBROUTINEHHX(N,KH,X,HX)
-------------------------------------
DIMENSIONX(N),HX(KII)
X(1)=X(1)
^RETURN
END
输入数据如下:
2.7.0
4.3,3.2
2.,0.2,0.01,0.00001,0.(X)001
0,1,0
3.5,2.8,5.5,4.5
(4)可执行程序的生成
13将程序文本保存成文献tOO1.txt,存放在OPT_EXAM\FORTRAN\0-fortran目录
To
14使用口05操作界面,(^1_£X人乂正01^11<人1\1\0401「@11目录下,输入命令
asumt.for4-t001.txttOO1.for回车。生成tOOl.for文献。
15fori1001;回车;
@for2回车;
⑤linktO01;回车,即生成可执行程序l001.exe。
⑥从t001.dat文献中加载数据,运营tO01.exe。
t001<t001.dat>t00l.rtf回车得到结果。
操作过程如图:
S9C:\windows\system32\cmdexe
MicrosoftWindows[????6.1.76013
????????<c>2009MicrosoftCorporation????????????????
C:\Users\ChenXJ>cd\
C:\>cdopt_exam\fortran\0-fortran
C:\OPT_£XAM\FORTRAN\0-fortran>copyasunt.£or+t001.txtt001.for
ftSUMT.FOR
t001.txt
C:\OPTJEXAM\FORTRAN\0-fortran>forlt001;
MicrosoftFORTRAN??U3.31August1985
<C>CopyrightMicrosoftCorp1982,1983,1984,1985
PassOneNoErrorsDetected
575SourceLines
:\OPT_BXAM\FORTRAN\0-FORT~1>for2
CodeAreaSize-U4412<17426)
ConsAreaSize=tt0198<408>
DataAreaSize=R3BEC<15340?
PassTwoNoErrorsDetected.
C:\OPTJEXAM\FORTRAN\0-FORT~l>linkt001;
Microsoft<R>8086ObjectLinkerVersion3.04
Copyright<C>MicrosoftCorp1983,1984,1985.Allrightsreserved.
C:\OPT_EXAM\FORTRAN\0-FORT~lX00Kt001.datX001.rtf
C:\OPTJEXAM\FORTRAN\0-FORT~1>
操作环节
(5)结果与分析
结果显示如下:
:=============PRIMARYDATA==============
N=2KG=7KH=0
X:
.4300000E+01.3202300E+01
FX:
.7847605E-02
GX:
-.4300000E+01-.3202300E+01-.1500000E+01—.290000()E+01
-.5100000E+01
-.6729390E+01-.1218939E+02
X:
.4300000E+01.32O23OOE+01
FX:
.7847605E-02
GX:
-.4300000E+013202300E+01-.1500000E+0I-.2900000E+01-.5
1OOOOOE+Ol
-.672939OE+Ol-.1218939E+02
HX:
PEN=.3974390E+01
R—.20230OOE+O1C=.2023000E+00TO=.100(X)00E-01
EPS1=.1OOOiDOOE-04EPS2=.1000000E-04
==============ITERATIONCOMPUTE==============
*****IRC=1R=.2023000E+0IPEN=.3974390E+01
*****IRC=2R=.40000(X)E+00PEN=.3119361E+01
*****IRC=3R=.8000001E-01PEN=.6407908E+00
*****IRC=4R=.1600000E-01PEN=.1439420E+00
*****IRC=5R=.3202300E-02PEN=.3733451E-01
*****IRC=6R=.6400000E-03PEN=.8986510E-02
*****IRC=7R=.128OOOOE-03PEN=.2346609E-02
*****IRC=8R=.2560000E-04PEN=,9042178E-03
*****IRC=9R=.5120231E-05PEN=.5396702E-03
*****IRC=|0R=.1024000E-05PEN=.4410887E-03
*****IRC=11.20480OOE-06PEN=.412806IE-03
*****IRC=12R=.4096(X)1E-07PEN=4071001E-03
*****IRC=13R=.8192023E-08PEN=.4014154E-03
*****IRC=14R=.163«401E-OSPEN=.399279E-03
*****IRC=15R=.32768O1E-09PEN=.3987240E-03
*****IRC=16R=.6553602E-I0PEN=.3984505E-03
*****
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 从容面对:育婴师试题及答案
- 提升人力资源管理能力的试题及答案解析
- 现代农业技术培养方案(最终)
- 投资策略的选择及应用试题及答案
- 小学家长会感恩教育
- 2024图书管理员行业案例研究试题及答案
- 黑龙江林业职业技术学院《口腔解剖生理学综合实训》2023-2024学年第二学期期末试卷
- 如何通过礼仪提升客户满意度试题及答案
- 黑龙江省佳木斯市桦川县2025年五下数学期末统考模拟试题含答案
- 黑龙江省哈九中2024-2025学年高三摸底(4月)调研测试物理试题含解析
- 新教材高中历史必修中外历史纲要上全册教学课件
- 《我为班级添光彩》主题班会课件
- 如何赏析英文诗歌
- 公共部门人力资源管理概论课件
- 西门子s7硬件相关-simadynd介绍
- 风电齿轮箱结构原理及维护知识课件
- 【计算机应用基础试题】韩山师范大学2022年练习题汇总(附答案解析)
- 文件袋、档案袋密封条模板
- 10t单梁起重机安装方案
- 科技小巨人工程验收培训
- 环境经济学课件:第十次课 环境污染与效率费效分析等
评论
0/150
提交评论