AFMlog=(index(controlcard,'AFM'))
selfguide=(index(controlcard,'SELFGUIDE'))
print *,'AFMlog',AFMlog,selfguide,"KUPA"
+ call readi(controlcard,'TUBEMOD',tubelog,0)
+ write (iout,*) TUBElog,"TUBEMODE"
+ call readi(controlcard,'GENCONSTR',genconstr,0)
+C write (iout,*) TUBElog,"TUBEMODE"
call readi(controlcard,'IPRINT',iprint,0)
C SHIELD keyword sets if the shielding effect of side-chains is used
C 0 denots no shielding is used all peptide are equally despite the
else
icheckgrad=3
endif
+ call reada(controlcard,'DELTA',aincr,1.0d-7)
elseif (index(controlcard,'THREAD').gt.0) then
modecalc=2
call readi(controlcard,'THREAD',nthread,0)
write(iout,*) "bufliptop=",bufliptop
write(iout,*) "buflipbot=",buflipbot
write (iout,*) "SHIELD MODE",shield_mode
+ if (TUBElog.gt.0) then
+ call reada(controlcard,"XTUBE",tubecenter(1),0.0d0)
+ call reada(controlcard,"YTUBE",tubecenter(2),0.0d0)
+ call reada(controlcard,"RTUBE",tubeR0,0.0d0)
+ call reada(controlcard,"TUBETOP",bordtubetop,boxzsize)
+ call reada(controlcard,"TUBEBOT",bordtubebot,0.0d0)
+ call reada(controlcard,"TUBEBUF",tubebufthick,1.0d0)
+ buftubebot=bordtubebot+tubebufthick
+ buftubetop=bordtubetop-tubebufthick
+ endif
if (shield_mode.gt.0) then
pi=3.141592d0
C VSolvSphere the volume of solving sphere
call reada(weightcard,'TEMP0',temp0,300.0d0)
call reada(weightcard,'WSHIELD',wshield,1.0d0)
call reada(weightcard,'WLT',wliptran,0.0D0)
+ call reada(weightcard,'WTUBE',wtube,1.0D0)
if (index(weightcard,'SOFT').gt.0) ipot=6
C 12/1/95 Added weight for the multi-body term WCORR
call reada(weightcard,'WCORRH',wcorr,1.0D0)
call reada(weightcard,"BTRISS",btriss,0.021D0)
call reada(weightcard,"CTRISS",ctriss,1.001D0)
call reada(weightcard,"DTRISS",dtriss,1.001D0)
+ call reada(weightcard,"LIPSCALE",lipscale,1.3D0)
write (iout,*) "ATRISS=", atriss
write (iout,*) "BTRISS=", btriss
write (iout,*) "CTRISS=", ctriss
write (iout,*) "DTRISS=", dtriss
+ if (shield_mode.gt.0) then
+ lipscale=0.0d0
+ write (iout,*) "liscale not used in shield mode"
+ endif
+ write (iout,*) "lipid scaling factor", lipscale
dyn_ss=(index(weightcard,'DYN_SS').gt.0)
do i=1,maxres
dyn_ss_mask(i)=.false.
if (dyn_ss) then
ss_depth=ebr/wsc-0.25*eps(1,1)
Ht=Ht/wsc-0.25*eps(1,1)
- akcm=akcm*wstrain/wsc
- akth=akth*wstrain/wsc
- akct=akct*wstrain/wsc
- v1ss=v1ss*wstrain/wsc
- v2ss=v2ss*wstrain/wsc
- v3ss=v3ss*wstrain/wsc
+ akcm=akcm/wsc
+ akth=akth/wsc
+ akct=akct/wsc
+ v1ss=v1ss/wsc
+ v2ss=v2ss/wsc
+ v3ss=v3ss/wsc
else
if (wstrain.ne.0.0) then
ss_depth=ebr/wstrain-0.25*eps(1,1)*wsc/wstrain
cd write (2,*) 'gen_dist_constr: nnt=',nnt,' nct=',nct,
cd & ' nstart_sup',nstart_sup,' nstart_seq',nstart_seq,
cd & ' nsup',nsup
+ if (constr_dist.eq.11) then
+ do i=nstart_sup,nstart_sup+nsup-1
+ do j=i+2,nstart_sup+nsup-1
+ distance=dist(i,j)
+ if (distance.le.15.0) then
+ nhpb=nhpb+1
+ ihpb(nhpb)=i+nstart_seq-nstart_sup
+ jhpb(nhpb)=j+nstart_seq-nstart_sup
+ forcon(nhpb)=sqrt(0.04*distance)
+ fordepth(nhpb)=sqrt(40.0/distance)
+ dhpb(nhpb)=distance-0.1d0
+ dhpb1(nhpb)=distance+0.1d0
+
+#ifdef MPI
+ if (.not.out1file .or. me.eq.king)
+ & write (iout,'(a,3i5,f8.2,f10.2)') "+dist.constr ",
+ & nhpb,ihpb(nhpb),jhpb(nhpb),dhpb(nhpb),forcon(nhpb)
+#else
+ write (iout,'(a,3i5,f8.2,f10.2)') "+dist.constr ",
+ & nhpb,ihpb(nhpb),jhpb(nhpb),dhpb(nhpb),forcon(nhpb)
+#endif
+ endif
+ enddo
+ enddo
+ else
do i=nstart_sup,nstart_sup+nsup-1
cd write (2,*) 'i',i,' seq ',restyp(itype(i+nstart_seq-nstart_sup)),
cd & ' seq_pdb', restyp(itype_pdb(i))
forcon(nhpb)=weidis
dhpb(nhpb)=dist(i,j)
enddo
- enddo
+ enddo
+ endif
cd write (iout,'(a)') 'Distance constraints:'
cd do i=nss+1,nhpb
cd ii=ihpb(i)
open (irotam_pdb,file=rotname_pdb,status='old',action='read')
#endif
#endif
+ call getenv_loc('TUBEPAR',tubename)
+ open (itube,file=tubename,status='old',readonly)
#ifndef OLDSCP
C
C 8/9/01 In the newest version SCp interaction constants are read from a file
write (iout,*) "Calling read_dist_constr"
c write (iout,*) "nres",nres," nstart_sup",nstart_sup," nsup",nsup
c call flush(iout)
+ if ((genconstr.gt.0).and.(constr_dist.eq.11)) then
+ call gen_dist_constr
+ go to 1712
+ endif
call card_concat(controlcard)
call readi(controlcard,"NFRAG",nfrag_,0)
call readi(controlcard,"NPAIR",npair_,0)
#endif
enddo
+ 1712 continue
call flush(iout)
return
end