ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/do_Forces.F90
(Generate patch)

Comparing trunk/OOPSE/libmdtools/do_Forces.F90 (file contents):
Revision 459 by mmeineke, Fri Apr 4 19:57:01 2003 UTC vs.
Revision 490 by gezelter, Fri Apr 11 15:16:59 2003 UTC

# Line 4 | Line 4
4  
5   !! @author Charles F. Vardeman II
6   !! @author Matthew Meineke
7 < !! @version $Id: do_Forces.F90,v 1.8 2003-04-04 19:57:01 mmeineke Exp $, $Date: 2003-04-04 19:57:01 $, $Name: not supported by cvs2svn $, $Revision: 1.8 $
7 > !! @version $Id: do_Forces.F90,v 1.15 2003-04-11 15:16:59 gezelter Exp $, $Date: 2003-04-11 15:16:59 $, $Name: not supported by cvs2svn $, $Revision: 1.15 $
8  
9   module do_Forces
10    use force_globals
# Line 140 | Line 140 | contains
140  
141      if (FF_uses_GB .and. FF_uses_LJ) then
142      endif
143 <
143 >    if (.not. do_forces_initialized) then
144 >       !! Create neighbor lists
145 >       call expandNeighborList(getNlocal(), my_status)
146 >       if (my_Status /= 0) then
147 >          write(default_error,*) "SimSetup: ExpandNeighborList returned error."
148 >          thisStat = -1
149 >          return
150 >       endif
151 >    endif
152  
153      do_forces_initialized = .true.    
154  
# Line 479 | Line 487 | contains
487      endif
488  
489      if (do_stress) then
490 <       call mpi_allreduce(tau, tau_Temp,9,mpi_double_precision,mpi_sum, &
490 >      call mpi_allreduce(tau_Temp, tau, 9,mpi_double_precision,mpi_sum, &
491              mpi_comm_world,mpi_err)
492 <       call mpi_allreduce(virial, virial_Temp,1,mpi_double_precision,mpi_sum, &
492 >       call mpi_allreduce(virial_Temp, virial,1,mpi_double_precision,mpi_sum, &
493              mpi_comm_world,mpi_err)
494      endif
495  
# Line 499 | Line 507 | contains
507    subroutine do_pair(i, j, rijsq, d, do_pot, do_stress, u_l, A, f, t, pot)
508  
509      real( kind = dp ) :: pot
510 <    real( kind = dp ), dimension(:,:) :: u_l
511 <    real (kind=dp), dimension(:,:) :: A
512 <    real (kind=dp), dimension(:,:) :: f
513 <    real (kind=dp), dimension(:,:) :: t
510 >    real( kind = dp ), dimension(3,getNlocal()) :: u_l
511 >    real (kind=dp), dimension(9,getNlocal()) :: A
512 >    real (kind=dp), dimension(3,getNlocal()) :: f
513 >    real (kind=dp), dimension(3,getNlocal()) :: t
514  
515      logical, intent(inout) :: do_pot, do_stress
516      integer, intent(in) :: i, j
# Line 516 | Line 524 | contains
524      integer :: me_i, me_j
525  
526      r = sqrt(rijsq)
527 +
528 +
529  
530   #ifdef IS_MPI
531 +    if (tagRow(i) .eq. tagColumn(j)) then
532 +       write(0,*) 'do_pair is doing', i , j, tagRow(i), tagColumn(j)
533 +    endif
534  
535      me_i = atid_row(i)
536      me_j = atid_col(j)
# Line 543 | Line 556 | contains
556        
557         if ( is_DP_i .and. is_DP_j ) then
558            
559 <          call do_dipole_pair(natoms,i, j, d, r, rijsq, pot, u_l, f, t, &
559 >          call do_dipole_pair(i, j, d, r, rijsq, pot, u_l, f, t, &
560                 do_pot, do_stress)
561            if (FF_uses_RF .and. SimUsesRF()) then
562               call accumulate_rf(i, j, r, u_l)
# Line 586 | Line 599 | contains
599      real ( kind = dp ), intent(out) :: r_sq
600      real( kind = dp ) :: d(3)
601      real( kind = dp ) :: d_old(3)
602 <    d(1:3) = q_i(1:3) - q_j(1:3)
602 >    d(1:3) = q_j(1:3) - q_i(1:3)
603      d_old = d
604      ! Wrap back into periodic box if necessary
605      if ( SimUsesPBC() ) then
# Line 655 | Line 668 | contains
668      rf = 0.0_dp
669      tau_Temp = 0.0_dp
670      virial_Temp = 0.0_dp
658    
671    end subroutine zero_work_arrays
672    
673    function skipThisPair(atom1, atom2) result(skip_it)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines