资源描述:
《《有限单元法基本原理和数值方法》一书的源程序.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《有限单元法基本原理和数值方法》一书的源程序--------------------------------------------------------------------------------!*********************************************************************!*!PL----PROGRAMOFPLANEPROBLEM96.1*!*!********************************************************
2、*************CC--------输入数据顺序--------C1.NG1整型CNG结构结点总数CNG=0则停止运行C2.NE,MC,NX,NB,ND,EO,VO,T5整型3实型CNE结构单元总数CMC计算控制类型参数CMC=0平面应力C=1平面应变CNX作用载荷组数CNB给定位移个数CND结构刚度矩阵的半带宽CEO弹性模量CVO泊松比CT单元(结构)的厚度C3.NWANWE,NWK,NWP,NWD5整型C输出控制参数C=1输出C=0不输出CNWA单元参数的输出控制参数CNWE单元刚度矩阵的输出控制参数CNWK结构
3、刚度矩阵的输出控制参数CNWP载荷向量的输出控制参数CNWD结点位移的输出控制参数C4.IJM(3,NE)单元结点编码数组3×NE整型CIJM(1,I);IJM(2,I);IJM(3,I)C第I个三角形单元的结点编号,按结点编号顺序填写C5.XY(2,NG)结构结点坐标数组2×NG实型C6.MB(2,N,ZB(N2×NB整型,NB实型CMB(1,I)---第I个给定位移所在的结点号CMB(2,I)=1--给定X方向位移C=0--给定Y方向位移CZB(I)----给定位移值(以坐标正向为正)C7.NF,NP2整型CNF-----
4、作用在结点上的集中载荷(坐标方向)的个数CNP-----作用均布侧压的单元边数C若NF>0则填写C8.MF(2,NF),ZF(NF)2×NF整型,NF实型CMF(1,I)---第I个集中载荷所在的结点号CMF(2,I)=1--给定X方向集中力C=0--给定Y方向集中力CZF(I)-----作用的集中力值C若NP>0则填写C9.MP(2,NP),ZP(NP)2×NP整型,NP实型CMP(1,I)----第I个载荷作用边的起始结点号CMP(2,I)----第I个载荷作用边的起始结点号CZP(I)------第I个均布载荷值CC若N
5、X>1重复7.-9.(NX-1)次CC最后NG=0表示数据结束C!--------输出数据顺序--------C1.IJM(3,NE)单元结点编码数组3×NE整型CIJM(1,I);IJM(2,I);IJM(3,I)C第I个三角形单元的结点编号,按结点编号顺序填写C2.XY(2,NG)结构结点坐标数组2×NG实型CC若NWA=1,则输出C3.I,B(7)单元参数NE行,1×NE整型,7×NE实型C每行结构为:'NE='+单元号+Bi+Bj+Bm+Ci+Cj+Cm+ACC若NWE=1,则输出C4.IO,EK(6×6)单元刚度阵N
6、E行,1×NE整型,6×6×NE实型C每行结构为:'NE='+单元号+EK(单元刚度阵)CC若NWK=1,则输出C5.SK(NT,ND)结构刚度矩阵NT×ND=2NG×ND实型CC若NWD=1,则输出C6.I,B结点位移数据NG行,1×NG整型,2×NG实型C每行结构为:单元号+U+VCC7.S1,S2,S3,X1,X2,CTAC单元应力数据6×NE实型C分别代表σx,σy,τxy,σ1,σ2和主应力方向CC若NX>1重复6.-7.(NX-1)次C!--------可调数组分配--------CC实型数组C()整型数组IA()
7、CC(1)XY(2,NG)IA(1)IJM(3,NE)CC(N1)ZB(NIA(M1)MB(2,MCC(N2)BCA(7,NE)IA(M2)MF(2,NCC(N3)SK(NT,ND)IA(M3)MP(2,NP)CC(N4)F(NT)IA(MEND)下限CC(N5)ZF(NF)CC(N6)ZP(NP)CC(NEND)下限C!--------程序停止代码--------!0正常停止!111数组C越界!222数组C/IA越界!333单元面积非正!444结构刚度矩阵主元非正!******************************
8、***************************************CC主程序CDIMENSIONC(),IA(50000),EK(36)CHARACTER*12IN,OUTCIN和OUT为输入文件和输出文件的文件名WRITE(*,*)''WRITE(*,*)'PL