--- trunk/mdtools/md_code/simulation_module.F90 2002/12/04 19:40:32 193 +++ trunk/mdtools/md_code/simulation_module.F90 2002/12/04 21:19:38 194 @@ -1,21 +1,60 @@ module simulation use definitions, ONLY :dp + use force_wrappers, ONLY : alloc_force_wrappers + implicit none PRIVATE + + real ( kind = dp ), public, dimension(3) :: box - real ( kind = dp ), dimension(3) :: box + real ( kind = dp ), public :: rlist + real ( kind = dp ), public :: rcut + real ( kind = dp ), public :: rlistsq + real ( kind = dp ), public :: rcutsq + integer,public, allocatable, dimension(:) :: point + integer,public, allocatable, dimension(:) :: list +!MPI dependent routines +#ifdef IS_MPI +! Universal routines: All types of force calculations will need these arrays +! Arrays specific to a type of force calculation should be declared in that module. + real( kind = dp ), allocatable, dimension(:,:) :: qRow + real( kind = dp ), allocatable, dimension(:,:) :: qColumn + real( kind = dp ), allocatable, dimension(:,:) :: fRow + real( kind = dp ), allocatable, dimension(:,:) :: fColumn + real( kind = dp ), allocatable, dimension(:,:) :: tRow + real( kind = dp ), allocatable, dimension(:,:) :: tColumn + +#endif + + + + + + contains +#ifdef MPI +! Allocated work arrays for MPI + subroutine allocate_mpi_arrays(nDimensions,numComponents) + integer, intent(in) :: nDimensions + integer, intent(in) :: numComponents + + + + + end subroutine allocate_mpi_arrays +#endif + subroutine set_simulation(box,rlist,rcut)