18 |
|
sequence |
19 |
|
!! Unique number for place in linked list |
20 |
|
integer :: atype_number = 0 |
21 |
– |
!! Name of atype |
22 |
– |
character(len = 15) :: name = "NULL" |
21 |
|
!! Unique indentifier number (ie atomic no, etc) |
22 |
|
integer :: atype_ident = 0 |
23 |
|
!! Mass of Particle |
35 |
|
end type lj_atype |
36 |
|
|
37 |
|
!! Pointer type for atype ident array |
38 |
< |
type :: lj_atypePtr |
38 |
> |
type, public :: lj_atypePtr |
39 |
|
type (lj_atype), pointer :: this => null() |
40 |
|
end type lj_atypePtr |
41 |
|
|
77 |
|
|
78 |
|
contains |
79 |
|
|
80 |
< |
subroutine new_lj_atype(name,ident,mass,epslon,sigma,status) |
83 |
< |
character( len = 15 ) :: name |
80 |
> |
subroutine new_lj_atype(ident,mass,epslon,sigma,status) |
81 |
|
real( kind = dp ), intent(in) :: mass |
82 |
|
real( kind = dp ), intent(in) :: epslon |
83 |
|
real( kind = dp ), intent(in) :: sigma |
105 |
|
end if |
106 |
|
|
107 |
|
! assign our new lj_atype information |
111 |
– |
this_lj_atype%name = name |
108 |
|
this_lj_atype%mass = mass |
109 |
|
this_lj_atype%epslon = epslon |
110 |
|
this_lj_atype%sigma = sigma |
292 |
|
real ( kind = dp ), dimension(ndim,) :: q |
293 |
|
real ( kind = dp ), dimension(ndim,nLRparticles) :: f |
294 |
|
real ( kind = dp ) :: potE |
295 |
< |
|
295 |
> |
logical :: do_pot |
296 |
|
#ifdef MPI |
297 |
|
real( kind = DP ), dimension(3,ncol) :: efr |
298 |
|
real( kind = DP ) :: pot_local |
302 |
|
|
303 |
|
real( kind = DP ) :: pe |
304 |
|
logical, :: update_nlist |
309 |
– |
logical :: do_pot |
305 |
|
|
306 |
+ |
|
307 |
|
integer :: i, j, jbeg, jend, jnab, idim, jdim, idim2, jdim2, dim, dim2 |
308 |
|
integer :: nlist |
309 |
|
integer :: j_start |
324 |
|
#endif |
325 |
|
|
326 |
|
call check(update_nlist) |
331 |
– |
|
332 |
– |
do_pot = .false. |
333 |
– |
if (present(pe)) do_pot = .true. |
327 |
|
|
328 |
|
#ifndef IS_MPI |
329 |
|
nloops = nloops + 1 |
546 |
|
|
547 |
|
if (do_pot) then |
548 |
|
! scatter/gather pot_row into the members of my column |
549 |
< |
call scatter(e_row,e_tmp,plan_row) |
549 |
> |
call scatter(e_row,e_tmp,plan_row) |
550 |
|
|
551 |
|
! scatter/gather pot_local into all other procs |
552 |
|
! add resultant to get total pot |