Mathematical Physics - Volume II - Numerical Methods
3.6 Program for solving of elliptical problems
97
SUBROUTINE proc CALL formkf CALL aplybc CALL solve RETURN END
SUBROUTINE formkf PARAMETER (maxn=400,maxe=100,maxm=5,maxbce=70,maxbcn=40,maxpt=10, & maxband=25) COMMON /ccon / nnode , nelem , nmat , nbce , nbcn , npoint , & nband COMMON /cnode / x(2,maxn) , u(maxn) COMMON /celem / ne(maxe) , mat(maxe) , nodes(9,maxe) COMMON /cmatrx/ gk(maxn,maxband) , gf(maxn) COMMON /cint2 / xiq(2,9) , xit(2,7) , wq(9) , wt(7) DIMENSION ek(9,9) , ef(9) , xx(2,9) , nod(9) PRINT * , ’forming elements...’ DO 100 i = 1 , maxn gf(i) = 0. DO 50 j = 1 , maxband gk(i,j) = 0. 50 CONTINUE 100 CONTINUE DO 200 i = 1 , nelem mati = mat(i) nei = ne(i) DO 150 k = 1 , nei k1 = nodes(k,i) nod(k) = k1 DO 120 j = 1 , 2 xx(j,k) = x(j,k1) 120 CONTINUE 150 CONTINUE PRINT * , ’element : ’ , i c nine point integration rule for 9-node quadrilaterals IF ( nei.EQ.9 ) CALL elem(xx,nei,ek,ef,9,xiq,wq,mati)
c
seven point integration rule for 6-node traiangulars IF ( nei.EQ.6 ) CALL elem(xx,nei,ek,ef,7,xit,wt,mati) CALL assmb(ek,ef,nei,nod)
200 CONTINUE
WRITE (6,*) RETURN END
SUBROUTINE elem(x,n,ek,ef,nl,xi,w,mat) DIMENSION x(2,n) , ek(n,n) , ef(n) , xi(2,nl) , w(nl) DIMENSION dpsix(9) , dpsiy(9) , dxds(2,2) , dsdx(2,2)
Made with FlippingBook flipbook maker