1 subroutine parmread(iparm,*)
3 C Read the parameters of the probability distributions of the virtual-bond
4 C valence angles and the side chains and energy parameters.
6 implicit real*8 (a-h,o-z)
8 include 'DIMENSIONS.ZSCOPT'
9 include 'DIMENSIONS.FREE'
10 include 'COMMON.IOUNITS'
11 include 'COMMON.CHAIN'
12 include 'COMMON.INTERACT'
14 include 'COMMON.LOCAL'
15 include 'COMMON.TORSION'
16 include 'COMMON.FFIELD'
17 include 'COMMON.NAMES'
18 include 'COMMON.SBRIDGE'
19 include 'COMMON.WEIGHTS'
20 include 'COMMON.ENEPS'
21 include 'COMMON.SCCOR'
22 include 'COMMON.SCROT'
25 character*1 onelett(4) /"G","A","P","D"/
27 dimension blower(3,3,maxlob)
28 character*800 controlcard
29 character*256 bondname_t,thetname_t,rotname_t,torname_t,
30 & tordname_t,fouriername_t,elename_t,sidename_t,scpname_t,
36 double precision ip,mp
40 C Set LPRINT=.TRUE. for debugging
41 dwa16=2.0d0**(1.0d0/6.0d0)
44 C Assign virtual-bond length
48 call card_concat(controlcard,.true.)
51 key = wname(i)(:ilen(wname(i)))
52 call reada(controlcard,key(:ilen(key)),ww(i),1.0d0)
55 write (iout,*) "iparm",iparm," myparm",myparm
56 c If reading not own parameters, skip assignment
58 if (iparm.eq.myparm .or. .not.separate_parset) then
61 c Setup weights for UNRES
83 call card_concat(controlcard,.false.)
85 c Return if not own parameters
87 if (iparm.ne.myparm .and. separate_parset) return
89 call reads(controlcard,"BONDPAR",bondname_t,bondname)
90 open (ibond,file=bondname_t,status='old')
92 call reads(controlcard,"THETPAR",thetname_t,thetname)
93 open (ithep,file=thetname_t,status='old')
95 call reads(controlcard,"ROTPAR",rotname_t,rotname)
96 open (irotam,file=rotname_t,status='old')
98 call reads(controlcard,"TORPAR",torname_t,torname)
99 open (itorp,file=torname_t,status='old')
101 call reads(controlcard,"TORDPAR",tordname_t,tordname)
102 open (itordp,file=tordname_t,status='old')
104 call reads(controlcard,"SCCORAR",sccorname_t,sccorname)
105 open (isccor,file=sccorname_t,status='old')
107 call reads(controlcard,"FOURIER",fouriername_t,fouriername)
108 open (ifourier,file=fouriername_t,status='old')
110 call reads(controlcard,"ELEPAR",elename_t,elename)
111 open (ielep,file=elename_t,status='old')
113 call reads(controlcard,"SIDEPAR",sidename_t,sidename)
114 open (isidep,file=sidename_t,status='old')
116 call reads(controlcard,"SCPPAR",scpname_t,scpname)
117 open (iscpp,file=scpname_t,status='old')
119 write (iout,*) "Parameter set:",iparm
120 write (iout,*) "Energy-term weights:"
122 write (iout,'(a16,f10.5)') wname(i),ww(i)
124 write (iout,*) "Sidechain potential file : ",
125 & sidename_t(:ilen(sidename_t))
127 write (iout,*) "SCp potential file : ",
128 & scpname_t(:ilen(scpname_t))
130 write (iout,*) "Electrostatic potential file : ",
131 & elename_t(:ilen(elename_t))
132 write (iout,*) "Cumulant coefficient file : ",
133 & fouriername_t(:ilen(fouriername_t))
134 write (iout,*) "Torsional parameter file : ",
135 & torname_t(:ilen(torname_t))
136 write (iout,*) "Double torsional parameter file : ",
137 & tordname_t(:ilen(tordname_t))
138 write (iout,*) "Backbone-rotamer parameter file : ",
139 & sccorname(:ilen(sccorname))
140 write (iout,*) "Bond & inertia constant file : ",
141 & bondname_t(:ilen(bondname_t))
142 write (iout,*) "Bending parameter file : ",
143 & thetname_t(:ilen(thetname_t))
144 write (iout,*) "Rotamer parameter file : ",
145 & rotname_t(:ilen(rotname_t))
148 c Read the virtual-bond parameters, masses, and moments of inertia
149 c and Stokes' radii of the peptide group and side chains
152 read (ibond,*) vbldp0,akp
155 read (ibond,*) vbldsc0(1,i),aksc(1,i)
156 dsc(i) = vbldsc0(1,i)
160 dsc_inv(i)=1.0D0/dsc(i)
164 read (ibond,*) ijunk,vbldp0,akp,rjunk
166 read (ibond,*) nbondterm(i),(vbldsc0(j,i),aksc(j,i),abond0(j,i),
168 dsc(i) = vbldsc0(1,i)
172 dsc_inv(i)=1.0D0/dsc(i)
177 write(iout,'(/a/)')"Force constants virtual bonds:"
178 write (iout,'(a10,a3,6a10)') 'Type','N','VBL','K',
180 write(iout,'(a10,i3,6f10.5)') "p",1,vbldp0,akp,0.0d0
182 write (iout,'(a10,i3,6f10.5)') restyp(i),nbondterm(i),
183 & vbldsc0(1,i),aksc(1,i),abond0(1,i)
185 write (iout,'(13x,3f10.5)')
186 & vbldsc0(j,i),aksc(j,i),abond0(j,i)
192 C Read the parameters of the probability distribution/energy expression
193 C of the virtual-bond valence angles theta
196 read (ithep,*) a0thet(i),(athet(j,i),j=1,2),(bthet(j,i),j=1,2)
197 read (ithep,*) (polthet(j,i),j=0,3)
198 read (ithep,*) (gthet(j,i),j=1,3)
199 read (ithep,*) theta0(i),sig0(i),sigc0(i)
205 c & 'Parameters of the virtual-bond valence angles:'
206 c write (iout,'(/a/9x,5a/79(1h-))') 'Fourier coefficients:',
207 c & ' ATHETA0 ',' A1 ',' A2 ',
210 c write(iout,'(a3,i4,2x,5(1pe14.5))') restyp(i),i,
211 c & a0thet(i),(athet(j,i),j=1,2),(bthet(j,i),j=1,2)
213 c write (iout,'(/a/9x,5a/79(1h-))')
214 c & 'Parameters of the expression for sigma(theta_c):',
215 c & ' ALPH0 ',' ALPH1 ',' ALPH2 ',
216 c & ' ALPH3 ',' SIGMA0C '
218 c write (iout,'(a3,i4,2x,5(1pe14.5))') restyp(i),i,
219 c & (polthet(j,i),j=0,3),sigc0(i)
221 c write (iout,'(/a/9x,5a/79(1h-))')
222 c & 'Parameters of the second gaussian:',
223 c & ' THETA0 ',' SIGMA0 ',' G1 ',
226 c write (iout,'(a3,i4,2x,5(1pe14.5))') restyp(i),i,theta0(i),
227 c & sig0(i),(gthet(j,i),j=1,3)
230 & 'Parameters of the virtual-bond valence angles:'
231 write (iout,'(/a/9x,5a/79(1h-))')
232 & 'Coefficients of expansion',
233 & ' theta0 ',' a1*10^2 ',' a2*10^2 ',
234 & ' b1*10^1 ',' b2*10^1 '
236 write(iout,'(a3,1h&,2x,5(f8.3,1h&))') restyp(i),
237 & a0thet(i),(100*athet(j,i),j=1,2),(10*bthet(j,i),j=1,2)
239 write (iout,'(/a/9x,5a/79(1h-))')
240 & 'Parameters of the expression for sigma(theta_c):',
241 & ' alpha0 ',' alph1 ',' alph2 ',
242 & ' alhp3 ',' sigma0c '
244 write (iout,'(a3,1h&,2x,5(1pe12.3,1h&))') restyp(i),
245 & (polthet(j,i),j=0,3),sigc0(i)
247 write (iout,'(/a/9x,5a/79(1h-))')
248 & 'Parameters of the second gaussian:',
249 & ' theta0 ',' sigma0*10^2 ',' G1*10^-1',
252 write (iout,'(a3,1h&,2x,5(f8.3,1h&))') restyp(i),theta0(i),
253 & 100*sig0(i),gthet(1,i)*0.1D0,gthet(2,i),gthet(3,i)*10.0D0
258 C Read the parameters of Utheta determined from ab initio surfaces
259 C Kozlowska et al., J. Phys.: Condens. Matter 19 (2007) 285203
261 read (ithep,*) nthetyp,ntheterm,ntheterm2,
262 & ntheterm3,nsingle,ndouble
263 nntheterm=max0(ntheterm,ntheterm2,ntheterm3)
264 read (ithep,*) (ithetyp(i),i=1,ntyp1)
270 aathet(l,i,j,k)=0.0d0
274 bbthet(m,l,i,j,k)=0.0d0
275 ccthet(m,l,i,j,k)=0.0d0
276 ddthet(m,l,i,j,k)=0.0d0
277 eethet(m,l,i,j,k)=0.0d0
283 ffthet(mm,m,l,i,j,k)=0.0d0
284 ggthet(mm,m,l,i,j,k)=0.0d0
294 read (ithep,'(3a)') res1,res2,res3
295 read (ithep,*) aa0thet(i,j,k)
296 read (ithep,*)(aathet(l,i,j,k),l=1,ntheterm)
298 & ((bbthet(lll,ll,i,j,k),lll=1,nsingle),
299 & (ccthet(lll,ll,i,j,k),lll=1,nsingle),
300 & (ddthet(lll,ll,i,j,k),lll=1,nsingle),
301 & (eethet(lll,ll,i,j,k),lll=1,nsingle),ll=1,ntheterm2)
303 & (((ffthet(llll,lll,ll,i,j,k),ffthet(lll,llll,ll,i,j,k),
304 & ggthet(llll,lll,ll,i,j,k),ggthet(lll,llll,ll,i,j,k),
305 & llll=1,lll-1),lll=2,ndouble),ll=1,ntheterm3)
310 C For dummy ends assign glycine-type coefficients of theta-only terms; the
311 C coefficients of theta-and-gamma-dependent terms are zero.
316 aathet(l,i,j,nthetyp+1)=aathet(l,i,j,1)
317 aathet(l,nthetyp+1,i,j)=aathet(l,1,i,j)
319 aa0thet(i,j,nthetyp+1)=aa0thet(i,j,1)
320 aa0thet(nthetyp+1,i,j)=aa0thet(1,i,j)
323 aathet(l,nthetyp+1,i,nthetyp+1)=aathet(l,1,i,1)
325 aa0thet(nthetyp+1,i,nthetyp+1)=aa0thet(1,i,1)
328 C Control printout of the coefficients of virtual-bond-angle potentials
331 write (iout,'(//a)') 'Parameter of virtual-bond-angle potential'
335 write (iout,'(//4a)')
336 & 'Type ',onelett(i),onelett(j),onelett(k)
337 write (iout,'(//a,10x,a)') " l","a[l]"
338 write (iout,'(i2,1pe15.5)') 0,aa0thet(i,j,k)
339 write (iout,'(i2,1pe15.5)')
340 & (l,aathet(l,i,j,k),l=1,ntheterm)
342 write (iout,'(//2h m,4(9x,a,3h[m,i1,1h]))')
343 & "b",l,"c",l,"d",l,"e",l
345 write (iout,'(i2,4(1pe15.5))') m,
346 & bbthet(m,l,i,j,k),ccthet(m,l,i,j,k),
347 & ddthet(m,l,i,j,k),eethet(m,l,i,j,k)
351 write (iout,'(//3hm,n,4(6x,a,5h[m,n,i1,1h]))')
352 & "f+",l,"f-",l,"g+",l,"g-",l
355 write (iout,'(i1,1x,i1,4(1pe15.5))') n,m,
356 & ffthet(n,m,l,i,j,k),ffthet(m,n,l,i,j,k),
357 & ggthet(n,m,l,i,j,k),ggthet(m,n,l,i,j,k)
370 C Read the parameters of the probability distribution/energy expression
371 C of the side chains.
374 read (irotam,'(3x,i3,f8.3)') nlob(i),dsc(i)
378 dsc_inv(i)=1.0D0/dsc(i)
389 read(irotam,*)(censc(k,1,i),k=1,3),((blower(k,l,1),l=1,k),k=1,3)
391 read (irotam,*) bsc(j,i)
392 read (irotam,*) (censc(k,j,i),k=1,3),
393 & ((blower(k,l,j),l=1,k),k=1,3)
400 akl=akl+blower(k,m,j)*blower(l,m,j)
411 write (iout,'(/a)') 'Parameters of side-chain local geometry'
415 write (iout,'(/3a,i2,a,f8.3)') 'Residue type: ',restyp(i),
416 & ' # of gaussian lobes:',nlobi,' dsc:',dsc(i)
417 c write (iout,'(/a,8x,i1,4(25x,i1))') 'Lobe:',(j,j=1,nlobi)
418 c write (iout,'(a,f10.4,4(16x,f10.4))')
419 c & 'Center ',(bsc(j,i),j=1,nlobi)
420 c write (iout,'(5(2x,3f8.4))') ((censc(k,j,i),k=1,3),j=1,nlobi)
421 write (iout,'(1h&,a,3(2h&&,f8.3,2h&&))')
422 & 'log h',(bsc(j,i),j=1,nlobi)
423 write (iout,'(1h&,a,3(1h&,f8.3,1h&,f8.3,1h&,f8.3,1h&))')
424 & 'x',((censc(k,j,i),k=1,3),j=1,nlobi)
431 c blower(k,l,j)=gaussc(ind,j,i)
436 write (iout,'(2h& ,5(2x,1h&,3(f7.3,1h&)))')
437 & ((gaussc(k,l,j,i),l=1,3),j=1,nlobi)
444 C Read scrot parameters for potentials determined from all-atom AM1 calculations
445 C added by Urszula Kozlowska 07/11/2007
453 read(irotam,*) sc_parmin(j,i)
461 C Read torsional parameters in old format
463 read (itorp,*) ntortyp,nterm_old
464 write (iout,*) 'ntortyp,nterm',ntortyp,nterm_old
465 read (itorp,*) (itortyp(i),i=1,ntyp)
470 read (itorp,*) kk,v1(k,j,i),v2(k,j,i)
476 write (iout,'(/a/)') 'Torsional constants:'
479 write (iout,'(2i3,6f10.5)') i,j,(v1(k,i,j),k=1,nterm_old)
480 write (iout,'(6x,6f10.5)') (v2(k,i,j),k=1,nterm_old)
488 C Read torsional parameters
490 read (itorp,*) ntortyp
491 read (itorp,*) (itortyp(i),i=1,ntyp)
492 write (iout,*) 'ntortyp',ntortyp
495 read (itorp,*) nterm(i,j),nlor(i,j)
499 read (itorp,*) kk,v1(k,i,j),v2(k,i,j)
500 v0ij=v0ij+si*v1(k,i,j)
504 read (itorp,*) kk,vlor1(k,i,j),vlor2(k,i,j),vlor3(k,i,j)
505 v0ij=v0ij+vlor1(k,i,j)/(1+vlor3(k,i,j)**2)
512 write (iout,'(/a/)') 'Torsional constants:'
515 write (iout,*) 'ityp',i,' jtyp',j
516 write (iout,*) 'Fourier constants'
518 write (iout,'(2(1pe15.5))') v1(k,i,j),v2(k,i,j)
520 write (iout,*) 'Lorenz constants'
522 write (iout,'(3(1pe15.5))')
523 & vlor1(k,i,j),vlor2(k,i,j),vlor3(k,i,j)
529 C 6/23/01 Read parameters for double torsionals
534 read (itordp,'(3a1)') t1,t2,t3
535 if (t1.ne.onelett(i) .or. t2.ne.onelett(j)
536 & .or. t3.ne.onelett(k)) then
537 write (iout,*) "Error in double torsional parameter file",
539 stop "Error in double torsional parameter file"
541 read (itordp,*) ntermd_1(i,j,k),ntermd_2(i,j,k)
542 read (itordp,*) (v1c(1,l,i,j,k),l=1,ntermd_1(i,j,k))
543 read (itordp,*) (v1s(1,l,i,j,k),l=1,ntermd_1(i,j,k))
544 read (itordp,*) (v1c(2,l,i,j,k),l=1,ntermd_1(i,j,k))
545 read (itordp,*) (v1s(2,l,i,j,k),l=1,ntermd_1(i,j,k))
546 read (itordp,*) ((v2c(l,m,i,j,k),v2c(m,l,i,j,k),
547 & v2s(l,m,i,j,k),v2s(m,l,i,j,k),m=1,l-1),l=1,ntermd_2(i,j,k))
553 write (iout,*) 'Constants for double torsionals'
557 write (iout,*) 'ityp',i,' jtyp',j,' ktyp',k,
558 & ' nsingle',ntermd_1(i,j,k),' ndouble',ntermd_2(i,j,k)
560 write (iout,*) 'Single angles:'
561 do l=1,ntermd_1(i,j,k)
562 write (iout,'(i5,2f10.5,5x,2f10.5)') l,
563 & v1c(1,l,i,j,k),v1s(1,l,i,j,k),
564 & v1c(2,l,i,j,k),v1s(2,l,i,j,k)
567 write (iout,*) 'Pairs of angles:'
568 write (iout,'(3x,20i10)') (l,l=1,ntermd_2(i,j,k))
569 do l=1,ntermd_2(i,j,k)
570 write (iout,'(i5,20f10.5)')
571 & l,(v2c(l,m,i,j,k),m=1,ntermd_2(i,j,k))
574 write (iout,'(3x,20i10)') (l,l=1,ntermd_2(i,j,k))
575 do l=1,ntermd_2(i,j,k)
576 write (iout,'(i5,20f10.5)')
577 & l,(v2s(l,m,i,j,k),m=1,ntermd_2(i,j,k))
586 C 5/21/07 (AL) Read coefficients of the backbone-local sidechain-local
587 C correlation energies.
589 read (isccor,*) nterm_sccor
595 & kk,v1sccor(k,i,j),v2sccor(k,i,j)
601 write (iout,'(/a/)') 'Torsional constants of SCCORR:'
604 write (iout,*) 'ityp',i,' jtyp',j
606 write (iout,'(2(1pe15.5))') v1sccor(k,i,j),v2sccor(k,i,j)
612 C 9/18/99 (AL) Read coefficients of the Fourier expansion of the local
613 C interaction energy of the Gly, Ala, and Pro prototypes.
615 read (ifourier,*) nloctyp
618 read (ifourier,*) (b(ii,i),ii=1,13)
620 write (iout,*) 'Type',i
621 write (iout,'(a,i2,a,f10.5)') ('b(',ii,')=',b(ii,i),ii=1,13)
625 B1tilde(1,i) = b(3,i)
626 B1tilde(2,i) =-b(5,i)
635 Ctilde(2,1,i)=-b(9,i)
643 Dtilde(2,1,i)=-b(8,i)
645 EE(1,1,i)= b(10,i)+b(11,i)
646 EE(2,2,i)=-b(10,i)+b(11,i)
647 EE(2,1,i)= b(12,i)-b(13,i)
648 EE(1,2,i)= b(12,i)+b(13,i)
652 write (iout,*) 'Type',i
654 c write (iout,'(f10.5)') B1(:,i)
655 write(iout,*) B1(1,i),B1(2,i)
657 c write (iout,'(f10.5)') B2(:,i)
658 write(iout,*) B2(1,i),B2(2,i)
661 write (iout,'(2f10.5)') CC(j,1,i),CC(j,2,i)
665 write (iout,'(2f10.5)') DD(j,1,i),DD(j,2,i)
669 write (iout,'(2f10.5)') EE(j,1,i),EE(j,2,i)
674 C Read electrostatic-interaction parameters
677 write (iout,'(/a)') 'Electrostatic interaction constants:'
678 write (iout,'(1x,a,1x,a,10x,a,11x,a,11x,a,11x,a)')
679 & 'IT','JT','APP','BPP','AEL6','AEL3'
681 read (ielep,*) ((epp(i,j),j=1,2),i=1,2)
682 read (ielep,*) ((rpp(i,j),j=1,2),i=1,2)
683 read (ielep,*) ((elpp6(i,j),j=1,2),i=1,2)
684 read (ielep,*) ((elpp3(i,j),j=1,2),i=1,2)
689 app (i,j)=epp(i,j)*rri*rri
690 bpp (i,j)=-2.0D0*epp(i,j)*rri
691 ael6(i,j)=elpp6(i,j)*4.2D0**6
692 ael3(i,j)=elpp3(i,j)*4.2D0**3
693 if (lprint) write(iout,'(2i3,4(1pe15.4))')i,j,app(i,j),bpp(i,j),
694 & ael6(i,j),ael3(i,j)
698 C Read side-chain interaction parameters.
700 read (isidep,*) ipot,expon
701 if (ipot.lt.1 .or. ipot.gt.5) then
702 write (iout,'(2a)') 'Error while reading SC interaction',
703 & 'potential file - unknown potential type.'
707 write(iout,'(/3a,2i3)') 'Potential is ',potname(ipot),
708 & ', exponents are ',expon,2*expon
709 goto (10,20,30,30,40) ipot
710 C----------------------- LJ potential ---------------------------------
711 10 read (isidep,*)((eps(i,j),j=i,ntyp),i=1,ntyp),(sigma0(i),i=1,ntyp)
713 write (iout,'(/a/)') 'Parameters of the LJ potential:'
714 write (iout,'(a/)') 'The epsilon array:'
715 call printmat(ntyp,ntyp,ntyp,iout,restyp,eps)
716 write (iout,'(/a)') 'One-body parameters:'
717 write (iout,'(a,4x,a)') 'residue','sigma'
718 write (iout,'(a3,6x,f10.5)') (restyp(i),sigma0(i),i=1,ntyp)
721 C----------------------- LJK potential --------------------------------
722 20 read (isidep,*)((eps(i,j),j=i,ntyp),i=1,ntyp),
723 & (sigma0(i),i=1,ntyp),(rr0(i),i=1,ntyp)
725 write (iout,'(/a/)') 'Parameters of the LJK potential:'
726 write (iout,'(a/)') 'The epsilon array:'
727 call printmat(ntyp,ntyp,ntyp,iout,restyp,eps)
728 write (iout,'(/a)') 'One-body parameters:'
729 write (iout,'(a,4x,2a)') 'residue',' sigma ',' r0 '
730 write (iout,'(a3,6x,2f10.5)') (restyp(i),sigma0(i),rr0(i),
734 C---------------------- GB or BP potential -----------------------------
735 30 read (isidep,*)((eps(i,j),j=i,ntyp),i=1,ntyp),
736 & (sigma0(i),i=1,ntyp),(sigii(i),i=1,ntyp),(chip0(i),i=1,ntyp),
738 C For the GB potential convert sigma'**2 into chi'
741 chip(i)=(chip0(i)-1.0D0)/(chip0(i)+1.0D0)
745 write (iout,'(/a/)') 'Parameters of the BP potential:'
746 write (iout,'(a/)') 'The epsilon array:'
747 call printmat(ntyp,ntyp,ntyp,iout,restyp,eps)
748 write (iout,'(/a)') 'One-body parameters:'
749 write (iout,'(a,4x,4a)') 'residue',' sigma ','s||/s_|_^2',
751 write (iout,'(a3,6x,4f10.5)') (restyp(i),sigma0(i),sigii(i),
752 & chip(i),alp(i),i=1,ntyp)
755 C--------------------- GBV potential -----------------------------------
756 40 read (isidep,*)((eps(i,j),j=i,ntyp),i=1,ntyp),
757 & (sigma0(i),i=1,ntyp),(rr0(i),i=1,ntyp),(sigii(i),i=1,ntyp),
758 & (chip(i),i=1,ntyp),(alp(i),i=1,ntyp)
760 write (iout,'(/a/)') 'Parameters of the GBV potential:'
761 write (iout,'(a/)') 'The epsilon array:'
762 call printmat(ntyp,ntyp,ntyp,iout,restyp,eps)
763 write (iout,'(/a)') 'One-body parameters:'
764 write (iout,'(a,4x,5a)') 'residue',' sigma ',' r0 ',
765 & 's||/s_|_^2',' chip ',' alph '
766 write (iout,'(a3,6x,5f10.5)') (restyp(i),sigma0(i),rr0(i),
767 & sigii(i),chip(i),alp(i),i=1,ntyp)
771 C-----------------------------------------------------------------------
772 C Calculate the "working" parameters of SC interactions.
780 sigma(i,j)=dsqrt(sigma0(i)**2+sigma0(j)**2)
781 sigma(j,i)=sigma(i,j)
782 rs0(i,j)=dwa16*sigma(i,j)
786 if (lprint) write (iout,'(/a/10x,7a/72(1h-))')
787 & 'Working parameters of the SC interactions:',
788 & ' a ',' b ',' augm ',' sigma ',' r0 ',
793 if (ipot.eq.1 .or. ipot.eq.3 .or. ipot.eq.4) then
802 sigeps=dsign(1.0D0,epsij)
804 aa(i,j)=epsij*rrij*rrij
805 bb(i,j)=-sigeps*epsij*rrij
813 ratsig1=sigt2sq/sigt1sq
814 ratsig2=1.0D0/ratsig1
815 chi(i,j)=(sigii1-1.0D0)/(sigii1+ratsig1)
816 if (j.gt.i) chi(j,i)=(sigii2-1.0D0)/(sigii2+ratsig2)
817 rsum_max=dsqrt(sigii1*sigt1sq+sigii2*sigt2sq)
821 c if (ipot.eq.1 .or. ipot.eq.3 .or. ipot.eq.4) then
822 sigmaii(i,j)=rsum_max
823 sigmaii(j,i)=rsum_max
825 c sigmaii(i,j)=r0(i,j)
826 c sigmaii(j,i)=r0(i,j)
828 cd write (iout,*) i,j,r0(i,j),sigma(i,j),rsum_max
829 if ((ipot.eq.2 .or. ipot.eq.5) .and. r0(i,j).gt.rsum_max) then
830 r_augm=sigma(i,j)*(rrij-sigma(i,j))/rrij
831 augm(i,j)=epsij*r_augm**(2*expon)
832 c augm(i,j)=0.5D0**(2*expon)*aa(i,j)
839 write (iout,'(2(a3,2x),3(1pe10.3),5(0pf8.3))')
840 & restyp(i),restyp(j),aa(i,j),bb(i,j),augm(i,j),
841 & sigma(i,j),r0(i,j),chi(i,j),chi(j,i)
846 C Define the SC-p interaction constants
850 C "Soft" SC-p repulsion (causes helices to be too flat, but facilitates
852 c aad(i,1)=0.3D0*4.0D0**12
853 C Following line for constants currently implemented
854 C "Hard" SC-p repulsion (gives correct turn spacing in helices)
855 aad(i,1)=1.5D0*4.0D0**12
856 c aad(i,1)=0.17D0*5.6D0**12
858 C "Soft" SC-p repulsion
860 C Following line for constants currently implemented
861 c aad(i,1)=0.3D0*4.0D0**6
862 C "Hard" SC-p repulsion
863 bad(i,1)=3.0D0*4.0D0**6
864 c bad(i,1)=-2.0D0*0.17D0*5.6D0**6
873 C 8/9/01 Read the SC-p interaction constants from file
876 read (iscpp,*) (eps_scp(i,j),rscp(i,j),j=1,2)
879 aad(i,1)=dabs(eps_scp(i,1))*rscp(i,1)**12
880 aad(i,2)=dabs(eps_scp(i,2))*rscp(i,2)**12
881 bad(i,1)=-2*eps_scp(i,1)*rscp(i,1)**6
882 bad(i,2)=-2*eps_scp(i,2)*rscp(i,2)**6
886 write (iout,*) "Parameters of SC-p interactions:"
888 write (iout,'(4f8.3,4e12.4)') eps_scp(i,1),rscp(i,1),
889 & eps_scp(i,2),rscp(i,2),aad(i,1),bad(i,1),aad(i,2),bad(i,2)
894 C Define the constants of the disulfide bridge
898 c Old arbitrary potential - commented out.
903 c Constants of the disulfide-bond potential determined based on the RHF/6-31G**
904 c energy surface of diethyl disulfide.
905 c A. Liwo and U. Kozlowska, 11/24/03
916 write (iout,'(/a)') "Disulfide bridge parameters:"
917 write (iout,'(a,f10.2)') 'S-S bridge energy: ',ebr
918 write (iout,'(2(a,f10.2))') 'd0cm:',d0cm,' akcm:',akcm
919 write (iout,'(2(a,f10.2))') 'akth:',akth,' akct:',akct
920 write (iout,'(3(a,f10.2))') 'v1ss:',v1ss,' v2ss:',v2ss,