首页/文章/ 详情

有限元计算过程中积分点应力如何外插至节点处?【公式推导篇】

5月前浏览11166

本次分享的是:有限元计算过程中,单元积分点应力如何外推至节点?

有关积分点与节点的概念可点击跳转阅读历史推文:有限元基本概念-【节点和积分点】,现科普一下Q4单元、Q8单元、Q9单元的形函数高斯积分方案

Q4单元

 

Q8/9单元

 
 

应力外插

核心理念:坐标系的转换

假设    是母单元的自然坐标系,    是由高斯积分点控制的坐标系(术语可能不专业),假设高斯积分方案为    。坐标系转换关系:

 

单元内任一点的应力    ,由4个高斯积分点应力    进行插值时,可表示为

 

其中,    是基于高斯积分点的形函数,第一个积分点的坐标在母单元坐标系下为(-1,-1),根据上述的坐标系转换的方式,在高斯积分点的坐标系下,第一个单元节点在高斯积分点坐标系下坐标为    ,将此坐标值代入第一个形函数,得    ,相同的道理,可推导至四个节点在4个形函数下的    外插矩阵:

 

对于Q8、Q9单元,依然可采用    高斯积分方案(减缩积分)。

相应形函数外插矩阵:

 
 

公式推导

为了便于公式的推导,可借助Mathematica符号计算软件,编写如下代码:

(*应用2*2高斯积分方案*)
(*定义形函数(Q4)*)
l1[\[Xi]_] := (1 - \[Xi])/2
l2[\[Xi]_] := (1 + \[Xi])/2
N1[\[Xi]_\[Eta]_] := l1[\[Xi]]*l1[\[Eta]]
N2[\[Xi]_\[Eta]_] := l2[\[Xi]]*l1[\[Eta]]
N3[\[Xi]_\[Eta]_] := l2[\[Xi]]*l2[\[Eta]]
N4[\[Xi]_\[Eta]_] := l1[\[Xi]]*l2[\[Eta]]

(*将单元坐标系转换至高斯积分点坐标系*)
nodeQ4 = Sqrt[3] {{-1, -1}, {1, -1}, {11}, {-11}};
nodeQ8 = Sqrt[3] {
            {-1, -1}, {1, -1}, {11}, {-11},(*corner nodes*)
                 {0, -1}, {10}, {01}, {-10}     (*mid-
    side nodes*)

                 };
nodeQ9 = Sqrt[3] {
            {-1, -1}, {1, -1}, {11}, {-11},(*corner nodes*)
            {0, -1}, {10}, {01}, {-10},(*mid-side nodes*)
            {00}                               (*center node*)
            };
(*计算高斯积分点参考坐标系下的形函数外插矩阵*)
extrapolationMatrix = 
  Table[{N1[\[Xi]\[Eta]], N2[\[Xi]\[Eta]], N3[\[Xi]\[Eta]], 
      N4[\[Xi]\[Eta]]} /. {\[Xi] -> p[[1]], \[Eta] -> p[[2]]}, {p
     nodeQ4}] // Expand;
(*矩阵形式展现*)
MatrixForm[extrapolationMatrix]
 
 
 

以上是有关应力外插的理论知识,如何将之添加到我们的有限元代码中,我会在后续的推文中一步一步数值实现,感谢你的阅读!



来源:易木木响叮当
MATLAB理论Mathematica科普控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-05-28
最近编辑:5月前
易木木响叮当
硕士 有限元爱好者
获赞 212粉丝 242文章 340课程 2
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈