nint_gr(i)=1
istart(i,1)=i+1
iend(i,1)=nct
- ind_scint=int_scint+nct-i
+ ind_scint=ind_scint+nct-i
#endif
endif
#ifdef MPL
integer i,j,k,l,m,n,len,lev,idum,ii,ind,ioffset,jj,icut,ncon,
& it,ncon_work,ind1
double precision t1,t2,tcpu,difconf
+ real diss_(maxdist)
double precision varia(maxvar)
double precision hrtime,mintime,sectime
if (ind.ge.indstart(me) .and. ind.le.indend(me)) then
#endif
ind1=ind1+1
+#ifdef MPI
+ DISS_(IND1)=DIFCONF(I,J)
+#else
DISS(IND1)=DIFCONF(I,J)
+#endif
c write (iout,'(2i4,i10,f10.5)') i,j,ind,DISS(IND)
#ifdef MPI
endif
PRINT '(a)','End of distance computation'
#ifdef MPI
- call MPI_Gatherv(diss(1),scount(me),MPI_REAL,diss(1),
+ call MPI_Gatherv(diss_(1),scount(me),MPI_REAL,diss(1),
& scount(0),idispl(0),MPI_REAL,Master,MPI_COMM_WORLD, IERROR)
if (me.eq.master) then
#endif
close (isccor)
if (lprint) then
write (iout,'(/a/)') 'Torsional constants of SCCORR:'
+ do l=1,maxinter
do i=1,nsccortyp
do j=1,nsccortyp
write (iout,*) 'ityp',i,' jtyp',j
enddo
enddo
enddo
+ enddo
endif
C
C 9/18/99 (AL) Read coefficients of the Fourier expansion of the local
character*5 ctemper
integer ilen
external ilen
- real*4 Fdimless(maxconf)
+ real*4 Fdimless(maxconf),Fdimless_(maxconf)
double precision energia(0:max_ene)
+ double precision totfree_(maxconf),entfac_(maxconf)
do i=1,ncon
list_conf(i)=i
enddo
write (iout,*) "evdw1", wvdwpp,evdw1
write (iout,*) "ebe" ebe,wang
#endif
+#ifdef MPI
+ Fdimless_(i)=beta_h(ib)*etot+entfac(ii)
+ totfree_(i)=etot
+#else
Fdimless(i)=beta_h(ib)*etot+entfac(ii)
totfree(i)=etot
+#endif
#ifdef DEBUG
write (iout,*) "fdim calc", i,ii,ib,
& 1.0d0/(1.987d-3*beta_h(ib)),totfree(i),
#endif
enddo ! i
#ifdef MPI
- call MPI_Gatherv(Fdimless(1),scount(me),
+ call MPI_Gatherv(Fdimless_(1),scount(me),
& MPI_REAL,Fdimless(1),
& scount(0),idispl(0),MPI_REAL,Master,
& MPI_COMM_WORLD, IERROR)
- call MPI_Gatherv(totfree(1),scount(me),
+ call MPI_Gatherv(totfree_(1),scount(me),
& MPI_DOUBLE_PRECISION,totfree(1),
& scount(0),idispl(0),MPI_DOUBLE_PRECISION,Master,
& MPI_COMM_WORLD, IERROR)
call MPI_Gatherv(entfac(indstart(me)+1),scount(me),
- & MPI_DOUBLE_PRECISION,entfac(1),
+ & MPI_DOUBLE_PRECISION,entfac_(1),
& scount(0),idispl(0),MPI_DOUBLE_PRECISION,Master,
& MPI_COMM_WORLD, IERROR)
if (me.eq.Master) then
+ do i=1,ncon
+ entfac(i)=entfac_(i)
+ enddo
#endif
#ifdef DEBUG
write (iout,*) "The FDIMLESS array before sorting"
nint_gr(i)=1
istart(i,1)=i+1
iend(i,1)=nct
- ind_scint=int_scint+nct-i
+ ind_scint=ind_scint+nct-i
#endif
endif
#ifdef MPL
integer i,j,k,l,m,n,len,lev,idum,ii,ind,ioffset,jj,icut,ncon,
& it,ncon_work,ind1,ilen
double precision t1,t2,tcpu,difconf
+ real diss_(maxdist)
double precision varia(maxvar)
double precision hrtime,mintime,sectime
if (ind.ge.indstart(me) .and. ind.le.indend(me)) then
#endif
ind1=ind1+1
+#ifdef MPI
+ DISS_(IND1)=DIFCONF(I,J)
+#else
DISS(IND1)=DIFCONF(I,J)
+#endif
c write (iout,'(2i4,i10,f10.5)') i,j,ind,DISS(IND)
#ifdef MPI
endif
PRINT '(a)','End of distance computation'
#ifdef MPI
- call MPI_Gatherv(diss(1),scount(me),MPI_REAL,diss(1),
+ call MPI_Gatherv(diss_(1),scount(me),MPI_REAL,diss(1),
& scount(0),idispl(0),MPI_REAL,Master,MPI_COMM_WORLD, IERROR)
if (me.eq.master) then
#endif
if (lprint) then
write (iout,'(/a/)') 'Torsional constants:'
+ do l=1,maxinter
do i=1,nsccortyp
do j=1,nsccortyp
write (iout,*) 'ityp',i,' jtyp',j
enddo
enddo
enddo
+ enddo
endif
C
character*5 ctemper
integer ilen
external ilen
- real*4 Fdimless(maxconf)
+ real*4 Fdimless(maxconf),Fdimless_(maxconf)
double precision energia(0:max_ene)
+ double precision totfree_(maxconf),entfac_(maxconf)
do i=1,ncon
list_conf(i)=i
enddo
call int_from_cart1(.false.)
call etotal(energia(0),fT)
totfree(i)=energia(0)
-c#define DEBUG
+#define DEBUG
#ifdef DEBUG
write (iout,*) i," energia",(energia(j),j=0,20)
call enerprint(energia(0),ft)
call flush(iout)
#endif
-c#undef DEBUG
+#undef DEBUG
do k=1,max_ene
enetb(k,i)=energia(k)
enddo
& +ft(2)*wtor_d*etors_d+ft(1)*wsccor*esccor
& +wbond*estr
#endif
+#ifdef MPI
+ Fdimless_(i)=beta_h(ib)*etot+entfac(ii)
+ totfree_(i)=etot
+#else
Fdimless(i)=beta_h(ib)*etot+entfac(ii)
totfree(i)=etot
+#endif
#ifdef DEBUG
write (iout,*) "etrop", i,ii,ib,
#endif
enddo ! i
#ifdef MPI
- call MPI_Gatherv(Fdimless(1),scount(me),
+ call MPI_Gatherv(Fdimless_(1),scount(me),
& MPI_REAL,Fdimless(1),
& scount(0),idispl(0),MPI_REAL,Master,
& MPI_COMM_WORLD, IERROR)
- call MPI_Gatherv(totfree(1),scount(me),
+ call MPI_Gatherv(totfree_(1),scount(me),
& MPI_DOUBLE_PRECISION,totfree(1),
& scount(0),idispl(0),MPI_DOUBLE_PRECISION,Master,
& MPI_COMM_WORLD, IERROR)
call MPI_Gatherv(entfac(indstart(me)+1),scount(me),
- & MPI_DOUBLE_PRECISION,entfac(1),
+ & MPI_DOUBLE_PRECISION,entfac_(1),
& scount(0),idispl(0),MPI_DOUBLE_PRECISION,Master,
& MPI_COMM_WORLD, IERROR)
if (me.eq.Master) then
+ do i=1,ncon
+ entfac(i)=entfac_(i)
+ enddo
#endif
c#define DEBUG
#ifdef DEBUG
double precision fT(6),quot,quotl,kfacl,kfac /2.4d0/,T0 /3.0d2/
double precision tt
integer snk_p(MaxR,MaxT_h,Max_parm)
+ integer scount_(MaxProcs)
logical lerr
character*64 bprotfile_temp
call opentmp(islice,ientout,bprotfile_temp)
121 continue
enddo
#ifdef MPI
- scount(me)=iii
+ scount_(me)=iii
write (iout,*) "Me",me," scount",scount(me)
call flush(iout)
c Master gathers updated numbers of conformations written by all procs.
- call MPI_AllGather( scount(me), 1, MPI_INTEGER, scount(0), 1,
+ call MPI_AllGather( scount_(me), 1, MPI_INTEGER, scount(0), 1,
& MPI_INTEGER, WHAM_COMM, IERROR)
indstart(0)=1
indend(0)=scount(0)
character*5 ctemper
integer ilen
external ilen
- real*4 Fdimless(MaxStr)
+ real*4 Fdimless(MaxStr),Fdimless_(MaxStr)
double precision enepot(MaxStr)
integer iperm(MaxStr)
integer islice
& +wbond*estr
#endif
#ifdef MPI
- Fdimless(i)=
+ Fdimless_(i)=
& beta_h(ib,iparm)*etot-entfac(i)
potE(i,iparm)=etot
#ifdef DEBUG
#endif
enddo ! i
#ifdef MPI
- call MPI_Gatherv(Fdimless(1),scount(me),
+ call MPI_Gatherv(Fdimless_(1),scount(me),
& MPI_REAL,Fdimless(1),
& scount(0),idispl(0),MPI_REAL,Master,
& WHAM_COMM, IERROR)
double precision fT(6),quot,quotl,kfacl,kfac /2.4d0/,T0 /3.0d2/
double precision tt
integer snk_p(MaxR,MaxT_h,Max_parm)
+ integer scount_(0:MaxProcs)
logical lerr
character*64 bprotfile_temp
call opentmp(islice,ientout,bprotfile_temp)
121 continue
enddo
#ifdef MPI
- scount(me)=iii
+c scount(me)=iii
+ scount_(me)=iii
write (iout,*) "Me",me," scount",scount(me)
call flush(iout)
c Master gathers updated numbers of conformations written by all procs.
- call MPI_AllGather( scount(me), 1, MPI_INTEGER, scount(0), 1,
+ call MPI_AllGather( scount_(me), 1, MPI_INTEGER, scount(0), 1,
& MPI_INTEGER, WHAM_COMM, IERROR)
indstart(0)=1
indend(0)=scount(0)
character*5 ctemper
integer ilen
external ilen
- real*4 Fdimless(MaxStr)
+ real*4 Fdimless(MaxStr),Fdimless_(MaxStr)
double precision enepot(MaxStr)
integer iperm(MaxStr)
integer islice
& +wbond*estr
#endif
#ifdef MPI
- Fdimless(i)=
+ Fdimless_(i)=
& beta_h(ib,iparm)*etot-entfac(i)
potE(i,iparm)=etot
#ifdef DEBUG
#endif
enddo ! i
#ifdef MPI
- call MPI_Gatherv(Fdimless(1),scount(me),
+ call MPI_Gatherv(Fdimless_(1),scount(me),
& MPI_REAL,Fdimless(1),
& scount(0),idispl(0),MPI_REAL,Master,
& WHAM_COMM, IERROR)