(git:21ef868)
Loading...
Searching...
No Matches
nnp_cell_list Module Reference

Linked-cell neighbour finder with a Verlet skin for the NNP descriptor. Owns the per-nnp cell-list cache (positions, image pool, head/next chain, bin geometry), rebuilds or rebins it as atoms move, and walks it to fill the per-element neighbour buffers. Each &NNP force_eval owns its cache, so the lifetime tracks nnp_env_release. More...

Functions/Subroutines

subroutine, public nnp_prepare_cell_list_cache (nnp)
 Prepare the cell-list cache for the current force evaluation: wrap positions into the primary cell, then either rebuild the bin geometry (cell, atom-count, cutoff or large-drift change) or rebin the chain in place while the Verlet skin still holds. Call once per force evaluation, before any nnp_compute_neighbors_cell_list call.
 
subroutine, public nnp_compute_neighbors_cell_list (nnp, neighbor, i)
 Fill the ACSF neighbour buffers for one central atom by walking the linked-cell stencil around its bin, pushing (j, dr, r) into the per-species-pair slabs for entries inside each pair cutoff. The own-bin self image (i == j, zero shift) is skipped.
 

Detailed Description

Linked-cell neighbour finder with a Verlet skin for the NNP descriptor. Owns the per-nnp cell-list cache (positions, image pool, head/next chain, bin geometry), rebuilds or rebins it as atoms move, and walks it to fill the per-element neighbour buffers. Each &NNP force_eval owns its cache, so the lifetime tracks nnp_env_release.

Author
Dhruv Sharma (ds217.nosp@m.3@ca.nosp@m.m.ac..nosp@m.uk)
Christoph Schran (chris.nosp@m.toph.nosp@m..schr.nosp@m.an@r.nosp@m.ub.de)
Date
2026-05-21

Function/Subroutine Documentation

◆ nnp_prepare_cell_list_cache()

subroutine, public nnp_cell_list::nnp_prepare_cell_list_cache ( type(nnp_type), intent(inout), pointer  nnp)

Prepare the cell-list cache for the current force evaluation: wrap positions into the primary cell, then either rebuild the bin geometry (cell, atom-count, cutoff or large-drift change) or rebin the chain in place while the Verlet skin still holds. Call once per force evaluation, before any nnp_compute_neighbors_cell_list call.

Parameters
nnpNNP environment whose cell_list_cache is prepared from current positions.
Author
Dhruv Sharma (ds217.nosp@m.3@ca.nosp@m.m.ac..nosp@m.uk)

Definition at line 55 of file nnp_cell_list.F.

Here is the call graph for this function:

◆ nnp_compute_neighbors_cell_list()

subroutine, public nnp_cell_list::nnp_compute_neighbors_cell_list ( type(nnp_type), intent(inout), pointer  nnp,
type(nnp_neighbor_type), intent(inout)  neighbor,
integer, intent(in)  i 
)

Fill the ACSF neighbour buffers for one central atom by walking the linked-cell stencil around its bin, pushing (j, dr, r) into the per-species-pair slabs for entries inside each pair cutoff. The own-bin self image (i == j, zero shift) is skipped.

Parameters
nnpNNP environment with cell_list_cache and neighbor_interface_state ready
neighborper-atom neighbour view filled in place (counters zeroed before this call)
icentral-atom index in the global ordering
Author
Dhruv Sharma (ds217.nosp@m.3@ca.nosp@m.m.ac..nosp@m.uk)
Christoph Schran (chris.nosp@m.toph.nosp@m..schr.nosp@m.an@r.nosp@m.ub.de)

Definition at line 339 of file nnp_cell_list.F.

Here is the caller graph for this function: