c ************************************************************** subroutine cal_gyrat(n) implicit double precision(a-h, o-z) parameter(maxa=500,pi=3.1415926535d0,pi2=pi*2.d0) integer n common/matrix/x(maxa,3),bangle(maxa) common/figinfo/gyrat,endl2,zsum1,cmass(3),r1,shapef,writhe do j=1,3 cmass(j)=0 enddo do i=1,n do j=1,3 cmass(j)=cmass(j)+x(i,j) enddo enddo do j=1,3 cmass(j)=cmass(j)/n enddo gyrat=0.d0 do i=1,n do j=1,3 gyrat=gyrat+(x(i,j)-cmass(j))**2 enddo enddo gyrat=dsqrt(gyrat/n) return end