RMPCDMD
Data Types | Functions/Subroutines
neighbor_list Module Reference

Derived type and routines for neighbor listing. More...

Data Types

type  neighbor_list_t
 

Functions/Subroutines

subroutine init (this, Npoints, Nmax)
 
pure integer function, dimension(3) next_cell (p)
 
subroutine update_list (this, system1, system2, radius, cells, lj)
 
double precision function, public compute_force (ps1, ps2, n_list, L, lj_params)
 
double precision function, public compute_force_n2 (ps, L, lj_params)
 
subroutine make_stencil (this, cells, cut)
 
pure double precision function closest (x1, x2)
 

Detailed Description

Derived type and routines for neighbor listing.

The derived type neighbor_list_t holds a neighbor list. For module depedency reasons, the neighbor list base force computation for colloid-solvent interactions is also defined here, and also a naive \(O(N^2)\) routine for colloid-colloid interactions.

Function/Subroutine Documentation

◆ closest()

pure double precision function neighbor_list::closest ( integer, dimension(3), intent(in)  x1,
integer, dimension(3), intent(in)  x2 
)
private

Definition at line 311 of file neighbor_list.f90.

◆ compute_force()

double precision function, public neighbor_list::compute_force ( type(particle_system_t), intent(inout)  ps1,
type(particle_system_t), intent(inout)  ps2,
type(neighbor_list_t), intent(inout)  n_list,
double precision, dimension(3), intent(in)  L,
type(lj_params_t), intent(in)  lj_params 
)

Definition at line 160 of file neighbor_list.f90.

◆ compute_force_n2()

double precision function, public neighbor_list::compute_force_n2 ( type(particle_system_t), intent(inout)  ps,
double precision, dimension(3), intent(in)  L,
type(lj_params_t), intent(in)  lj_params 
)

Definition at line 228 of file neighbor_list.f90.

◆ init()

subroutine neighbor_list::init ( class(neighbor_list_t), intent(out)  this,
integer, intent(in)  Npoints,
integer, intent(in)  Nmax 
)
private

Definition at line 39 of file neighbor_list.f90.

◆ make_stencil()

subroutine neighbor_list::make_stencil ( class(neighbor_list_t), intent(inout)  this,
type(cell_system_t), intent(in)  cells,
double precision  cut 
)
private

Definition at line 272 of file neighbor_list.f90.

◆ next_cell()

pure integer function, dimension(3) neighbor_list::next_cell ( integer, dimension(3), intent(in)  p)
private

Definition at line 56 of file neighbor_list.f90.

◆ update_list()

subroutine neighbor_list::update_list ( class(neighbor_list_t), intent(inout)  this,
type(particle_system_t), intent(in)  system1,
type(particle_system_t), intent(in)  system2,
double precision, intent(in)  radius,
type(cell_system_t), intent(inout)  cells,
type(lj_params_t), intent(in), optional  lj 
)
private

Definition at line 77 of file neighbor_list.f90.