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

Comparing trunk/OOPSE-2.0/src/UseTheForce/do_Forces.F90 (file contents):
Revision 1492 by tim, Fri Sep 24 16:27:58 2004 UTC vs.
Revision 1602 by chuckv, Tue Oct 19 20:44:36 2004 UTC

# Line 4 | Line 4
4  
5   !! @author Charles F. Vardeman II
6   !! @author Matthew Meineke
7 < !! @version $Id: do_Forces.F90,v 1.2 2004-09-24 16:27:57 tim Exp $, $Date: 2004-09-24 16:27:57 $, $Name: not supported by cvs2svn $, $Revision: 1.2 $
7 > !! @version $Id: do_Forces.F90,v 1.3 2004-10-19 20:44:36 chuckv Exp $, $Date: 2004-10-19 20:44:36 $, $Name: not supported by cvs2svn $, $Revision: 1.3 $
8  
9   module do_Forces
10    use force_globals
# Line 24 | Line 24 | module do_Forces
24    use status
25   #ifdef IS_MPI
26    use mpiSimulation
27 < #endif
27 > #endif
28  
29    implicit none
30    PRIVATE
# Line 1182 | Line 1182 | end module do_Forces
1182   end subroutine add_stress_tensor
1183  
1184   end module do_Forces
1185 +
1186 + !! Interfaces for C programs to module....
1187 +
1188 + subroutine initFortranFF(LJMIXPOLICY, use_RF_c, thisStat)
1189 +    use do_Forces, ONLY: init_FF
1190 +    integer, intent(in) :: LJMIXPOLICY
1191 +    logical, intent(in) :: use_RF_c
1192 +
1193 +    integer, intent(out) :: thisStat  
1194 +    call init_FF(LJMIXPOLICY, use_RF_c, thisStat)
1195  
1196 + end subroutine initFortranFF
1197 +
1198 +  subroutine doForceloop(q, q_group, A, u_l, f, t, tau, pot, &
1199 +       do_pot_c, do_stress_c, error)
1200 +      
1201 +       use definitions, ONLY: dp
1202 +       use simulation
1203 +       use do_Forces, ONLY: do_force_loop
1204 +    !! Position array provided by C, dimensioned by getNlocal
1205 +    real ( kind = dp ), dimension(3, nLocal) :: q
1206 +    !! molecular center-of-mass position array
1207 +    real ( kind = dp ), dimension(3, nGroups) :: q_group
1208 +    !! Rotation Matrix for each long range particle in simulation.
1209 +    real( kind = dp), dimension(9, nLocal) :: A    
1210 +    !! Unit vectors for dipoles (lab frame)
1211 +    real( kind = dp ), dimension(3,nLocal) :: u_l
1212 +    !! Force array provided by C, dimensioned by getNlocal
1213 +    real ( kind = dp ), dimension(3,nLocal) :: f
1214 +    !! Torsion array provided by C, dimensioned by getNlocal
1215 +    real( kind = dp ), dimension(3,nLocal) :: t    
1216 +
1217 +    !! Stress Tensor
1218 +    real( kind = dp), dimension(9) :: tau  
1219 +    real ( kind = dp ) :: pot
1220 +    logical ( kind = 2) :: do_pot_c, do_stress_c
1221 +    integer :: error
1222 +    
1223 +    call do_force_loop(q, q_group, A, u_l, f, t, tau, pot, &
1224 +       do_pot_c, do_stress_c, error)
1225 +      
1226 + end subroutine doForceloop

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines