X-Git-Url: http://mmka.chem.univ.gda.pl/gitweb/?a=blobdiff_plain;f=source%2Fwham%2Fsrc-M%2Fenergy_p_new.F;h=a36e177821ebf3f2bdca4c74b1f5d8c1a95eb2e7;hb=30c6fee0e82c040653ab513fdc293b8f63f69acd;hp=81df835380c9043d68e3370dacc837f0a4e9df8f;hpb=1f0aa575ca64693f9abaeb4f25a781f24f609eb5;p=unres.git diff --git a/source/wham/src-M/energy_p_new.F b/source/wham/src-M/energy_p_new.F index 81df835..a36e177 100644 --- a/source/wham/src-M/energy_p_new.F +++ b/source/wham/src-M/energy_p_new.F @@ -286,6 +286,7 @@ C & +wturn3*gshieldx_t3(j,i) & +wturn4*gshieldx_t4(j,i) & +wel_loc*gshieldx_ll(j,i) + & +wtube*gg_tube_SC(j,i) else gradc(j,i,icg)=fact(1)*wsc*gvdwc(j,i) @@ -326,6 +327,7 @@ C & +wturn3*gshieldx_t3(j,i) & +wturn4*gshieldx_t4(j,i) & +wel_loc*gshieldx_ll(j,i) + & +wtube*gg_tube_SC(j,i) endif @@ -356,6 +358,7 @@ C & +wturn4*gshieldc_loc_t4(j,i) & +wel_loc*gshieldc_ll(j,i) & +wel_loc*gshieldc_loc_ll(j,i) + & +wtube*gg_tube(j,i) gradx(j,i,icg)=wsc*gvdwx(j,i)+wscp*gradx_scp(j,i)+ & wbond*gradbx(j,i)+ @@ -394,6 +397,7 @@ C & +wturn4*gshieldc_loc_t4(j,i) & +wel_loc*gshieldc_ll(j,i) & +wel_loc*gshieldc_loc_ll(j,i) + & +wtube*gg_tube(j,i) gradx(j,i,icg)=fact(1)*wsc*gvdwx(j,i)+ & fact(1)*wscp*gradx_scp(j,i)+ @@ -2394,8 +2398,12 @@ C fac_shield(j)=0.6 fac_shield(j)=1.0 eesij=(el1+el2) ees=ees+eesij + &*((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0) + endif evdw1=evdw1+evdwij*sss + &*((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0) + c write (iout,'(a6,2i5,0pf7.3,2i5,2e11.3)') c &'evdw1',i,j,evdwij c &,iteli,itelj,aaa,evdw1 @@ -2410,7 +2418,11 @@ C Calculate contributions to the Cartesian gradient. C #ifdef SPLITELE facvdw=-6*rrmij*(ev1+evdwij)*sss + & *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0) + facel=-3*rrmij*(el1+eesij) + &*((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0) + fac1=fac erij(1)=xj*rmij erij(2)=yj*rmij @@ -2494,8 +2506,13 @@ C ggg(2)=facvdw*yj C ggg(3)=facvdw*zj if (sss.gt.0.0) then ggg(1)=facvdw*xj+sssgrad*rmij*evdwij*xj + & *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0) ggg(2)=facvdw*yj+sssgrad*rmij*evdwij*yj + & *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0) + ggg(3)=facvdw*zj+sssgrad*rmij*evdwij*zj + & *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0) + else ggg(1)=0.0 ggg(2)=0.0 @@ -2506,6 +2523,11 @@ C ggg(3)=facvdw*zj gvdwpp(k,i)=gvdwpp(k,i)+ghalf gvdwpp(k,j)=gvdwpp(k,j)+ghalf enddo + gvdwpp(3,j)=gvdwpp(3,j)+ + & sss*ssgradlipj*evdwij/2.0d0*lipscale**2 + gvdwpp(3,i)=gvdwpp(3,i)+ + & sss*ssgradlipi*evdwij/2.0d0*lipscale**2 + * * Loop over residues i+1 thru j-1. * @@ -2516,6 +2538,8 @@ C ggg(3)=facvdw*zj enddo #else facvdw=(ev1+evdwij)*sss + & *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0) + facel=el1+eesij fac1=fac fac=-3*rrmij*(facvdw+facvdw+facel) @@ -2560,6 +2584,8 @@ cd & (dcosg(k),k=1,3) do k=1,3 ggg(k)=ecosb*dcosb(k)+ecosg*dcosg(k) & *fac_shield(i)**2*fac_shield(j)**2 + & *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0) + enddo do k=1,3 ghalf=0.5D0*ggg(k) @@ -2567,11 +2593,15 @@ cd & (dcosg(k),k=1,3) & +(ecosa*(dc_norm(k,j)-cosa*dc_norm(k,i)) & + ecosb*(erij(k)-cosb*dc_norm(k,i)))*vbld_inv(i+1) & *fac_shield(i)**2*fac_shield(j)**2 + & *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0) + gelc(k,j)=gelc(k,j)+ghalf & +(ecosa*(dc_norm(k,i)-cosa*dc_norm(k,j)) & + ecosg*(erij(k)-cosg*dc_norm(k,j)))*vbld_inv(j+1) & *fac_shield(i)**2*fac_shield(j)**2 + & *((sslipi+sslipj)/2.0d0*lipscale**2+1.0d0) + enddo do k=i+1,j-1 do l=1,3 @@ -2827,9 +2857,11 @@ C fac_shield(j)=0.6 eel_loc_ij=eel_loc_ij & *fac_shield(i)*fac_shield(j) &*((sslipi+sslipj)/2.0d0*lipscale+1.0d0) -c write (iout,*) 'i',i,' j',j,' eel_loc_ij',eel_loc_ij -C write (iout,'(a6,2i5,0pf7.3)') -C & 'eelloc',i,j,eel_loc_ij +C write (iout,'(a3,i4,a3,i4,a8,4f8.3)') +C & 'i',i,' j',j,' eel_loc_ij',eel_loc_ij,sslipi, +C & sslipj,lipscale +C write (iout,'(a6,2i5,0pf7.3,2f7.3)') +C & 'eelloc',i,j,eel_loc_ij,a22*muij(1),a23*muij(2) C write(iout,*) 'muije=',i,j,muij(1),muij(2),muij(3),muij(4) c write (iout,*) a22,muij(1),a23,muij(2),a32,muij(3) C eel_loc=eel_loc+eel_loc_ij @@ -3268,7 +3300,9 @@ C fac_shield(j)=0.6 eello_t3=0.5d0*(pizda(1,1)+pizda(2,2)) & *fac_shield(i)*fac_shield(j) &*((sslipi+sslipj)/2.0d0*lipscale+1.0d0) - + write (iout,'(a3,i4,a3,i4,a8,4f8.3)') + & 'i',i,' j',j,' eturn3',eello_t3,sslipi, + & sslipj,lipscale cd write (2,*) 'i,',i,' j',j,'eello_turn3', cd & 0.5d0*(pizda(1,1)+pizda(2,2)), cd & ' eello_turn3_num',4*eello_turn3_num @@ -3427,6 +3461,8 @@ C fac_shield(j)=0.6 eello_turn4=eello_turn4-(s1+s2+s3) & *fac_shield(i)*fac_shield(j) + &*((sslipi+sslipj)/2.0d0*lipscale+1.0d0) + eello_t4=-(s1+s2+s3) & *fac_shield(i)*fac_shield(j)