空间结构内力位移计算

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

作业四编制有限元程序求解结构内力位移

第一部分程序设计过程和子程序的说明

本例为空间桁架结构有限元分析程序。设计思路为:自然离散桁架结构,确定各节点自由度;为单元和节点编号,输入支撑信息、荷载信息、截面特性;运行程序求得刚度矩阵,继而求得节点位移和杆件内力。

程序所需各子程序已给出,在此只需编制主程序然后调用子程序求解即可。

1、主要变量及数组说明

程序中要设置许多变量和数组来存放各种数据。在本程序中,变量及数组名称选用习惯中常用的表示方法,同时遵从FORTRAN90语言的隐含规则,即由字母I-N开头的均为整型,否则为实型。程序中的变量及数组说明详见附录源程序变量和数组说明。

2、内力计算及检算程序

形成一维存储总刚子程序CONKB、解线性方程组子程序LDLTREBACK、求节点位移及单元内力子程序DISPLS。下面是子程序的介绍。

☆SUBROUTINE FLMT(NP,NE,NN,NN1,NR,RR,ME,IT,LMT)

功能:形成IT以及LMT子程序:

传入参数:NP,NE ,NR,ME,RR

传出参数:IT,LMT,NN,NN1

☆FMAXA(NN1,NE,LMT,MAXA,NWK,NP)

功能:形成MAXA数组

传入参数:NN1,NE,LMT,NP

传出参数:MAXA,NWK

☆SUBROUTINE

CONKB(NP,NE,NWK,ME,X,Y,Z,AE,LMT,MAXA,CKK,NN1)

功能:①根据输入的杆件编号、节点位置、杆件位置信息及截面信息,形成杆件在局部坐标系下刚度矩阵的子程序:

5

SUBROUTINE FKE(IE,NP,NE,X,Y,Z,ME,AE,AKE)

传入参数:NF,NP,NE,NR, ME,X,Y,Z,AE

传出参数:AKE

②由局部坐标系向总体坐标系转换的子程序:

SUBROUTINE FT(IE,NP,NE,X,Y,Z,ME,T)

传入参数:IE,NP,NE,X,Y,Z,ME

传出参数:T

③矩阵转置子程序:

SUBROUTINE MAT(M,N,A,B)

传入参数:M,N,A

传出参数:B

④矩阵乘法子程序:

SUBROUTINE MUL(A,B,M,N,L,AB)

传入参数:A,B,M,N,L

传出参数:AB

传入参数:NF,NP,NE,NM,NR,ME,X,Y,Z,AE,NAE,NN1,JS

传出参数:IT,MAXA,CKK,NWK

☆SUBROUTINE

LDLTREBACK(PF,CKK,V,MAXA,NN,NWK,NN1,ISH,IOUT,NCF,NP) 功能:①将一维存储的结构刚度矩阵进行LDLT分解子程序

SUBROUTINE LDLT(CKK,MAXA,NN,ISH,IOUT,NWK,NN1)

传入参数:CKK,MAXA,NN,ISH,IOUT,NWK,NN1

传出参数:MAXA,CKK

②回代求解得节点位移子程序

6

SUBROUTINE

REBACK(PF,CKK,V,MAXA,NN,NWK,NN1,NCF,NR)

传入参数:PF,CKK,MAXA,NN,NWK,NN1,NCF,NR

传出参数:V

☆SUBROUTINE

DISPLS(NP,NE,NM,NN,IT,FTOOL,DIST,AE,NAE,X,Y,Z,PP,FF,SG,SM) 功能:求单元内力、节点位移及约束反力

传入参数:NP,NE,NM,NN,IT,FTOOL,AE,NAE,X,Y,Z

传出参数:DIST,SG,SM,FF

第二部分程序使用说明

1、在使用所述桁架内力计算程序具体步骤如下:

(1)绘制结构计算简图,对杆件和节点进行编号;

(2)建立整体坐标系,确定各个节点的坐标;

(3)填写输入数据表;

(4)建立输入数据文件,文件扩展名为“.txt”;

(5)运行程序,按屏幕提示语句进行操作;

(6)程序运行完毕,查看输出数据文件结果。

2、参照附录部分各个变量的含义和说明,填写输入文件

(1)输入NP,NE,NR,NM,NCF

(2)输入X(M),Y(M),Z(M),M=1,NP

(3)输入MM(M),ME(1,M),ME(2,M),M=1,NE

(4)输入RR(M),M=1,NR

(5)输入PF(1,M),PF(2,M),PF(3,M),PF(4,M),M=1,NCF

(6)输入AE(1,1),AE(2,1)

7

第三部分空间桁架有限元程序

1、源程序

PROGRAM MAIN

OPEN(1,FILE="IN.TXT",STATUS='OLD')

OPEN(2,FILE="OUT1.TXT",STATUS='UNKNOWN')

READ(1,*)NP,NE,NR,NM,NCF

CALL LAST(NP,NE,NR,NM,NCF)

END

SUBROUTINE LAST(NP,NE,NR,NM,NCF)

IMPLICIT REAL*8(A-H,O-Z)

IMPLICIT INTEGER*4(I-N)

DIMENSION X(NP),Y(NP),Z(NP),MM(NE),ME(2,NE),&

RR(2,NR),PF(4,NCF),AE(2,NM),SG(NE),SM(NE),&

IT(3,NP),DIST(NP*3),LMT(6,NE),MAXA(1000),V(1000),CKK(1000),& FF(NP*3),PP(NP*3)

READ(1,*)(X(M),Y(M),Z(M),M=1,NP)

READ(1,*)(MM(I),ME(1,I),ME(2,I),I=1,NE)

READ(1,*)(RR(1,M),RR(2,M),M=1,NR)

READ(1,*)(PF(1,M),PF(2,M),PF(3,M),PF(4,M),M=1,NCF)

READ(1,*)(AE(1,M),AE(2,M),M=1,NM)

WRITE(2,'(20X,A)')'///////////////////////////////////////////'

WRITE(2,'(20X,A)')'/ program for analysis of space trusses /'

WRITE(2,'(20X,A)')'/ school of civil engineering CSU /'

WRITE(2,'(20X,A)')'/ 2012.06.23 designed by HuLihua /'

8

相关文档
最新文档