X-Git-Url: http://mmka.chem.univ.gda.pl/gitweb/?a=blobdiff_plain;f=source%2Funres%2Fsrc_MD%2Fparmread.F;h=9d5100b27352f9433ac1c428e779497cfbb3a948;hb=2d66111aef48a7db8a87b9f9b3882d640ea53435;hp=b1edf11bd1fb18e21793aa4f4e3de94658beb181;hpb=282e4424a88ba77cdd137d8335c51edcb5963506;p=unres.git diff --git a/source/unres/src_MD/parmread.F b/source/unres/src_MD/parmread.F index b1edf11..9d5100b 100644 --- a/source/unres/src_MD/parmread.F +++ b/source/unres/src_MD/parmread.F @@ -659,9 +659,10 @@ C read (isccor,*,end=113,err=113) nsccortyp #ifdef SCCORPDB read (isccor,*,end=113,err=113) (isccortyp(i),i=1,ntyp) -#else - read (isccor,*,end=113,err=113) (isccortyp(i),i=-ntyp,ntyp) -#endif + do i=-ntyp,-1 + isccortyp(i)=-isccortyp(-i) + enddo + iscprol=isccortyp(20) c write (iout,*) 'ntortyp',ntortyp maxinter=3 cc maxinter is maximum interaction sites @@ -674,7 +675,24 @@ cc maxinter is maximum interaction sites do k=1,nterm_sccor(i,j) read (isccor,*,end=113,err=113) kk,v1sccor(k,l,i,j) - & ,v2sccor(k,l,i,j) + & ,v2sccor(k,l,i,j) + if (j.eq.iscprol) then + v1sccor(k,l,i,-j)=v1sccor(k,l,i,j)*0.5d0 + & +v2sccor(k,l,i,j)*dsqrt(0.75d0) + v2sccor(k,l,i,-j)=-v2sccor(k,l,i,j)*0.5d0 + & +v1sccor(k,l,i,j)*dsqrt(0.75d0) + v1sccor(k,l,-i,-j)=v1sccor(k,l,i,j) + v2sccor(k,l,-i,-j)=-v2sccor(k,l,i,j) + v1sccor(k,l,-i,j)=v1sccor(k,l,i,-j) + v2sccor(k,l,-i,j)=-v2sccor(k,l,i,-j) + else + v1sccor(k,l,i,-j)=-v1sccor(k,l,i,j) + v2sccor(k,l,i,-j)=-v2sccor(k,l,i,j) + v1sccor(k,l,-i,-j)=v1sccor(k,l,i,j) + v2sccor(k,l,-i,-j)=-v2sccor(k,l,i,j) + v1sccor(k,l,-i,j)=v1sccor(k,l,i,-j) + v2sccor(k,l,-i,j)=-v2sccor(k,l,i,-j) + endif v0ijsccor=v0ijsccor+si*v1sccor(k,l,i,j) si=-si enddo @@ -689,7 +707,38 @@ cc maxinter is maximum interaction sites enddo enddo close (isccor) - +#else + read (isccor,*,end=113,err=113) (isccortyp(i),i=1,ntyp) +c write (iout,*) 'ntortyp',ntortyp + maxinter=3 +cc maxinter is maximum interaction sites + do l=1,maxinter + do i=1,nsccortyp + do j=1,nsccortyp + read (isccor,*,end=113,err=113) + nterm_sccor(i,j),nlor_sccor(i,j) + v0ijsccor=0.0d0 + si=-1.0d0 + + do k=1,nterm_sccor(i,j) + read (isccor,*,end=113,err=113) kk,v1sccor(k,l,i,j) + & ,v2sccor(k,l,i,j) + v0ijsccor=v0ijsccor+si*v1sccor(k,l,i,j) + si=-si + enddo + do k=1,nlor_sccor(i,j) + read (isccor,*,end=113,err=113) kk,vlor1sccor(k,i,j), + & vlor2sccor(k,i,j),vlor3sccor(k,i,j) + v0ijsccor=v0ijsccor+vlor1sccor(k,i,j)/ + &(1+vlor3sccor(k,i,j)**2) + enddo + v0sccor(i,j)=v0ijsccor + enddo + enddo + enddo + close (isccor) + +#endif if (lprint) then write (iout,'(/a/)') 'Torsional constants:' do i=1,nsccortyp