“ 带着问题,直奔需求。”
CAE是一个如此庞大的专业,认真说的话,不仅包括结构,还涉及流体、电磁、热学、声学、甚至光学和化学。就算不考虑那些,仅仅是ANSYS或者Abaqus一个软件,关于结构仿真相关的知识,你去翻帮助文档,从头到尾想要把理论到软件操作都学完,可能大学四年时间都不一定够用。
我们当然要学习CAE相关的很多知识点,但,授人以鱼不如授人以渔,比学习知识点更重要的,是学习CAE的方法 d论。
那么,CAE仿真应该怎么学习呢?
01—任务驱动
我的第一个建议就是——要以任务驱动学习。
想要学会任何技能,最重要的一点就是带着任务去学习。就好像你要学弹吉他,如果只是为了陶冶情操,那大部分普通人可能浅尝辄止,练习一段时间就放弃了。但如果你的女神很明确就喜欢吉他弹得好的男生,或者你知道自己半年后有个任务一定要上台去弹一曲,那在这个压力下你一定能迅速掌握弹吉他这个技能。
学习CAE也是一样的。哪怕你只是想要像学英语那样,觉得“学会了可能会提高自己的职场竞争力”,你也应该给自己一个任务,一个目标,和一个期限。一旦你的学习有了明确的目的和需求,你就有了方向感。比如你看到了一个非常有趣的仿真小例子,就可以把你的初步目标定在学会实现这个案例上。只有学以致用,才能真正让你所学的知识固化在大脑中。
反面案例就是很多人学习高数的时候。其实高等数学真的不难,它是近代科学的起点,基础中的基础。但我们说磨刀不误砍柴工,你总是需要先磨刀后砍柴才行。但我们许多人在学习高数的时候,没有几个人知道甚至见过我们未来要砍的“树”长什么样子。你都不知道你未来是要砍树、还是要钉钉子,还是要在墙上钻孔。你只是盲目的在磨刀,在做锤子,做钻头。结果等到需要你去砍树的时候,你回过头才发现,因为当时你觉得磨刀没啥用,早就把它丢了,或者你的刀根本就没有磨得锋利过。
好的,你说我学习CAE就是有明确的目标。比如老师有一个科研任务需要做仿真;或者比如公司里有个产品需要我仿真一下。那这时候,零基础的你应该怎么办呢?
——翻开一本《从入门到精通》的书,从头读到尾,跟着做完20个案例,然后……从入门到劝退吗?
或者你学着学着发现,软件背后的原理你根本不懂,还需要回炉重造再学一遍《材料力学》《弹性力学》和《有限单元法》?你确定你有完整学习它们的时间吗?
02—了解基础,然后直奔需求
我的第二个建议是,学习CAE,要在了解某一款软件的基础框架和GUI操作逻辑以后,直奔你的需求。
如果你跟着简单的验证案例教程依次学习的话,自然也有它的好处。你可能掌握的知识更全面,更成体系,但……你也更难坚持下来。
你可以花点时间,通过视频教程和几个案例,全面了解一下你要选择的这款软件的整个分析流程,和界面上功能的组织逻辑。然后你需要用到哪个模块,就去找那个模块对应的帮助文档。直奔主题,朝着你需要的方向深挖下去。
初次学习有限元,你可以是个新手,这不丢人,每个人都有新手期。但你不能永远是个新手,不能永远当一个初学者。CAE的知识就像一棵枝繁叶茂的大树,在主干之上,有许许多多的分支领域。做岩土分析的工程师可能需要在入门Abaqus以后马上使用岩土相关的本构模型,但他也许永远都用不到复合材料分析功能。记得我前面说的第一条 带着问题学习 吗?从你的问题出发,反推你需要的知识和技能,找到一条最短学习路径,然后就上手去干就好了。如果你这样初步做出成果以后觉得知识学的不扎实,那你就回过头去把这一条学习路径夯实,比如前面说的岩土工程师,可以去了解本构模型每个参数背后的物理意义,或者了解非线性有限元分析当中你用到的软件界面里那些你之前看不懂的选项背后的原理。甚至在你完成了这个需求以后,如果确有需要,你还可以接着拟定下一个需求,然后沿着下一个目标找到一条新的学习路径,再在CAE这棵技能树上点亮更多的技能点。
03—基于软件学习理论
过左和过右都是学习的误区。 在《论语·雍也》篇中,子曰:质胜文则野,文胜质则史,文质彬彬,然后君子。不太恰当的把它迁移到有限元仿真里面来,“质”就对应软件操作技能,“文”对应理论水平。二者需要结合兼顾,互为助力,共同进步,才能“文质彬彬”,成为合格的有限元分析工程师。
所以,我对学习有限元方法的第三条建议就是,基于软件学习理论,把软件当作学习理论的脚手架。学习有限元最理想的过程应该是一个软件操作实践-力学/有限元理论 相互促进,螺旋上升的过程。首先学习基础的软件操作方法,学过以后你可能会有很多疑惑。比如对于完全零基础的小白来说,可能都不知道应力是什么,应力为什么有分量,为什么要画网格等等。带着这些应用中遇到的问题,回头有时间的时候去翻材料力学书补应力的概念,去找弹性力学教材找三维的应力张量定义,去找理论手册中关于网格和单元的概念。然后你在学习单元公式的时候可能看到了应力计算在高斯积分点,看到了单元分为一阶和二阶,回过头在有限元软件里找到相应的选项,加深你的理解。
看到这里有些人可能会说,ANSYS APDL比Workbench更适合学习有限元底层理论,因为APDL暴露出了更多底层概念,比如单元和各类算法等。我个人对这类观点持旗帜鲜明的反对态度。这就引出了我的第四条建议。
04—学习最新软件和最佳实践
我的第四条建议是:学习的时候,只要条件允许,就应该争取学习最新版本的软件,学习你当前在业内能找到的最佳实践。甚至为了确定你该学哪个软件/哪个工具,你值得像买手机、选房子那样仔细做一番比较评估之后再做决定。
这是我的观点。我知道有很多人可能持有不同观点,没关系,你可以听我狡辩(不是)了解一下我得出观点的逻辑。
我建议学习最新版软件的第一个理由是,新版软件总是具有更多、更强的分析功能。少有的反例包括ANSYS Workbench在19.0以后去掉了FE Modeler工具,Abaqus在2016版本以后删除了CFD模块。但无论如何,新版软件总是代表了这些仿真软件公司对仿真技术未来发展的最新理解。即使是上面两个反例,也是因为FE Modeler工具大部分的功能有了更好的实现方案(External Model),以及达索收购了专用的CFD仿真工具,删除那些技术就表示ANSYS和达索系统公司官方认为它们已经完成了相应的历史使命,该被淘汰了。
新版软件的那些功能,对于初学者来说可能有很多都暂时用不到,比如你可能会在新版本的ANSYS Workbench界面上看到 增材制造(AM工艺) 的按钮,而你也许在很长时间内都不会点开它。但是没关系,哪怕你只是在使用基础功能的时候偶尔瞄到一眼,软件里那些新增的按钮也在你心中留下了浅浅的印象。你会知道啊原来这软件还能做这一类仿真,未来某天,也许这一粒种子就将生根发芽,谁说得准呢。
学习新版软件的第二个好处是,新版软件一般总是会变得更简洁易用,更傻瓜化。无论是从ANSYS经典的APDL界面升级到Workbench,还是后来的ANSYS AIM,再到2021版本发布的Discovery,软件厂商总在不遗余力的降低仿真分析的门槛。(关于这个主题后面我也会再展开论述)
你学不会有限元理论,或者是因为你自己的好奇心和驱动力不足,或者是你没有掌握正确的方法,没找到合适的学习路径和资源。但这都怪不到“软件太傻瓜化”头上。作为任何领域的一款软件,界面做的更加简洁易用,降低入门门槛,永远是一款软件工具该具备的优良美德。
使用旧版软件和老旧的界面,同样的操作新版需要一步,旧界面可能需要三步到五步。这些繁琐的操作就像贫穷时候经历的苦难,你可以在使用新工具的时候感慨它的易用性然后忆苦思甜,但永远不要单纯的“感谢苦难”。对,别怀疑,我指的就是ANSYS APDL。
最后一个理由,你的公司/所在的组织可能由于各种原因(包括但不限于协作的要求、购买新版需要的成本的限制,以及已有成熟高效的流程),继续使用旧版本的软件。但你作为一名学习者,无论是申请学生版还是用其他手段也好,都应该尽量追求最新版。可能有一些新版本只是更新了界面,对你现有的工作流程和效率来说没有提升,那没关系,同款软件的功能大抵相似,学了新版也完全不影响你使用旧版本;而如果新版本的软件真的有了革命性升级,能让你原本需要几天的工作流程数以十倍的缩短时间提升效率,那么将这个升级告知你的组织,并争取推动组织采用新技术更新现有工作流程并获得效率提升,就可以是你的责任。
总结一下,我对学习CAE的方法,一共提出了四点建议:
任务驱动,带着问题学习。
先了解共性的软件基础知识,然后直奔需求开辟一条最短学习路径。
把软件当作学习理论的脚手架,软件操作和理论学习并驾齐驱,同步提升。
尽量学习最新版软件和最佳实践。