24小时热门版块排行榜    

查看: 14380  |  回复: 33
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

bfamq

铁杆木虫 (著名写手)

[交流] 你有一个新任务:COMSOL萌新升级必备指南!已有31人参与

如今使用comsol或其他仿真code的同学越来越多,毋庸置疑,数值仿真已经在各个科研领域占领了半(feng)壁(kuang)江(guan)山(shui),特别是工科专业,交叉领域。众多仿真软件把初入科研大门的小伙伴们搞的焦头烂额,甚至变成了毕业障碍。那么不禁要问,软件真的那么难学吗?
       其实答案很简单,软件并不难学,软件再高级,它也是个工具而已。难的是人们总是遇到一个又一个棘手的问题(每时每刻被各路问题、难题所阻挡,无法前行)。不可否认,人与人是不同的,个性不同,能力不同,处事态度不同。特别是不同的人对待和处理科研问题时的能力更是千差万别。那么,既然大家选择了做(hun)科(bi)研(ye),学习各种技能是必不可少的。说实话,读到了硕士博士,就不要再做“巨婴”了。这世界上哪有那么多现成的东西等着被灌到你的脑子里?
       首先,进入你的领域!
       每个研究领域,研究内容,研究方向都有自身独特的理论体系,实验手段。学好自己研究领域的基本理论是必须要做到的。大量的阅读文献或书籍,如果一个人做流体仿真,还不知道τ表示粘性应力张量,那我只能让你自求多福了。做流体,ns方程组应该信手拈来,还等着去翻书?有这功夫,程序都收敛了。你的基础要是不扎实,你就会被这样的问题所困惑“哎呀,我提高入口速度为啥就不收敛了呢?”“哎呀,为什么要求我输入铜的动力粘度?”。
       进入你的领域只是为你的科研打基础,这是一块敲门砖,对自己研究东西要真正懂,它的物理概念,物理图像,它所涉及到的学科知识,研究这类问题的控制方程,这些方程的特点,这类问题所用到的材料,这些材料的性质。所有的一切你都必须要了解,了解,至少要了解嘛!
       那么,学软件需要哪些知识呢?
       有限元理论?数值分析?这些东西不是必须的,毕竟你是用软件来做科研,你不是去做软件。如果你的boss是搞有限元的,那么很不幸,你可能真得去了解这些深(tou)奥(da)的数学。但是,大部分人都只是用软件做事情,那么我们还需要了解这些原理吗?答案是肯定的,对有限元方法的基础知识(如果你做fluent,当然是去了解有限体积法)和数值计算的基本概念有一个整体把握。至于这个坑你下去多深,那就是你的水平和兴趣决定的。但一定要下,千万不要连边界条件和初始条件都不知道是啥。软件再方便,模块再多再好玩,也不会跟flash动画一样,你选几个节点就能模拟出结果的。千万不要以为,你添加了层流模块,给了出入口,它就得给你出结果。想想,凭什么?你连ns方程都不会推导,凭什么呀(软件对你摊了摊手)!!
       对于数值分析,一般的硕博士课程都会有,选一门听一听即可,如果动手能力较好,还可以编几个自己的代码,形成库,没准你以后会调用它来计算呢?
       那么,软件应该怎么学呢?
       说实话,包括笔者在内的很多新手在最初接触的时候都是一脸懵逼的。但是,我一直坚信,那些键盘手,awsd高手,dota霸,或者是精通各类cae/cad软件,亦或是编程高手都会在学习comsol的时候更快更溜。因为什么?可能是对软件这种“天生”操作感更好,我真见过那种看见软件界面就头大的人,游戏也不玩,除了看电影,电脑都很少打开。当然,话说回来,上述这些个别情况只能说,对软件学习过程的难易程度和用时会有差别。我相信最终每个人都能学会软件,学软件的操作应该是最简单的事情了。
      但是,又但是了,为什么有很多人从用软件的那一天开始,可能直到毕业也还是一脸懵逼呢?答案就是一个字:懒。懒得动手,懒的思考,懒得翻译。我们先说动手,打架的时候动手不是好事儿,但是学软件操作,你不动手难道你会盲模吗?(可能与下盲棋类似,也许是光靠脑袋想就得到结果了)软件要想用的熟练就要多动手啊。什么样的问题是最可气?“那个谁,我这样做行不行?那个谁,我这样操作能不能实现?”拜托,你自己手动试试不就知道了吗?很多时候不是你笨,而是你懒。这是一种病。软件最优秀的一点就是,你可以随意鼓捣,很多情况自己动手尝试,要比你翻那本厚厚的操作手册来的方便多了,省时省力。经验是哪来的?经验是你自己不断尝试得到的。我告诉你的经验,那是我的,是我的,我die,哼~!接下来我们说说思考,手懒,动脑还懒?(那就直接切掉把,反正,以后也用不上了)一旦出现问题和错误,第一反应不是求助,而是自己思考。你的边界都对吗?你的初值适当吗?你的材料属性有没有错误?报错嘛,肯定是错了呀,你都觉得你设置的没问题,那它怎么不能计算呢?所以要先动脑自己好好想一想。勤思考,才能学的快。学习,真的没有捷径。(当年我在打团的时候,也是不断的练木桩,盯cd,才把dps搞上去啊,都是点卡啊,说多了都是泪(没看懂?请勿略这句话));最后说翻译,其实最好的comsol教程就是案例文档和模块手册。没错,它是英文的,可它真的不难啊。你第一次冷不丁看了看文档发现,简直晦涩难懂。可实际上生僻的词汇就是一些对应的软件节点名称等等。只要把一篇看明白,第二篇还是那些东西而已。如果你熟悉了操作文档的英语,你会发现它实际上写的很好啊,语法,句子都是可以借鉴的啊。
       那么,怎么才能快速入门呢?
       先来回答几个常见的问题吧!
       问题1:***comsol能做吗?      
       答:comsol这款软件是基于有限元方法来离散pde的,假如你研究东西的控制方程是可以数值求解的,那么理论上comsol就可以做。而且comsol还有拉格朗日粒子追踪,直接求解pde等等。至于一些特殊的算法或者什么特殊的功能,那就要看comsol有没有了。总之,comsol并非什么都可以做。说多物理场做的好,那是因为模块多呀,方便呗。
       问题2:网上案例没有我要做的,哪位可以发一个学学?
       答:comsol的案例应该是非常丰富的了,但是天底下哪有一个和你研究东西一模一样的案例给你学?除非你师兄师姐留下的。还是老老实实把要用的模块案例仔细学一遍,至少一遍。
       问题3:案例有中文的吗?
       答:comsol案例应该会有越来越多的中文文档,但大部分还是英文的,操作手册也都是英文的,所以,英语是躲不开的哦!不要觉得其他多案例与你无关,如果你这样想,那你会错失多少学习技巧的机会啊?
       程序报错了,怎么做才是正确的打开方式!
       答:先根据错误提示,定位出错位置。当然有些错误并没有给出哪里出了错误,这就好仔细设置初边值。
       一般来讲,错误的产生可以来自以下几个方面:
      一.前处理
        参数:由于马虎,参数给错了,差了一个量级,或给成了0;
        变量:1.使用了循环变量
                  2.变量定义的位置弄错了,记住,变量是有定义域的,或者叫作用范围,出了它的框框就得添加对应的名字。对于模型开发器这个树形分支而言,全局,组件,研究,后处理都是独立的框框;你在组件1中定义的变量p,或者它下面模块的自变量t,那都是只在组件1的框框中使用。你出了组件1,谁认识你是谁呀?是吧,所以,研究中要添加某个变量,你得带上comp1,比如comp1.t,这说明这是组件1的变量t。否则就未定义,它可不惯着你。那,后处理的时候,你得选择组件1的某个研究结果的数据集,你才能用对应的变量画图。否则未定义,不惯着你哦。所以,你在全局中定义的变量,也得带上人家的组件名,否则未定义,不惯着你呀!
                  3.还有一些未定义,可能不是它没定义,而是初值给的不适当,造成某些变量无法计算。
        几何:几何出现问题的较少,一般都是在参数化曲线啊,或者实体,曲线转换啊等等情况会出现问题,这一般是画图的时候不仔细,出现了未封闭图形,或者图形的误差太小造成的。而布尔运算中的组合,组合嘛,软件不知道你这些几何图形到底是交集还是差集,还是先加后减,所以你得给人家带公式啊,很简单r1-r2这类表达式就可以了。
        材料:材料出问题的很多,但都不是大问题。一般就是域选错了,模块的求解域和材料域不一样,或者有重合。千万不要再问,铜为啥有动力粘度,你想笑死我好继承的支付宝账户吗?
        函数定义:comsol中那么多函数,自己花一个小时全部都定义一遍,立马就明白了,这真的不难。求多动动手指!
        组件耦合:这些一般都是高级应用,多仿照案例学习,不难。
        物理场选择:物理场啊喂,你要是连它都选不对,那干脆去卖红薯吧。所以,在自己扎实的理论功底,方程推导上,它不应该选不对!仿真室内空气流动,那就层流喽。你想加一个风扇,那就旋转机械流喽。很方便。另外,如果真的不知道选哪个模块,那就多看他人的仿真文献,慢慢积累嘛。
        物理场中的设置:
       1.模块设置(主节点):一般包括,物理模型(是否开启重力啊,是否开启湍流啊,是否要求解三个分量的磁场啊,是否包含辐射,是否有多孔介质啊,等等,它要根据你的需求来选择),离散化(线性啊,还是二次啊,还是更高阶次啊,它要根据你的精度来选择),稳定性条件(它要根据你的非线性程度来选择)
        主节点就是一个方程框架而已。一些源项,需要额外添加域节点哦!
       2.初边值设置(子节点):初始条件(适当,适当,适当,如果不适当,它不给你收敛哦,适当了,那就收敛很快呀),那有人问,我算稳态,还要初值干嘛。当然要喽,你的材料兴许和初值有关呢,所以不能什么都设置成0,否则程序扔给你一个除零错哦,做人嘛,最重要的就是开(shou)心(lian)喽。边界条件,要选对呀,要选对呀!选不对,发散呀。你算一个超音速就不要给出口压力呀,不需要的呀,所以你给压力就不收敛啊。很多边界条件都一个意思啊,看方程啊;如果不知道用什么边界条件,那就自己尝试喽,要么就得去看文献总结啊。否则就得看数值方法啦!
       网格划分:网格这种东西,调多了会上瘾啊。直接用物理场设置可以满足大部分情况啊,你自己设置的还不如物理场设置呢。多看案例多总结网格设置。哪种网格合适,精度好,只有你自己慢慢琢磨了!另外,算出来的结果不要怀疑对不对,你需要怀疑的是,材料属性对不对,边界条件对不对。给条件,出结果,这是因果关系啊,结果对不对不是人家软件的事情,而是你的设置是否满足要求!
     更多技巧传送门:www.icomsol.cn/home.php?mod=space&uid=137
      二.求解器
      一句话,默认求解器足够了。如果你算瞬态,没算动,那就把初始时间步长缩小。你设置的时间步长不是人家计算用的时间步长啊,看准,看准!
      直接求解器方便又好用啊,全耦合求解器省事又省力啊,什么?全耦合直接算不出来?那就分离步分开算嘛!什么?分离了报错?求解变量的前后顺序搞混了嘛!什么?分离步丢失变量,那就给人家加进去嘛。什么?定常牛顿发散?那就用自动牛顿嘛!什么?达到最大牛顿迭代次数,那就把次数加大!什么?是稳态求解的时候达到最大牛顿迭代次数,那收敛曲线下降吗?下降,那就继续加到迭代次数!什么?收敛曲线振荡?那回头重设边界条件吧!
      不要截图问,错了怎么回事儿!那是能猜出来的吗?程序千差万别,报错提示就一条,原因千差万别啊。你不自己好好练级,最后只能躲在角落痛哭流涕,打团都不带你哦!(调错能力非常重要,但只能自己苦练!)
      三.后处理
      画图的技巧,只能通过案例不断摸索,案例就是样板,多动手。
      如果变量未定义,说明你选错了数据集,或者选错了绘图组。人家只能画全局,你偏要画二维嘛。
      学案例,对于不懂的设置,可以自己动手修改,再计算,查看区别!
      快速入门攻略
      哈哈, 哪有什么攻略,不存在的!
      六字真言:多动手,勤思考!
---------------------------------------
      任务!
      观看本贴!
      金币0,经验值1000000
      提交任务,恭喜你直升10级!
---------------------------------------
注:文中的“你”并非指某个人!而是结合本人自身经历虚拟出的萌新!如有雷同,纯属巧合哦!:d

欢迎订阅微信公众号:comsol等离子体模拟,学习交流comsol使用经验,等离子体仿真等相关内容。

[ last edited by bfamq on 2018-8-9 at 09:45 ]

关注公众号:comsol等离子体模拟,了解更多经验技巧哦!

[ Last edited by bfamq on 2018-12-6 at 11:24 ]
回复此楼
等离子体模块教学,搜索公众号【comsol等离子体模拟】获取更多经验技巧哦
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jackplay

金虫 (小有名气)

maths physics chemistry
6楼2018-02-27 00:00:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 bfamq 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[论文投稿] 期刊 International Journal of Fuzzy Systems 稿费问题求助 20+3 一眼灬清泉 2024-05-09 3/150 2024-05-09 17:43 by nono2009
[论文投稿] 论文投稿这种情况希望大吗? +3 woshichuxuan 2024-05-08 6/300 2024-05-09 17:27 by topedit
[基金申请] 祈福第三次青基 +3 lylylyheart 2024-05-09 3/150 2024-05-09 17:21 by lyfbangong
[基金申请] 基金函评会不会跨学部的送啊 +5 cls512 2024-05-09 5/250 2024-05-09 17:08 by cauzcl
[考博] 一篇一作AM,寻求西安985博导 +3 LYWwrz 2024-05-06 4/200 2024-05-09 13:33 by 是小蚂蚁啦
[教师之家] 校级优秀本科毕业论文,比例多少?看指导教师资历吗? +9 河西夜郎 2024-05-04 13/650 2024-05-09 12:41 by huixiong0627
[有机交流] 求助酰胺的合成 15+4 洛悠灬 2024-05-08 5/250 2024-05-09 11:29 by 小肉干
[基金申请] 博士后面上基金 +3 xlwr 2024-05-07 3/150 2024-05-09 09:38 by msjy
[找工作] 985博士毕业,前几天通过了河南省科学院下面一个所的面试,值得去吗? +8 wendao_2016 2024-05-07 8/400 2024-05-08 22:43 by 无知!无畏?
[考博] 24-25申博 +5 muscling 2024-05-06 10/500 2024-05-08 21:33 by lizhengke06
[有机交流] 低沸点物质浓缩 100+3 桃桃PXS 2024-05-04 8/400 2024-05-08 19:41 by 谢大奇
[基金申请] E05送审了么? +3 wly78528 2024-05-08 3/150 2024-05-08 18:35 by dfa
[考研] 要不要二战? +9 ajjznskk 2024-05-05 13/650 2024-05-08 15:00 by ckxbear
[基金申请] 基金送审 +4 与山123 2024-05-07 4/200 2024-05-08 14:42 by 123椒
[基金申请] 想问下,F口信息的函评是不是还没开始? +3 wowhow 2024-05-07 5/250 2024-05-08 12:31 by cuicyge
[考博] 求推荐博导 +8 想读博的我 2024-05-05 10/500 2024-05-08 10:25 by 小伙走起
[教师之家] 七级岗,到手不到8000,带本科论文12教学分/生,额定教学分280 +26 河西夜郎 2024-05-02 29/1450 2024-05-07 10:28 by zhaojiang427
[基金申请] 基金函评开始了吗 +5 fuzy 2024-05-05 5/250 2024-05-06 11:57 by hdzw9071
[考博] 25年春秋博士申请 +4 梦想研究生 2024-05-04 7/350 2024-05-06 11:24 by 梦想研究生
[基金申请] 活页超过7000字,有影响吗? +4 青竹82 2024-05-04 5/250 2024-05-04 23:28 by 华氏911.
信息提示
请填处理意见