projects
/
unres.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'prerelease-3.2.1'
[unres.git]
/
source
/
wham
/
src
/
energy_p_new.F
diff --git
a/source/wham/src/energy_p_new.F
b/source/wham/src/energy_p_new.F
index
13fe796
..
652749c
100644
(file)
--- a/
source/wham/src/energy_p_new.F
+++ b/
source/wham/src/energy_p_new.F
@@
-3437,6
+3437,8
@@
C
etheta=0.0D0
c write (iout,*) "ithetyp",(ithetyp(i),i=1,ntyp1)
do i=ithet_start,ithet_end
etheta=0.0D0
c write (iout,*) "ithetyp",(ithetyp(i),i=1,ntyp1)
do i=ithet_start,ithet_end
+ if ((itype(i-1).eq.ntyp1).or.(itype(i-2).eq.ntyp1).or.
+ &(itype(i).eq.ntyp1)) cycle
dethetai=0.0d0
dephii=0.0d0
dephii1=0.0d0
dethetai=0.0d0
dephii=0.0d0
dephii1=0.0d0
@@
-3446,7
+3448,7
@@
c write (iout,*) "ithetyp",(ithetyp(i),i=1,ntyp1)
coskt(k)=dcos(k*theti2)
sinkt(k)=dsin(k*theti2)
enddo
coskt(k)=dcos(k*theti2)
sinkt(k)=dsin(k*theti2)
enddo
- if (i.gt.3) then
+ if (i.gt.3 .and. itype(max0(i-3,1)).ne.ntyp1) then
#ifdef OSF
phii=phi(i)
if (phii.ne.phii) phii=150.0
#ifdef OSF
phii=phi(i)
if (phii.ne.phii) phii=150.0
@@
-3460,13
+3462,13
@@
c write (iout,*) "ithetyp",(ithetyp(i),i=1,ntyp1)
enddo
else
phii=0.0d0
enddo
else
phii=0.0d0
- ityp1=nthetyp+1
+ ityp1=ithetyp(itype(i-2))
do k=1,nsingle
cosph1(k)=0.0d0
sinph1(k)=0.0d0
enddo
endif
do k=1,nsingle
cosph1(k)=0.0d0
sinph1(k)=0.0d0
enddo
endif
- if (i.lt.nres) then
+ if (i.lt.nres .and. itype(i+1).ne.ntyp1) then
#ifdef OSF
phii1=phi(i+1)
if (phii1.ne.phii1) phii1=150.0
#ifdef OSF
phii1=phi(i+1)
if (phii1.ne.phii1) phii1=150.0
@@
-3481,7
+3483,7
@@
c write (iout,*) "ithetyp",(ithetyp(i),i=1,ntyp1)
enddo
else
phii1=0.0d0
enddo
else
phii1=0.0d0
- ityp3=nthetyp+1
+ ityp3=ithetyp(itype(i))
do k=1,nsingle
cosph2(k)=0.0d0
sinph2(k)=0.0d0
do k=1,nsingle
cosph2(k)=0.0d0
sinph2(k)=0.0d0
@@
-4568,6
+4570,8
@@
c write (iout,*) "EBACK_SC_COR",itau_start,itau_end,nterm_sccor
esccor=0.0D0
do i=itau_start,itau_end
esccor_ii=0.0D0
esccor=0.0D0
do i=itau_start,itau_end
esccor_ii=0.0D0
+
+ if ((itype(i-2).eq.ntyp1).or.(itype(i-1).eq.ntyp1)) cycle
isccori=isccortyp(itype(i-2))
isccori1=isccortyp(itype(i-1))
phii=phi(i)
isccori=isccortyp(itype(i-2))
isccori1=isccortyp(itype(i-1))
phii=phi(i)
@@
-4601,6
+4605,9
@@
c 3 = SC...Ca...Ca...SCi
cosphi=dcos(j*tauangle(intertyp,i))
sinphi=dsin(j*tauangle(intertyp,i))
esccor=esccor+v1ij*cosphi+v2ij*sinphi
cosphi=dcos(j*tauangle(intertyp,i))
sinphi=dsin(j*tauangle(intertyp,i))
esccor=esccor+v1ij*cosphi+v2ij*sinphi
+#ifdef DEBUG
+ esccor_ii=esccor_ii+v1ij*cosphi+v2ij*sinphi
+#endif
gloci=gloci+j*(v2ij*cosphi-v1ij*sinphi)
enddo
gloc_sc(intertyp,i-3,icg)=gloc_sc(intertyp,i-3,icg)+wsccor*gloci
gloci=gloci+j*(v2ij*cosphi-v1ij*sinphi)
enddo
gloc_sc(intertyp,i-3,icg)=gloc_sc(intertyp,i-3,icg)+wsccor*gloci