ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-4/src/UseTheForce/DarkSide/electrostatic.F90
(Generate patch)

Comparing trunk/OOPSE-4/src/UseTheForce/DarkSide/electrostatic.F90 (file contents):
Revision 2153 by chrisfen, Fri Apr 8 14:43:06 2005 UTC vs.
Revision 2162 by chrisfen, Mon Apr 11 20:19:22 2005 UTC

# Line 339 | Line 339 | contains
339      real (kind=dp) :: pref, vterm, epot, dudr    
340      real (kind=dp) :: xhat, yhat, zhat
341      real (kind=dp) :: dudx, dudy, dudz
342    real (kind=dp) :: drdxj, drdyj, drdzj
342      real (kind=dp) :: scale, sc2, bigR
343  
344      if (.not.allocated(ElectrostaticMap)) then
# Line 363 | Line 362 | contains
362      yhat = d(2) * riji
363      zhat = d(3) * riji
364  
366    drdxj = xhat
367    drdyj = yhat
368    drdzj = zhat
369
365      !! logicals
366  
367      i_is_Charge = ElectrostaticMap(me1)%is_Charge
# Line 448 | Line 443 | contains
443         uz_j(2) = eFrame(6,atom2)
444         uz_j(3) = eFrame(9,atom2)
445   #endif
446 <       ct_j = uz_j(1)*drdxj + uz_j(2)*drdyj + uz_j(3)*drdzj
446 >       ct_j = uz_j(1)*xhat + uz_j(2)*yhat + uz_j(3)*zhat
447  
448         if (j_is_SplitDipole) then
449            d_j = ElectrostaticMap(me2)%split_dipole_distance
# Line 508 | Line 503 | contains
503  
504            dudr  = - sw * vterm * riji
505  
506 <          dudx = dudx + dudr * drdxj
507 <          dudy = dudy + dudr * drdyj
508 <          dudz = dudz + dudr * drdzj
506 >          dudx = dudx + dudr * xhat
507 >          dudy = dudy + dudr * yhat
508 >          dudz = dudz + dudr * zhat
509        
510         endif
511  
# Line 557 | Line 552 | contains
552            cz2 = cz_j * cz_j
553  
554  
555 <          pref =  pre14 * q_i / 1.0_dp
555 >          pref =  pre14 * q_i / 3.0_dp
556            vterm = pref * ri3 * (qxx_j * (3.0_dp*cx2 - 1.0_dp) + &
557                 qyy_j * (3.0_dp*cy2 - 1.0_dp) + &
558                 qzz_j * (3.0_dp*cz2 - 1.0_dp))
559            vpair = vpair + vterm
560            epot = epot + sw * vterm
561  
562 <          dudx = dudx - 5.0_dp*sw*vterm*riji*xhat - pref * sw * ri4 * ( &
562 >          dudx = dudx - 5.0_dp*sw*vterm*riji*xhat + pref * sw * ri4 * ( &
563                 qxx_j*(6.0_dp*cx_j*ux_j(1) - 2.0_dp*xhat) + &
564                 qyy_j*(6.0_dp*cy_j*uy_j(1) - 2.0_dp*xhat) + &
565                 qzz_j*(6.0_dp*cz_j*uz_j(1) - 2.0_dp*xhat) )
566 <          dudy = dudy - 5.0_dp*sw*vterm*riji*yhat - pref * sw * ri4 * ( &
566 >          dudy = dudy - 5.0_dp*sw*vterm*riji*yhat + pref * sw * ri4 * ( &
567                 qxx_j*(6.0_dp*cx_j*ux_j(2) - 2.0_dp*yhat) + &
568                 qyy_j*(6.0_dp*cy_j*uy_j(2) - 2.0_dp*yhat) + &
569                 qzz_j*(6.0_dp*cz_j*uz_j(2) - 2.0_dp*yhat) )
570 <          dudz = dudz - 5.0_dp*sw*vterm*riji*zhat - pref * sw * ri4 * ( &
570 >          dudz = dudz - 5.0_dp*sw*vterm*riji*zhat + pref * sw * ri4 * ( &
571                 qxx_j*(6.0_dp*cx_j*ux_j(3) - 2.0_dp*zhat) + &
572                 qyy_j*(6.0_dp*cy_j*uy_j(3) - 2.0_dp*zhat) + &
573                 qzz_j*(6.0_dp*cz_j*uz_j(3) - 2.0_dp*zhat) )
# Line 683 | Line 678 | contains
678            cy2 = cy_i * cy_i
679            cz2 = cz_i * cz_i
680            
681 <          pref = pre14 * q_j / 1.0_dp
681 >          pref = pre14 * q_j / 3.0_dp
682            vterm = pref * ri3 * (qxx_i * (3.0_dp*cx2 - 1.0_dp) + &
683                 qyy_i * (3.0_dp*cy2 - 1.0_dp) + &
684                 qzz_i * (3.0_dp*cz2 - 1.0_dp))
685            vpair = vpair + vterm
686            epot = epot + sw * vterm
687            
688 <          dudx = dudx - 5.0_dp*sw*vterm*riji*xhat - pref * sw * ri4 * ( &
688 >          dudx = dudx - 5.0_dp*sw*vterm*riji*xhat + pref * sw * ri4 * ( &
689                 qxx_i*(6.0_dp*cx_i*ux_i(1) - 2.0_dp*xhat) + &
690                 qyy_i*(6.0_dp*cy_i*uy_i(1) - 2.0_dp*xhat) + &
691                 qzz_i*(6.0_dp*cz_i*uz_i(1) - 2.0_dp*xhat) )
692 <          dudy = dudy - 5.0_dp*sw*vterm*riji*yhat - pref * sw * ri4 * ( &
692 >          dudy = dudy - 5.0_dp*sw*vterm*riji*yhat + pref * sw * ri4 * ( &
693                 qxx_i*(6.0_dp*cx_i*ux_i(2) - 2.0_dp*yhat) + &
694                 qyy_i*(6.0_dp*cy_i*uy_i(2) - 2.0_dp*yhat) + &
695                 qzz_i*(6.0_dp*cz_i*uz_i(2) - 2.0_dp*yhat) )
696 <          dudz = dudz - 5.0_dp*sw*vterm*riji*zhat - pref * sw * ri4 * ( &
696 >          dudz = dudz - 5.0_dp*sw*vterm*riji*zhat + pref * sw * ri4 * ( &
697                 qxx_i*(6.0_dp*cx_i*ux_i(3) - 2.0_dp*zhat) + &
698                 qyy_i*(6.0_dp*cy_i*uy_i(3) - 2.0_dp*zhat) + &
699                 qzz_i*(6.0_dp*cz_i*uz_i(3) - 2.0_dp*zhat) )

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines