double precision etot,evdw,evdw_t,evdw2,ees,evdw1,ebe,etors,
& escloc,ehpb,ecorr,ecorr5,ecorr6,eello_turn4,eello_turn3,
& eturn6,eel_loc,edihcnstr,etors_d,estr,evdw2_14,esccor,
- & ehomology_constr
+ & ehomology_constr,esaxs
integer ind_point(maxpoint),upindE,indE
do iparm=1,nParmSet
#ifdef DEBUG
write (iout,'(2i5,21f8.2)') i,iparm,
- & (enetb(k,i,iparm),k=1,22)
+ & (enetb(k,i,iparm),k=1,26)
#endif
call restore_parm(iparm)
#ifdef DEBUG
write (iout,*) wsc,wscp,welec,wvdwpp,wang,wtor,wscloc,
& wcorr,wcorr5,wcorr6,wturn4,wturn3,wturn6,wel_loc,
- & wtor_d,wsccor,wbond
+ & wtor_d,wsccor,wbond,wsaxs
#endif
do ib=1,nT_h(iparm)
if (rescale_mode.eq.1) then
esccor=enetb(19,i,iparm)
edihcnstr=enetb(20,i,iparm)
ehomology_constr=enetb(22,i,iparm)
+ esaxs=enetb(26,i,iparm)
#ifdef DEBUG
write (iout,'(3i5,6f5.2,14f12.3)') i,ib,iparm,(ft(l),l=1,6),
& evdw+evdw_t,evdw2,ees,evdw1,ecorr,eel_loc,estr,ebe,escloc,
- & etors,etors_d,eello_turn3,eello_turn4,esccor
+ & etors,etors_d,eello_turn3,eello_turn4,esccor,esaxs
#endif
#ifdef SPLITELE
& +ft(2)*wturn3*eello_turn3
& +ft(5)*wturn6*eturn6+ft(2)*wel_loc*eel_loc
& +edihcnstr+ft(2)*wtor_d*etors_d+ft(1)*wsccor*esccor
- & +wbond*estr
+ & +wbond*estr+wsaxs*esaxs
#else
etot=wsc*(evdw+ft(6)*evdw_t)+wscp*evdw2
& +ft(1)*welec*(ees+evdw1)
& +ft(2)*wturn3*eello_turn3
& +ft(5)*wturn6*eturn6+ft(2)*wel_loc*eel_loc+edihcnstr
& +ft(2)*wtor_d*etors_d+ft(1)*wsccor*esccor
- & +wbond*estr
+ & +wbond*estr+wsaxs*esaxs
#endif
#ifdef DEBUG
write (iout,*) i,iparm,1.0d0/(beta_h(ib,iparm)*1.987D-3),
do iparm=1,nParmSet
#ifdef DEBUG
write (iout,'(2i5,21f8.2)') i,iparm,
- & (enetb(k,i,iparm),k=1,22)
+ & (enetb(k,i,iparm),k=1,26)
#endif
call restore_parm(iparm)
#ifdef DEBUG
write (iout,*) wsc,wscp,welec,wvdwpp,wang,wtor,wscloc,
& wcorr,wcorr5,wcorr6,wturn4,wturn3,wturn6,wel_loc,
- & wtor_d,wsccor,wbond
+ & wtor_d,wsccor,wbond,wsaxs
#endif
do ib=1,nT_h(iparm)
if (rescale_mode.eq.1) then
esccor=enetb(19,i,iparm)
edihcnstr=enetb(20,i,iparm)
ehomology_constr=enetb(22,i,iparm)
+ esaxs=enetb(26,i,iparm)
#ifdef SPLITELE
etot=wsc*(evdw+ft(6)*evdw_t)+wscp*evdw2+ft(1)*welec*ees
& +wvdwpp*evdw1
& +ft(2)*wturn3*eello_turn3
& +ft(5)*wturn6*eturn6+ft(2)*wel_loc*eel_loc
& +edihcnstr+ft(2)*wtor_d*etors_d+ft(1)*wsccor*esccor
- & +wbond*estr+ehomology_constr
+ & +wbond*estr+ehomology_constr+wsaxs*esaxs
#else
etot=wsc*(evdw+ft(6)*evdw_t)+wscp*evdw2
& +ft(1)*welec*(ees+evdw1)
& +ft(2)*wturn3*eello_turn3
& +ft(5)*wturn6*eturn6+ft(2)*wel_loc*eel_loc+edihcnstr
& +ft(2)*wtor_d*etors_d+ft(1)*wsccor*esccor
- & +wbond*estr+ehomology_constr
+ & +wbond*estr+ehomology_constr+wsaxs*esaxs
#endif
etot=etot-entfac(i)/beta_h(ib,iparm)
esccor=enetb(19,t,iparm)
edihcnstr=enetb(20,t,iparm)
ehomology_constr=enetb(22,t,iparm)
+ esaxs=enetb(26,t,iparm)
if (homol_nset.gt.1)
& ehomology_constr=waga_homology(ihset)*ehomology_constr
do k=0,nGridT
& +ft(2)*wturn3*eello_turn3
& +ft(5)*wturn6*eturn6+ft(2)*wel_loc*eel_loc
& +edihcnstr+ft(2)*wtor_d*etors_d+ft(1)*wsccor*esccor
- & +wbond*estr+ehomology_constr
+ & +wbond*estr+ehomology_constr+wsaxs*esaxs
eprim=ftprim(6)*evdw_t+ftprim(1)*welec*ees
& +ftprim(1)*wtor*etors+
& ftprim(3)*wcorr*ecorr+ftprim(4)*wcorr5*ecorr5+
& +ft(2)*wturn3*eello_turn3
& +ft(5)*wturn6*eturn6+ft(2)*wel_loc*eel_loc+edihcnstr
& +ft(2)*wtor_d*etors_d+ft(1)*wsccor*esccor
- & +wbond*estr+ehomology_constr
+ & +wbond*estr+ehomology_constr+wsaxs*esaxs
eprim=ftprim(6)*evdw_t+ftprim(1)*welec*(ees+evdw1)
& +ftprim(1)*wtor*etors+
& ftprim(3)*wcorr*ecorr+ftprim(4)*wcorr5*ecorr5+
write (iout,*)
write (34,'(f7.1,2f15.5,$)') startGridT+i*delta_T,
& sumW(i,iparm),sumE(i,iparm)
- write (34,'(f10.5,$)') (sumQ(j,i,iparm),j=1,nQ+2)
- write (34,'(e15.5,$)') sumEsq(i,iparm)-sumEbis(i,iparm),
- & (sumQsq(j,i,iparm),j=1,nQ+2),(sumEQ(j,i,iparm),j=1,nQ+2)
+ do j=1,nQ+2
+ write (34,'(f10.5,$)') sumQ(j,i,iparm)
+ enddo
+ write (34,'(e15.5,$)') sumEsq(i,iparm)-sumEbis(i,iparm)
+ do j=1,nQ+2
+ write (34,'(e15.5,$)') sumQsq(j,i,iparm)
+ enddo
+ do j=1,nQ+2
+ write (34,'(e15.5,$)') sumEQ(j,i,iparm)
+ enddo
write (34,*)
call flush(34)
enddo