1L2Y
-SEED=-3059743 PDBREF MINIMIZE
+SEED=-3059743 PDBREF ENE
maxmin=1000
WLONG=1.35279 WSCP=1.59304 WELEC=0.71534 WBOND=1.00000 WANG=1.13873 &
WSCLOC=0.16258 WTOR=1.98599 WTORD=1.57069 WCORRH=0.42887 WCORR5=0.00000 &
#!/bin/sh
#PBS -N PGA
#PBS -q dque
-#PBS -l nodes=58:ppn=2
+#PBS -l nodes=1:ppn=1
#PBS -l walltime=24:00:00
#-----------------------------------------------------------------------------
export POT=GB
C Virtual-bond lenghts
double precision vbl,vblinv,vblinv2,vbl_cis,vbl0,vbld_inv
integer loc_start,loc_end,ithet_start,ithet_end,iphi_start,
- & iphi_end,iphid_start,iphid_end,ibond_start,ibond_end,
+ & iphi_end,iphid_start,iphid_end,itau_start,itau_end,ibond_start,
+ & ibond_end,
& ibondp_start,ibondp_end,ivec_start,ivec_end,iset_start,iset_end,
& iturn3_start,iturn3_end,iturn4_start,iturn4_end,iint_start,
& iint_end,iphi1_start,iphi1_end,
& iint_count(0:max_fg_procs-1),iint_displ(0:max_fg_procs-1)
common /peptbond/ vbl,vblinv,vblinv2,vbl_cis,vbl0
common /indices/ loc_start,loc_end,ithet_start,ithet_end,
- & iphi_start,iphi_end,iphid_start,iphid_end,ibond_start,ibond_end,
+ & iphi_start,iphi_end,iphid_start,iphid_end,itau_start,itau_end,
+ & ibond_start,ibond_end,
& ibondp_start,ibondp_end,ivec_start,ivec_end,iset_start,iset_end,
& iturn3_start,iturn3_end,iturn4_start,iturn4_end,iint_start,
& iint_end,iphi1_start,iphi1_end,iint_count,iint_displ,ivec_displ,
cored.o rmdd.o geomout.o readpdb.o regularize.o thread.o fitsq.o mcm.o \
mc.o bond_move.o refsys.o check_sc_distr.o check_bond.o contact.o djacob.o \
eigen.o blas.o add.o entmcm.o minim_mcmf.o \
- MP.o compare_s1.o prng_32.o \
+ MP.o compare_s1.o prng.o \
banach.o rmsd.o elecont.o dihed_cons.o \
sc_move.o local_move.o \
intcartderiv.o lagrangian_lesyng.o\
C DO NOT EDIT THIS FILE - IT HAS BEEN GENERATED BY COMPINFO.C
-C 2 5 274
+C 2 5 295
subroutine cinfo
include 'COMMON.IOUNITS'
write(iout,*)'++++ Compile info ++++'
- write(iout,*)'Version 2.5 build 274'
- write(iout,*)'compiled Fri Jun 15 02:51:50 2012'
+ write(iout,*)'Version 2.5 build 295'
+ write(iout,*)'compiled Mon Jun 18 05:08:20 2012'
write(iout,*)'compiled by aks255@matrix.chem.cornell.edu'
write(iout,*)'OS name: Linux '
write(iout,*)'OS release: 2.6.34.9-69.fc13.x86_64 '
include 'mpif.h'
#endif
double precision gradbufc(3,maxres),gradbufx(3,maxres),
- & glocbuf(4*maxres),gradbufc_sum(3,maxres)
+ & glocbuf(4*maxres),gradbufc_sum(3,maxres),gloc_scbuf(3,maxres)
include 'COMMON.SETUP'
include 'COMMON.IOUNITS'
include 'COMMON.FFIELD'
do i=1,4*nres
glocbuf(i)=gloc(i,icg)
enddo
+#define DEBUG
+#ifdef DEBUG
+ write (iout,*) "gloc_sc before reduce"
+ do i=1,nres
+ do j=1,3
+ write (iout,*) i,j,gloc_sc(j,i,icg)
+ enddo
+ enddo
+#endif
+#undef DEBUG
+ do i=1,nres
+ do j=1,3
+ gloc_scbuf(j,i)=gloc_sc(j,i,icg)
+ enddo
+ enddo
time00=MPI_Wtime()
call MPI_Barrier(FG_COMM,IERR)
time_barrier_g=time_barrier_g+MPI_Wtime()-time00
& MPI_DOUBLE_PRECISION,MPI_SUM,king,FG_COMM,IERR)
call MPI_Reduce(glocbuf(1),gloc(1,icg),4*nres,
& MPI_DOUBLE_PRECISION,MPI_SUM,king,FG_COMM,IERR)
+ call MPI_Reduce(gloc_scbuf(1,1),gloc_sc(1,1,icg),3*nres,
+ & MPI_DOUBLE_PRECISION,MPI_SUM,king,FG_COMM,IERR)
time_reduce=time_reduce+MPI_Wtime()-time00
+#define DEBUG
+#ifdef DEBUG
+ write (iout,*) "gloc_sc after reduce"
+ do i=1,nres
+ do j=1,3
+ write (iout,*) i,j,gloc_sc(j,i,icg)
+ enddo
+ enddo
+#endif
+#undef DEBUG
#ifdef DEBUG
write (iout,*) "gloc after reduce"
do i=1,4*nres
c lprn=.true.
c write (iout,*) "EBACK_SC_COR",iphi_start,iphi_end,nterm_sccor
esccor=0.0D0
- do i=iphi_start-1,iphi_end+1
+ do i=itau_start,itau_end
esccor_ii=0.0D0
isccori=isccortyp(itype(i-2))
isccori1=isccortyp(itype(i-1))
& .or.(itype(i-2).eq.21)))
& .or.((intertyp.eq.2).and.((itype(i-1).eq.10).or.
& (itype(i-1).eq.21)))) cycle
- if ((intertyp.eq.2).and.(i.le.iphi_start-1)) cycle
- if ((intertyp.eq.1).and.(i.ge.iphi_end+1)) cycle
+ if ((intertyp.eq.2).and.(i.eq.4).and.(itype(1).eq.21)) cycle
+ if ((intertyp.eq.1).and.(i.eq.nres).and.(itype(nres).eq.21))
+ & cycle
do j=1,nterm_sccor(isccori,isccori1)
v1ij=v1sccor(j,intertyp,isccori,isccori1)
v2ij=v2sccor(j,intertyp,isccori,isccori1)
gloci=gloci+j*(v2ij*cosphi-v1ij*sinphi)
enddo
gloc_sc(intertyp,i-3,icg)=gloc_sc(intertyp,i-3,icg)+wsccor*gloci
-c write (iout,*) "WTF",intertyp,i,itype(i),
+c write (iout,*) "WTF",intertyp,i,itype(i),v1ij*cosphi+v2ij*sinphi
c &gloc_sc(intertyp,i-3,icg)
if (lprn)
& write (iout,'(2(a3,2x,i3,2x),2i3,6f8.3/26x,6f8.3/)')
iphi_end=iturn3_end+2
iturn3_start=iturn3_start-1
iturn3_end=iturn3_end-1
+ call int_bounds(nres-3,itau_start,itau_end)
+ itau_start=itau_start+3
+ itau_end=itau_end+3
call int_bounds(nres-3,iphi1_start,iphi1_end)
iphi1_start=iphi1_start+3
iphi1_end=iphi1_end+3
idihconstr_end=ndih_constr
iphid_start=iphi_start
iphid_end=iphi_end-1
+ itau_start=4
+ itau_end=nres
ibond_start=2
ibond_end=nres-1
ibondp_start=nnt+1
endif
if ((itype(3).ne.10).and.(nres.ge.3)) then
gcart(j,2)=gcart(j,2)+gloc_sc(2,1,icg)*dtauangle(j,2,2,4)
- write(iout,*) gloc_sc(2,1,icg),dtauangle(j,2,2,4)
+c write(iout,*) gloc_sc(2,1,icg),dtauangle(j,2,2,4)
endif
if ((itype(4).ne.10).and.(nres.ge.4)) then
gcart(j,2)=gcart(j,2)+gloc_sc(2,2,icg)*dtauangle(j,2,1,5)
if ((itype(nres-1).ne.10).and.(itype(nres-1).ne.21)) then
gxcart(j,nres-1)=gxcart(j,nres-1)+gloc_sc(2,nres-3,icg)
& *dtauangle(j,2,3,nres)
- write (iout,*) "gxcart(nres-1)", gloc_sc(2,nres-3,icg),
- & dtauangle(j,2,3,nres), gxcart(j,nres-1)
+c write (iout,*) "gxcart(nres-1)", gloc_sc(2,nres-3,icg),
+c & dtauangle(j,2,3,nres), gxcart(j,nres-1)
if (itype(nres-2).ne.10) then
gxcart(j,nres-1)=gxcart(j,nres-1)+gloc_sc(3,nres-3,icg)
& *dtauangle(j,3,3,nres)
if ((itype(nres).ne.10).and.(itype(nres).ne.21)) then
gcart(j,nres-1)=gcart(j,nres-1)+gloc_sc(2,nres-2,icg)*
& dtauangle(j,2,2,nres+1)
- write (iout,*) "gcart(nres-1)", gloc_sc(2,nres-2,icg),
- & dtauangle(j,2,2,nres+1), itype(nres-1),itype(nres)
+c write (iout,*) "gcart(nres-1)", gloc_sc(2,nres-2,icg),
+c & dtauangle(j,2,2,nres+1), itype(nres-1),itype(nres)
endif
enddo
endif
Calculate derivative of Tauangle
#ifdef PARINTDER
- do i=iphi1_start-1,iphi1_end
+ do i=itau_start,itau_end
#else
do i=3,nres
#endif
enddo
CC Second case Ca...Ca...Ca...SC
#ifdef PARINTDER
- do i=iphi1_start,iphi1_end
+ do i=itau_start,itau_end
#else
do i=4,nres
#endif
& dcosomicron(j,1,2,i)-fac0*(dc_norm(j,i-3)-scalp*
& dc_norm(j,i-1+nres))/vbld(i-1+nres)
dtauangle(j,2,3,i)=-1/sing*dcostau(j,2,3,i)
- write(iout,*) i,j,"else", dtauangle(j,2,3,i)
+c write(iout,*) i,j,"else", dtauangle(j,2,3,i)
enddo
endif
enddo
CCC third case SC...Ca...Ca...SC
#ifdef PARINTDER
- do i=iphi1_start-1,iphi1_end
+ do i=itau_start,itau_end
#else
do i=3,nres
#endif
& dcosomicron(j,1,2,i)-fac0*(dc_norm2(j,i-2+nres)-scalp*
& dc_norm(j,i-1+nres))/vbld(i-1+nres)
dtauangle(j,3,3,i)=-1/sing*dcostau(j,3,3,i)
- write(iout,*) "else",i
+c write(iout,*) "else",i
enddo
endif
enddo
#if defined(MPI) && defined(PARINTDER)
if (nfgtasks.gt.1) then
#ifdef DEBUG
-cd write (iout,*) "Gather dtheta"
+ write (iout,*) "Gather dtheta"
cd call flush(iout)
- write (iout,*) "dtheta before gather"
- do i=1,nres
- write (iout,'(i3,3(3f8.5,3x))') i,((dtheta(j,k,i),k=1,3),j=1,2)
- enddo
+c write (iout,*) "dtheta before gather"
+c do i=1,nres
+c write (iout,'(i3,3(3f8.5,3x))') i,((dtheta(j,k,i),k=1,3),j=1,2)
+c enddo
#endif
call MPI_Gatherv(dtheta(1,1,ithet_start),ithet_count(fg_rank),
& MPI_THET,dtheta(1,1,1),ithet_count(0),ithet_displ(0),MPI_THET,
enddo ! k
enddo ! j
call chainbuild
+ call int_from_cart1(.false.)
if (minim) then
call geom_to_var(nvar,x)
call minimize(etot,x,iretcode,nfun)
#if defined(AIX) || defined(PGI)
if (me.eq.king .or. .not. out1file)
& open(iout,file=outname,status='unknown')
+c#define DEBUG
#ifdef DEBUG
if (fg_rank.gt.0) then
write (liczba,'(i3.3)') myrank/nfgtasks
& status='unknown')
endif
#endif
+c#undef DEBUG
if(me.eq.king) then
open(igeom,file=intname,status='unknown',position='append')
open(ipdb,file=pdbname,status='unknown')
#else
if (me.eq.king .or. .not.out1file)
& open(iout,file=outname,status='unknown')
+c#define DEBUG
#ifdef DEBUG
if (fg_rank.gt.0) then
+ print "Processor",fg_rank," opening output file"
write (liczba,'(i3.3)') myrank/nfgtasks
write (ll,'(bz,i3.3)') fg_rank
open(iout,file="debug"//liczba(:ilen(liczba))//"."//ll,
& status='unknown')
endif
#endif
+c#undef DEBUG
if(me.eq.king) then
open(igeom,file=intname,status='unknown',access='append')
open(ipdb,file=pdbname,status='unknown')