这一段时间,我被COMSOL折磨得就好像头被按进了水里,痛苦还得不断挣扎。
在学习COMSOL道路上阻碍有三:一是本科时候,我连matlab、CAD这种大众软件都没有接触过,模拟经验为零;二是数学物理基础不够扎实,而模拟又是在物理和数学得基础上建立得,学习来很吃力(当初怎么能想到,我一个化学生还是逃脱不了物理数学的魔抓);三是大环境里客观存在的学习壁垒,使得在科研的道路上苦难重重。以我的经历来说,有问题先网上查,太精太细的问题找不到答案,论坛贴吧里也是问的人多回答的人少,去请教认识的人,人家精力有限,也没办法解答你的所有问题。不会的慢慢累积,得不到解答,最后学习的小火苗一点点燃烧殆尽。
前段时间,认识了易仿工作室主要负责人(下称为部长),之前那个问题得到了解决。最近做案例时学习了很多相关知识,掌握了不少技巧。所以,借这个平台,以官网案例连铸为基础,分享我学习COMSOL的经验,也是希望更多的人加入讨论,互相交流,共同进步。
丢个案例给你昨天我做了官网上案例连铸continuouscasting,完成整个模拟之后,把有疑惑、不懂的记在pdf上。今天下午部长帮我答疑,两个人互相讨论,大概70~80%的问题已经解决。
那让我们来看一下我这次案例分析的成果吧。
1 Comsol官网上的每个案例都有详细的建模过程和完整的模型供用户下载。 注意:下载时请注意版本,高版本不能在低版本中打开,并且步骤会存在差异。pdf首页便是该案例的名称以及版本。 2 从第二页开始是简介和模型定义官网的每个案例都是以相同的逻辑编写的,其中介绍了案例的工艺背景、物理意义和建模思路,还会强调在建模中的一些重点。这个部分会多一些专业名词,如果不太清楚,我会把它圈出来,并在旁边写上备注。除了学术性的解释,我更希望充分理解,让这个概念活在脑子里,并且能够以浅显易懂的语言表达出来。我觉得这样才能使我理解这个案例在做什么,模拟在做什么。
3 下一部分是结果和讨论。 这里会展示所有的结果图,并且对结果做简单的分析。对于结果,除了绘图技巧,内容本身我并不是很关注。 4 最重要的是建模操作说明,用户跟着指示一步一步做,就可以得到最终的结果。 这也是我主要学习的地方。唯一要提醒大家的就是要 细心,有些时候一个不留神操作错了,要么不收敛要么结果不一样,再回头找错可能没那么容易了。当然也有特殊情况就是官网提供的源文件哪里出错了。 5 建模的第一步是模型向导 我仔细阅读案例中选用的物理场旁边的解释,理解其物理意义,并把它注释在pdf上,方便之后阅读。 6 物理场的初始条件和边界条件的设定是今天学到的一个很重要的环节 之前我不太理解什么是边界条件,也不明白为什么这里设速度而那里又设压力,这整个环节我也不太理解在干嘛。经过查自资料,翻动尘封已久的高数知识,和部长讨论一番之后,才有了如下结论,希望能够帮助初学者: 每个物理场都有相应的因变量,比如流体力学有两个因变量有速度和压力。了解这些需要一定的相关知识,另外comsol中也给大家列出了相应的公式和因变量,方便用户快速掌握。而整个环节便是用户根据自己的模型给定因变量的初始值和边界条件,或是给微分方程加一些项,抑或是确定方程某些项前面的系数。软件求解微分方程计算出结果。层流有速度和压力两个因变量,便要给这两个因变量分别设一个初始值和边界条件。在初始值1中设定了两个因变量的初始值,而入口1设定了压力的边界条件,出口1设定了速度的边界条件。但是为什么不是入口1设置速度的边界条件,出口1设定压力的边界条件,我们目前没有确定的答案。进而,我更加理解comsol这类的模拟软件在做什么,它们在求解计算,而用户是在设方程(想一想小学时候做的应用题或是高数中的拉格朗日乘子法),我们需要了解我们的需要以及用我们的物理知识数学知识,列出方程,让软件计算,但这里的方程就不想鸡兔同笼那样简单了。 7 网格划分也是模拟的重中之重,影响着计算效率和收敛性 因为之前参加过一个基础培训,所以案例中划分网格的步骤大部分都能理解,但是自己动手可能还有困难。划分网格的技巧有很多,哪里疏松哪里紧密,三角还是四面,扫掠,等等。 8 求解器的设置是重点也是难点 求解器的设置涉及数学,比如耦合、迭代、直接、参数化等概念。所以我的学习方法是 先了解概念和作用,再在实际操作中掌握求解器的设置。 9 最后是结果我不关心结果的内容,而是关心怎么设置,有哪些技巧,可以之后做出我想要的结果,并使我的结果更加漂亮吸引人。相对于其他的,这一步还是比较容易的。
以案例连铸为例,给大家分享了我学习comsol软件的大概方法和思路。接下来,是我学习模拟研究课题的一些心得。
comsol算是一个小众的软件,所以网上的资源相对ansys来说少。有哪些靠谱的途径可以让新手学习呢?首先排除贴吧,或者小木虫。不会的人拼命问,会的人忙着做研究,我在那些地方问过不少问题,但少有回答,现在也不抱希望了。首推当然是comsol的官网,有基础学习视频,有案例下载,还有不定期的线上交流,资源丰富。而且他们的服务也做得很好。我昨天发现一个案例里的模型有错,给他们留了言,今早有个小姐姐打电话给询问我的情况以及告诉我解决办法。第二,学术论文,学术论文在很大程度上帮助你完成物理建模,而不是如何操作comsol。所以学会软件操作还得做大量案例。第三,如果经济能力允许,可以参加培训,它可以让你在短时间之内对consol有一个全面的了解。
关于目前的课题研究,我的学习思路大致是:文献阅读,学会本课题的物理建模;案例实践,掌握comsol软件的使用方法。二者同步进行。我现在是分模块做案例。大多是传热、相变。力求将自己课题会涉及到的物理场掌握。
今天的分享就到这啦。介于我本人也是一个新手,只有一些浅显的认识与大家分享,愿大家理解。如果能帮到你,那是极好的。希望能有更多学习comsol的同学能够加入讨论,相互交流,打破学习壁垒,创造更加高效便利的科研环境。
哈哈,感觉最近中口学多了官话连篇。
有话要说...