(1)节点总数ND=15(2)单元总数NE=16(3)单元节点编号[数组I3(3,NE)];单元序号123456789101**********ijm1425245325635475785868961171087118111281291013141110141**********(4)节点坐标[数组XY(2,ND)](5)第一类边界节点数ND1=12(6)第一类边界节点号[数组NB1(ND1)]和场值[数组U1(ND1)](如下):xy12340123456987101**********(1)(2)(3)(4)(5)(6)(7)(8)(9)(10)(11)(13)(14)(15)(16)(12)源程序如下:PROGRAMyouxianyuan01character*20filename1PARAMETER(ND=15,NE=16,ND1=12)DIMENSIONI3(3,16),XY(2,15),U1(12),NB1(12),SK(15,15),U(15)OPEN(11,FILE='',STATUS='old')DO100J=1,NE100READ(11,*)(I3(I,J),I=1,3)READ(11,*)(U1(i),i=1,ND1)DO2J=1,ND200READ(11,*)(XY(I,J),I=1,2)READ(11,*)(NB1(I),I=1,ND1)CLOSE(11)CALLMBW(NE,I3,IW)CALLUK1(ND,NE,IW,I3,XY,SK)CALLUB1(ND1,NB1,U1,ND,IW,SK,U)CALLLDLT(SK,ND,IW,U,IE)write(*,*)'请输入数据文件名:'read(*,*)filename1open(6,file='',status='unknown')write(6,510)Uclose(6)510format(/)ENDSUBROUTINEMBW(NE,I3,IW)DIMENSIONI3(3,NE)IW=0DO10I=1,NEM=MAX(IABS(I3(1,I)-I3(2,I)),IABS(I3(2,I)-I3(3,I)),&&IABS(I3(3,I)-I3(1,I)))IF(M+)IW=M+110CONTINUERETURNENDSUBROUTINEUK1(ND,NE,IW,I3,XY,SK)DIMENSIONI3(3,NE),XY(2,ND),SK(ND,IW)DIMENSIONX(3),Y(3)REALKE(3,3)DO10I=1,NDDO10J=1,IW10SK(I,J)==1,NEDO30J=1,3I=I3(J,L)X(J)=XY(1,I)30Y(J)=XY(2,I)CALLUKE1(X,Y,KE)DO40J=1,3NJ=I3(J,L)DO40K=1,JNK=I3(K,L)IF()GOTO50NK=NK-NJ+IWSK(NJ,NK)=SK(NJ,NK)+KE(J,K)GOTO4050NJ=NJ-NK+IWSK(NK,NJ)=SK(NK,NJ)+KE(J,K)NJ=NJ+NK-IW40CONTINUE20CONTINUERETURNENDSUBROUTINEUKE1(X,Y,KE)DIMENSIONX(3),Y(3),A(3),B(3)REALKE(3,3)A(1)=Y(2)-Y(3)A(2)=Y(3)-Y(1)A(3)=Y(1)-Y(2)B(1)=X(3)-X(2)B(2)=X(1)-X(3)B(3)=X(2)-X(1)S=2.*(A(1)*B(2)-A(2)*B(1))DO10I=1,3DO10J=1,I10KE(I,J)=(A(I)*A(J)+B(I)*B(J))/SRETURNENDSUBROUTINEUB1(ND1,NB1,U1,ND,IW,SK,U)DIMENSIONNB1(ND1),U1(ND1),SK(ND,IW),U(ND)DO10I=1,ND10U(I)==1,ND1J=NB1(I)SK(J,IW)=SK(J,IW)*(J)=SK(J,IW)*U1(I)RETURNENDSUBROUTINELDLT(A,N,IW,P,IE)DIMENSIONA(N,IW),P(N)DO15I=1,NIF
有限元实验报告 来自淘豆网m.daumloan.com转载请标明出处.