首页/文章/ 详情

如何找到别人的计算错误

1年前浏览743

艾温德·厄尔雷《卡梅尔柏树》1989


当老板收到别人交付的一篇计算报告,十有八九会这么安排,看看对方算的对不对,和我们自己算的结果比一比,是不是一致。
听到这个合理要求,让你脑袋大了两圈。看懂别人写的计算报告谈何容易,因为别人写报告压根就没打算让你看懂。
报告里贴满了公式,好像谁看不懂这些公式就没有资格理解他的算法。写报告的人也许从来没有看过这些公式,直接从某篇老报告中继承过来。
报告里写满了数据图表,画了好多花花绿绿的图。好像把所有该算的都算完了,该分析的都分析完了,让你无法怀疑有任何缺失。
结论只有一句话,计算了所有要求的状态,提交了所有要求的数据,因问题的复杂性,数据有一定的偏差。
你面对着山一般多的数据,乱麻一样复杂的公式,和一句不置可否的结论,你如何判断算的对不对?

最实用的办法是把报告翻到最后,对比最终的计算结果,和自己算的一样,就是双方对了,不一样就是有一方错了。
这个心情和算命抽签也差不多,闭上眼睛心里默念:阿弥陀佛,菩萨保佑,他的结果和我的一样。
睁开眼看到他的结果和自己的不一样,心里一下奔溃了。这可怎么向老板交代?看不懂他的报告没法证明他算错了,承认自己算错了,自己又太冤枉。
 
于是你发愤图强,要看懂这篇报告,找到对方的错误,还给自己一个清白。你查教科书,你查文献,你找专家,把这团乱麻一样混乱的公式梳理明白了,最终发现这些公式虽然太难看懂,确实没有出错。
你检查报告里的数据,你替他从头到尾算一遍,最终失望地发现数据的计算过程也没有出错。
也许对方只用了一天算了一遍,贴了一个报告。你用了三天算了三遍,没有找到错误。
这可怎么向老板交代?找不到他的错误,无法解释为什么双方数据不一样。必须承认自己算错了?
老板只能自认倒霉,花钱请人做计算买到了一天的工作量,为了看对方算的对不对浪费了自己人三天的时间。唯一可以安慰的是,证明自己人算错了也算有点收获。
然而,故事没有结束:
 
收到对方的新版本计算报告,发现计算结果变了,和上次不一样。
收到另一家交付的计算报告,发现三家的结果都不一样。
自己重新做计算,发现自己的计算结果也变了,和上次不一样。
这可怎么向老板交代?
 
有人可以很容易地向老板交代,而且被老板立即原谅,甚至还配备更多的钱和人。“老板,这是个世界难题,这么多家无法获得一样的结果,这么多家没有找到正确的方法,说明我们遇到了真正的世界难题。
这句话点石成金、点错误成光荣,包治百错。 
我相信你不愿意把自己的行业莫名奇妙地搞成“世界难题”,你还是想给自己找回清白,实实在在地明白到底谁算对了。你还是想获得一副火眼金睛,可以看透计算报告背后的错误。
 
错误藏在你没去看的角落。
如果你读别人的计算报告,顺着别人的思路一遍遍检查,你只会得到别人的结论。要想找到别人的错误,就要去看你没去看的角落。恰恰看计算报告中没有讲的部分,检查计算的输入对不对,计算的结果符不符合常识。 

一、计算输入对不对

1. 输入数据版本对不对?

检查他从哪里获得的输入数据,谁给他的输入、什么时候给的、给的哪个版本?

你会发现表面上大家说算的是同一个算例,但是大家的输入数据不是一个版本。

2. 几何形状对不对?

看计算使用的几何形状对不对,尤其是会影响到计算结果的区域,一个一个尺寸检查,一个个点检查,务必确定几何形状完全正确。

3. 参数定义对不对

力矩的作用点对不对?

坐标轴的原点和方向对不对?

无量纲的参考长度、面积、密度对不对?

参数的单位(角度:弧度、度;长度:米、毫米)对不对?


不要小看这三条,很多计算结果不一样仅仅因为大家用了不一样的输入和定义。这方面产生的错误往往最大、最危险。
 
二、计算结果是否合乎常识

1. 检查最简单状态

找到计算结果中那个最简单状态:没有干扰、没有波动、没有突变。简单到可以直接估算出结果。

检查这个最简单状态的计算结果是否正确。

例如:一个物体在旋转、漂移、振动,你不知道计算出的加速度对不对,你找到物体做自由落体的时段,只要加速度不等于重力加速度,就是错了。 

2. 检查想明白的影响趋势

虽然你不知道数据对不对,但是个别因素的影响趋势你可以想得很明白,专门检查这些因素的影响趋势。

例如:细长体的长度越长,表面的摩擦力越大;空化数越小,空泡越大。 

3. 检查知道准确值的数据

虽然你不知道复杂的计算结果应该是多少,但是你知道个别数据的准确值或者范围。

例如:你知道这类流线型外形最低阻力设计的阻力系数是0.1。只要计算出来的阻力系数明显小于0.1,基本判断这个算法有错误。

用简单的常识,可以检查出隐蔽的错误。当然,你也要存储足够的“常识”,足以查出各种错误。
 
当你确定计算的输入完全正确,计算的结果符合常识,这已经是一个工程正确的计算结果。
如果你可以确认你和别人的计算都是输入完全正确,获得的计算结果符合常识。但是很不幸,双方的计算结果还是不一样,还有差异。
我们可以平心静气地承认,这个差异就是这类计算的正常误差范围,我们把这个差异作为设计余量。

来源:陆姐说
振动
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2022-12-10
最近编辑:1年前
仿真方法论
如何让老板通过你方案
获赞 31粉丝 24文章 140课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈