Page 397 - Handbook Of Multiphase Flow Assurance
P. 397
396 10. Research methods in flow assurance
Chbsq = (Xh*Xah + Yh*Yah + Zh*Zah)**2/(Rhsq*Rahsq)
IF (Chbsq . LT. Casqof) goto 30
C calculate Ehb from the LJ 12-10 potential,angle coefficient,and spline if any
Rsqred = Rhb(ndon)*Rhb(ndon)/Rsq
Ehb = Dhb(ndon)*Rsqred**5*(5.D0*Rsqred -6.D0)*Chbsq*Swtchr
IF(Ehb.ne.0.D0) nhbpoly=nhbpoly+1
ENDIF
ENDIF
ENDIF
30 Ener = Ener + Ecou + Elj + Ehb
C end loops over segment atoms, assign temporary interaction value for the pair
end do
end do
Ep(i,ii) = Ener
35 end do
end do
C ended loops over moved/unmoved segments
C calculate total polymer intramolecular energy
Ener=0.D0
do 50 i=1,nbackbone-2
do 50 j=i+2,nbackbone
50 Ener=Ener+Ep(i,j)
return
end
C
C-------------------------------------------------------------------
C
SUBROUTINE HBOND(Xi,Yi,Rsq,Iw,J,Ehb)
IMPLICIT REAL*8(A-H,O-Z)
COMMON /LJPAM / DD(6,1000), RR(6,1000), DHB(1000), RHB(1000)
COMMON /NWPOS / xn(1000), yn(1000), zn(1000)
COMMON /POTPAM/ Casqof,Co,Rsqon,Rsqoff,Rcut,Pi,Tk,Temp
COMMON /WPOS / xw(6000,3), yw(6000,3), zw(6000,3),qw(3)
C
C ... check if within switching distance
Swtchr = 1.D0
IF (Rsq .GT. Rsqon) CALL SWITCH(Rsqon,Rsqoff,Rsq,Swtchr)
C set hydrogen bond donor parameters
Xa = xn(J)
Ya = yn(J)
Za = zn(J)
RRhb = RHB(J)
DDhb = DHB(J)
C

