【总体简介】💻🔍
该Matlab程序主要围绕材料非线性问题进行有限元Matlab编程求解,重点围绕牛顿-拉普森法(切线刚度法)、初应力法、初应变法等三种非线性迭代方法的算法的实现。具体非线性迭代求解算法的理论文本可参考知乎博文《材料非线性Matlab有限元编程之初应力法与初应变法》《材料非线性Matlab有限元编程之切线刚度法案例应用》,该博文详细三种迭代迭代求解算法的原理。
你将获得:三种材料非线性求解算法的有限元Matlab源码+程序理论文本doc文件
(如需交流,请私信我^.^)或加 QQ 573023534
案例为对象进行材料非线性问题的有限元变成求解,求解模型如图1,模型边界为20m×10m,公式1-3材料本构方程如公式1所示,其中,弹性模量E=20MPa,泊松比0.35,模型上表面中间位置作用20kPa超载,超载作用范围为4m。按照平面应变问题考虑,使用常应变三角形单元分析模型上表面中间点竖向沉降,对应的有限元模型和计算结果如图2、3所示。
之所以采用公式1-3三种不同的应力应变关系本构方程,是因为牛顿-拉普森法(切线刚度法)、初应力法、初应变法适用于不同形式的本构方程:切线刚度法,顾名思义,其刚度表达式为应力应变曲线的切线,因此采用微分形式表示其本构关系;初应力法适用于应力由应变确定的本构形式,即应力为应变量,应变为自变量;但某些问题中,应力无法用应变显式表达,相反,应变由应力表达的本构形式,这种情况的非线性本构方程采用初应变法来求解。
由图2所示,有限元离散方式采用的是三节点三角形单元进行离散,因此我们要有三角形平面单元弹性问题的求解基础知识,大家可以观看b站的《Matlab有限元编程从入门到精通》https://www.bilibili.com/video/BV1kP4y1d7Zo?p=7课程中的“三角形单元悬臂梁matlab有限元编程”小节,详细讲解了基于三角形三节点单元的有限元离散过程以及弹性刚度矩阵的推导。
【代码截图】
【理论文本截图】