二维情况下
> restart:
> with(linalg):
> C:=array(1..3,1..3,[[2*mu+lambda,lambda,0],[lambda,2*mu+lambda,0],[0,0,mu]]);
> B:=array(1..3,1..8,sparse):
> NN1:=N1(x1,x2):
> NN2:=N2(x1,x2):
> NN3:=N3(x1,x2):
> NN4:=N4(x1,x2):
> for i from 1 to 4 do:
> B[1,2*i-1]:=diff(NN||i,x1);
> B[2,2*i]:=diff(NN||i,x2);
> B[3,2*i-1]:=diff(NN||i,x2);
> B[3,2*i]:=diff(NN||i,x1);
> end do:
> #print(B):
> aa:=simplify(evalm(transpose(B)&*C&*B)):
> comp:=array(1..8,[1,2,1,2,1,2,1,1]):
> base:=array(1..8,[1,1,2,2,3,3,4,4]):
> deta

本文介绍了使用Maple软件进行二维及三维情况下弹性矩阵的计算过程。通过定义节点函数及其导数,构建了B矩阵,并利用该矩阵与材料属性矩阵C进行运算得到刚度矩阵。此外,还展示了如何计算特定向量作用下的响应。
最低0.47元/天 解锁文章
8445

被折叠的 条评论
为什么被折叠?



