数学模型
从模型的角度讲,有限元分析的基本起点在CAD模型。可是CAD模型通常并不能直接用于分析,其根本原因也并不是因为计算量。计算量只是一个重要的因素,如果精确的CAD模型可以呈现更加完美的计算精度,我相信绝大多数公司或者个人是愿意付出这样一笔投资的,因为简单高效。要建立合适的数学模型,作为工程人员使用它,我认为完全推导方程矩阵是困难的,且成效微弱。但是如果需要开发亦或者研究有限元程序,这应该是必须的,因此深度开发优化有限元计算程序是力学专家和数学家的事情。对于需要具备理论知识的工程人员,应该是把握计算原理背后关键参数之间的影响作用,在建立模型或者调试参数时,才能在大方向上做到游刃有余。多数工程师是没有那么多时间专门研究有限元计算的,工程使用应该专注于相对复杂的问题,更为深刻复杂的问题应该咨询专业化的计算团队和专家。
零件其中心回转孔装在轴承上,外部圆柱面受到一个压力载荷作用。这是一个CAD模型,包括安装孔、肋板、圆角。其特征为薄壁,轴对称几何。零件安装在轴承上,那轴承需不需要建立呢,主要看分析的目标。常见的分析包括这么几种;声光热力电磁流,很大一部分人都在学习力和热,以及它们的相互作用。是要考虑上图零件的强度,还是要考虑上面零件与轴承的作用关系。如果仅仅考虑上图的零件的静强度,通常是不需要建立轴承的,因为轴承作为一个支撑边界,它安装在轴承上通常是过盈配合,它基本上等同于固定。那么内部能不能用固定约束(Support Fixed),有的人说你这么做会很刚硬,很严重的应力反应。其实是可以的,而根据圣维南原理,这种影响是局部的,上图零件其配合处存在相对厚实的基础,而外环以及肋板相对薄弱,且肋板与相互连接件之间是直接连接,未见倒圆。总体看,配合处应不是关键位置。一般开始接触有限元都会做悬臂梁简单计算,毫无例外地使用固定约束,但之后你可能会学到固定过于刚硬,造成其局部应力反应过激,但是你学着学着就发现其实也并无不可。反正它的影响是局部的,我们要评判结构需要获取的数据也并非是端部,因此简单的采用固定约束亦无不可。这样的学习过程,不见得多么深刻,但是比盲目学习固定要好得多,固定嘛,简单一点,应力反应过激一点,支反力大一点。那么如果要考虑这种相互配合的影响,毫无疑问你是需要建立轴承的(据我所知,目前是需要的)。这是因为,配合是从属于局部效应,要获得详细的局部效应,必须从结构上保证有足够的几何细节,且这种细节应该是站在分析的角度,做强度分析就是力学效应,做热分析就是温度效应,要防止过于盲目的丰富细节。就算是要看清局部,也未必可以直搬CAD模型。考虑与轴承外圈的配合作用,其重点应该是如何模拟配合,不同的配合工艺,应该是有不同的考量与校验标准。若是要做模态分析,是否需要建立轴承呢,或者固定约束是否合适呢。模态分析的本质是是要考察其固有振动特性,边界的不同其主要区别是刚度的表现不一致。因此是否建立轴承实物不是一个关键,需要做的是如何充分有效的表达出支撑边界的刚度。如做模态分析,这种旋转件施加固定孔是否合适,我曾做过最后悔的一件事就是没有坚持自己的想法,也使用了固定约束。这种旋转件虽然其中心是过盈配合,相当于固定。但是固定约束不仅提高了零部件的边界支承刚度,更重要的是掩盖了其旋转行为,本来它是旋转件的,这意味着一阶模态应该是刚体模态。我看别人文章都是直接约束,自己又对这个问题了解不深刻,实在是没有信心贸然修改边界。遗憾。。。假如我们对此有深刻的研究,很可能就通过弹簧表达了刚度。而热分析三种基本方式:热传导,热对流,热辐射,其中传导是需要接触(这里指的是两个物体之间相互传),那么轴承就需要建立吧,要不然直接改变了物理本质的:本来热量达到这里,可以经过接触从轴承这里溜走,结果你不建立轴承,那不就让孔壁外侧绝热了,热量不都堆在这里么?(这里假定没有对流边界)。热对流,是与流体之间的热交换,轴承的消失显然是让流体更方便的溜到孔壁上(感性认识下),但却不符合实际。热辐射,强调的是自身高温,四周是否绝缘隔离。一个是波经过流体传播(外围空气,无轴承),一个是波经过固体传播(有轴承),这种影响需要看下书。
对于同一的问题,边界条件的表达是可能不同的,这取决于每个的知识与经验。对于同一问题,模型也是有可能不同的。因此,有限元分析的结果不唯一。没有最合适的,只有相对合适的。这个世界虽然是由数字统治,但是并没有解析解,一切不过是近似。宏观世界是无法用数字精确衡量的,仿真还是在已有的近似条件下再近似而已。只是大家都在做近似,看谁在资源和知识相对有限的情况下,能更近似一些罢了。有的人说,我这计算结果与材料力学、弹塑性力学啥的解完全一样,不要忘记,都只是现实问题的近似模型,力学一堆假设呢,有本事力学进步到干掉假设条件,也许在人类繁衍生息期限内都难以企及这个重大问题。人需要在相对有限的条件下,把事情做的相对优秀。有限元就是 在相对有限的条件下,做满足需求相对近似的结果,要做到合适的程度,而非相对最优。要做到最优,你不是要不断改进你的有限元能力,而应该去思考如何有效的丈量世界,开发更加丰富有效的数学模型以及算法,你应该立志成为数学家或者物理学家啥的。做分析的根本目的不是搞一堆力学量,什么正应力、剪应力的,我们是想判定结构是否合适,多么合适,如何更合适。搞一堆量,是因为我们自己的知识经验局限,以前的科学家说这种东西可以做大致判断,所以才这样做。没有说一定需要怎么做,假如你根据材料的纹路就能断定结构的强弱,做一堆分析显然是没有必要的。重要点是判断,计算分析都只是手段,且手段不唯一。
我们看到结构的特性可能想要做成上面这样,而这么做可能就是想要快一点,既然进一步简化,那肯定是要做出牺牲的,它的牺牲就是厚度方向的应力分布细节。这个是不是重要的,还得看具体分析要求。壳主要反应是弯曲效应,就像梁,只不过这是一个面,梁是一根线而已。不同模型区别在于呈现的力学效应不同,如果可以反应需求,那自然是可以考虑的。因此,对于同一问题,模型往往不止一个可使用。
实体梁模型
壳体梁模型
线体梁模型
真实世界都是三维的,不存在什么一维二维的。仅从模拟真实物体的角度看,三维实体是最接近的。壳单元没有了厚度方向的信息,少了一个维度。线体模型没有了截面信息,少了两个维度。这些都只是一个几何模型,尚且不能定义数学模型,还有边界载重以及材料属性。所谓较优的模型,是指我们采用的模型能够以够少成本获得想要的结果。数学模型应该与我们的分析意图同步,重点是要反映我们感兴趣的量,所以要合理区分CAD模型,数学模型,有限元模型。有些人一开始做材料力学的纯弯曲模拟,发现其横截面上弯曲应力是均匀的,而书籍上是沿厚度线性分布,查看帮助文档也许就清楚了。要获得详细结果,结构应该有详细细节,因此应该以实体模型模拟材料力学纯弯曲行为。
求解算法
只听说有限元通用性强,其余的方法用于特定的场合。那么它们具体怎么运作的,我也不晓得啊
,重要的是我不想知道有限体积法和边界元法怎么玩的,至少现在不用想。有限元理论只得慢慢看了,上面是一个简图,感谢原作者。
有限元模型
离散化
近来兴起的无网格技术,不晓得是怎么一回事。在传统有限元里面,离散化是必不可少的一环节。其主要难度在于用在结构上铺设符合分析要求密度和形状的,如果是整体均匀铺四面体,可能你自己的计算机承受不起。所以这个最大的使用障碍是计算硬件的开销,其次才是从技术的角度研究网格铺设的技术,哪有那么多时间和精力六面体化。
不同分析类型,通常是为了获得不同的量,而这些量对于网格和边界的敏感程度一般是不一样的。像形变由于是分析的直接量,且基底函数是固有满足连续性的,因此分析首先要保证形变的合理性。应力则是导出量,如果位移都不正确,应力几乎是错误的,它的精度与位移是不同的。之前思考过,由于固体的连续性,所以位移函数连续很好的保证了这种要求,同样应力也是应该保持连续的,但是对于粗糙的网格,尤其是对应低阶单元(常应变、常应力),难以保证,可能反映在云图上就是数值分界线很曲折,变化及其剧烈,而我们希望的是平滑变化。
上图相当于一个变截面悬臂梁端部受载,主要力学效应是弯曲。上侧是拉伸,斜侧是压缩作用。在有限元里面,几乎都会提到弯曲,而弯曲会导致一些常规单元难以表达的困难,为了克服这些单元,这些商业有限元软件提出了技术或者开发新的单元。而弯曲可能遇到问题是单元的剪切自锁,单元技术为增强单元表现力而生的。为什么会存在这样的问题呢,实际上软件给出的结果可以分为节点解和积分点解,节点解是由积分点插值而来。单元积分法分为完全积分和减缩积分,看这个名字就知道减缩积分是减少了积分点的个数以达到节省资源的目的,高阶单元就是开销大,也有一些其它的问题,在弯曲中,之前赫兹接触有提过。所以很多时候也考虑使用一阶单元,一阶全积分缺陷太大,几乎不使用。而一阶减缩积分(好像是一个积分点,不是很清楚),单元数目过少时,难以准确表达应变,更形象的说法是单元太软,无力抵抗。因此,许多书籍以及资料提到,在承受弯曲作用时,减缩积分至少保证四层单元(实际使用可能给6层以上,如果太薄,改变策略)。这是我看到的首个从力学效应的角度提出的单元数目铺设指导,而其余的貌似没啥,可能需要自己的总结。
另外关于细节的表现,像圆角需要排列多少个,孔边需要排列多少个,都应该是怎么排列的。不同的分析需要不同的对待,如定位孔,仅方形即可表达(四条边)。而承载孔,如螺栓孔,不仅需要足够的数目,还需要挖一个等宽的区域,网格沿着两个方向还需拉直。这些也不是必须遵守的,大致是前人试验多了,最后得出的结论,当然你也可以有自己的方法。有的人可能想到,我全给四边形或者四面体足够多,我不考虑计算资源。其实可能也是不合适的。足够丰富的网格可能掩盖了真实的分析意图,对于缺乏经验的工程师是危险的。《ANSYS WorkBench有限元分析实例详解》一书在模型简化阶段提到,模型复杂意味着计算矩阵复杂,几何离散误差虽然小了,但是计算误差反而增大(这里我理解为数值运算误差,如计算机数值舍入)。这意味着,如果模型不合适,你又将网格丰富化,其分析结果十分有可能偏离。书籍在网格适用章节提到,应该疏密有别。
因此,简单从图上看,这样均匀分布三角形似有不妥。因为不清楚具体是高阶单元还是低阶单元(软件只是显示格子,不显示中节点)
有限元方程
基本表达式如上面所示,不管问题多么复杂,其根本不变。对于线性问题,矩阵【K】是对称的,对于非线性问题,矩阵【K】是不对称的(好像是这么一回事,不太确定,先写下来,免得忘记
)。阅读力学或者有限元理论,需要观察下方程里面都包含了那些量,至于具体怎么解方程的,那是软件的事情。看清变量,哪些是需要我们自己控制的,这些变量的变化对结果产生了什么影响(正比?反比?增大?减小?)。理论太多了,推导那是不可能的,那肯定是不会推的,没那个耐心了。
结果误差
大家都是近似,凭什么你的更加合适,你说,因为我的误差更小。需要了解计算中考虑的误差,看看哪些可以灵活控制,看看哪些无能为力,知天命。另一方面也是为了增加分析的信心,让我们自己有说服别人的勇气,别自己都不信还想着让别人信。这东西要是没有办法做到心中有数,恐怕要造假数据都是一件很难的事情。
上图是一个简单的过程,只能简单的问题下,自己对于这样的问题也不懂,也没有很多丰富的资料参考。
首先开始的是CAD模型,上面只是一个零件,而实际分析却是一个体系。因此我们要做分析,首先可能要深度理解产品的分析意图,到底为什么要做分析,我们在乎它的安全性?成本?还是外观造型?从分析目标出发往下走,如果是安全问题那应该关注的是整体还是局部呢?是要做哪一类安全性分析呢。从这里需要简单敲定是系统级分析,还是零件级分析。这相当于是分析问题的聚焦,抓出本质才能简化问题。而如果是成本需求,零部件结构改造未必是一定的,许多零部件的工艺技术都十分成熟,都几乎成套了。也许可以考虑优化生产线(更高的自动化集成)或者优化零部件维护成本,像售后之类的,不要一有问题就找结构工程师
。
有了几何我们才有机会简化几何,简化大多是基于力学效应的(不知道有没有这样一个词,我自己写的,意思是受到力以后产生的反应)以及结构的光顺性,需要用尽可能简单的几何来表达我们分析需求的主体。当然如果能够选择的话,我还是希望边界条件能够最简化,实在是怕边界。至于结构上的小特征,对于不同的分析问题,意义是不同,还是需要综合考虑。如做模态分析,也许不少的小特征会影响整体质量分布,进而可能改变结构的刚度分布。如做模流分析,可能小特征才是关键,毕竟如果结构十分光顺,也就不需要分析流动情况了。载荷与边界十分关键的,实际工况也许很复杂,但是你既然选择做有限元分析想必并不总是使用极端工况去实施,因为它很有可能造成结构设计冗余过大。记得老师曾经说过,极端工况虽然经常考虑,但是也是需要看它的发生概率,如果结构几乎不太可能或者很少处于极端工况,那么直接按照极端工况设计会极大的造成设计浪费。其实同理也说过这样一件事,造成结构失效的因素那么多,你实在是没有办法都一一考虑,综合情况下很难找出各种因素之间的相互影响,还是需要搞清楚影响显著的那一部分。因素有很多,我相信都是重要的,它们肯定或者或少影响结构,但是都有哪些是大概率的,哪些是不太可能的呢。做分析,可能我们忽略了环境的基本影响,像风力或者湿度,也许有时候更应该考虑零件的表面粗糙度或者零部件装配精度。因素是不是都可以量化呢,对于可以量化的,有办法更精细化的量化吗?你不要说安全系数,如果什么都靠安全系数,那做有限元分析还有什么意义,还记得书籍上写的传统设计安全系数冗余么?材料也是极其重要的,同样的材料,更准确的说是同样的牌号,它们由于生产工艺的区别,性能可能存在较大差异(不太清楚材料牌号里面有没有很明确热处理过程或者强化工艺)。因此使用材料应该注明,材料在何种条件下得到,其力学性能是如何测定,是否经过怎样的热处理和强化工艺。对于一些不太常见的或者外面的牌号,并不是每一个企业或者个人有条件进行力学性能试验,因此有时候可能会从相近的牌号借鉴数据,这其中的差异真的十分清楚呢吗?像S-N曲线,据说一条得上万块,所以有时候可能还得从数值上处理它。每一次的不确定,都有可能引入误差,而彼此之间是否抵消或叠加未知。材料模型要是错了,一切可能都是错误的。画网格的过程引入离散误差,网格没有办法完整拟合好,其实也是没有必要。但是还是需要进行合适的控制,如前面提到的圆孔几条边,圆角几个单元,螺栓孔的处理,其旨在控制局部位置的误差。不同的单元亦是存在不同的精度的,如常应变应力单元。整个过程都在取舍,你使用了梁单元或者壳单元,默认就是你认为当前的分析满足使用该单元的假设条件。有些东西我们是无能为力的,像有限元本身具有的近似性,像计算机数值计算的舍入误差,像单元本身假设特性。。。有很多我们是无能为力的。但是作为一个分析人员,我们需要从自己的专业角度控制能够控制的误差,而且要尽可能减小这种误差。如分析类型的简化,几何简化,单元选择(不适合壳,你选了壳),边界施加,载荷的选定,以及后处理的查看(获取不符合要求的评价量)。
验证
如果没有机会做实验验证,就只能从理论上或者常识判断了。从上图可见两个V代表的是不一样的,Valdation回到了现实,这大概就是看结果与现实的符合程度吧,即试验。而Verification是回到数学模型,相当于分析过程检验。下面是别人的总结:
因此每一个分析都应该做Verification,假如没有机会Validation。整个Verification我认为最重要的是Result的校验,你看到分析结果,能不能判断分析的合理性,如数值的量级是否合理,应力分布位置是否合适,变形是否符合预期。哪里应该会有怎样的变形,哪里不应该有形变或者太大的某种应力,除此之外也应该检验接触的状态或者反力,至于如何更加系统有效的诊断结果,很遗憾,估计是个保密级的经验,目前尚未有前辈透露。如果你询问,多数情况会告诉你:看你力学造诣或者是经验咯,所以我们还得靠自己啊。
如果以后有机会从事这样的专业分析,我希望自己能够像现在一样将心得体会形成文字。
本来想着写得再详细一点,想说的话太多,都是瞎想,但是敲键盘又实在是累,不想装第三方语音输入法,所以简化了吧。本文可以作为对CAE过程的一个简单总结,对于零基础小白应该是有用。文中之所以空话比较多,没有实际操作案例和配图,主要是我自己学习时间也不久,并没有什么经验,写来的大多数是自己的想想而已。希望以后能够补充完成,做到有理有据,不说空话。有经验的也不愿意做深刻的讨论与交流,其实是别人不屑于与小白交谈
注:仅记录学习FEM的一个过程,表达的是个人观点与认识,欢迎一起讨论学习。有疑问可以私,本号没有留言功能,无法互动。本人小白一枚,正在努力的路上。