reaxkit 1.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. reaxkit/__init__.py +0 -0
  2. reaxkit/analysis/__init__.py +0 -0
  3. reaxkit/analysis/composed/RDF_analyzer.py +560 -0
  4. reaxkit/analysis/composed/__init__.py +0 -0
  5. reaxkit/analysis/composed/connectivity_analyzer.py +706 -0
  6. reaxkit/analysis/composed/coordination_analyzer.py +144 -0
  7. reaxkit/analysis/composed/electrostatics_analyzer.py +687 -0
  8. reaxkit/analysis/per_file/__init__.py +0 -0
  9. reaxkit/analysis/per_file/control_analyzer.py +165 -0
  10. reaxkit/analysis/per_file/eregime_analyzer.py +108 -0
  11. reaxkit/analysis/per_file/ffield_analyzer.py +305 -0
  12. reaxkit/analysis/per_file/fort13_analyzer.py +79 -0
  13. reaxkit/analysis/per_file/fort57_analyzer.py +106 -0
  14. reaxkit/analysis/per_file/fort73_analyzer.py +61 -0
  15. reaxkit/analysis/per_file/fort74_analyzer.py +65 -0
  16. reaxkit/analysis/per_file/fort76_analyzer.py +191 -0
  17. reaxkit/analysis/per_file/fort78_analyzer.py +154 -0
  18. reaxkit/analysis/per_file/fort79_analyzer.py +83 -0
  19. reaxkit/analysis/per_file/fort7_analyzer.py +393 -0
  20. reaxkit/analysis/per_file/fort99_analyzer.py +411 -0
  21. reaxkit/analysis/per_file/molfra_analyzer.py +359 -0
  22. reaxkit/analysis/per_file/params_analyzer.py +258 -0
  23. reaxkit/analysis/per_file/summary_analyzer.py +84 -0
  24. reaxkit/analysis/per_file/trainset_analyzer.py +84 -0
  25. reaxkit/analysis/per_file/vels_analyzer.py +95 -0
  26. reaxkit/analysis/per_file/xmolout_analyzer.py +528 -0
  27. reaxkit/cli.py +181 -0
  28. reaxkit/count_loc.py +276 -0
  29. reaxkit/data/alias.yaml +89 -0
  30. reaxkit/data/constants.yaml +27 -0
  31. reaxkit/data/reaxff_input_files_contents.yaml +186 -0
  32. reaxkit/data/reaxff_output_files_contents.yaml +301 -0
  33. reaxkit/data/units.yaml +38 -0
  34. reaxkit/help/__init__.py +0 -0
  35. reaxkit/help/help_index_loader.py +531 -0
  36. reaxkit/help/introspection_utils.py +131 -0
  37. reaxkit/io/__init__.py +0 -0
  38. reaxkit/io/base_handler.py +165 -0
  39. reaxkit/io/generators/__init__.py +0 -0
  40. reaxkit/io/generators/control_generator.py +123 -0
  41. reaxkit/io/generators/eregime_generator.py +341 -0
  42. reaxkit/io/generators/geo_generator.py +967 -0
  43. reaxkit/io/generators/trainset_generator.py +1758 -0
  44. reaxkit/io/generators/tregime_generator.py +113 -0
  45. reaxkit/io/generators/vregime_generator.py +164 -0
  46. reaxkit/io/generators/xmolout_generator.py +304 -0
  47. reaxkit/io/handlers/__init__.py +0 -0
  48. reaxkit/io/handlers/control_handler.py +209 -0
  49. reaxkit/io/handlers/eregime_handler.py +122 -0
  50. reaxkit/io/handlers/ffield_handler.py +812 -0
  51. reaxkit/io/handlers/fort13_handler.py +123 -0
  52. reaxkit/io/handlers/fort57_handler.py +143 -0
  53. reaxkit/io/handlers/fort73_handler.py +145 -0
  54. reaxkit/io/handlers/fort74_handler.py +155 -0
  55. reaxkit/io/handlers/fort76_handler.py +195 -0
  56. reaxkit/io/handlers/fort78_handler.py +142 -0
  57. reaxkit/io/handlers/fort79_handler.py +227 -0
  58. reaxkit/io/handlers/fort7_handler.py +264 -0
  59. reaxkit/io/handlers/fort99_handler.py +128 -0
  60. reaxkit/io/handlers/geo_handler.py +224 -0
  61. reaxkit/io/handlers/molfra_handler.py +184 -0
  62. reaxkit/io/handlers/params_handler.py +137 -0
  63. reaxkit/io/handlers/summary_handler.py +135 -0
  64. reaxkit/io/handlers/trainset_handler.py +658 -0
  65. reaxkit/io/handlers/vels_handler.py +293 -0
  66. reaxkit/io/handlers/xmolout_handler.py +174 -0
  67. reaxkit/utils/__init__.py +0 -0
  68. reaxkit/utils/alias.py +219 -0
  69. reaxkit/utils/cache.py +77 -0
  70. reaxkit/utils/constants.py +75 -0
  71. reaxkit/utils/equation_of_states.py +96 -0
  72. reaxkit/utils/exceptions.py +27 -0
  73. reaxkit/utils/frame_utils.py +175 -0
  74. reaxkit/utils/log.py +43 -0
  75. reaxkit/utils/media/__init__.py +0 -0
  76. reaxkit/utils/media/convert.py +90 -0
  77. reaxkit/utils/media/make_video.py +91 -0
  78. reaxkit/utils/media/plotter.py +812 -0
  79. reaxkit/utils/numerical/__init__.py +0 -0
  80. reaxkit/utils/numerical/extrema_finder.py +96 -0
  81. reaxkit/utils/numerical/moving_average.py +103 -0
  82. reaxkit/utils/numerical/numerical_calcs.py +75 -0
  83. reaxkit/utils/numerical/signal_ops.py +135 -0
  84. reaxkit/utils/path.py +55 -0
  85. reaxkit/utils/units.py +104 -0
  86. reaxkit/webui/__init__.py +0 -0
  87. reaxkit/webui/app.py +0 -0
  88. reaxkit/webui/components.py +0 -0
  89. reaxkit/webui/layouts.py +0 -0
  90. reaxkit/webui/utils.py +0 -0
  91. reaxkit/workflows/__init__.py +0 -0
  92. reaxkit/workflows/composed/__init__.py +0 -0
  93. reaxkit/workflows/composed/coordination_workflow.py +393 -0
  94. reaxkit/workflows/composed/electrostatics_workflow.py +587 -0
  95. reaxkit/workflows/composed/xmolout_fort7_workflow.py +343 -0
  96. reaxkit/workflows/meta/__init__.py +0 -0
  97. reaxkit/workflows/meta/help_workflow.py +136 -0
  98. reaxkit/workflows/meta/introspection_workflow.py +235 -0
  99. reaxkit/workflows/meta/make_video_workflow.py +61 -0
  100. reaxkit/workflows/meta/plotter_workflow.py +601 -0
  101. reaxkit/workflows/per_file/__init__.py +0 -0
  102. reaxkit/workflows/per_file/control_workflow.py +110 -0
  103. reaxkit/workflows/per_file/eregime_workflow.py +267 -0
  104. reaxkit/workflows/per_file/ffield_workflow.py +390 -0
  105. reaxkit/workflows/per_file/fort13_workflow.py +86 -0
  106. reaxkit/workflows/per_file/fort57_workflow.py +137 -0
  107. reaxkit/workflows/per_file/fort73_workflow.py +151 -0
  108. reaxkit/workflows/per_file/fort74_workflow.py +88 -0
  109. reaxkit/workflows/per_file/fort76_workflow.py +188 -0
  110. reaxkit/workflows/per_file/fort78_workflow.py +135 -0
  111. reaxkit/workflows/per_file/fort79_workflow.py +314 -0
  112. reaxkit/workflows/per_file/fort7_workflow.py +592 -0
  113. reaxkit/workflows/per_file/fort83_workflow.py +60 -0
  114. reaxkit/workflows/per_file/fort99_workflow.py +223 -0
  115. reaxkit/workflows/per_file/geo_workflow.py +554 -0
  116. reaxkit/workflows/per_file/molfra_workflow.py +577 -0
  117. reaxkit/workflows/per_file/params_workflow.py +135 -0
  118. reaxkit/workflows/per_file/summary_workflow.py +161 -0
  119. reaxkit/workflows/per_file/trainset_workflow.py +356 -0
  120. reaxkit/workflows/per_file/tregime_workflow.py +79 -0
  121. reaxkit/workflows/per_file/vels_workflow.py +309 -0
  122. reaxkit/workflows/per_file/vregime_workflow.py +75 -0
  123. reaxkit/workflows/per_file/xmolout_workflow.py +678 -0
  124. reaxkit-1.0.0.dist-info/METADATA +128 -0
  125. reaxkit-1.0.0.dist-info/RECORD +130 -0
  126. reaxkit-1.0.0.dist-info/WHEEL +5 -0
  127. reaxkit-1.0.0.dist-info/entry_points.txt +2 -0
  128. reaxkit-1.0.0.dist-info/licenses/AUTHORS.md +20 -0
  129. reaxkit-1.0.0.dist-info/licenses/LICENSE +21 -0
  130. reaxkit-1.0.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,128 @@
1
+ Metadata-Version: 2.4
2
+ Name: reaxkit
3
+ Version: 1.0.0
4
+ Summary: A toolkit for parsing, analyzing, and visualizing ReaxFF simulation data.
5
+ Author-email: Ali Mohammadi <alimohammadi2265@gmail.com>, Adri van Duin <acv13@psu.edu>, Yun Kyung Shin <yks2@psu.edu>, Alireza Sepehrinezhad <alireza.sepehri@psu.edu>
6
+ License: MIT
7
+ Requires-Python: >=3.9
8
+ Description-Content-Type: text/markdown
9
+ License-File: LICENSE
10
+ License-File: AUTHORS.md
11
+ Requires-Dist: numpy
12
+ Requires-Dist: pandas
13
+ Requires-Dist: matplotlib
14
+ Requires-Dist: seaborn
15
+ Requires-Dist: scipy
16
+ Requires-Dist: tqdm
17
+ Requires-Dist: rich
18
+ Requires-Dist: freud-analysis
19
+ Requires-Dist: ovito
20
+ Requires-Dist: tabulate
21
+ Requires-Dist: ase
22
+ Requires-Dist: imageio
23
+ Requires-Dist: mp_api
24
+ Requires-Dist: PyYAML
25
+ Requires-Dist: rapidfuzz
26
+ Dynamic: license-file
27
+
28
+ # ReaxKit
29
+
30
+ **ReaxKit** is a modular, extensible Python toolkit for **pre‑processing, post‑processing, and analysis of ReaxFF** molecular dynamics simulations.
31
+ It provides a clean separation between file parsing, analysis routines, and reproducible workflows, with both **Python APIs** and a **CLI interface**.
32
+
33
+ ReaxKit is designed for researchers who want a transparent, scriptable bridge between raw ReaxFF files and quantitative, publication‑ready results.
34
+
35
+ ---
36
+
37
+ ## Key Capabilities
38
+
39
+ ### File IO (Parsing & Generation)
40
+ - Robust handlers for ReaxFF input and output files:
41
+ - `xmolout`, `fort.7`, `fort.13`, `molfra`, and more
42
+ - Input file generators:
43
+ - `control`, `geo`, `eregime`, `tregime`, and more
44
+ - Unified handler interface for consistent data access
45
+
46
+ ### Analysis
47
+ - Per‑file analyzers (one analyzer per ReaxFF file type)
48
+ - Composed analyzers that combine multiple data sources:
49
+ - Coordination numbers
50
+ - Connectivity graphs
51
+ - Electrostatics and dipoles
52
+ - Radial distribution functions (RDF)
53
+ - Numerical utilities for smoothing, extrema detection, and signal processing
54
+
55
+ ### Workflows
56
+ - Reproducible, CLI‑driven workflows for:
57
+ - Single‑file analysis
58
+ - Multi‑file composed analysis
59
+ - Plotting and media generation
60
+ - Designed to automate common ReaxFF post‑processing tasks
61
+
62
+ ### Visualization & Media
63
+ - Publication‑ready plotting utilities (2D, dual‑axis, tornado plots, 3D scatter, heatmaps)
64
+ - Trajectory and plot video generation
65
+
66
+ See the full documentation (API reference, tutorials, examples) on [ReaxKit Site](https://ali-m-dinani.github.io/reaxkit/).
67
+
68
+ ---
69
+
70
+ ## Project Layout
71
+
72
+ ```
73
+ src/reaxkit/
74
+ ├── analysis/ # Analysis routines (per-file and composed)
75
+ ├── io/ # File handlers and generators
76
+ ├── utils/ # Shared utilities (aliases, units, constants, numerics)
77
+ ├── workflows/ # CLI and automation workflows
78
+ ├── help/ # Introspection and help system
79
+ └── cli.py # Command-line entry point
80
+ ```
81
+
82
+ Additional resources:
83
+
84
+ - [Installation notes](docs/installation.md) — Full installation instructions (requires **Python ≥ 3.9**).
85
+ - [Quickstart](docs/quickstart.md) — Get up and running with core ReaxKit workflows in minutes.
86
+ - [Tutorials notes](docs/tutorials/index.md) and [source files](https://ali-m-dinani.github.io/reaxkit/tutorials/) — Step-by-step guides for common ReaxKit workflows and use cases.
87
+ - [Examples](docs/examples/README.md) and [source files](https://ali-m-dinani.github.io/reaxkit/examples/) — Minimal, runnable Python examples using public APIs.
88
+ - [ReaxFF Reference](docs/reaxff_reference/index.md) — Reference documentation for ReaxFF input and output files.
89
+ - [Contributing](docs/contributing.md) — Guidelines for contributing to ReaxKit.
90
+ - [File Templates](docs/file_templates/index.md) and [Docstring Conventions](docs/file_templates/docstrings.md) — Development guidelines and code templates.
91
+ - [AUTHORS.md](AUTHORS.md) — Full credits and acknowledgments.
92
+ - [LICENSE](LICENSE) — Full license terms under the **MIT License**
93
+
94
+ ---
95
+
96
+ ## Testing
97
+
98
+ Run unit tests with:
99
+
100
+ ```bash
101
+ pytest -s tests/
102
+ ```
103
+
104
+ to test the package and get the timing for their execution.
105
+
106
+ ---
107
+
108
+ ## Citation
109
+
110
+ If you use ReaxKit in your work, please cite:
111
+
112
+ ```text
113
+ Dinani, A. M., van Duin, A., Shin, Y. K., & Sepehrinezhad, A. (2025).
114
+ ReaxKit: A modular Python toolkit for ReaxFF simulation analysis.
115
+ Zenodo. https://doi.org/10.5281/zenodo.18485384
116
+
117
+ Source code: https://github.com/ali-m-dinani/reaxkit
118
+ ```
119
+
120
+ ---
121
+
122
+ ## Future Directions
123
+
124
+ * Add support for other analyzers including autocorrelation functions, thermodynamic properties calculations, etc.
125
+ * Develop GUI dashboard for interactive ReaxFF data inspection
126
+ * Implement ML-based trend prediction for simulation outputs
127
+
128
+ If you have any feature request, you can submit it through the ReaxKit's GitHub page, or directly sending an email to `Dinani@psu.edu`.
@@ -0,0 +1,130 @@
1
+ reaxkit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ reaxkit/cli.py,sha256=0aML3is4WdmQQhNPgH9RQnGXTrrTtZHzbTcrpXdpmH0,6822
3
+ reaxkit/count_loc.py,sha256=4A_0O817KGA04bZwzFFtMSefU_5IBQZDlXL8P7SWmeg,8119
4
+ reaxkit/analysis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
+ reaxkit/analysis/composed/RDF_analyzer.py,sha256=vkJpJmN_ZgLeFYCgOCBOaxd9Pi0HcXzxpkkwXks9mJI,16633
6
+ reaxkit/analysis/composed/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
+ reaxkit/analysis/composed/connectivity_analyzer.py,sha256=zYVt7ciwn7nZ3hm5J6tge9LemHrnkV8DYSu62J37pKA,23793
8
+ reaxkit/analysis/composed/coordination_analyzer.py,sha256=EtwzMZCtaIQX_eyTbkfl1aKx4n6sAa0ew5qnVOHJTPw,4977
9
+ reaxkit/analysis/composed/electrostatics_analyzer.py,sha256=z_O-gLNra7KSn62IGEHLgflAeFA1Tx8EuiDFzDpLusc,23711
10
+ reaxkit/analysis/per_file/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
+ reaxkit/analysis/per_file/control_analyzer.py,sha256=wu0bq_MU8mHXmKc9eXH_hfiJs3lQCy17zkzuwroDnOU,4638
12
+ reaxkit/analysis/per_file/eregime_analyzer.py,sha256=6PMshD0-QhpXbXhxHa9WnXPlnzOPPyDxoj5k44R3Fl8,3863
13
+ reaxkit/analysis/per_file/ffield_analyzer.py,sha256=46vsYiCP60ifszUMIatMz54nwvND98OvzSC-wlMPXJs,9685
14
+ reaxkit/analysis/per_file/fort13_analyzer.py,sha256=SfLHtrvyYNV12AGPQgrqy3lSDodfHYel0tTf7bLmvbM,2239
15
+ reaxkit/analysis/per_file/fort57_analyzer.py,sha256=OX-QOtZVue669i6jbciLRudVeBHwMvHglaw4AYcIuc4,3457
16
+ reaxkit/analysis/per_file/fort73_analyzer.py,sha256=KhgOELSbMP4J6nWO0mseKXZwuNS5jkX1-fqRdubgtyg,1983
17
+ reaxkit/analysis/per_file/fort74_analyzer.py,sha256=dM-4isUDMum3tk5xvPFXfFhhGR3qXdrf5KbJiuMnpl4,1752
18
+ reaxkit/analysis/per_file/fort76_analyzer.py,sha256=B99lUbM0io7w8DqtJWcumKfNqereGSSDXzM0sdsJyyM,5469
19
+ reaxkit/analysis/per_file/fort78_analyzer.py,sha256=Bv7ptYnWxdBm-NjXHRvhaZq4Lb6CnsoSX0Hm4CG-p6E,5624
20
+ reaxkit/analysis/per_file/fort79_analyzer.py,sha256=iGSQnd0N_WyoPDlOOBuOTkZZcrhTcNZsQsSK2JnDXZs,2834
21
+ reaxkit/analysis/per_file/fort7_analyzer.py,sha256=1G99xtq2aNoc_qp2aoXwKS3Ekl4v24a2jRYfTUM7cU8,11861
22
+ reaxkit/analysis/per_file/fort99_analyzer.py,sha256=62fkcZLwW0lRX6nYcNT0QeD8f0CGz2ZSI0BrtV0CzzE,12202
23
+ reaxkit/analysis/per_file/molfra_analyzer.py,sha256=hCyuP8MEEKkLjjdA3L39vRkCyrw3CM5E4K0R4Q5w4HE,10931
24
+ reaxkit/analysis/per_file/params_analyzer.py,sha256=McGGjb33RpluC7jt56_hRCeaxIzP7q-foT6hi1qxTq0,9530
25
+ reaxkit/analysis/per_file/summary_analyzer.py,sha256=2Nx5XWjVU4ltxqo6uvQY58nfVti9G6SGwv1_S_x1pxc,2705
26
+ reaxkit/analysis/per_file/trainset_analyzer.py,sha256=1_Prrl_BFzJzPXwgi7BUDldAnnc3CuMbAZ-tsK6w6qM,2503
27
+ reaxkit/analysis/per_file/vels_analyzer.py,sha256=DkEuKd6TW9gK2SV_EPJv_OJEOYpr2zOW77SyO3IcG6I,2941
28
+ reaxkit/analysis/per_file/xmolout_analyzer.py,sha256=TfTCoCPnWY_xZz_KdKVoDY0gH-mTbAlaK-Vx9zrMtqo,18059
29
+ reaxkit/data/alias.yaml,sha256=7Hgt6rVFeCVUrX-3RHvc7GCFPcW5_IP6nZBGQ7uMFjE,2468
30
+ reaxkit/data/constants.yaml,sha256=TTVMMcjQvp8sYagIM4fUT2B75et1NGuMBcdUrXf5F88,726
31
+ reaxkit/data/reaxff_input_files_contents.yaml,sha256=wNswKOopdd8Zc5-BQT6f8GeHk4hpMtmFGWwEDMm871A,9302
32
+ reaxkit/data/reaxff_output_files_contents.yaml,sha256=c0tDiFbxqQY2DIBOtx76w6f_jBU0uqXLqvPAT-IWVss,13452
33
+ reaxkit/data/units.yaml,sha256=b7NfCknNK6xLfeXHz4g4zSZaGVvxJgwiZFvty5K7svw,742
34
+ reaxkit/help/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
+ reaxkit/help/help_index_loader.py,sha256=-VFh2pv9D8jauPfoxtkbGUO5XRzIUgJ2Hj5jy6lrO0g,14527
36
+ reaxkit/help/introspection_utils.py,sha256=YI72Ajp9uY4Os-kU_b9V3QWydowY1Afg4IRrkM1kJ3Y,4304
37
+ reaxkit/io/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
38
+ reaxkit/io/base_handler.py,sha256=BqUeZsTLLbLsVIL58ARmAIMQFfJeBTF-0MMysDbuyLw,4430
39
+ reaxkit/io/generators/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
40
+ reaxkit/io/generators/control_generator.py,sha256=IUfxAuwQLRF074YuLPxPDrfFxgjylkQA-hcsyZLk7eo,5644
41
+ reaxkit/io/generators/eregime_generator.py,sha256=TotKIRTTI0SGe4KfwVMwWYlItjA0-haBgHWizpvxwRM,9769
42
+ reaxkit/io/generators/geo_generator.py,sha256=11F_HAOGBDa2CR7KymuLFwJ6pHpGkYWiG3aY1V9mdHQ,30678
43
+ reaxkit/io/generators/trainset_generator.py,sha256=uUJj-Bxq2VSlVWgzwmJbPyegVA8nagl0uuIsa1Ow19A,63137
44
+ reaxkit/io/generators/tregime_generator.py,sha256=GxzcE-BI4rX_CmxgiKabwEy-IxMfdFKfyA3318B9V6s,3381
45
+ reaxkit/io/generators/vregime_generator.py,sha256=FkkVusKsLkgdkfMWoufdWQcLeC2Ua4rKzlpGvmhNZ1Y,4847
46
+ reaxkit/io/generators/xmolout_generator.py,sha256=iohsGy_atNBh5IEZoag2FxxV41Ky9Jxe6uTYzcaCK4Y,11801
47
+ reaxkit/io/handlers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
48
+ reaxkit/io/handlers/control_handler.py,sha256=dHDayXK9eG7SyiT1YifcAtT4di9_hsSHmWjMMXEXgFw,7292
49
+ reaxkit/io/handlers/eregime_handler.py,sha256=MBfUsE3ZtVwW6dJ_q7g8-phqWKD44KiL1Ggi7eNAJfQ,3902
50
+ reaxkit/io/handlers/ffield_handler.py,sha256=JZ7vwoHPh0jouh6LzQd0uu5-u2_R-G38uyXSLEnsUdU,27465
51
+ reaxkit/io/handlers/fort13_handler.py,sha256=n6TmpDklsn36V7nxheHTeKl1fs3RNqSbROJ1ZapP5lI,3729
52
+ reaxkit/io/handlers/fort57_handler.py,sha256=Q35wl0kVVuFr2aIu0sSjp1P57VBkv_DH39noy5z94f0,4293
53
+ reaxkit/io/handlers/fort73_handler.py,sha256=jjNwM0RnW9P2QNRf74gE47HlU63x1dJoKrvjlqD3fks,4703
54
+ reaxkit/io/handlers/fort74_handler.py,sha256=g8oxSqdmDWJrMkjcURro1Zi9V4zq0P2dTh9Dpwtenkw,4671
55
+ reaxkit/io/handlers/fort76_handler.py,sha256=oRlx5eGgDJOx8ATDEJLT4Kp88ghYMXJvevHMkAhVQ4Y,6375
56
+ reaxkit/io/handlers/fort78_handler.py,sha256=418mwM6Xs7kV9P-kIcUh0Lz1jeHd8HHK4MIkUnf2R_0,4409
57
+ reaxkit/io/handlers/fort79_handler.py,sha256=mZ29s2Dti_QJ1CUbrhOZ8og0Wqvmjr--TUaofWZqp80,8419
58
+ reaxkit/io/handlers/fort7_handler.py,sha256=juZhlXiJSY6u8CZHhm6TdHp3oVsR8Aayr-XWpBSagTg,8452
59
+ reaxkit/io/handlers/fort99_handler.py,sha256=EeI1t2O72sp60D_eMGkohftTmC3EiUny_fT-GdWNY1s,4253
60
+ reaxkit/io/handlers/geo_handler.py,sha256=oO-es4ko9JmBfFgAoPjHr7kxZPFmFEKrtOH2cXJYJ9s,7900
61
+ reaxkit/io/handlers/molfra_handler.py,sha256=I6v99n0cGxpHSaR5kMUM5PPHUJniqqLLNH79XM75jB4,6776
62
+ reaxkit/io/handlers/params_handler.py,sha256=k3PBEUoNAloH61NmL2TYMLvTsBhlhJtRy0ZRnwHmdvU,4506
63
+ reaxkit/io/handlers/summary_handler.py,sha256=6OeFjV6khbv9r2YGk9rR0R3l6TNJUoad2zV-16Rkf8Q,4569
64
+ reaxkit/io/handlers/trainset_handler.py,sha256=qoYay_GZRdDz58yQn1Qsd-j5BFXTqWnuKWi4ba8pvXw,19978
65
+ reaxkit/io/handlers/vels_handler.py,sha256=nlfFDGD_n0oiVgkiVUds2lHgS-fQ3KqG7HOV6Z9bl0Q,10871
66
+ reaxkit/io/handlers/xmolout_handler.py,sha256=da7zKHSEXoFM-_Tk4tNSfnCiDVSjbyCbaAw2KpTDxaQ,6940
67
+ reaxkit/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
+ reaxkit/utils/alias.py,sha256=17XIh6xfsp1kzlfVoMWO0IZgXBtomgPnW073H_p-ikY,6209
69
+ reaxkit/utils/cache.py,sha256=n6jmAgh4iJ71vY8UIIoBdPWHzD6oZsJZ_amp5rtL4IU,2145
70
+ reaxkit/utils/constants.py,sha256=aK55DtTbUNN-BZS_cCzd8mRMvSAyEigUfXweNdmtpWo,1916
71
+ reaxkit/utils/equation_of_states.py,sha256=s2vkAC_CR7edkWf90Ctrl5QjtitQRqY0uGwc_bLIySc,2901
72
+ reaxkit/utils/exceptions.py,sha256=0J2omtBNtJ5F7TwxQkq0ntgf8NNLEmP-6t6pERC29bQ,813
73
+ reaxkit/utils/frame_utils.py,sha256=pefGmR7scoQjv3irm7RPimtVraWPstu4KvLfyXcTVcQ,5426
74
+ reaxkit/utils/log.py,sha256=grvE1IC3Sf1cLGoaAG3GVqCErw-kHc9XUjZQHhakUAs,1227
75
+ reaxkit/utils/path.py,sha256=wx0zNjRm02UKGrspQVRBtWKDSVCc0HoYswYWBlIFdMg,1683
76
+ reaxkit/utils/units.py,sha256=7CKZ3MEROrWzw7embH2ffO3lMYU4LjPMOOHcXfQvGeM,2644
77
+ reaxkit/utils/media/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
78
+ reaxkit/utils/media/convert.py,sha256=x-0EBN9WV4hcZgW5u8zoJSmJ-jWSOvDw4GAJmawLeW4,2696
79
+ reaxkit/utils/media/make_video.py,sha256=OeIC4Q5YbSQR7JsPTBulh4CF6DtMVDp8u7qV-gWTQ5w,2422
80
+ reaxkit/utils/media/plotter.py,sha256=8hC2wmz-ZFEU5nDjcakc307bU0WPEM5aO1QkEbQ7bQU,26689
81
+ reaxkit/utils/numerical/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
82
+ reaxkit/utils/numerical/extrema_finder.py,sha256=tQZg5J-scZz5uMMZxVNgqXdjv2GHn5akkipUeSnT3Zc,3289
83
+ reaxkit/utils/numerical/moving_average.py,sha256=l7sNfkwSRv2ib7daOuKb_I6QgnjQHa5RpsxU35H_Vdc,3132
84
+ reaxkit/utils/numerical/numerical_calcs.py,sha256=GuuQOUiY892RQtoVbZz0hw1NqE7DjQA7lg3vHlkfvQc,2247
85
+ reaxkit/utils/numerical/signal_ops.py,sha256=lNkS1FsE272IwJlF5KjYF6olQmS325j70NmCU-BK0ts,3981
86
+ reaxkit/webui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
87
+ reaxkit/webui/app.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
88
+ reaxkit/webui/components.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
89
+ reaxkit/webui/layouts.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
90
+ reaxkit/webui/utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
91
+ reaxkit/workflows/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
92
+ reaxkit/workflows/composed/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
93
+ reaxkit/workflows/composed/coordination_workflow.py,sha256=m1ForqtxPi-FEqiKJh5tz4uOTZ_45l86gS-SYVpVJfg,14858
94
+ reaxkit/workflows/composed/electrostatics_workflow.py,sha256=T3pCr6wnmcIg7Mw0WLqaqzbOnTCias467EHHXItpc5E,23399
95
+ reaxkit/workflows/composed/xmolout_fort7_workflow.py,sha256=ZLxb1EpjWYUIVCZSud6erFDwueGFUGGLp_9SoaQcbxQ,12411
96
+ reaxkit/workflows/meta/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
97
+ reaxkit/workflows/meta/help_workflow.py,sha256=o41Bl5J_E6HwxC2imzZZaxBD9WYTxQDHd1wGOrwb3sA,4917
98
+ reaxkit/workflows/meta/introspection_workflow.py,sha256=f6X61PPN_DVH7ZwP-9GePuK_UHmHyZT-3_i3R8lJO7k,7715
99
+ reaxkit/workflows/meta/make_video_workflow.py,sha256=wehDDhq_PvibxNwhl0lmYT9a6GHoBhFw1NvmprU1ebg,2259
100
+ reaxkit/workflows/meta/plotter_workflow.py,sha256=q0V1cNWtLMXWurKGzD2anEw5_AWa2WvgKkVb6z-LJ3k,20972
101
+ reaxkit/workflows/per_file/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
102
+ reaxkit/workflows/per_file/control_workflow.py,sha256=TKd9apFlp-1i2Kw0h2lcthu5HrrTXKnAJWSOFW3Vabo,3654
103
+ reaxkit/workflows/per_file/eregime_workflow.py,sha256=o9GNMZ5uLNvIZQ4cpFbHq6TZE9pvDP01yaj4VjWrVx8,11688
104
+ reaxkit/workflows/per_file/ffield_workflow.py,sha256=hgXEdwhXN1gcsLghMXcbdI-H8a4Ewhs2YNCDRMqnqHU,13965
105
+ reaxkit/workflows/per_file/fort13_workflow.py,sha256=jsy23eFSVHTmIVSgEyJ1emD3JB5Tk0nE7sC0j46hShU,2923
106
+ reaxkit/workflows/per_file/fort57_workflow.py,sha256=SBlS9bnGNw_E7PQPfEOkTW_bY2Nb796ybWqrjf_UERU,5297
107
+ reaxkit/workflows/per_file/fort73_workflow.py,sha256=UXmvX0SguIqWtU-tKZJwhV1K0YTo7bJlE5DTBQKfq2A,5864
108
+ reaxkit/workflows/per_file/fort74_workflow.py,sha256=qZL_kFlAvjHs734G8CT9in1AFg-6FsBCbEox7KRC584,3097
109
+ reaxkit/workflows/per_file/fort76_workflow.py,sha256=Yv7Ts43QhJQ_44gEGuBskqtiKXb7-K4UT0wlG5vIFhQ,6729
110
+ reaxkit/workflows/per_file/fort78_workflow.py,sha256=naDiuslGRWWhQEny9Gxwri9OrGTYdrEYIlZ5Jr2vf44,5076
111
+ reaxkit/workflows/per_file/fort79_workflow.py,sha256=eI1iufPIu31oQK1e-nWNbr2KXAg3PNzZ2jcNiNWIksw,11119
112
+ reaxkit/workflows/per_file/fort7_workflow.py,sha256=Si9v3VYFgmAMZ4qO2zB5eubm-FnhwNl39VQaT3ZZ3Yc,25024
113
+ reaxkit/workflows/per_file/fort83_workflow.py,sha256=YRk3HBi9B0ECfb5SOSlSL_YbieZP0aBA_vxnQyylvw0,1882
114
+ reaxkit/workflows/per_file/fort99_workflow.py,sha256=Hdt-skY9R8L7JCxEXB85Sr8xhn2lU4nBQmLBvjGPqPI,8288
115
+ reaxkit/workflows/per_file/geo_workflow.py,sha256=js9zjt0oTfj04rxtv2BdEod7XvbnDldOcJEwJqvCWrE,21719
116
+ reaxkit/workflows/per_file/molfra_workflow.py,sha256=WphDuaxYh22gO22mmDd_SSNQl3lEMRxItau9ADlq8qk,19994
117
+ reaxkit/workflows/per_file/params_workflow.py,sha256=IBA5kBFbRfZ3Vq1RY6Ij5hRLxtK8-TRh3IJJfgexGQQ,4621
118
+ reaxkit/workflows/per_file/summary_workflow.py,sha256=l3iIiZpNmbfYpWT_363LMXKJ0wIoEpP21xJzybAEPRE,5418
119
+ reaxkit/workflows/per_file/trainset_workflow.py,sha256=o70GHHHuNXtJuFBtjiwR7Aol0Cm-bynA-ebH25KEaMc,14261
120
+ reaxkit/workflows/per_file/tregime_workflow.py,sha256=4qNqBtOk7kFqxss9T54NZnHYlznP8F3trRAVDmu539Q,2418
121
+ reaxkit/workflows/per_file/vels_workflow.py,sha256=dn1PDyzS4AGLGohmEZ7blrmency_WU4bV13eQJ_pTDg,11366
122
+ reaxkit/workflows/per_file/vregime_workflow.py,sha256=7wDAZjbHLHqcfKNSeeXD7us3UrQg-zS-HH8jeAqLBXI,2307
123
+ reaxkit/workflows/per_file/xmolout_workflow.py,sha256=yZgMwrKJsB2Wkpf1U7zeWHisGJkmmlz3e2Sgz4XaQPs,25763
124
+ reaxkit-1.0.0.dist-info/licenses/AUTHORS.md,sha256=sahohZVSckabyzoktBcj0w-wh5_hkweuY3XGRsWfBgw,999
125
+ reaxkit-1.0.0.dist-info/licenses/LICENSE,sha256=FYxjyZhHlSkBJxwr2QSWrzKwrE6wIXJqd7XMbqqqNZo,1085
126
+ reaxkit-1.0.0.dist-info/METADATA,sha256=YwcBktR_UYk1-AjhVq3joias0NUY6Y2I6IW3-hqxhjk,4741
127
+ reaxkit-1.0.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
128
+ reaxkit-1.0.0.dist-info/entry_points.txt,sha256=tmKrYSzpgRYlJA2669o19gq3OtHRycAPZ5qirLEuHrs,45
129
+ reaxkit-1.0.0.dist-info/top_level.txt,sha256=Heg_s3-FOLuTyjzt-syoG1LNZdhCapmn3JcEn809kKI,8
130
+ reaxkit-1.0.0.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (80.10.2)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ reaxkit = reaxkit.cli:main
@@ -0,0 +1,20 @@
1
+ # Authors and Acknowledgments
2
+
3
+ **ReaxKit** was primarily developed by:
4
+
5
+ - **Ali Mohammadi Dinani** – Project lead; design, and architecture; developing handlers, analyzers, and workflows
6
+ - **Adri van Duin** - Supervision and support for ReaxKit; developing `xtob.f` and `place2.f` fortran codes used in `geo_generator.py`; developing ReaxFF
7
+
8
+ ### Code Contributions and Collaborations
9
+
10
+
11
+ Parts of this codebase were inspired by or adapted from work contributed by:
12
+
13
+ - **[Yun Kyung Shin]** – developed the `elastic_energy.f` and `elastic_geo.f` fortran codes used in `trainset_generator.py`
14
+ - **[Alireza Sepehrinezhad]** – developed the initial version of `make_eregime_sinusoidal` used in `eregime_generator.py` and `dipole_analyzer.py` code used in the `electrostatics_analyzers.py`
15
+
16
+ Their original contributions have been modified and integrated with permission.
17
+
18
+ ---
19
+
20
+ If you believe your contributions or ideas are reflected here and you’re not yet listed, please contact the maintainer.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Ali Mohammadi Dinani
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the “Software”), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1 @@
1
+ reaxkit