mod localkey¶
- module localkey¶
Local two-shell topology keys (k-ART). Local topology keys, after k-ART.
A global contact-graph hash treats every isomer as unknown. k-ART hashes the neighbour graph of one atom (the atom and everything within two contact steps). Icosahedral isomers share those local keys; a Marks decahedron adds fivefold-join keys the icosahedral catalogue does not have.
The cutoff is a multiple of the structure’s own median nearest-neighbour distance, the same scale
crate::graphkeyuses for the global key.Variables
- const SHELLS: usize¶
Contact shells around the atom. Shrunk when a two-shell ball is the whole cluster, so LJ13 still distinguishes centre from vertex.
Functions
- fn bag_key(keys: &[u64]) -> u64¶
Hash of the sorted multiset of local keys: the system’s local-topology bag.
- fn bag_overlap(a: &[u64], b: &[u64]) -> usize¶
How many keys of
aalso appear inb(multiset intersection size).
- fn local_key(x: ArrayView1<f64>, i: usize, cutoff: f64) -> u64¶
Canonical key of the two-shell contact graph around atom
i.
- fn local_keys(x: ArrayView1<f64>, cutoff: f64) -> Vec<u64>¶
Local key of every atom, in atom order.
- fn median_nn(x: ArrayView1<f64>) -> f64¶
Median nearest-neighbour distance of
x.