CP2K 2.4 (Revision 12889)
Classes | Functions | Variables

fist_neighbor_lists Namespace Reference

Generate the atomic neighbor lists for FIST. More...

Classes

struct  local_atoms_type

Functions

subroutine, public build_fist_neighbor_lists (atomic_kind_set, particle_set, local_particles, cell, r_max, r_minsq, ei_scale14, vdw_scale14, nonbonded, para_env, build_from_scratch, geo_check, mm_section, full_nl, exclusions, error)
subroutine build_neighbor_lists (nonbonded, particle_set, atom, cell, print_subcell_grid, output_unit, r_max, r_minsq, ei_scale14, vdw_scale14, geo_check, name, skip_kind, full_nl, exclusions, error)
subroutine write_neighbor_lists (nonbonded, particle_set, cell, para_env, output_unit, name, unit_str, error)
 Write a set of neighbor lists to the output unit.
subroutine sort_neighbor_lists (nonbonded, nkinds, error)
 Sort the generated neighbor list according the kind.

Variables

CHARACTER(len=*), parameter,
private 
moduleN = 'fist_neighbor_lists'

Detailed Description

Generate the atomic neighbor lists for FIST.

History
  • build and update merged (11.02.2005,MK)
  • bug fix for PERIODIC NONE (24.02.06,MK)
  • Major rewriting (light memory neighbor lists): teo and joost (05.2006)
  • Completely new algorithm for the neighbor lists (faster and memory lighter) (Teo 08.2006)
Author:
MK (19.11.2002,24.07.2003) Teodoro Laino (08.2006) - MAJOR REWRITING

Function Documentation

subroutine,public fist_neighbor_lists::build_fist_neighbor_lists ( TYPE(atomic_kind_type),dimension(:),pointer  atomic_kind_set,
TYPE(particle_type),dimension(:),pointer  particle_set,
TYPE(distribution_1d_type),optional,pointer  local_particles,
TYPE(cell_type),pointer  cell,
REAL(dp),dimension(:, :),intent(in)  r_max,
REAL(dp),dimension(:, :),intent(in)  r_minsq,
REAL(KIND=DP),intent(in)  ei_scale14,
REAL(KIND=DP),intent(in)  vdw_scale14,
TYPE(fist_neighbor_type),pointer  nonbonded,
TYPE(cp_para_env_type),pointer  para_env,
LOGICAL,intent(in)  build_from_scratch,
LOGICAL,intent(in)  geo_check,
TYPE(section_vals_type),pointer  mm_section,
LOGICAL,dimension(:, :),optional,pointer  full_nl,
TYPE(exclusion_type),dimension(:),optional  exclusions,
TYPE(cp_error_type),intent(inout)  error 
)
Parameters:
errorvariable to control error logging, stopping,... see module cp_error_handling
History
08.2006 created [tlaino]
Author:
Teodoro Laino

Definition at line 85 of file fist_neighbor_lists.f90.

References build_neighbor_lists(), cell, cp_output_handling::cp_p_file, CPPostcondition, error, local_particles, qmmm_ff_fist::qmmm_ff_precond_only_qm(), sort_neighbor_lists(), timings::timeset(), and write_neighbor_lists().

Referenced by fist_neighbor_list_control::list_control(), qmmm_force_mixing::make_neighbor_list(), and topology_generate_util::topology_generate_bond().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine fist_neighbor_lists::build_neighbor_lists ( TYPE(fist_neighbor_type),pointer  nonbonded,
TYPE(particle_type),dimension(:),pointer  particle_set,
TYPE(local_atoms_type),dimension(:),intent(in)  atom,
TYPE(cell_type),pointer  cell,
LOGICAL,intent(in)  print_subcell_grid,
INTEGER,intent(in)  output_unit,
REAL(dp),dimension(:, :),intent(in)  r_max,
REAL(dp),dimension(:, :),intent(in)  r_minsq,
REAL(KIND=dp),intent(in)  ei_scale14,
REAL(KIND=dp),intent(in)  vdw_scale14,
LOGICAL,intent(in)  geo_check,
CHARACTER(LEN=*),intent(in)  name,
LOGICAL,dimension(:),pointer  skip_kind,
LOGICAL,dimension(:, :),pointer  full_nl,
TYPE(exclusion_type),dimension(:),optional  exclusions,
TYPE(cp_error_type),intent(inout)  error 
) [private]
Parameters:
errorvariable to control error logging, stopping,... see module cp_error_handling
History
08.2006 created [tlaino]
Author:
Teodoro Laino

Definition at line 268 of file fist_neighbor_lists.f90.

References subcell_types::allocate_subcell(), CPPostcondition, error, fist_neighbor_list_types::fist_neighbor_add(), termination::stop_program(), and timings::timeset().

Referenced by build_fist_neighbor_lists().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine fist_neighbor_lists::sort_neighbor_lists ( TYPE(fist_neighbor_type),pointer  nonbonded,
INTEGER,intent(in)  nkinds,
TYPE(cp_error_type),intent(inout)  error 
) [private]

Sort the generated neighbor list according the kind.

Parameters:
errorvariable to control error logging, stopping,... see module cp_error_handling
History
09.2007 created [tlaino] University of Zurich - Reducing memory usage for the FIST neighbor lists
Author:
Teodoro Laino - University of Zurich

Definition at line 747 of file fist_neighbor_lists.f90.

References CPPostcondition, and timings::timeset().

Referenced by build_fist_neighbor_lists().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine fist_neighbor_lists::write_neighbor_lists ( TYPE(fist_neighbor_type),pointer  nonbonded,
TYPE(particle_type),dimension(:),pointer  particle_set,
TYPE(cell_type),pointer  cell,
TYPE(cp_para_env_type),pointer  para_env,
INTEGER,intent(in)  output_unit,
CHARACTER(LEN=*),intent(in)  name,
CHARACTER(LEN=*),intent(in)  unit_str,
TYPE(cp_error_type),intent(inout)  error 
) [private]

Write a set of neighbor lists to the output unit.

Parameters:
errorvariable to control error logging, stopping,... see module cp_error_handling
History
08.2006 created [tlaino]
Author:
Teodoro Laino

Definition at line 658 of file fist_neighbor_lists.f90.

References string_utilities::compress(), cp_units::cp_unit_from_cp2k(), error, and mathlib::matvec_3x3().

Referenced by build_fist_neighbor_lists().

Here is the call graph for this function:

Here is the caller graph for this function:


Variable Documentation

CHARACTER(len=*),parameter,private fist_neighbor_lists::moduleN = 'fist_neighbor_lists'

Definition at line 66 of file fist_neighbor_lists.f90.