27 integer i,j,k,nk,mi(*),nactdof(0:mi(2),*),neq(*),jq(*),irow(*),
30 real*8 x(neq(2)),y(neq(2)),adb(*),aub(*),z(*),part(nev,6),
31 & toteffmass(6),effmodmass(nev,6),toteffmodmass(6),co(3,*)
40 if(nactdof(j,i).gt.0) x(nactdof(j,i))=1.d0
45 call op(neq(2),x,y,adb,aub,jq,irow)
50 call multvec(neq(2),z((k-1)*neq(2)+1),y,part(k,j))
55 call multvec(neq(2),x,y,toteffmass(j))
61 effmodmass(k,j)=(part(k,j)**2)
62 toteffmodmass(j)=toteffmodmass(j)+effmodmass(k,j)
74 if(nactdof(2,i).gt.0)
then 75 x(nactdof(2,i))=-co(3,i)
77 if(nactdof(3,i).gt.0)
then 78 x(nactdof(3,i))=co(2,i)
81 if(nactdof(3,i).gt.0)
then 82 x(nactdof(3,i))=-co(1,i)
84 if(nactdof(1,i).gt.0)
then 85 x(nactdof(1,i))=co(3,i)
88 if(nactdof(1,i).gt.0)
then 89 x(nactdof(1,i))=-co(2,i)
91 if(nactdof(2,i).gt.0)
then 92 x(nactdof(2,i))=co(1,i)
99 call op(neq(2),x,y,adb,aub,jq,irow)
104 call multvec(neq(2),z((k-1)*neq(2)+1),y,part(k,j))
109 call multvec(neq(2),x,y,toteffmass(j))
113 toteffmodmass(j)=0.d0
115 effmodmass(k,j)=(part(k,j)**2)
116 toteffmodmass(j)=toteffmodmass(j)+effmodmass(k,j)
123 write(5,*)
' P A R T I C I P A T I O N F A C T O R S' 126 100
format(
'MODE NO. X-COMPONENT Y-COMPONENT Z-COMPONENT 127 & X-ROTATION Y-ROTATION Z-ROTATION')
130 write(5,
'(i7,6(2x,e14.7))') k,(part(k,j),j=1,6)
136 write(5,*)
' E F F E C T I V E M O D A L M A S S' 141 write(5,
'(i7,6(2x,e14.7))') k,(effmodmass(k,j),j=1,6)
143 write(5,
'(a7,6(2x,e14.7))')
'TOTAL ',(toteffmodmass(j),j=1,6)
148 write(5,*)
' T O T A L E F F E C T I V E M A S S' 152 write(5,
'(a7,6(2x,e14.7))')
' ',(toteffmass(j),j=1,6)
subroutine multvec(n, x, y, dot)
Definition: multvec.f:20
subroutine op(n, x, y, ad, au, jq, irow)
Definition: op.f:26