(小芙芙:完美主义者挑刺大师,不会做就拖延?小糊糊:行动派作业糊弄大王)
小糊糊:多目标优化课老师催着要作业了!我找到了两篇论文可以参考!
1 变载荷对径向柱塞泵滑靴副油膜特性的影响研究兰州理工大学 李新峰
http://gb.oversea.cnki.net/KCMS/detail/detailall.aspx?filename=1011068894.nh&dbcode=CMFD&dbname=CMFDREF
2 航空燃油柱塞泵运动学与动力学特性分析(我国的防灾减灾日是哪一天:全国防灾减灾日是经中华人民共和国国务院批准而设立,自2009年起,每年5月12日为全国防灾减灾日。)研究 西安电子科技大学 陈永琴
http://html.rhhz.net/BJHKHTDXXBZRB/20180506.htm
小芙芙:你的题目是轴向柱塞泵,这两篇论文是径向。连泵的类型都不一样,你怎么能拿来参考?
小糊糊:没错。我是轴向。可是搜轴向,也找不到这么对胃口的计算了啊!已经是教学周第15周了,难道你还能因为找不到合适的参考论文,就不交作业?
小芙芙(因拖延而惭愧):怎么能不交?写!你快写!
小糊糊(胜利的微笑):我们来描述问题吧:
多目标优化。希望优化r1和r2,来使粘性摩擦功率损失最小(目标1),泄漏量最小(目标2),交变载荷承载能力最小(目标3)。
A粘性摩擦功率损失
B泄漏量?
C交变载荷承载能力
其中,h为:
题目描述完毕!
小芙芙:抄得挺开心嘛!可是这两篇论文里的计算表达式不一样啊。哪个对?
小糊糊:好吧我们来按着论文仔细推一遍……都对!都能自圆其说!
小芙芙:不能等价替换的两个表达式,怎么可能都对呢?
小糊糊:长得一模一样,你让他们毕业之前怎么过查重?!现在就是不一样了,你抄不抄?
小芙芙:不抄!我自己算!
小糊糊:您请!
小芙芙:我先打个游戏看个剧逛个淘宝吃个零食洗个澡再睡一觉……
小糊糊:还吃呢!我要赶紧抄完交了!这个不写完,什么时候写下一科作业?!
小芙芙:哦……
小糊糊:我们来化简:
式(4)h常数不管,只与k1有关。
A粘性摩擦功率损失
式(1)想要最小,常数不管,就是
式(3)想要最大,常数不管,就是式(6)。
可是式(5)与式(6)太像了。让我不禁怀疑,这么像的两个式子,一个取最小,一个取最大,是不是不太现实。
式(2)想要最小,常数不管,就是下式最小。
小芙芙:等会儿,可是这个式子分子分母约掉了,与r1,r2无关。这让我怀疑,h的表达式是不是哪里有问题。
我们来回顾一下h的求解过程。
节流孔流量
通过接触面间的液体泄漏量
达到平衡时候的流量连续方程Q1=Q
滑靴油膜厚度
原来如此,流量平衡方程右边的部分就是我们的目标2。我们从目标2里得到h, 又想把h代回目标2来求最小值,空手套白狼!我们需要另一个方程,来提供h与目标2的关系,建立联系之后,才能愉快地讨论最值问题。
小糊糊:这次多目标优化作业并没有说必须是三目标优化,时间原因我们先只考虑目标1和目标3,做双目标优化。
找到合适的r1,r2,使(5)最小,(6)最大。
以我有限的数学知识,首先想到的就是求导!
我们先假设r1是常数!公式就变成了
热血小糊糊求了一下一阶导数,想通过一阶导数为零来求极值。太复杂了,能力有限,不会解。
小糊糊:求助于万能的matlab!
小芙芙:让你高中数学不好好学求极值问题!极值问题除了会求个一阶导,就再也不会分析了。也好。把所有的常数项算出来,画出Q曲线,我们手动寻找最低点吧。
d.=0.002m柱塞内节流口直径
miu=0.6小孔流量系数
miu0=0.0034-流体的动力粘度,Па*с
p0=190bar-油膜压力
小芙芙:天啊油膜压力不是随着r1,r2一起变化的吗?它怎么能是常值?
小糊糊:你清醒一点!你再去找p0和r1,r2的关系的话,这作业这辈子就别交了。你只是个学生,你只是想交作业而已。你不是研究院,你不是负责人,你不是总工程师。我们就假设它是常值,就假设它是1.9e7帕斯卡。
pr=2bar泵腔压力
rour=860kg/m3-流体密度
pout=200bar-柱塞腔内压力
现在我们来按计算器:
R=0.2m-滑靴中心线到轴线距离
小芙芙:k3=2895193230这是认真的吗?
小糊糊:认真看着,别吐槽!要不你来按计算器!
小芙芙:认真的,是认真的。你来你来……
L4=0.04m-节流口长度
令r1=0.04m
小糊糊敲进matlab,不出图像。挨个检查,查lnr2, matlab计算了lnr2,。但是lnr2的三分之一次方居然显示虚数根。
小芙芙:喏,百度说……
用MATLAB进行-27的三次开方运算的结果是 1.5000 + 2.5981i,为什么不是-3;而且MATLAB对负实数开三次方得到的都是复数而不是负实数,那岂不是关系到负实数开三次方的运算都会出现不希望的结果?求大神详解
只是显示第一个。至于为什么第二个根的虚部有个非常小的量,这是由于pi在机器精度下不是无穷位数的,而且exp函数是按级数实现的,会有截断误差,更为明显的例子
sin(k*pi)
要想实现只是显示实数根,你用nthroot这个函数就行
如果x的幂小于1,则matlab只返回复数解,要得到实数解,
>> nthroot(-8, 3)
ans = -2
>>
其实,(-8)^(1/3)一共有三个根 1.00000000000000 + 1.73205080756888i
1.00000000000000 - 1.73205080756888i -2.0 只要得到任意一个,其他两个就可得到 (-8)^(1/3)=(-1)^(1/3)*(8)^(1/3)=2*(exp(i*2*pi))^(1/3)
=2*(exp(i*pi*n/3))(n=0,1,2) 这就是上面的3个根
小糊糊:nthroot(-8, 3)!好的,我又可以了!终于出图了!
小芙芙:可是都这些竖着写的数字都是什么鬼啊。
小糊糊:哈哈哈找到了,拼写错误。再加了一段找极值的代码吧。
[a,b]=findpeaks(Q);
hold on
plot(r2(b),a,'ro')
[c,d]=findpeaks(-Q);
hold on
plot(r2(d),-c,'ro')
小芙芙:可是我明明想求Q的最大值来着。只有最小值是怎么回事。
小糊糊:原来r1是0.04.但我程序里打成0.004了。改成0.004之后,得到下图。
可以看出Q随着r增大而迅速上升,在r2=0.042之后,Q变化比较平缓,r2在0.0497之后,Q就已经十分接近最大值。
得到了优化后的r2值,0.0497
现在来优化r1
得到下图。
小芙芙:0处取最大值,你是说我干脆没有r1吗?全是平的,没有凹槽?没有油池?你在逗我?
小糊糊:别急。是因为泄漏最小这一准则的比重太大了,Q的最大值r1很小处取到。但实际上,我们知道,如果r1很小,油膜支撑力不足,摩擦磨损情况严重。适当的泄漏可以带走一部分热量,有利于冷却。所以此时调节一下两个准则的权重,缩小泄漏准则的占比。
不断缩小占比,当权重0.1和0.9时,得到下图
Q最大值不再像之前那样需要r1很小,而是在预设值r1=40mm附近,较为合理。证明了,加权重方法的有效性。
继续缩小占比。当权重为0.12,0.88时,得到下图。Q最大值在r1=35.6mm处取到,也较为合理。
最终优化结果为,r2=49.7mm,
r1=35.6mm。
小糊糊:我写完作业啦!
小芙芙:耶!!
小糊糊:是我写完的。你激动什么。喏,你去交作业!
小芙芙:好~
P.S顺手贴:(找多目标优化的时候找到的段子)
日本如何解决问题:“ 5个为什么”的方法是“定性”解决质量问题的一个例子。例如,经理在商店里发现了一滩油。要了解此问题的原因,他必须问5次“为什么”问题:
姓名:
年龄:
电话: