有限元程序设计(2)

2019-08-30 17:40

{Rm}合成起来,可以用一个2n×m的矩阵{RR}来表示杆件内力的变化情况。

则在这个总体内力矩阵中,第i行第j列的元素表示当移动荷载作用在路径上第j个节点时,编号为i的杆件内力。以此若要绘制任意杆件的影响线,从该矩阵中提取出对应行的内力之,并以直线连接起来即可。

- 5 -

第三章 程序设计框图

开始 静定桁架节点坐标、单元节点编号、约束信息 单元矩阵 节点坐标矩阵 计算处理 约束矩阵 单位荷载路径矩阵 循环 系数矩阵 各杆件沿荷载路径内力 桁架影响线 绘图 结束

- 6 -

第四章 程序编制

4.1编制说明

(1)程序使用MAPLE语言在maple7.0中编写

(2)本程序适用于平面静定桁架影响线的绘制,不适用于超静定桁架的计算。

(3)计算时,由于单位荷载的移动路径不唯一,应通过路径矩阵确定,路径矩阵中元素表示单位荷载依次通过的结点编号。

(4)符号说明: 参数:

XY:结点坐标矩阵; NE:杆件单元矩阵; NC:支座约束矩阵; P:荷载路径矩阵;

n1,n2:输出影响线杆件起止编号,输出编号n1到n2的杆件的影响线,当n1=n2=a时,输出第a根杆件的内力影响线。

局部变量:

ne:循环变量; kk:杆件cosα、sinα的值; te:外力矩阵{P}; st:系数矩阵[K];

np:内力矩阵{R}; NP:各荷载作用点下{R}的合成;

4.2程序代码

>work:=proc(XY,NE,NC,P,n1,n2) local ne,kk,te,st,np,NP,x,pp:

st:=Matrix(2*rowdim(XY),2*rowdim(XY),0): np:=Matrix(1,2*rowdim(XY),0): for ne to rowdim(NE) do:

- 7 -

kk:=normalize([XY[NE[ne,2],1]-XY[NE[ne,1],1],XY[NE[ne,2],2]-XY[NE[ne,1],2]]): #kk=[cosa,sina]

st[2*NE[ne,1]-1,ne]:=-kk[1]: st[2*NE[ne,2]-1,ne]:=+kk[1]: st[2*NE[ne,1],ne]:=-kk[2]: st[2*NE[ne,2],ne]:=+kk[2]; end do;

for ne to rowdim(NC) do:

st[2*NC[ne,1]+NC[ne,2]-2,rowdim(NE)+ne]:=-1: end do;

NP:=matrix(rowdim(P),2*rowdim(XY),0): for ne to rowdim(P) do:

te:=Vector(2*rowdim(XY),0): x[ne]:=XY[P[ne,1],1]: te[2*P[ne,1]]:=-1:

np:=matrix([linsolve(evalm(st*1.0),te)]): copyinto(np,NP,ne,1): end do:

NP:=transpose(NP): print(NP):

pp:=matrix(n2-n1+1,1,0): for ne from 1 to n2-n1+1 do: pp[ne,1]:=display(

plot([[XY[P[1,1],1],0],[XY[P[rowdim(P),1],1],0]],style=line,thickness=1,color=black,axes=none),

plot([[XY[P[1,1],1],0],[x[1],NP[n1-1+ne,1]]],style=line,thickness=2,color=blue),

plot([[x[coldim(NP)],NP[n1-1+ne,coldim(NP)]],[XY[P[rowdim(P),1],1],0]],style=line,thickness=2,color=blue),

plot([seq([[x[i],NP[n1-1+ne,i]],[x[i+1],NP[n1-1+ne,i+1]]],i=1..coldim(NP)-1)],style=line,thickness=2,color=blue),

textplot([seq([x[i],NP[n1-1+ne,i],NP[n1-1+ne,i]],i=1..coldim(NP))],color=red),

textplot([seq([XY[P[1,1],1]-1,0,i],i=cat(No ,n1-1+ne))],color=black,thickness=2)): od:

display(pp);

end proc:

- 8 -

第五章 计算实例

实例一

图示静定桁架,共18个结点,33根杆,3个支座反力。单位荷载分别沿上弦(2、5、8、10、13、16、18各点)和下弦(1、3、6、9、11、14、17各点)移动, 各杆件的内力影响线。

程序数据输入见附录1,计算结果见附录2。

从计算得到的影响线中提出任一杆件的影响线如移动荷载沿桁架下弦移动时编号为14的杆件的内力影响线。

再采用传统方法做该杆的影响线,结果如图。

(—)

5 3

可以看到程序计算结果与传统方式计算得到的结果一致,可知程序计算结果是正确的。

- 9 -


有限元程序设计(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:空气弹簧元件计算

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: