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 C Important! Energy-term weights ARE NOT read here; they are read from the
7 C main input file instead, because NO defaults have yet been set for these
10 implicit real*8 (a-h,o-z)
16 include 'COMMON.IOUNITS'
17 include 'COMMON.CHAIN'
18 include 'COMMON.INTERACT'
20 include 'COMMON.LOCAL'
21 include 'COMMON.TORSION'
22 include 'COMMON.SCCOR'
23 include 'COMMON.SCROT'
24 include 'COMMON.FFIELD'
25 include 'COMMON.NAMES'
26 include 'COMMON.SBRIDGE'
28 include 'COMMON.SETUP'
30 character*1 onelett(4) /"G","A","P","D"/
32 dimension blower(3,3,maxlob)
34 character*3 lancuch,ucase
36 C For printing parameters after they are read set the following in the UNRES
39 C setenv PRINT_PARM YES
41 C To print parameters in LaTeX format rather than as ASCII tables:
45 call getenv_loc("PRINT_PARM",lancuch)
46 lprint = (ucase(lancuch).eq."YES" .or. ucase(lancuch).eq."Y")
47 call getenv_loc("LATEX",lancuch)
48 LaTeX = (ucase(lancuch).eq."YES" .or. ucase(lancuch).eq."Y")
50 dwa16=2.0d0**(1.0d0/6.0d0)
52 C Assign virtual-bond length
57 c Read the virtual-bond parameters, masses, and moments of inertia
58 c and Stokes' radii of the peptide group and side chains
61 read (ibond,*) vbldp0,akp,mp,ip,pstok
64 read (ibond,*) vbldsc0(1,i),aksc(1,i),msc(i),isc(i),restok(i)
69 dsc_inv(i)=1.0D0/dsc(i)
73 read (ibond,*) junk,vbldp0,akp,rjunk,mp,ip,pstok
75 read (ibond,*) nbondterm(i),(vbldsc0(j,i),aksc(j,i),abond0(j,i),
76 & j=1,nbondterm(i)),msc(i),isc(i),restok(i)
81 dsc_inv(i)=1.0D0/dsc(i)
86 write(iout,'(/a/)')"Dynamic constants of the interaction sites:"
87 write (iout,'(a10,a3,6a10)') 'Type','N','VBL','K','A0','mass',
89 write(iout,'(a10,i3,6f10.5)') "p",1,vbldp0,akp,0.0d0,mp,ip,pstok
91 write (iout,'(a10,i3,6f10.5)') restyp(i),nbondterm(i),
92 & vbldsc0(1,i),aksc(1,i),abond0(1,i),msc(i),isc(i),restok(i)
94 write (iout,'(13x,3f10.5)')
95 & vbldsc0(j,i),aksc(j,i),abond0(j,i)
101 C Read the parameters of the probability distribution/energy expression
102 C of the virtual-bond valence angles theta
105 read (ithep,*,err=111,end=111) a0thet(i),(athet(j,i),j=1,2),
107 read (ithep,*,err=111,end=111) (polthet(j,i),j=0,3)
108 read (ithep,*,err=111,end=111) (gthet(j,i),j=1,3)
109 read (ithep,*,err=111,end=111) theta0(i),sig0(i),sigc0(i)
116 & 'Parameters of the virtual-bond valence angles:'
117 write (iout,'(/a/9x,5a/79(1h-))') 'Fourier coefficients:',
118 & ' ATHETA0 ',' A1 ',' A2 ',
121 write(iout,'(a3,i4,2x,5(1pe14.5))') restyp(i),i,
122 & a0thet(i),(athet(j,i),j=1,2),(bthet(j,i),j=1,2)
124 write (iout,'(/a/9x,5a/79(1h-))')
125 & 'Parameters of the expression for sigma(theta_c):',
126 & ' ALPH0 ',' ALPH1 ',' ALPH2 ',
127 & ' ALPH3 ',' SIGMA0C '
129 write (iout,'(a3,i4,2x,5(1pe14.5))') restyp(i),i,
130 & (polthet(j,i),j=0,3),sigc0(i)
132 write (iout,'(/a/9x,5a/79(1h-))')
133 & 'Parameters of the second gaussian:',
134 & ' THETA0 ',' SIGMA0 ',' G1 ',
137 write (iout,'(a3,i4,2x,5(1pe14.5))') restyp(i),i,theta0(i),
138 & sig0(i),(gthet(j,i),j=1,3)
142 & 'Parameters of the virtual-bond valence angles:'
143 write (iout,'(/a/9x,5a/79(1h-))')
144 & 'Coefficients of expansion',
145 & ' theta0 ',' a1*10^2 ',' a2*10^2 ',
146 & ' b1*10^1 ',' b2*10^1 '
148 write(iout,'(a3,1h&,2x,5(f8.3,1h&))') restyp(i),
149 & a0thet(i),(100*athet(j,i),j=1,2),(10*bthet(j,i),j=1,2)
151 write (iout,'(/a/9x,5a/79(1h-))')
152 & 'Parameters of the expression for sigma(theta_c):',
153 & ' alpha0 ',' alph1 ',' alph2 ',
154 & ' alhp3 ',' sigma0c '
156 write (iout,'(a3,1h&,2x,5(1pe12.3,1h&))') restyp(i),
157 & (polthet(j,i),j=0,3),sigc0(i)
159 write (iout,'(/a/9x,5a/79(1h-))')
160 & 'Parameters of the second gaussian:',
161 & ' theta0 ',' sigma0*10^2 ',' G1*10^-1',
164 write (iout,'(a3,1h&,2x,5(f8.3,1h&))') restyp(i),theta0(i),
165 & 100*sig0(i),gthet(1,i)*0.1D0,gthet(2,i),gthet(3,i)*10.0D0
171 C Read the parameters of Utheta determined from ab initio surfaces
172 C Kozlowska et al., J. Phys.: Condens. Matter 19 (2007) 285203
174 read (ithep,*,err=111,end=111) nthetyp,ntheterm,ntheterm2,
175 & ntheterm3,nsingle,ndouble
176 nntheterm=max0(ntheterm,ntheterm2,ntheterm3)
177 read (ithep,*,err=111,end=111) (ithetyp(i),i=1,ntyp1)
183 aathet(l,i,j,k)=0.0d0
187 bbthet(m,l,i,j,k)=0.0d0
188 ccthet(m,l,i,j,k)=0.0d0
189 ddthet(m,l,i,j,k)=0.0d0
190 eethet(m,l,i,j,k)=0.0d0
196 ffthet(mm,m,l,i,j,k)=0.0d0
197 ggthet(mm,m,l,i,j,k)=0.0d0
207 read (ithep,'(3a)',end=111,err=111) res1,res2,res3
208 read (ithep,*,end=111,err=111) aa0thet(i,j,k)
209 read (ithep,*,end=111,err=111)(aathet(l,i,j,k),l=1,ntheterm)
210 read (ithep,*,end=111,err=111)
211 & ((bbthet(lll,ll,i,j,k),lll=1,nsingle),
212 & (ccthet(lll,ll,i,j,k),lll=1,nsingle),
213 & (ddthet(lll,ll,i,j,k),lll=1,nsingle),
214 & (eethet(lll,ll,i,j,k),lll=1,nsingle),ll=1,ntheterm2)
215 read (ithep,*,end=111,err=111)
216 & (((ffthet(llll,lll,ll,i,j,k),ffthet(lll,llll,ll,i,j,k),
217 & ggthet(llll,lll,ll,i,j,k),ggthet(lll,llll,ll,i,j,k),
218 & llll=1,lll-1),lll=2,ndouble),ll=1,ntheterm3)
223 C For dummy ends assign glycine-type coefficients of theta-only terms; the
224 C coefficients of theta-and-gamma-dependent terms are zero.
229 aathet(l,i,j,nthetyp+1)=aathet(l,i,j,1)
230 aathet(l,nthetyp+1,i,j)=aathet(l,1,i,j)
232 aa0thet(i,j,nthetyp+1)=aa0thet(i,j,1)
233 aa0thet(nthetyp+1,i,j)=aa0thet(1,i,j)
236 aathet(l,nthetyp+1,i,nthetyp+1)=aathet(l,1,i,1)
238 aa0thet(nthetyp+1,i,nthetyp+1)=aa0thet(1,i,1)
241 C Control printout of the coefficients of virtual-bond-angle potentials
244 write (iout,'(//a)') 'Parameter of virtual-bond-angle potential'
248 write (iout,'(//4a)')
249 & 'Type ',onelett(i),onelett(j),onelett(k)
250 write (iout,'(//a,10x,a)') " l","a[l]"
251 write (iout,'(i2,1pe15.5)') 0,aa0thet(i,j,k)
252 write (iout,'(i2,1pe15.5)')
253 & (l,aathet(l,i,j,k),l=1,ntheterm)
255 write (iout,'(//2h m,4(9x,a,3h[m,,i1,1h]))')
256 & "b",l,"c",l,"d",l,"e",l
258 write (iout,'(i2,4(1pe15.5))') m,
259 & bbthet(m,l,i,j,k),ccthet(m,l,i,j,k),
260 & ddthet(m,l,i,j,k),eethet(m,l,i,j,k)
264 write (iout,'(//3hm,n,4(6x,a,5h[m,n,,i1,1h]))')
265 & "f+",l,"f-",l,"g+",l,"g-",l
268 write (iout,'(i1,1x,i1,4(1pe15.5))') n,m,
269 & ffthet(n,m,l,i,j,k),ffthet(m,n,l,i,j,k),
270 & ggthet(n,m,l,i,j,k),ggthet(m,n,l,i,j,k)
283 C Read the parameters of the probability distribution/energy expression
284 C of the side chains.
287 read (irotam,'(3x,i3,f8.3)',end=112,err=112) nlob(i),dsc(i)
291 dsc_inv(i)=1.0D0/dsc(i)
302 read(irotam,*,end=112,err=112)(censc(k,1,i),k=1,3),
303 & ((blower(k,l,1),l=1,k),k=1,3)
305 read (irotam,*,end=112,err=112) bsc(j,i)
306 read (irotam,*,end=112,err=112) (censc(k,j,i),k=1,3),
307 & ((blower(k,l,j),l=1,k),k=1,3)
314 akl=akl+blower(k,m,j)*blower(l,m,j)
325 write (iout,'(/a)') 'Parameters of side-chain local geometry'
330 write (iout,'(/3a,i2,a,f8.3)') 'Residue type: ',restyp(i),
331 & ' # of gaussian lobes:',nlobi,' dsc:',dsc(i)
332 write (iout,'(1h&,a,3(2h&&,f8.3,2h&&))')
333 & 'log h',(bsc(j,i),j=1,nlobi)
334 write (iout,'(1h&,a,3(1h&,f8.3,1h&,f8.3,1h&,f8.3,1h&))')
335 & 'x',((censc(k,j,i),k=1,3),j=1,nlobi)
337 write (iout,'(2h& ,5(2x,1h&,3(f7.3,1h&)))')
338 & ((gaussc(k,l,j,i),l=1,3),j=1,nlobi)
341 write (iout,'(/a,8x,i1,4(25x,i1))') 'Lobe:',(j,j=1,nlobi)
342 write (iout,'(a,f10.4,4(16x,f10.4))')
343 & 'Center ',(bsc(j,i),j=1,nlobi)
344 write (iout,'(5(2x,3f8.4))') ((censc(k,j,i),k=1,3),
353 C Read scrot parameters for potentials determined from all-atom AM1 calculations
354 C added by Urszula Kozlowska 07/11/2007
357 read (irotam,*,end=112,err=112)
359 read (irotam,*,end=112,err=112)
362 read(irotam,*,end=112,err=112) sc_parmin(j,i)
371 C Read torsional parameters in old format
373 read (itorp,*,end=113,err=113) ntortyp,nterm_old
374 if (lprint)write (iout,*) 'ntortyp,nterm',ntortyp,nterm_old
375 read (itorp,*,end=113,err=113) (itortyp(i),i=1,ntyp)
380 read (itorp,*,end=113,err=113) kk,v1(k,j,i),v2(k,j,i)
386 write (iout,'(/a/)') 'Torsional constants:'
389 write (iout,'(2i3,6f10.5)') i,j,(v1(k,i,j),k=1,nterm_old)
390 write (iout,'(6x,6f10.5)') (v2(k,i,j),k=1,nterm_old)
396 C Read torsional parameters
398 read (itorp,*,end=113,err=113) ntortyp
399 read (itorp,*,end=113,err=113) (itortyp(i),i=1,ntyp)
400 c write (iout,*) 'ntortyp',ntortyp
403 read (itorp,*,end=113,err=113) nterm(i,j),nlor(i,j)
407 read (itorp,*,end=113,err=113) kk,v1(k,i,j),v2(k,i,j)
408 v0ij=v0ij+si*v1(k,i,j)
412 read (itorp,*,end=113,err=113) kk,vlor1(k,i,j),
413 & vlor2(k,i,j),vlor3(k,i,j)
414 v0ij=v0ij+vlor1(k,i,j)/(1+vlor3(k,i,j)**2)
421 write (iout,'(/a/)') 'Torsional constants:'
424 write (iout,*) 'ityp',i,' jtyp',j
425 write (iout,*) 'Fourier constants'
427 write (iout,'(2(1pe15.5))') v1(k,i,j),v2(k,i,j)
429 write (iout,*) 'Lorenz constants'
431 write (iout,'(3(1pe15.5))')
432 & vlor1(k,i,j),vlor2(k,i,j),vlor3(k,i,j)
438 C 6/23/01 Read parameters for double torsionals
443 read (itordp,'(3a1)',end=114,err=114) t1,t2,t3
444 if (t1.ne.onelett(i) .or. t2.ne.onelett(j)
445 & .or. t3.ne.onelett(k)) then
446 write (iout,*) "Error in double torsional parameter file",
449 call MPI_Finalize(Ierror)
451 stop "Error in double torsional parameter file"
453 read (itordp,*,end=114,err=114) ntermd_1(i,j,k),
455 read (itordp,*,end=114,err=114) (v1c(1,l,i,j,k),l=1,
457 read (itordp,*,end=114,err=114) (v1s(1,l,i,j,k),l=1,
459 read (itordp,*,end=114,err=114) (v1c(2,l,i,j,k),l=1,
461 read (itordp,*,end=114,err=114) (v1s(2,l,i,j,k),l=1,
463 read (itordp,*,end=114,err=114) ((v2c(l,m,i,j,k),
464 & v2c(m,l,i,j,k),v2s(l,m,i,j,k),v2s(m,l,i,j,k),
465 & m=1,l-1),l=1,ntermd_2(i,j,k))
471 write (iout,*) 'Constants for double torsionals'
475 write (iout,*) 'ityp',i,' jtyp',j,' ktyp',k,
476 & ' nsingle',ntermd_1(i,j,k),' ndouble',ntermd_2(i,j,k)
478 write (iout,*) 'Single angles:'
479 do l=1,ntermd_1(i,j,k)
480 write (iout,'(i5,2f10.5,5x,2f10.5)') l,
481 & v1c(1,l,i,j,k),v1s(1,l,i,j,k),
482 & v1c(2,l,i,j,k),v1s(2,l,i,j,k)
485 write (iout,*) 'Pairs of angles:'
486 write (iout,'(3x,20i10)') (l,l=1,ntermd_2(i,j,k))
487 do l=1,ntermd_2(i,j,k)
488 write (iout,'(i5,20f10.5)')
489 & l,(v2c(l,m,i,j,k),m=1,ntermd_2(i,j,k))
492 write (iout,'(3x,20i10)') (l,l=1,ntermd_2(i,j,k))
493 do l=1,ntermd_2(i,j,k)
494 write (iout,'(i5,20f10.5)')
495 & l,(v2s(l,m,i,j,k),m=1,ntermd_2(i,j,k))
504 C 5/21/07 (AL) Read coefficients of the backbone-local sidechain-local
505 C correlation energies.
507 read (isccor,*,end=119,err=119) nterm_sccor
512 read (isccor,*,end=119,err=119) kk,v1sccor(k,i,j),
519 write (iout,'(/a/)') 'Torsional constants of SCCORR:'
522 write (iout,*) 'ityp',i,' jtyp',j
524 write (iout,'(2(1pe15.5))') v1sccor(k,i,j),v2sccor(k,i,j)
530 C 9/18/99 (AL) Read coefficients of the Fourier expansion of the local
531 C interaction energy of the Gly, Ala, and Pro prototypes.
535 write (iout,*) "Coefficients of the cumulants"
537 read (ifourier,*) nloctyp
539 read (ifourier,*,end=115,err=115)
540 read (ifourier,*,end=115,err=115) (b(ii),ii=1,13)
542 write (iout,*) 'Type',i
543 write (iout,'(a,i2,a,f10.5)') ('b(',ii,')=',b(ii),ii=1,13)
569 c Ctilde(1,1,i)=0.0d0
570 c Ctilde(1,2,i)=0.0d0
571 c Ctilde(2,1,i)=0.0d0
572 c Ctilde(2,2,i)=0.0d0
585 c Dtilde(1,1,i)=0.0d0
586 c Dtilde(1,2,i)=0.0d0
587 c Dtilde(2,1,i)=0.0d0
588 c Dtilde(2,2,i)=0.0d0
589 EE(1,1,i)= b(10)+b(11)
590 EE(2,2,i)=-b(10)+b(11)
591 EE(2,1,i)= b(12)-b(13)
592 EE(1,2,i)= b(12)+b(13)
597 c ee(2,1,i)=ee(1,2,i)
601 write (iout,*) 'Type',i
603 write(iout,*) B1(1,i),B1(2,i)
605 write(iout,*) B2(1,i),B2(2,i)
608 write (iout,'(2f10.5)') CC(j,1,i),CC(j,2,i)
612 write (iout,'(2f10.5)') DD(j,1,i),DD(j,2,i)
616 write (iout,'(2f10.5)') EE(j,1,i),EE(j,2,i)
621 C Read electrostatic-interaction parameters
625 write (iout,'(/a)') 'Electrostatic interaction constants:'
626 write (iout,'(1x,a,1x,a,10x,a,11x,a,11x,a,11x,a)')
627 & 'IT','JT','APP','BPP','AEL6','AEL3'
629 read (ielep,*,end=116,err=116) ((epp(i,j),j=1,2),i=1,2)
630 read (ielep,*,end=116,err=116) ((rpp(i,j),j=1,2),i=1,2)
631 read (ielep,*,end=116,err=116) ((elpp6(i,j),j=1,2),i=1,2)
632 read (ielep,*,end=116,err=116) ((elpp3(i,j),j=1,2),i=1,2)
637 app (i,j)=epp(i,j)*rri*rri
638 bpp (i,j)=-2.0D0*epp(i,j)*rri
639 ael6(i,j)=elpp6(i,j)*4.2D0**6
640 ael3(i,j)=elpp3(i,j)*4.2D0**3
641 if (lprint) write(iout,'(2i3,4(1pe15.4))')i,j,app(i,j),bpp(i,j),
642 & ael6(i,j),ael3(i,j)
646 C Read side-chain interaction parameters.
648 read (isidep,*,end=117,err=117) ipot,expon
649 if (ipot.lt.1 .or. ipot.gt.5) then
650 write (iout,'(2a)') 'Error while reading SC interaction',
651 & 'potential file - unknown potential type.'
653 call MPI_Finalize(Ierror)
659 & write(iout,'(/3a,2i3)') 'Potential is ',potname(ipot),
660 & ', exponents are ',expon,2*expon
661 goto (10,20,30,30,40) ipot
662 C----------------------- LJ potential ---------------------------------
663 10 read (isidep,*,end=116,err=116)((eps(i,j),j=i,ntyp),i=1,ntyp),
664 & (sigma0(i),i=1,ntyp)
666 write (iout,'(/a/)') 'Parameters of the LJ potential:'
667 write (iout,'(a/)') 'The epsilon array:'
668 call printmat(ntyp,ntyp,ntyp,iout,restyp,eps)
669 write (iout,'(/a)') 'One-body parameters:'
670 write (iout,'(a,4x,a)') 'residue','sigma'
671 write (iout,'(a3,6x,f10.5)') (restyp(i),sigma0(i),i=1,ntyp)
674 C----------------------- LJK potential --------------------------------
675 20 read (isidep,*,end=116,err=116)((eps(i,j),j=i,ntyp),i=1,ntyp),
676 & (sigma0(i),i=1,ntyp),(rr0(i),i=1,ntyp)
678 write (iout,'(/a/)') 'Parameters of the LJK potential:'
679 write (iout,'(a/)') 'The epsilon array:'
680 call printmat(ntyp,ntyp,ntyp,iout,restyp,eps)
681 write (iout,'(/a)') 'One-body parameters:'
682 write (iout,'(a,4x,2a)') 'residue',' sigma ',' r0 '
683 write (iout,'(a3,6x,2f10.5)') (restyp(i),sigma0(i),rr0(i),
687 C---------------------- GB or BP potential -----------------------------
688 30 read (isidep,*,end=116,err=116)((eps(i,j),j=i,ntyp),i=1,ntyp),
689 & (sigma0(i),i=1,ntyp),(sigii(i),i=1,ntyp),(chip(i),i=1,ntyp),
691 C For the GB potential convert sigma'**2 into chi'
694 chip(i)=(chip(i)-1.0D0)/(chip(i)+1.0D0)
698 write (iout,'(/a/)') 'Parameters of the BP potential:'
699 write (iout,'(a/)') 'The epsilon array:'
700 call printmat(ntyp,ntyp,ntyp,iout,restyp,eps)
701 write (iout,'(/a)') 'One-body parameters:'
702 write (iout,'(a,4x,4a)') 'residue',' sigma ','s||/s_|_^2',
704 write (iout,'(a3,6x,4f10.5)') (restyp(i),sigma0(i),sigii(i),
705 & chip(i),alp(i),i=1,ntyp)
708 C--------------------- GBV potential -----------------------------------
709 40 read (isidep,*,end=116,err=116)((eps(i,j),j=i,ntyp),i=1,ntyp),
710 & (sigma0(i),i=1,ntyp),(rr0(i),i=1,ntyp),(sigii(i),i=1,ntyp),
711 & (chip(i),i=1,ntyp),(alp(i),i=1,ntyp)
713 write (iout,'(/a/)') 'Parameters of the GBV 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,5a)') 'residue',' sigma ',' r0 ',
718 & 's||/s_|_^2',' chip ',' alph '
719 write (iout,'(a3,6x,5f10.5)') (restyp(i),sigma0(i),rr0(i),
720 & sigii(i),chip(i),alp(i),i=1,ntyp)
724 C-----------------------------------------------------------------------
725 C Calculate the "working" parameters of SC interactions.
733 sigma(i,j)=dsqrt(sigma0(i)**2+sigma0(j)**2)
734 sigma(j,i)=sigma(i,j)
735 rs0(i,j)=dwa16*sigma(i,j)
739 if (lprint) write (iout,'(/a/10x,7a/72(1h-))')
740 & 'Working parameters of the SC interactions:',
741 & ' a ',' b ',' augm ',' sigma ',' r0 ',
746 if (ipot.eq.1 .or. ipot.eq.3 .or. ipot.eq.4) then
755 sigeps=dsign(1.0D0,epsij)
757 aa(i,j)=epsij*rrij*rrij
758 bb(i,j)=-sigeps*epsij*rrij
766 ratsig1=sigt2sq/sigt1sq
767 ratsig2=1.0D0/ratsig1
768 chi(i,j)=(sigii1-1.0D0)/(sigii1+ratsig1)
769 if (j.gt.i) chi(j,i)=(sigii2-1.0D0)/(sigii2+ratsig2)
770 rsum_max=dsqrt(sigii1*sigt1sq+sigii2*sigt2sq)
774 c if (ipot.eq.1 .or. ipot.eq.3 .or. ipot.eq.4) then
775 sigmaii(i,j)=rsum_max
776 sigmaii(j,i)=rsum_max
778 c sigmaii(i,j)=r0(i,j)
779 c sigmaii(j,i)=r0(i,j)
781 cd write (iout,*) i,j,r0(i,j),sigma(i,j),rsum_max
782 if ((ipot.eq.2 .or. ipot.eq.5) .and. r0(i,j).gt.rsum_max) then
783 r_augm=sigma(i,j)*(rrij-sigma(i,j))/rrij
784 augm(i,j)=epsij*r_augm**(2*expon)
785 c augm(i,j)=0.5D0**(2*expon)*aa(i,j)
792 write (iout,'(2(a3,2x),3(1pe10.3),5(0pf8.3))')
793 & restyp(i),restyp(j),aa(i,j),bb(i,j),augm(i,j),
794 & sigma(i,j),r0(i,j),chi(i,j),chi(j,i)
800 C Define the SC-p interaction constants (hard-coded; old style)
803 C "Soft" SC-p repulsion (causes helices to be too flat, but facilitates
805 c aad(i,1)=0.3D0*4.0D0**12
806 C Following line for constants currently implemented
807 C "Hard" SC-p repulsion (gives correct turn spacing in helices)
808 aad(i,1)=1.5D0*4.0D0**12
809 c aad(i,1)=0.17D0*5.6D0**12
811 C "Soft" SC-p repulsion
813 C Following line for constants currently implemented
814 c aad(i,1)=0.3D0*4.0D0**6
815 C "Hard" SC-p repulsion
816 bad(i,1)=3.0D0*4.0D0**6
817 c bad(i,1)=-2.0D0*0.17D0*5.6D0**6
826 C 8/9/01 Read the SC-p interaction constants from file
829 read (iscpp,*,end=118,err=118) (eps_scp(i,j),rscp(i,j),j=1,2)
832 aad(i,1)=dabs(eps_scp(i,1))*rscp(i,1)**12
833 aad(i,2)=dabs(eps_scp(i,2))*rscp(i,2)**12
834 bad(i,1)=-2*eps_scp(i,1)*rscp(i,1)**6
835 bad(i,2)=-2*eps_scp(i,2)*rscp(i,2)**6
839 write (iout,*) "Parameters of SC-p interactions:"
841 write (iout,'(4f8.3,4e12.4)') eps_scp(i,1),rscp(i,1),
842 & eps_scp(i,2),rscp(i,2),aad(i,1),bad(i,1),aad(i,2),bad(i,2)
847 C Define the constants of the disulfide bridge
851 c Old arbitrary potential - commented out.
856 c Constants of the disulfide-bond potential determined based on the RHF/6-31G**
857 c energy surface of diethyl disulfide.
858 c A. Liwo and U. Kozlowska, 11/24/03
875 write (iout,'(/a)') "Disulfide bridge parameters:"
876 write (iout,'(a,f10.2)') 'S-S bridge energy: ',ebr
877 write (iout,'(2(a,f10.2))') 'd0cm:',d0cm,' akcm:',akcm
878 write (iout,'(2(a,f10.2))') 'akth:',akth,' akct:',akct
879 write (iout,'(3(a,f10.2))') 'v1ss:',v1ss,' v2ss:',v2ss,
883 111 write (iout,*) "Error reading bending energy parameters."
885 112 write (iout,*) "Error reading rotamer energy parameters."
887 113 write (iout,*) "Error reading torsional energy parameters."
889 114 write (iout,*) "Error reading double torsional energy parameters."
892 & "Error reading cumulant (multibody energy) parameters."
894 116 write (iout,*) "Error reading electrostatic energy parameters."
896 117 write (iout,*) "Error reading side chain interaction parameters."
898 118 write (iout,*) "Error reading SCp interaction parameters."
900 119 write (iout,*) "Error reading SCCOR parameters"
903 call MPI_Finalize(Ierror)
910 subroutine getenv_loc(var, val)
911 character(*) var, val
917 open (196,file='env',status='old',readonly,shared)
919 c write(*,*)'looking for ',var
920 10 read(196,*,err=11,end=11)line
921 iread=index(line,var)
922 c write(*,*)iread,' ',var,' ',line
923 if (iread.eq.0) go to 10
924 c write(*,*)'---> ',line
930 iread=iread+ilen(var)+1
931 read (line(iread:),*,err=12,end=12) val
932 c write(*,*)'OK: ',var,' = ',val
939 integer lennam,lenval,ierror
941 c getenv using a POSIX call, useful on the T3D
942 c Sept 1996, comment out error check on advice of H. Pritchard
945 if(lennam.le.0) stop '--error calling getenv--'
946 call pxfgetenv(var,lennam,val,lenval,ierror)
947 c-HP- if(ierror.ne.0) stop '--error returned by pxfgetenv--'