1 double precision function rmsnat(jcon)
2 implicit real*8 (a-h,o-z)
5 include 'DIMENSIONS.COMPAR'
6 include 'COMMON.IOUNITS'
8 include 'COMMON.INTERACT'
10 include 'COMMON.CONTROL'
11 double precision przes(3),obrot(3,3),cc(3,2*maxres),
14 integer ishif,i,j,resprzesun
18 c write (iout,*) "tu2", nres,nsup,nperm
20 if (nres.gt.nsup+nnt-1) noverlap=nsup+nnt-1
21 c write (iout,*) "tu3,",noverlap
28 if (itype(i).ne.ntyp1) then
32 ccref(j,nnsup)=cref_pdb(j,i,kkk)
34 c write (iout,'(i5,3f10.5,5x,3f10.5)')
35 c & nnsup,(cc(j,nnsup),j=1,3),(ccref(j,nnsup),j=1,3)
38 call fitsq(rms,cc(1,1),ccref(1,1),nnsup,przes,obrot,non_conv)
40 print *,'Error: FITSQ non-convergent, jcon',jcon,i
42 else if (rms.lt.-1.0d-6) then
43 print *,'Error: rms^2 = ',rms,jcon,i
45 else if (rms.ge.1.0d-6 .and. rms.lt.0) then
48 if (rms.le.rminrms) rminrms=rms
49 c write (iout,*) "kkk",kkk," rmsnat",rms , rminrms
51 rmsnat = dsqrt(rminrms)
52 C write (iout,*) "analysys",rmsnat, anatemp
53 C liczenie rmsdla pojedynczego lancucha
56 c-----------------------------------------------------------------------------
57 double precision function gyrate(jcon)
58 implicit real*8 (a-h,o-z)
60 include 'COMMON.INTERACT'
61 include 'COMMON.CHAIN'
62 double precision cen(3),rg
74 cen(j)=cen(j)/dble(nct-nnt+1)
79 rg = rg + (c(j,i)-cen(j))**2
82 gyrate = dsqrt(rg/dble(nct-nnt+1))