ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE_old/src/mdtools/libmdCode/do_Forces.F90
(Generate patch)

Comparing trunk/OOPSE_old/src/mdtools/libmdCode/do_Forces.F90 (file contents):
Revision 360 by gezelter, Tue Mar 18 16:46:47 2003 UTC vs.
Revision 364 by gezelter, Tue Mar 18 21:28:21 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.24 2003-03-18 16:46:47 gezelter Exp $, $Date: 2003-03-18 16:46:47 $, $Name: not supported by cvs2svn $, $Revision: 1.24 $
7 > !! @version $Id: do_Forces.F90,v 1.25 2003-03-18 21:28:21 gezelter Exp $, $Date: 2003-03-18 21:28:21 $, $Name: not supported by cvs2svn $, $Revision: 1.25 $
8  
9   module do_Forces
10    use force_globals
# Line 16 | Line 16 | module do_Forces
16    use sticky_pair
17    use dipole_dipole
18    use reaction_field
19 +  use gb_pair
20   #ifdef IS_MPI
21    use mpiSimulation
22   #endif
# Line 134 | Line 135 | contains
135         end if
136      endif
137      
138 <    
138 >    if (FF_uses_GB) then
139 >       call check_gb_pair_FF(my_status)
140 >       if (my_status .ne. 0) then
141 >          thisStat = -1
142 >          return
143 >       endif
144 >    endif
145 >
146 >    if (FF_uses_GB .and. FF_uses_LJ) then
147 >    endif
148 >
149 >
150      do_forces_initialized = .true.    
151      
152    end subroutine init_FF
153    
142
154  
155    !! Does force loop over i,j pairs. Calls do_pair to calculates forces.
156    !------------------------------------------------------------->
# Line 476 | Line 487 | contains
487    subroutine do_pair(i, j, rijsq, d, do_pot, do_stress, u_l, A, f, t)
488  
489      real( kind = dp ) :: pot
490 <    real( kind = dp ), dimension(3,getNlocal()) :: u_l
491 <    real (kind=dp), dimension(9,getNlocal()) :: A
492 <    real (kind=dp), dimension(3,getNlocal()) :: f
493 <    real (kind=dp), dimension(3,getNlocal()) :: t
490 >    real( kind = dp ), dimension(:,:) :: u_l
491 >    real (kind=dp), dimension(:,:) :: A
492 >    real (kind=dp), dimension(:,:) :: f
493 >    real (kind=dp), dimension(:,:) :: t
494  
495      logical, intent(inout) :: do_pot, do_stress
496      integer, intent(in) :: i, j
# Line 488 | Line 499 | contains
499      real ( kind = dp ), intent(inout) :: d(3)
500      logical :: is_LJ_i, is_LJ_j
501      logical :: is_DP_i, is_DP_j
502 +    logical :: is_GB_i, is_GB_j
503      logical :: is_Sticky_i, is_Sticky_j
504      integer :: me_i, me_j
505  
# Line 540 | Line 552 | contains
552         if ( is_Sticky_i .and. is_Sticky_j ) then
553            call do_sticky_pair(i, j, d, r, rijsq, A, pot, f, t, &
554                 do_pot, do_stress)
555 +       endif
556 +    endif
557 +
558 +
559 +    if (FF_uses_GB .and. SimUsesGB()) then
560 +
561 +       call getElementProperty(atypes, me_i, "is_GB", is_GB_i)
562 +       call getElementProperty(atypes, me_j, "is_GB", is_GB_j)
563 +      
564 +       if ( is_GB_i .and. is_GB_j ) then
565 +          call do_gb_pair(i, j, d, r, rijsq, u_l, pot, f, t, &
566 +               do_pot, do_stress)          
567         endif
568      endif
569        

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines