integer i,j,ind
double precision zapas(MAXRES6),muca_factor
- logical lprn /.true./
+ logical lprn /.false./
integer itime
common /cipiszcze/ itime
#ifdef FIVEDIAG
d_a=0.0d0
if (lprn) then
write (iout,*) "Potential forces backbone"
- do i=nnt,nct
+ do i=1,nres
write (iout,'(i5,3e15.5,5x,3e15.5)')i,(-gcart(j,i),j=1,3)
enddo
write (iout,*) "Potential forces sidechain"
d_a(:,0)=d_a(:,1)
d_a(:,1)=0.0d0
endif
+#define CHUJ
+#ifdef CHUJ
do ichain=2,nchain
c write (iout,*) "ichain",chain_border1(1,ichain)-1,
c & chain_border1(1,ichain)
& d_a(:,chain_border1(1,ichain)-1)+d_a(:,chain_border(2,ichain-1))
d_a(:,chain_border(2,ichain-1))=0.0d0
enddo
+#endif
#else
inct_prev=0
do j=1,3
d_a(j,inct_prev)=d_a(j,innt)-aaux(j)
enddo
inct_prev=inct+1
-#ifdef DEBUG
- do i=innt,inct
- if (itype(i).eq.10 .or. itype(i).eq.ntyp1) then
- do j=1,3
- d_a(j,i)=d_a(j,i+1)-d_a(j,i)
- enddo
- else
- do j=1,3
- d_a(j,i+nres)=d_a(j,i+nres)-d_a(j,i)
- d_a(j,i)=d_a(j,i+1)-d_a(j,i)
- enddo
- end if
- enddo
-#else
do i=innt,inct
if (itype(i).ne.10) then
do j=1,3
d_a(j,i)=d_a(j,i+1)-d_a(j,i)
enddo
enddo
-#endif
enddo
#endif
if (lprn) then
write(iout,*) 'acceleration 3D FIVEDIAG in dC and dX'
- do i=0,nct-1
+ do i=0,nres
write (iout,'(i3,3f10.5,3x,3f10.5)') i,(d_a(j,i),j=1,3)
enddo
do i=nnt,nct
write (iout,'(i3,3f10.5,3x,3f10.5)')
- & i+nres,(d_a(j,i+nres),j=1,3)
+ & i,(d_a(j,i+nres),j=1,3)
enddo
endif
#else
include 'COMMON.IOUNITS'
include 'COMMON.LAGRANGE.5diag'
include 'COMMON.INTERACT'
+ include 'COMMON.VAR'
integer ndim
double precision forces(3*ndim),accel(3,0:maxres2),rs(ndim),
& xsolv(ndim),d_a_vec(6*nres)
integer i,j,ind,ichain,n,iposc,innt,inct,inct_prev
+ accel=0.0d0
do j=1,3
Compute accelerations in Calpha and SC
do ichain=1,nchain
innt=chain_border(1,ichain)
inct=chain_border(2,ichain)
do i=iposc,iposc+n-1
- rs(i)=forces(3*(i-1)+j)
+ rs(i-iposc+1)=forces(3*(i-1)+j)
enddo
+#ifdef DEBUG
+ write (iout,*) "j",j," chain",ichain
+ write (iout,*) "rs"
+ write (iout,'(f10.5)') (rs(i),i=1,n)
+#endif
call FDISYS (n,DM(iposc),DU1(iposc),DU2(iposc),rs,xsolv)
+#ifdef DEBUG
+ write (iout,*) "xsolv"
+ write (iout,'(f10.5)') (xsolv(i),i=1,n)
+#endif
ind=1
do i=innt,inct
if (itype(i).eq.10)then
enddo
enddo
enddo
-C Conevert d_a to virtual-bon-vector basis
+C Convert d_a to virtual-bon-vector basis
#ifdef DEBUG
write (iout,*) "accel in CA-SC basis"
do i=1,nres
end if
enddo
accel(:,nres)=0.0d0
+ accel(:,nct)=0.0d0
accel(:,2*nres)=0.0d0
if (nnt.gt.1) then
accel(:,0)=accel(:,1)
enddo
#ifdef DEBUG
write (iout,*) "d_a_vec"
- write (iout,'(3f10.5)') (d_a_vec(j),j=1,dimen3)
+ write (iout,'(3f10.5)') (d_a_vec(j),j=1,3*(nct-nnt+nside))
#endif
return
end