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 2127 by gezelter, Mon Mar 21 19:23:27 2005 UTC vs.
Revision 2156 by chrisfen, Fri Apr 8 22:13:41 2005 UTC

# Line 76 | Line 76 | module electrostatic_module
76    public :: doElectrostaticPair
77    public :: getCharge
78    public :: getDipoleMoment
79 +  public :: pre22
80  
81    type :: Electrostatic
82       integer :: c_ident
# Line 529 | Line 530 | contains
530            sc2 = scale * scale
531              
532            pref = pre12 * q_i * mu_j
533 <          vterm = pref * ct_j * ri2 * scale
533 >          vterm = - pref * ct_j * ri2 * scale
534            vpair = vpair + vterm
535            epot = epot + sw * vterm
536  
# Line 537 | Line 538 | contains
538            !! r_j - r_i and the charge-dipole potential takes the origin
539            !! as the point dipole, which is atom j in this case.
540  
541 <          dudx = dudx + pref * sw * ri3 * ( uz_j(1) + 3.0d0*ct_j*xhat*sc2)
542 <          dudy = dudy + pref * sw * ri3 * ( uz_j(2) + 3.0d0*ct_j*yhat*sc2)
543 <          dudz = dudz + pref * sw * ri3 * ( uz_j(3) + 3.0d0*ct_j*zhat*sc2)
541 >          dudx = dudx - pref * sw * ri3 * ( uz_j(1) - 3.0d0*ct_j*xhat*sc2)
542 >          dudy = dudy - pref * sw * ri3 * ( uz_j(2) - 3.0d0*ct_j*yhat*sc2)
543 >          dudz = dudz - pref * sw * ri3 * ( uz_j(3) - 3.0d0*ct_j*zhat*sc2)
544  
545            duduz_j(1) = duduz_j(1) - pref * sw * ri2 * xhat * scale
546            duduz_j(2) = duduz_j(2) - pref * sw * ri2 * yhat * scale
# Line 556 | Line 557 | contains
557            cz2 = cz_j * cz_j
558  
559  
560 <          pref =  pre14 * q_i / 6.0_dp
560 >          pref =  pre14 * q_i / 1.0_dp
561            vterm = pref * ri3 * (qxx_j * (3.0_dp*cx2 - 1.0_dp) + &
562                 qyy_j * (3.0_dp*cy2 - 1.0_dp) + &
563                 qzz_j * (3.0_dp*cz2 - 1.0_dp))
564            vpair = vpair + vterm
565            epot = epot + sw * vterm
566  
567 <          dudx = dudx - 5.0_dp*sw*vterm*riji*xhat - pref * sw * ri4 * ( &
567 >          dudx = dudx - 5.0_dp*sw*vterm*riji*xhat + pref * sw * ri4 * ( &
568                 qxx_j*(6.0_dp*cx_j*ux_j(1) - 2.0_dp*xhat) + &
569                 qyy_j*(6.0_dp*cy_j*uy_j(1) - 2.0_dp*xhat) + &
570                 qzz_j*(6.0_dp*cz_j*uz_j(1) - 2.0_dp*xhat) )
571 <          dudy = dudy - 5.0_dp*sw*vterm*riji*yhat - pref * sw * ri4 * ( &
571 >          dudy = dudy - 5.0_dp*sw*vterm*riji*yhat + pref * sw * ri4 * ( &
572                 qxx_j*(6.0_dp*cx_j*ux_j(2) - 2.0_dp*yhat) + &
573                 qyy_j*(6.0_dp*cy_j*uy_j(2) - 2.0_dp*yhat) + &
574                 qzz_j*(6.0_dp*cz_j*uz_j(2) - 2.0_dp*yhat) )
575 <          dudz = dudz - 5.0_dp*sw*vterm*riji*zhat - pref * sw * ri4 * ( &
575 >          dudz = dudz - 5.0_dp*sw*vterm*riji*zhat + pref * sw * ri4 * ( &
576                 qxx_j*(6.0_dp*cx_j*ux_j(3) - 2.0_dp*zhat) + &
577                 qyy_j*(6.0_dp*cy_j*uy_j(3) - 2.0_dp*zhat) + &
578                 qzz_j*(6.0_dp*cz_j*uz_j(3) - 2.0_dp*zhat) )
# Line 682 | Line 683 | contains
683            cy2 = cy_i * cy_i
684            cz2 = cz_i * cz_i
685            
686 <          pref = pre14 * q_j / 6.0_dp
686 >          pref = pre14 * q_j / 1.0_dp
687            vterm = pref * ri3 * (qxx_i * (3.0_dp*cx2 - 1.0_dp) + &
688                 qyy_i * (3.0_dp*cy2 - 1.0_dp) + &
689                 qzz_i * (3.0_dp*cz2 - 1.0_dp))
690            vpair = vpair + vterm
691            epot = epot + sw * vterm
692            
693 <          dudx = dudx - 5.0_dp*sw*vterm*riji*xhat - pref * sw * ri4 * ( &
693 >          dudx = dudx - 5.0_dp*sw*vterm*riji*xhat + pref * sw * ri4 * ( &
694                 qxx_i*(6.0_dp*cx_i*ux_i(1) - 2.0_dp*xhat) + &
695                 qyy_i*(6.0_dp*cy_i*uy_i(1) - 2.0_dp*xhat) + &
696                 qzz_i*(6.0_dp*cz_i*uz_i(1) - 2.0_dp*xhat) )
697 <          dudy = dudy - 5.0_dp*sw*vterm*riji*yhat - pref * sw * ri4 * ( &
697 >          dudy = dudy - 5.0_dp*sw*vterm*riji*yhat + pref * sw * ri4 * ( &
698                 qxx_i*(6.0_dp*cx_i*ux_i(2) - 2.0_dp*yhat) + &
699                 qyy_i*(6.0_dp*cy_i*uy_i(2) - 2.0_dp*yhat) + &
700                 qzz_i*(6.0_dp*cz_i*uz_i(2) - 2.0_dp*yhat) )
701 <          dudz = dudz - 5.0_dp*sw*vterm*riji*zhat - pref * sw * ri4 * ( &
701 >          dudz = dudz - 5.0_dp*sw*vterm*riji*zhat + pref * sw * ri4 * ( &
702                 qxx_i*(6.0_dp*cx_i*ux_i(3) - 2.0_dp*zhat) + &
703                 qyy_i*(6.0_dp*cy_i*uy_i(3) - 2.0_dp*zhat) + &
704                 qzz_i*(6.0_dp*cz_i*uz_i(3) - 2.0_dp*zhat) )

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines