29 SUBROUTINE tmass(X ,NC ,GEO ,PM ,MS ,
30 . STIFN ,PARTSAV ,V ,IPART,MST,
31 . STIFINT,STT ,AREA , MXT, NC1, NC2,
32 . X1, X2, Y1, Y2, Z1, Z2)
39#include "implicit_f.inc"
48#include "vect01_c.inc"
53 INTEGER NC(NIXT,*),IPART(*), MXT(*), NC1(*), NC2(*)
55 . X(3,*),GEO(NPROPG,*),PM(NPROPM,*),MS(*),STIFN(*),
56 . v(3,*),partsav(20,*),mst(*),stifint(*),stt(*),
area(*),
57 . x1(*), x2(*), y1(*), y2(*), z1(*), z2(*)
61 INTEGER I,IP,I1,I2,J,K
66 . rho(mvsiz),ems(mvsiz),
67 . e,sti(mvsiz),dx,dy,dz
77 al(i)=sqrt((x2(i)-x1(i))**2
80 ems(i)=rho(i)*al(i)*
area(i)*half
94 sti(i) = pm(20,mxt(i)) *
area(i) / al(i)
95 stifn(nc1(i))=stifn(nc1(i))+sti(i)
96 stifn(nc2(i))=stifn(nc2(i))+sti(i)
98 IF (i7stifs /= 0)
THEN
109 partsav(1,ip)=partsav(1,ip) + two*ems(i)
110 partsav(2,ip)=partsav(2,ip) + ems(i)*(x(1,i1)+x(1,i2))
111 partsav(3,ip)=partsav(3,ip) + ems(i)*(x(2,i1)+x(2,i2))
112 partsav(4,ip)=partsav(4,ip) + ems(i)*(x(3,i1)+x(3,i2))
113 xx = (x(1,i1)*x(1,i1)+x(1,i2)*x(1,i2))
114 xy = (x(1,i1)*x(2,i1)+x(1,i2)*x(2,i2))
115 yy = (x(2,i1)*x(2,i1)+x(2,i2)*x(2,i2))
116 yz = (x(2,i1)*x(3,i1)+x(2,i2)*x(3,i2))
117 zz = (x(3,i1)*x(3,i1)+x(3,i2)*x(3,i2))
118 zx = (x(3,i1)*x(1,i1)+x(3,i2)*x(1,i2))
119 partsav(5,ip) =partsav(5,ip) + ems(i) * (yy+zz)
120 partsav(6,ip) =partsav(6,ip) + ems(i) * (zz+xx)
121 partsav(7,ip) =partsav(7,ip) + ems(i) * (xx+yy)
122 partsav(8,ip) =partsav(8,ip) - ems(i) * xy
123 partsav(9,ip) =partsav(9,ip) - ems(i) * yz
124 partsav(10,ip)=partsav(10,ip) - ems(i) * zx
126 partsav(11,ip)=partsav(11,ip) + ems(i)*(v(1,i1)+v(1,i2))
127 partsav(12,ip)=partsav(12,ip) + ems(i)*(v(2,i1)+v(2,i2))
128 partsav(13,ip)=partsav(13,ip) + ems(i)*(v(3,i1)+v(3,i2))
129 partsav(14,ip)=partsav(14,ip) + half * ems(i) *
130 . (v(1,i1)*v(1,i1)+v(2,i1)*v(2,i1)+v(3,i1)*v(3,i1)
131 . +v(1,i2)*v(1,i2)+v(2,i2)*v(2,i2)+v(3,i2)*v(3,i2))
subroutine tmass(x, nc, geo, pm, ms, stifn, partsav, v, ipart, mst, stifint, stt, area, mxt, nc1, nc2, x1, x2, y1, y2, z1, z2)