C Check the gradient of Cartesian coordinates in internal coordinates.
implicit real*8 (a-h,o-z)
include 'DIMENSIONS'
+ include 'COMMON.CONTROL'
include 'COMMON.IOUNITS'
include 'COMMON.VAR'
include 'COMMON.CHAIN'
* Check the gradient of the virtual-bond and SC vectors in the internal
* coordinates.
*
- aincr=1.0d-7
- aincr2=5.0d-8
+ print '("Calling CHECK_ECART",1pd12.3)',aincr
+ write (iout,'("Calling CHECK_ECART",1pd12.3)') aincr
+ aincr2=0.5d0*aincr
call cartder
write (iout,'(a)') '**************** dx/dalpha'
write (iout,'(a)')
C Check the gradient of the energy in Cartesian coordinates.
implicit real*8 (a-h,o-z)
include 'DIMENSIONS'
+ include 'COMMON.CONTROL'
include 'COMMON.CHAIN'
include 'COMMON.DERIV'
include 'COMMON.IOUNITS'
nf=0
nfl=0
call zerograd
- aincr=1.0D-7
- print '(a)','CG processor',me,' calling CHECK_CART.'
+ print '("Calling CHECK_ECART",1pd12.3)',aincr
+ write (iout,'("Calling CHECK_ECART",1pd12.3)') aincr
nf=0
icall=0
call geom_to_var(nvar,x)
icg=1
nf=0
nfl=0
+ print *,"ATU 3"
call intout
c call intcartderiv
c call checkintcartgrad
call zerograd
- aincr=1.0D-5
- write(iout,*) 'Calling CHECK_ECARTINT.'
+c aincr=8.0D-7
+c aincr=1.0D-7
+ print '("Calling CHECK_ECARTINT",1pd12.3)',aincr
+ write (iout,'("Calling CHECK_ECARTINT",1pd12.3)') aincr
nf=0
icall=0
call geom_to_var(nvar,x)
write (iout,*) "exit cartgrad"
call flush(iout)
icall =1
+ write (iout,*) "gcard and gxcart"
do i=1,nres
- write (iout,'(i5,3f10.5)') i,(gradxorr(j,i),j=1,3)
+ write (iout,'(i5,3f10.5,5x,3f10.5)') i,(gcart(j,i),j=1,3),
+ & (gxcart(j,i),j=1,3)
enddo
do j=1,3
grad_s(j,0)=gcart(j,0)
endif
write (iout,'(/a/)') 'Gradient in virtual-bond and SC vectors'
do i=0,nres
+ print *,i
do j=1,3
xx(j)=c(j,i+nres)
ddc(j)=dc(j,i)
#else
do i=2,nres
#endif
+C print *,i
dnorm1=dist(i-1,i)
- dnorm2=dist(i,i+1)
+ dnorm2=dist(i,i+1)
+C print *,i,dnorm1,dnorm2
do j=1,3
c(j,maxres2)=0.5D0*(2*c(j,i)+(c(j,i-1)-c(j,i))/dnorm1
& +(c(j,i+1)-c(j,i))/dnorm2)
endif
endif
omeg(i)=beta(nres+i,i,maxres2,i+1)
+C print *,omeg(i)
alph(i)=alpha(nres+i,i,maxres2)
+C print *,alph(i)
theta(i+1)=alpha(i-1,i,i+1)
vbld(i)=dist(i-1,i)
+C print *,vbld(i)
vbld_inv(i)=1.0d0/vbld(i)
vbld(nres+i)=dist(nres+i,i)
+C print *,vbld(i+nres)
+
if (itype(i).ne.10) then
vbld_inv(nres+i)=1.0d0/vbld(nres+i)
else
C Check the gradient of energy in internal coordinates.
implicit real*8 (a-h,o-z)
include 'DIMENSIONS'
+ include 'COMMON.CONTROL'
include 'COMMON.CHAIN'
include 'COMMON.DERIV'
include 'COMMON.IOUNITS'
character*6 key
external fdum
call zerograd
- aincr=1.0D-7
- print '(a)','Calling CHECK_INT.'
+c aincr=1.0D-7
+ print '("Calling CHECK_INT",1pd12.3)',aincr
+ write (iout,'("Calling CHECK_INT",1pd12.3)') aincr
nf=0
nfl=0
icg=1
xi=x(i)
x(i)=xi-0.5D0*aincr
call var_to_geom(nvar,x)
- call chainbuild
+ call chainbuild_extconf
call etotal(energia1(0))
etot1=energia1(0)
x(i)=xi+0.5D0*aincr
call var_to_geom(nvar,x)
- call chainbuild
+ call chainbuild_extconf
call etotal(energia2(0))
etot2=energia2(0)
gg(i)=(etot2-etot1)/aincr