首页/文章/ 详情

误差| 2.不要把低级错误假装成高级错误

1年前浏览322

Paul Klee,  cat and bird


有一天,某人神色慌张地对我说,“陆姐,出事了,刚刚别人送来的数据,比我算的小了很多,我现在就去检查算法,把这个误差搞清楚”。我一把拦住他。

我说:“等会,到底差了多少?”

他说:“好像差了上百倍”

我说:“不可能,到底差了多少?”

他说:“差了大概五十多倍”

我说:“不用去了,是不是你的角度单位是度,别人是弧度?”
第二天,双方核实,确实因为角度单位的度和弧度的不同,带来了57倍的差别。这和算法有什么关系?

类似的事,你也许遇到过:

1000倍误差:

他说:“这个软件不适合算这种问题,用其他的软件就没有这个错误。”

其实,把长度单位米和毫米搞错了。

800倍误差:

他说:“果然水里和空气里的流动不一样,阻力系数差了800倍。”

其实,把水和空气的密度搞错了。

57倍误差:

他说:“算法可能不够准确,换个公式。”

其实,把角度单位度与弧度搞错了。

2倍误差:

他说:“湍流模型太简单,不能准确计算流动摩擦。”

其实,把半个模型与整个模型搞错了。

我不明白,怎么会有人相信,软件、算法、模型能带来几倍到千倍的误差。无论数据错得多么离谱,他也敢声称是因为算法不够精准。
其实,不同级别的错误导致不同级别的误差。往往低级错误带来的巨大误差,才会导致我们死得很惨。软件、算法、模型这种高级错误反而带来的误差最小,很多时候都可以忽略。
我们把错误,从最低级到高级分为四个层次:

1. 最低级的错误

搞错了数据单位,搞错了尺寸、搞错了形状、搞错了状态。

带来几倍、十倍、百倍、千倍的误差。

2. 低级错误

仿真的边界条件与实际的边界不一样。

需要很密集网格的地方几乎没画网格。

带来从百分之几十到几倍的误差。

3. 中级错误

使用了不合适的算法和模型。

用二维流动替换三维流动。

没有搞明白是层流还是湍流。

带来10%量级的误差。

4. 高级错误

算法、模型不够精准。

带来1%量级的误差。

我看过无数的算例,包括我自己的算例,每次出错,都是低级错误,难得见到谁有机会犯下高级错误。
实际上,我们只要消灭低级错误,基本解决中层错误,把误差降低到10%的量级,对于工程设计已经够用了。
我们常见,很多人勤勤恳恳地在低级错误中打转,拿出来的数据误差大得不能用。但是,谁愿意承认,误差大是因为他粗心搞错了尺寸,糊里糊涂设置错了边界。于是,他推出算法、模型这些只会带来1%量级误差的高级错误,替他背几倍误差的黑锅。数据错了,是因为这些高级错误还没有解决。
他可以理直气壮地怪企业没有加大投入打基础,怪国家落后,怪上帝为难人类。他除了命不好,没有其他责任。
重复得多了,这还成了不能反驳的道理。时间长了,大家还形成了默契。这成了一层谁也不敢触碰的面纱,让多少低级错误,躲在背后窃笑。

希望你敢于打破这层面纱,面对让我们难堪的现实。去扫清这些低级错误,认真核对每一个数据,深入分析每一种现象,反复检查每一个设置。
用你所有的精力,去消灭你有能力消灭的错误,获取虽不精准但是可靠的数据。



误 差

相关文章,在仿真秀官网搜索:

1. 与误差斗争一辈子,不如学会包容误差

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