walk_compare¶
tests/walk_compare walks a LAMMPS dump and prints one row per
frame. Each row has four-neighbour star (CHILL+) counts, cage
membership on the same cutoff graph, and the seeded assignment on the
mutual and union four-nearest graphs, with the largest ice cluster of
each score. Cage flags are hexagonal cage (HC) and double-diamond
cage (DDC).
The walk_compare binary is a Meson executable. pixi run setup && pixi run build (-Dwith_tests=true) writes
bbdir/tests/walk_compare. A Nix develop tree writes the same name
under the Meson build directory. Catch2 does not run this binary.
Inputs¶
walk_compare TRAJ [lastFrame] [atomType] [stride]
argument |
default |
meaning |
|---|---|---|
|
required |
LAMMPS dump path |
|
all frames |
inclusive 1-based cap; |
|
|
LAMMPS type kept by |
|
|
frame step; a non-positive value becomes |
Missing TRAJ exits 2 with a usage line. A dump with no frames
exits 1.
Neighbour knobs are hard-wired:
knob |
value |
|---|---|
cutoff |
|
k-NN candidate cutoff |
|
|
|
seededCageAffiliation is called with the completion flag left at
its default, false. See
Ring-adjacent completion.
Columns¶
Stdout opens with two comments: the dump path with nframes,
last, and stride, then the column names. Each later line is
twenty integers.
column |
source |
|---|---|
|
1-based dump index |
|
atoms kept of |
|
CHILL+ cubic (and reCubic) |
|
CHILL+ hexagonal (and reHex) |
|
CHILL+ interfacial |
|
CHILL+ clathrate |
|
CHILL+ interClathrate |
|
every other CHILL+ label |
|
cubic plus hexagonal (Nguyen and Molinero bulk ice; interfacial is not ice) |
|
largest |
|
number of those components |
|
atoms in an HC- or DDC-affiliated six-ring on the cutoff graph |
|
largest |
|
number of those components |
|
seeded HC and not DDC |
|
seeded DDC and not HC |
|
seeded HC and DDC |
|
|
|
largest |
|
number of those components |
Those twenty integers split into star counts, cutoff-graph cage
counts (cut_*), and seeded counts (seed_*). The star counts and
cut_* share the cutoff neighbour list (nneigh::neighListO at
3.5). The seed_* columns use nneigh::kNearestNeighbourPair
(k=4, candidate cutoff 5.5): mutual seeds, union completions.
Cluster walks are connected components of the flagged atoms on that
same index graph. A frame with nop 0 prints the frame index and
nineteen zeros.
Example¶
bbdir/tests/walk_compare input/traj/exampleTraj.lammpstrj 1 2
That walks frame 1, type 2 (TIP4P oxygen in the in-tree mixed dump). Add a fourth argument to stride a long trajectory.