有限元理论基础及Abaqus内部实现方式研究系列12: 几何梁单元的刚度矩阵
(原创,转载请注明出处)
==概述==
本系列文章研究成熟的有限元理论基础及在商用有限元软件的实现方式。有限元的理论发展了几十年已经相当成熟,商用有限元软件同样也是采用这些成熟的有限元理论,只是在实际应用过程中,商用CAE软件在传统的理论基础上会做相应的修正以解决工程中遇到的不同问题,且各家软件的修正方法都不一样,每个主流商用软件手册中都会注明各个单元的理论采用了哪种理论公式,但都只是提一下用什么方法修正,很多没有具体的实现公式。商用软件对外就是一个黑盒子,除了开发人员,使用人员只能在黑盒子外猜测内部实现方式。
一方面我们查阅各个主流商用软件的理论手册并通过进行大量的资料查阅猜测内部修正方法,另一方面我们自己编程实现结构有限元求解器,通过自研求解器和商软的结果比较来验证我们的猜测,如同管中窥豹一般来研究的修正方法,从而猜测商用有限元软件的内部计算方法。我们关注CAE中的结构有限元,所以主要选择了商用结构有限元软件中文档相对较完备的Abaqus来研究内部实现方式,同时对某些问题也会涉及其它的Nastran/Ansys等商软。为了理解方便有很多问题在数学上其实并不严谨,同时由于水平有限可能有许多的理论错误,欢迎交流讨论,也期待有更多的合作机会。
iSolver介绍:
http://www.jishulink.com/college/video/c12884
==第12篇:几何梁单元的刚度矩阵的研究==
一般商用软件的梁都有两类:
(1) 一类是已知截面属性参数的梁,即General梁(也叫参数梁),在Abaqus中创建梁时选择General就是General梁。
(2) 另一类是已知截面形状类型和几何尺寸的梁,即Geometry梁(也叫几何梁),在Abaqus创建梁截面时选择除General外的其它选项都是Geometry梁。
实际的梁都是有截面形状的,也就是几何Geometry梁,商用软件分析时都采用两步走的形式:
(1) 第一步:通过这些截面形状类型和参数得到构建梁单元所需的基本截面属性参数,譬如矩形面积=长*宽等。
(2) 第二步:利用上面得到的截面属性参数组成梁单元的刚度矩阵。
梁相对壳来说,商业软件的修正方式相对较少,如果自己编程序,采用这些修正方式可以得到和商业软件完全一致的梁单元刚度矩阵,如果刚度矩阵完全一致,那么对任何的梁的算例都可以得到和商业软件完全一致的结果了。在本系列第六篇我们讨论了General梁单元的刚度矩阵的基本理论和Abaqus的修正方式,Geometry梁的计算方法只是比第一类梁多了一步怎么从截面几何参数得到截面属性参数,当然针对不同形状类型,Abaqus计算截面属性参数时也做了许多的修正,本篇中将进行讨论。然后在自编有限元程序iSolver实现同样的修正方式,最后验证iSolver的结果和Abaqus完全一致,从而证明Abaqus对几何梁的内部修正和我们设想的一致。同时,通过L梁的算例将会证明Abaqus用户手册的一点小错误(难得发现Abaqus文档的错误^.^),即General梁的惯性矩后台计算时是相对于形心的(而不是文档所说的相对于1-2轴的)。具体验证过程也可以参考我们的演示录像。
==演示视频==
https://www.jishulink.com/college/video/c12884 1.1 单元篇-梁的静力分析结果校核
==总结==
本文研究了Abaqus中几何梁的B31单元的刚度矩阵的求解方式,以L梁为例,介绍General梁用到的面积、惯性矩、扭转常数等参数在几何梁中是如何通过几何形状求得的,根据这些参数,可以得到和Abaqus完全一致的刚度矩阵,从而对只有几何梁组成的任意模型一般都能得到Abaqus完全一致的分析结果,并用一个简单的算例验证了该想法。
从一个几何梁到General梁的转化,需要计算的量和Abaqus的修正情况如下:
通过L梁也可以得到,General梁的惯性矩是相对于形心的(而不是相对于1-2轴的),abaqus用户手册写错了。
有兴趣的可以自行下载iSolver进行验证,因为看不到Abaqus的源代码,上述B31的修正方式也仅是猜测,如果你在使用iSolver测试其它的由几何梁组成的模型结果时发现和Abaqus结果不一致,欢迎联系我们。
如果有任何其它疑问或者项目合作意向,也欢迎联系我们:
snowwave02 From www.jishulink.com
email: snowwave02@qq.com
详细研究方法,见附件:
有限元理论基础及Abaqus内部实现方式研究系列12:几何梁单元的刚度矩阵.pdf
以往的系列文章:
第一篇:S4壳单元刚度矩阵研究。介绍Abaqus的S4刚度矩阵在普通厚壳理论上的修正。
http://www.jishulink.com/content/post/338859
第二篇:S4壳单元质量矩阵研究。介绍Abaqus的S4和Nastran的Quad4单元的质量矩阵。
http://www.jishulink.com/content/post/343905
第三篇:S4壳单元的剪切自锁和沙漏控制。介绍Abaqus的S4单元如何来消除剪切自锁以及S4R如何来抑制沙漏的。
http://www.jishulink.com/content/post/350865
第四篇:非线性问题的求解。介绍Abaqus在非线性分析中采用的数值计算的求解方法。
http://www.jishulink.com/content/post/360565
第五篇:单元正确性验证。介绍有限元单元正确性的验证方法,通过多个实例比较自研结构求解器程序iSolver与Abaqus的分析结果,从而说明整个正确性验证的过程和iSolver结果的正确性。
https://www.jishulink.com/content/post/373743
第六篇:General梁单元的刚度矩阵。介绍梁单元的基础理论和Abaqus中General梁单元的刚度矩阵的修正方式,采用这些修正方式可以得到和Abaqus梁单元完全一致的刚度矩阵。
https://www.jishulink.com/content/post/403932
第七篇:C3D8六面体单元的刚度矩阵。介绍六面体单元的基础理论和Abaqus中C3D8R六面体单元的刚度矩阵的修正方式,采用这些修正方式可以得到和Abaqus六面体单元完全一致的刚度矩阵。
https://www.jishulink.com/content/post/430177
第八篇:UMAT用户子程序开发步骤。介绍基于Fortran和Matlab两种方式的Abaqus的UMAT的开发步骤,对比发现开发步骤基本相同,同时采用Matlab更加高效和灵活。
https://www.jishulink.com/content/post/432848
第九篇:编写线性UMAT Step By Step。介绍了线性UMAT的接口功能和关键接口变量的含义,并通过简单立方体静力分析的算例详细说明了基于Matlab线性UMAT的开发步骤。
http://www.jishulink.com/content/post/440874
第十篇:耦合约束(Coupling constraints)的研究。介绍了耦合约束的定义和用途,具体阐述了Abaqus中运动耦合约束和分布耦合约束的原理。
http://www.jishulink.com/content/post/531029
第十一篇:自主CAE开发实战经验第一阶段总结。结合自研有限元求解器iSolver第一阶段开发的实战经验,从整体角度上介绍自主CAE的开发难度、时间预估、框架设计、编程语言选择、测试、未来发展方向等。
http://www.jishulink.com/content/post/532475
***********************************
***
线下培训
***
***********************************
如想了解更多或者需要与我们当面交流,欢迎参加近期我们的线下培训。
【7月20-21日 上海】Abaqus UMAT用户子程序二次开发技术培训:
http://www.jishulink.com/content/post/531598
培训大纲如下:
查看更多评论 >