Neighbors Workflow
CLI workflow for center atoms and their four nearest neighbors.
Command: get-wurtzite-neighbors
Find the four nearest selected neighbors around every selected center atom.
Use this command to inspect the geometric input to the wurtzite-polarity calculation
without calculating polarity. Neighbor assignment uses distances rather than fort.7
bond connectivity. It writes centers.csv and neighbors.csv with atom IDs, species,
coordinates, minimum-image bond vectors, distances, proton proximity, and dynamic or
formal charges.
Examples
1. AlN with automatically detected ReaxFF charges:
reaxkit get-wurtzite-neighbors --center Al --neighbor N
2. Require the lightweight ReaxFF fort.7 charge stream:
reaxkit get-wurtzite-neighbors --engine reaxff --charge-source reaxff
3. ZnO with formal charges and an explicit output directory:
reaxkit get-wurtzite-neighbors --center Zn --neighbor O --charge-source formal --formal-charge Zn=2 O=-2
Arguments
Scientific choices
| Flag |
Required |
Default |
Help |
Choices |
--center, --cation |
No |
Al |
Choose center species. Example: --center Zn Mg, analyzes both Zn- and Mg-centered sites. |
|
--neighbor, --anion |
No |
N |
Choose neighbor species. Example: --neighbor O, assigns the four nearest oxygen atoms. |
|
--proton |
No |
H |
Choose proton-like species for proximity grouping. Example: --proton H, tests nearby hydrogen atoms. |
|
--charge-source |
No |
auto |
Choose dynamic or formal charges. Formal mode has no implicit species fallback and requires --formal-charge for every center and neighbor. Example: --charge-source formal --formal-charge Al=3 N=-3 H=1. |
auto, reaxff, formal |
--formal-charge |
No |
|
Assign species-specific formal charges. Example: --formal-charge Al=3 N=-3 H=1, uses +3, -3, and +1 elementary charges. |
|
--neighbor-cutoff |
No |
3.0 |
Set the maximum center-neighbor distance in angstrom. Example: --neighbor-cutoff 2.5, excludes candidates farther than 2.5 angstrom. |
|
--proton-cutoff |
No |
2.0 |
Set the proton-proximity radius in angstrom. Example: --proton-cutoff 1.8, marks centers within 1.8 angstrom of H. |
|
--c-axis |
No |
0.0, 0.0, 1.0 |
Set the Cartesian polar-axis direction. Example: --c-axis 0 0 1, projects bonds along z. |
|
--periodic |
No |
xyz |
Choose periodic lattice directions. Example: --periodic xy, wraps neighbors across a and b only. |
none, x, y, z, xy, xz, yz, xyz |
--cell-lengths |
No |
|
Override cell lengths in angstrom. Example: --cell-lengths 10 10 16, uses that cell for every frame. |
|
--cell-angles |
No |
90.0, 90.0, 90.0 |
Set angles for --cell-lengths in degrees. Example: --cell-angles 90 90 120, defines a hexagonal cell. |
|
--frames |
No |
|
Select zero-based source frames. Example: --frames 0:101:10, includes frames 0 through 100 every 10 frames. |
|
--every |
No |
1 |
Stride the selected frames. Example: --every 5, keeps every fifth selected frame. |
|
| Flag |
Required |
Default |
Help |
Choices |
--engine |
No |
|
Select the input adapter. Example: --engine reaxff, bypasses engine auto-detection. |
reaxff, ams, lammps |
--input |
No |
. |
Set the path used for engine detection. Example: --input ./run, inspects ./run. |
|
--run-dir |
No |
. |
Set the fallback simulation directory. Example: --run-dir ./run, resolves default files there. |
|
--fort7 |
No |
fort.7 |
Select the ReaxFF charge file. Example: --fort7 ./run/fort.7, streams charges from that file. |
|
--fort78 |
No |
fort.78 |
Select the applied-field file. Example: --fort78 ./run/fort.78, reads field samples from that file. |
|
--xmolout |
No |
xmolout |
Select the coordinate and atom-name trajectory. Example: --xmolout ./run/xmolout, reads that trajectory. |
|
--summary |
No |
|
Select optional simulation metadata. Example: --summary ./run/summary.txt, reads metadata from that file. |
|
Outputs and plots
| Flag |
Required |
Default |
Help |
Choices |
--output-dir |
No |
|
Choose the CSV output directory. Example: --output-dir ./neighbors, writes centers.csv and neighbors.csv there. |
|
--detail-format |
No |
|
Optional detail format (default: Parquet; legacy: CSV). |
parquet, csv |
Execution
| Flag |
Required |
Default |
Help |
Choices |
--execution |
No |
auto |
Execution backend; unsupported backends fall back to serial with a logged reason. |
auto, serial, threads, processes |
--workers |
No |
0 |
Frame workers: auto or N (default: auto). |
|
--chunk-size |
No |
0 |
Maximum in-flight frames: auto or N. |
|
Storage and cache
| Flag |
Required |
Default |
Help |
Choices |
--run-id |
No |
|
Run identifier for run-scoped layout. Example: --run-id run_91ac0e, which reuses that run identifier. |
|
--project-root |
No |
reaxkit_workspace |
Project root that contains inputs/, data/, analysis/, etc. Example: --project-root ./workspace, which stores run artifacts there. |
|
--analysis-id |
No |
|
Optional analysis artifact id; defaults to run id. Example: --analysis-id comparison-a, which names the analysis artifact explicitly. |
|
--input-cache, --no-input-cache |
No |
True |
Reuse parsed input frames across commands (default: enabled; use --no-input-cache to force source reads for reproducibility checks or benchmarks). Example: --no-input-cache, which reloads frames from their source files. |
|
--frame-cache-max-gb |
No |
10.0 |
Maximum workspace frame-cache size in GiB (default: 10; use 0 for unlimited). Example: --frame-cache-max-gb 20, which caps cached frames at 20 GiB. |
|
--output-profile |
No |
standard |
Select the shared artifact policy. Standard writes declared default outputs; minimal keeps core tables; full and legacy include optional details. Default: standard. Example: --output-profile full, which includes declared optional detail tables. |
minimal, standard, full, legacy |
Diagnostics and compatibility
| Flag |
Required |
Default |
Help |
Choices |
-h, --help |
No |
|
show this help message and exit |
|
--help-all, --all-flags |
No |
|
Show every option, grouped by purpose. |
|
--log |
No |
quiet |
Choose console logging detail. Example: --log verbose, prints diagnostic progress information. |
verbose, quiet |
Common Runtime and Presentation Arguments
These are shared workflow-level CLI flags added before command-specific options, covering runtime context (engine/input/storage) and output presentation/export behavior.
Each command table above includes its shared and inherited options.