三维八节点六面体单元的单元刚度矩阵推导

北京理工大学 | 李明健

对于三维八节点六面体单元,采用如下的节点编号规则:

我们知道单元刚度矩阵为:

k=ΩBTDBdΩ

其中 B 为单元应变矩阵:

B=[N1x00...N8x000N1y0...0N8y000N1z...00N8zN1yN1x0...N8yN8x00N1zN1y...0N8zN8yN1z0N1x...N8z0N8x]6×24

各节点的形函数写为局部坐标的形式:

Ni=18(1+ξiξ)(1+ηiη)(1+ζiζ)

D 为弹性矩阵:

D=[λ+2Gλλ000λλ+2Gλ000λλλ+2G000000G000000G000000G]6×6

拉梅系数 λG 为:

λ=Eμ(1+μ)(12μ),G=E2(1+μ)

这样,单刚 k 就是一个 24×24 的矩阵。


为了得到单刚的具体形式,需要将全局坐标转化为局部坐标:

k=ΩBTDBdxdydz=111111BTDB|J|dξdηdζ

由于任一点处的全局坐标 x,y,z 可以写为如下形式:

x=i=18Nixi,y=i=18Niyi,z=i=18Nizi

因此 dxdydz 向局部坐标转化时,引入了雅克比矩阵:

J=[xξyξzξxηyηzηxζyζzζ]3×3=[i=18Niξxii=18Niξyii=18Niξzii=18Niηxii=18Niηyii=18Niηzii=18Niζxii=18Niζyii=18Niζzi]3×3=[N1ξN2ξ...N8ξN1ηN2η...N8ηN1ζN2ζ...N8ζ]3×8[x1y1z1x2y2z2x8y8z8]8×3

其中将形函数对局部坐标的偏导数矩阵写为:

Nξ=[N1ξN2ξ...N8ξN1ηN2η...N8ηN1ζN2ζ...N8ζ]3×8

将单元8个节点的坐标矩阵写为:

x=[x1y1z1x2y2z2x8y8z8]8×3

则雅克比矩阵可简写为:

J=Nξx

下面我们看应变矩阵,由于 B 矩阵中 Nix,Niy,Niz 需要对全局坐标求导,可以用以下方式根据形函数局部坐标偏导得到,首先把形函数对全局坐标的偏导数写成矩阵形式:

Nx=[N1xN2x...N8xN1yN2y...N8yN1zN2z...N8z]3×8

根据链式法则:

Niξ=Nixxξ+Niyyξ+NizzξNiη=Nixxη+Niyyη+NizzηNiζ=Nixxζ+Niyyζ+Nizzζ

[N1ξN2ξ...N8ξN1ηN2η...N8ηN1ζN2ζ...N8ζ]3×8=[xξyξzξxηyηzηxζyζzζ]3×3[N1xN2x...N8xN1yN2y...N8yN1zN2z...N8z]3×8

B 矩阵中的全局偏导数可以用以下方式求得:

Nx=J1Nξ

[N1xN2x...N8xN1yN2y...N8yN1zN2z...N8z]3×8=[xξyξzξxηyηzηxζyζzζ]3×31[N1ξN2ξ...N8ξN1ηN2η...N8ηN1ζN2ζ...N8ζ]3×8

通过这种方式得到了 Nix,Niy,Niz ,然后对应填到 B 矩阵中,即得到应变矩阵。


为了求积分,采用数值积分方式,通常为2点高斯积分:

k=ΩBTDBdxdydz=111111BTDB|J|dξdηdζ=i2j2k2wiwjwkBijkTDBijk|J|ijk

其中 wi,wj,wk 为权重,2点高斯积分中均为 1,积分点坐标在三个方向分别为 -0.57735026918963, 0.57735026918963,对8个高斯积分点叠加,就得到了单元刚度矩阵。

以上。