mlmm-toolkit 0.2.2.dev0__tar.gz

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 (546) hide show
  1. mlmm_toolkit-0.2.2.dev0/.github/workflows/docs.yml +51 -0
  2. mlmm_toolkit-0.2.2.dev0/.github/workflows/docs_quality.yml +42 -0
  3. mlmm_toolkit-0.2.2.dev0/.github/workflows/pytest.yml +43 -0
  4. mlmm_toolkit-0.2.2.dev0/.github/workflows/release.yml +41 -0
  5. mlmm_toolkit-0.2.2.dev0/.github/workflows/smoke_test.yml +125 -0
  6. mlmm_toolkit-0.2.2.dev0/.gitignore +55 -0
  7. mlmm_toolkit-0.2.2.dev0/CHANGELOG.md +111 -0
  8. mlmm_toolkit-0.2.2.dev0/CONTRIBUTING.md +47 -0
  9. mlmm_toolkit-0.2.2.dev0/LICENSE +674 -0
  10. mlmm_toolkit-0.2.2.dev0/MANIFEST.in +9 -0
  11. mlmm_toolkit-0.2.2.dev0/PKG-INFO +1159 -0
  12. mlmm_toolkit-0.2.2.dev0/README.md +408 -0
  13. mlmm_toolkit-0.2.2.dev0/THIRD_PARTY_NOTICES.txt +57 -0
  14. mlmm_toolkit-0.2.2.dev0/docs/Makefile +27 -0
  15. mlmm_toolkit-0.2.2.dev0/docs/_static/custom.css +110 -0
  16. mlmm_toolkit-0.2.2.dev0/docs/_templates/page.html +339 -0
  17. mlmm_toolkit-0.2.2.dev0/docs/add_elem_info.md +66 -0
  18. mlmm_toolkit-0.2.2.dev0/docs/all.md +383 -0
  19. mlmm_toolkit-0.2.2.dev0/docs/cli_conventions.md +317 -0
  20. mlmm_toolkit-0.2.2.dev0/docs/concepts.md +235 -0
  21. mlmm_toolkit-0.2.2.dev0/docs/conf.py +151 -0
  22. mlmm_toolkit-0.2.2.dev0/docs/define_layer.md +70 -0
  23. mlmm_toolkit-0.2.2.dev0/docs/device_hpc.md +176 -0
  24. mlmm_toolkit-0.2.2.dev0/docs/dft.md +142 -0
  25. mlmm_toolkit-0.2.2.dev0/docs/energy_diagram.md +53 -0
  26. mlmm_toolkit-0.2.2.dev0/docs/extract.md +238 -0
  27. mlmm_toolkit-0.2.2.dev0/docs/fix_altloc.md +152 -0
  28. mlmm_toolkit-0.2.2.dev0/docs/freq.md +149 -0
  29. mlmm_toolkit-0.2.2.dev0/docs/getting_started.md +574 -0
  30. mlmm_toolkit-0.2.2.dev0/docs/glossary.md +152 -0
  31. mlmm_toolkit-0.2.2.dev0/docs/index.md +334 -0
  32. mlmm_toolkit-0.2.2.dev0/docs/init.md +25 -0
  33. mlmm_toolkit-0.2.2.dev0/docs/irc.md +175 -0
  34. mlmm_toolkit-0.2.2.dev0/docs/ja/add_elem_info.md +60 -0
  35. mlmm_toolkit-0.2.2.dev0/docs/ja/all.md +384 -0
  36. mlmm_toolkit-0.2.2.dev0/docs/ja/cli_conventions.md +319 -0
  37. mlmm_toolkit-0.2.2.dev0/docs/ja/concepts.md +233 -0
  38. mlmm_toolkit-0.2.2.dev0/docs/ja/define_layer.md +76 -0
  39. mlmm_toolkit-0.2.2.dev0/docs/ja/device_hpc.md +182 -0
  40. mlmm_toolkit-0.2.2.dev0/docs/ja/dft.md +144 -0
  41. mlmm_toolkit-0.2.2.dev0/docs/ja/energy_diagram.md +55 -0
  42. mlmm_toolkit-0.2.2.dev0/docs/ja/extract.md +240 -0
  43. mlmm_toolkit-0.2.2.dev0/docs/ja/fix_altloc.md +152 -0
  44. mlmm_toolkit-0.2.2.dev0/docs/ja/freq.md +152 -0
  45. mlmm_toolkit-0.2.2.dev0/docs/ja/getting_started.md +549 -0
  46. mlmm_toolkit-0.2.2.dev0/docs/ja/glossary.md +152 -0
  47. mlmm_toolkit-0.2.2.dev0/docs/ja/index.md +294 -0
  48. mlmm_toolkit-0.2.2.dev0/docs/ja/init.md +27 -0
  49. mlmm_toolkit-0.2.2.dev0/docs/ja/irc.md +182 -0
  50. mlmm_toolkit-0.2.2.dev0/docs/ja/mlmm_calc.md +118 -0
  51. mlmm_toolkit-0.2.2.dev0/docs/ja/mm_parm.md +72 -0
  52. mlmm_toolkit-0.2.2.dev0/docs/ja/oniom_export.md +38 -0
  53. mlmm_toolkit-0.2.2.dev0/docs/ja/oniom_gaussian.md +78 -0
  54. mlmm_toolkit-0.2.2.dev0/docs/ja/oniom_import.md +70 -0
  55. mlmm_toolkit-0.2.2.dev0/docs/ja/oniom_orca.md +82 -0
  56. mlmm_toolkit-0.2.2.dev0/docs/ja/opt.md +285 -0
  57. mlmm_toolkit-0.2.2.dev0/docs/ja/path_opt.md +160 -0
  58. mlmm_toolkit-0.2.2.dev0/docs/ja/path_search.md +154 -0
  59. mlmm_toolkit-0.2.2.dev0/docs/ja/pysis.md +172 -0
  60. mlmm_toolkit-0.2.2.dev0/docs/ja/python_api.md +179 -0
  61. mlmm_toolkit-0.2.2.dev0/docs/ja/quickstart_all.md +37 -0
  62. mlmm_toolkit-0.2.2.dev0/docs/ja/quickstart_scan_spec.md +43 -0
  63. mlmm_toolkit-0.2.2.dev0/docs/ja/quickstart_tsopt_freq.md +50 -0
  64. mlmm_toolkit-0.2.2.dev0/docs/ja/recipes_common_errors.md +59 -0
  65. mlmm_toolkit-0.2.2.dev0/docs/ja/scan.md +266 -0
  66. mlmm_toolkit-0.2.2.dev0/docs/ja/scan2d.md +221 -0
  67. mlmm_toolkit-0.2.2.dev0/docs/ja/scan3d.md +223 -0
  68. mlmm_toolkit-0.2.2.dev0/docs/ja/trj2fig.md +78 -0
  69. mlmm_toolkit-0.2.2.dev0/docs/ja/troubleshooting.md +500 -0
  70. mlmm_toolkit-0.2.2.dev0/docs/ja/tsopt.md +237 -0
  71. mlmm_toolkit-0.2.2.dev0/docs/ja/yaml_reference.md +625 -0
  72. mlmm_toolkit-0.2.2.dev0/docs/make.bat +35 -0
  73. mlmm_toolkit-0.2.2.dev0/docs/mlmm_calc.md +114 -0
  74. mlmm_toolkit-0.2.2.dev0/docs/mlmm_toolkit_overview.png +0 -0
  75. mlmm_toolkit-0.2.2.dev0/docs/mm_parm.md +69 -0
  76. mlmm_toolkit-0.2.2.dev0/docs/oniom_export.md +36 -0
  77. mlmm_toolkit-0.2.2.dev0/docs/oniom_gaussian.md +75 -0
  78. mlmm_toolkit-0.2.2.dev0/docs/oniom_import.md +68 -0
  79. mlmm_toolkit-0.2.2.dev0/docs/oniom_orca.md +79 -0
  80. mlmm_toolkit-0.2.2.dev0/docs/opt.md +282 -0
  81. mlmm_toolkit-0.2.2.dev0/docs/path_opt.md +162 -0
  82. mlmm_toolkit-0.2.2.dev0/docs/path_search.md +152 -0
  83. mlmm_toolkit-0.2.2.dev0/docs/pysis.md +172 -0
  84. mlmm_toolkit-0.2.2.dev0/docs/python_api.md +179 -0
  85. mlmm_toolkit-0.2.2.dev0/docs/quickstart_all.md +37 -0
  86. mlmm_toolkit-0.2.2.dev0/docs/quickstart_scan_spec.md +39 -0
  87. mlmm_toolkit-0.2.2.dev0/docs/quickstart_tsopt_freq.md +50 -0
  88. mlmm_toolkit-0.2.2.dev0/docs/recipes_common_errors.md +59 -0
  89. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/add_elem_info.md +18 -0
  90. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/all.md +193 -0
  91. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/define_layer.md +28 -0
  92. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/dft.md +72 -0
  93. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/energy_diagram.md +19 -0
  94. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/extract.md +45 -0
  95. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/fix_altloc.md +27 -0
  96. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/freq.md +102 -0
  97. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/index.md +52 -0
  98. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/irc.md +81 -0
  99. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/mm_parm.md +35 -0
  100. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/oniom_export.md +44 -0
  101. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/oniom_import.md +21 -0
  102. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/opt.md +112 -0
  103. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/path_opt.md +93 -0
  104. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/path_search.md +106 -0
  105. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/pysis.md +20 -0
  106. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/scan.md +105 -0
  107. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/scan2d.md +94 -0
  108. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/scan3d.md +95 -0
  109. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/trj2fig.md +27 -0
  110. mlmm_toolkit-0.2.2.dev0/docs/reference/commands/tsopt.md +119 -0
  111. mlmm_toolkit-0.2.2.dev0/docs/reference/yaml.md +122 -0
  112. mlmm_toolkit-0.2.2.dev0/docs/requirements_docs.txt +5 -0
  113. mlmm_toolkit-0.2.2.dev0/docs/scan.md +278 -0
  114. mlmm_toolkit-0.2.2.dev0/docs/scan2d.md +216 -0
  115. mlmm_toolkit-0.2.2.dev0/docs/scan3d.md +225 -0
  116. mlmm_toolkit-0.2.2.dev0/docs/trj2fig.md +79 -0
  117. mlmm_toolkit-0.2.2.dev0/docs/troubleshooting.md +484 -0
  118. mlmm_toolkit-0.2.2.dev0/docs/tsopt.md +235 -0
  119. mlmm_toolkit-0.2.2.dev0/docs/yaml_reference.md +652 -0
  120. mlmm_toolkit-0.2.2.dev0/examples/methyltransferase/complex.parm7 +47639 -0
  121. mlmm_toolkit-0.2.2.dev0/examples/methyltransferase/complex.pdb +13995 -0
  122. mlmm_toolkit-0.2.2.dev0/examples/methyltransferase/complex.rst7 +6999 -0
  123. mlmm_toolkit-0.2.2.dev0/examples/methyltransferase/pocket.pdb +255 -0
  124. mlmm_toolkit-0.2.2.dev0/examples/methyltransferase/r_layered.pdb +13995 -0
  125. mlmm_toolkit-0.2.2.dev0/examples/methyltransferase/run_all.sh +4 -0
  126. mlmm_toolkit-0.2.2.dev0/examples/methyltransferase/run_stepwise.sh +40 -0
  127. mlmm_toolkit-0.2.2.dev0/examples/toy_system/ml_region_p.pdb +63 -0
  128. mlmm_toolkit-0.2.2.dev0/examples/toy_system/ml_region_r.pdb +48 -0
  129. mlmm_toolkit-0.2.2.dev0/examples/toy_system/opt_ase.py +22 -0
  130. mlmm_toolkit-0.2.2.dev0/examples/toy_system/p_complex.parm7 +1346 -0
  131. mlmm_toolkit-0.2.2.dev0/examples/toy_system/p_complex.pdb +125 -0
  132. mlmm_toolkit-0.2.2.dev0/examples/toy_system/p_complex.rst7 +63 -0
  133. mlmm_toolkit-0.2.2.dev0/examples/toy_system/p_complex_layered.pdb +125 -0
  134. mlmm_toolkit-0.2.2.dev0/examples/toy_system/r_complex.pdb +122 -0
  135. mlmm_toolkit-0.2.2.dev0/examples/toy_system/r_complex_layered.pdb +122 -0
  136. mlmm_toolkit-0.2.2.dev0/examples/toy_system/run.sh +102 -0
  137. mlmm_toolkit-0.2.2.dev0/examples/toy_system/test_core.py +25 -0
  138. mlmm_toolkit-0.2.2.dev0/hessian_ff/__init__.py +50 -0
  139. mlmm_toolkit-0.2.2.dev0/hessian_ff/analytical_hessian.py +609 -0
  140. mlmm_toolkit-0.2.2.dev0/hessian_ff/constants.py +46 -0
  141. mlmm_toolkit-0.2.2.dev0/hessian_ff/forcefield.py +339 -0
  142. mlmm_toolkit-0.2.2.dev0/hessian_ff/loaders.py +608 -0
  143. mlmm_toolkit-0.2.2.dev0/hessian_ff/native/Makefile +8 -0
  144. mlmm_toolkit-0.2.2.dev0/hessian_ff/native/__init__.py +28 -0
  145. mlmm_toolkit-0.2.2.dev0/hessian_ff/native/analytical_hessian.py +88 -0
  146. mlmm_toolkit-0.2.2.dev0/hessian_ff/native/analytical_hessian_ext.cpp +258 -0
  147. mlmm_toolkit-0.2.2.dev0/hessian_ff/native/bonded.py +82 -0
  148. mlmm_toolkit-0.2.2.dev0/hessian_ff/native/bonded_ext.cpp +640 -0
  149. mlmm_toolkit-0.2.2.dev0/hessian_ff/native/loader.py +349 -0
  150. mlmm_toolkit-0.2.2.dev0/hessian_ff/native/nonbonded.py +118 -0
  151. mlmm_toolkit-0.2.2.dev0/hessian_ff/native/nonbonded_ext.cpp +1150 -0
  152. mlmm_toolkit-0.2.2.dev0/hessian_ff/prmtop_parmed.py +23 -0
  153. mlmm_toolkit-0.2.2.dev0/hessian_ff/system.py +107 -0
  154. mlmm_toolkit-0.2.2.dev0/hessian_ff/terms/__init__.py +14 -0
  155. mlmm_toolkit-0.2.2.dev0/hessian_ff/terms/angle.py +73 -0
  156. mlmm_toolkit-0.2.2.dev0/hessian_ff/terms/bond.py +44 -0
  157. mlmm_toolkit-0.2.2.dev0/hessian_ff/terms/cmap.py +406 -0
  158. mlmm_toolkit-0.2.2.dev0/hessian_ff/terms/dihedral.py +141 -0
  159. mlmm_toolkit-0.2.2.dev0/hessian_ff/terms/nonbonded.py +209 -0
  160. mlmm_toolkit-0.2.2.dev0/hessian_ff/tests/__init__.py +0 -0
  161. mlmm_toolkit-0.2.2.dev0/hessian_ff/tests/conftest.py +75 -0
  162. mlmm_toolkit-0.2.2.dev0/hessian_ff/tests/data/small/complex.parm7 +1346 -0
  163. mlmm_toolkit-0.2.2.dev0/hessian_ff/tests/data/small/complex.pdb +125 -0
  164. mlmm_toolkit-0.2.2.dev0/hessian_ff/tests/data/small/complex.rst7 +63 -0
  165. mlmm_toolkit-0.2.2.dev0/hessian_ff/tests/test_coords_input.py +44 -0
  166. mlmm_toolkit-0.2.2.dev0/hessian_ff/tests/test_energy_force.py +49 -0
  167. mlmm_toolkit-0.2.2.dev0/hessian_ff/tests/test_hessian.py +137 -0
  168. mlmm_toolkit-0.2.2.dev0/hessian_ff/tests/test_smoke.py +18 -0
  169. mlmm_toolkit-0.2.2.dev0/hessian_ff/tests/test_validation.py +40 -0
  170. mlmm_toolkit-0.2.2.dev0/hessian_ff/workflows.py +889 -0
  171. mlmm_toolkit-0.2.2.dev0/mlmm/__init__.py +36 -0
  172. mlmm_toolkit-0.2.2.dev0/mlmm/__main__.py +7 -0
  173. mlmm_toolkit-0.2.2.dev0/mlmm/_version.py +34 -0
  174. mlmm_toolkit-0.2.2.dev0/mlmm/add_elem_info.py +374 -0
  175. mlmm_toolkit-0.2.2.dev0/mlmm/advanced_help.py +91 -0
  176. mlmm_toolkit-0.2.2.dev0/mlmm/align_freeze_atoms.py +601 -0
  177. mlmm_toolkit-0.2.2.dev0/mlmm/all.py +3535 -0
  178. mlmm_toolkit-0.2.2.dev0/mlmm/bond_changes.py +231 -0
  179. mlmm_toolkit-0.2.2.dev0/mlmm/bool_compat.py +223 -0
  180. mlmm_toolkit-0.2.2.dev0/mlmm/cli.py +574 -0
  181. mlmm_toolkit-0.2.2.dev0/mlmm/cli_utils.py +166 -0
  182. mlmm_toolkit-0.2.2.dev0/mlmm/default_group.py +337 -0
  183. mlmm_toolkit-0.2.2.dev0/mlmm/defaults.py +467 -0
  184. mlmm_toolkit-0.2.2.dev0/mlmm/define_layer.py +526 -0
  185. mlmm_toolkit-0.2.2.dev0/mlmm/dft.py +1041 -0
  186. mlmm_toolkit-0.2.2.dev0/mlmm/energy_diagram.py +253 -0
  187. mlmm_toolkit-0.2.2.dev0/mlmm/extract.py +2213 -0
  188. mlmm_toolkit-0.2.2.dev0/mlmm/fix_altloc.py +464 -0
  189. mlmm_toolkit-0.2.2.dev0/mlmm/freq.py +1406 -0
  190. mlmm_toolkit-0.2.2.dev0/mlmm/harmonic_constraints.py +140 -0
  191. mlmm_toolkit-0.2.2.dev0/mlmm/hessian_cache.py +44 -0
  192. mlmm_toolkit-0.2.2.dev0/mlmm/hessian_calc.py +174 -0
  193. mlmm_toolkit-0.2.2.dev0/mlmm/irc.py +638 -0
  194. mlmm_toolkit-0.2.2.dev0/mlmm/mlmm_calc.py +2262 -0
  195. mlmm_toolkit-0.2.2.dev0/mlmm/mm_parm.py +945 -0
  196. mlmm_toolkit-0.2.2.dev0/mlmm/oniom_export.py +1983 -0
  197. mlmm_toolkit-0.2.2.dev0/mlmm/oniom_import.py +457 -0
  198. mlmm_toolkit-0.2.2.dev0/mlmm/opt.py +1742 -0
  199. mlmm_toolkit-0.2.2.dev0/mlmm/path_opt.py +1353 -0
  200. mlmm_toolkit-0.2.2.dev0/mlmm/path_search.py +2299 -0
  201. mlmm_toolkit-0.2.2.dev0/mlmm/preflight.py +88 -0
  202. mlmm_toolkit-0.2.2.dev0/mlmm/py.typed +1 -0
  203. mlmm_toolkit-0.2.2.dev0/mlmm/pysis_runner.py +45 -0
  204. mlmm_toolkit-0.2.2.dev0/mlmm/scan.py +1047 -0
  205. mlmm_toolkit-0.2.2.dev0/mlmm/scan2d.py +1226 -0
  206. mlmm_toolkit-0.2.2.dev0/mlmm/scan3d.py +1265 -0
  207. mlmm_toolkit-0.2.2.dev0/mlmm/scan_common.py +184 -0
  208. mlmm_toolkit-0.2.2.dev0/mlmm/summary_log.py +736 -0
  209. mlmm_toolkit-0.2.2.dev0/mlmm/trj2fig.py +448 -0
  210. mlmm_toolkit-0.2.2.dev0/mlmm/tsopt.py +2871 -0
  211. mlmm_toolkit-0.2.2.dev0/mlmm/utils.py +2309 -0
  212. mlmm_toolkit-0.2.2.dev0/mlmm/xtb_embedcharge_correction.py +475 -0
  213. mlmm_toolkit-0.2.2.dev0/mlmm_toolkit.egg-info/PKG-INFO +1159 -0
  214. mlmm_toolkit-0.2.2.dev0/mlmm_toolkit.egg-info/SOURCES.txt +544 -0
  215. mlmm_toolkit-0.2.2.dev0/mlmm_toolkit.egg-info/dependency_links.txt +1 -0
  216. mlmm_toolkit-0.2.2.dev0/mlmm_toolkit.egg-info/entry_points.txt +2 -0
  217. mlmm_toolkit-0.2.2.dev0/mlmm_toolkit.egg-info/requires.txt +61 -0
  218. mlmm_toolkit-0.2.2.dev0/mlmm_toolkit.egg-info/top_level.txt +4 -0
  219. mlmm_toolkit-0.2.2.dev0/pyproject.toml +118 -0
  220. mlmm_toolkit-0.2.2.dev0/pysisyphus/Geometry.py +1667 -0
  221. mlmm_toolkit-0.2.2.dev0/pysisyphus/LICENSE +674 -0
  222. mlmm_toolkit-0.2.2.dev0/pysisyphus/TableFormatter.py +63 -0
  223. mlmm_toolkit-0.2.2.dev0/pysisyphus/TablePrinter.py +74 -0
  224. mlmm_toolkit-0.2.2.dev0/pysisyphus/__init__.py +12 -0
  225. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/AFIR.py +452 -0
  226. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/AnaPot.py +20 -0
  227. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/AnaPot2.py +48 -0
  228. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/AnaPot3.py +12 -0
  229. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/AnaPot4.py +20 -0
  230. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/AnaPotBase.py +337 -0
  231. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/AnaPotCBM.py +25 -0
  232. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/AtomAtomTransTorque.py +154 -0
  233. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/CFOUR.py +250 -0
  234. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/Calculator.py +844 -0
  235. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/CerjanMiller.py +24 -0
  236. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/Composite.py +123 -0
  237. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/ConicalIntersection.py +171 -0
  238. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/DFTBp.py +430 -0
  239. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/DFTD3.py +66 -0
  240. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/DFTD4.py +84 -0
  241. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/Dalton.py +61 -0
  242. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/Dimer.py +681 -0
  243. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/Dummy.py +20 -0
  244. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/EGO.py +76 -0
  245. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/EnergyMin.py +224 -0
  246. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/ExternalPotential.py +264 -0
  247. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/FakeASE.py +35 -0
  248. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/FourWellAnaPot.py +28 -0
  249. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/FreeEndNEBPot.py +39 -0
  250. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/Gaussian09.py +18 -0
  251. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/Gaussian16.py +726 -0
  252. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/HardSphere.py +159 -0
  253. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/IDPPCalculator.py +49 -0
  254. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/IPIClient.py +133 -0
  255. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/IPIServer.py +234 -0
  256. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/LEPSBase.py +24 -0
  257. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/LEPSExpr.py +139 -0
  258. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/LennardJones.py +80 -0
  259. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/MOPAC.py +219 -0
  260. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/MullerBrownSympyPot.py +51 -0
  261. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/MultiCalc.py +85 -0
  262. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/NFK.py +45 -0
  263. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/OBabel.py +87 -0
  264. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/ONIOMv2.py +1129 -0
  265. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/ORCA.py +893 -0
  266. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/ORCA5.py +6 -0
  267. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/OpenMM.py +88 -0
  268. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/OpenMolcas.py +281 -0
  269. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/OverlapCalculator.py +908 -0
  270. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/Psi4.py +218 -0
  271. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/PyPsi4.py +37 -0
  272. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/PySCF.py +341 -0
  273. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/PyXTB.py +73 -0
  274. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/QCEngine.py +106 -0
  275. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/Rastrigin.py +22 -0
  276. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/Remote.py +76 -0
  277. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/Rosenbrock.py +15 -0
  278. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/SocketCalc.py +97 -0
  279. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/TIP3P.py +111 -0
  280. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/TransTorque.py +161 -0
  281. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/Turbomole.py +965 -0
  282. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/VRIPot.py +37 -0
  283. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/WFOWrapper.py +333 -0
  284. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/WFOWrapper2.py +341 -0
  285. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/XTB.py +418 -0
  286. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/__init__.py +81 -0
  287. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/cosmo_data.py +139 -0
  288. mlmm_toolkit-0.2.2.dev0/pysisyphus/calculators/parser.py +150 -0
  289. mlmm_toolkit-0.2.2.dev0/pysisyphus/color.py +19 -0
  290. mlmm_toolkit-0.2.2.dev0/pysisyphus/config.py +133 -0
  291. mlmm_toolkit-0.2.2.dev0/pysisyphus/constants.py +65 -0
  292. mlmm_toolkit-0.2.2.dev0/pysisyphus/cos/AdaptiveNEB.py +230 -0
  293. mlmm_toolkit-0.2.2.dev0/pysisyphus/cos/ChainOfStates.py +725 -0
  294. mlmm_toolkit-0.2.2.dev0/pysisyphus/cos/FreeEndNEB.py +25 -0
  295. mlmm_toolkit-0.2.2.dev0/pysisyphus/cos/FreezingString.py +103 -0
  296. mlmm_toolkit-0.2.2.dev0/pysisyphus/cos/GrowingChainOfStates.py +71 -0
  297. mlmm_toolkit-0.2.2.dev0/pysisyphus/cos/GrowingNT.py +309 -0
  298. mlmm_toolkit-0.2.2.dev0/pysisyphus/cos/GrowingString.py +508 -0
  299. mlmm_toolkit-0.2.2.dev0/pysisyphus/cos/NEB.py +189 -0
  300. mlmm_toolkit-0.2.2.dev0/pysisyphus/cos/SimpleZTS.py +64 -0
  301. mlmm_toolkit-0.2.2.dev0/pysisyphus/cos/__init__.py +22 -0
  302. mlmm_toolkit-0.2.2.dev0/pysisyphus/cos/stiffness.py +199 -0
  303. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/__init__.py +17 -0
  304. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/afir.py +855 -0
  305. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/barriers.py +271 -0
  306. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/birkholz.py +138 -0
  307. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/cluster.py +318 -0
  308. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/diabatization.py +133 -0
  309. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/merge.py +368 -0
  310. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/merge_mol2.py +322 -0
  311. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/opt.py +375 -0
  312. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/perf.py +91 -0
  313. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/pka.py +52 -0
  314. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/precon_pos_rot.py +669 -0
  315. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/rates.py +480 -0
  316. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/replace.py +219 -0
  317. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/scan.py +212 -0
  318. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/spectrum.py +166 -0
  319. mlmm_toolkit-0.2.2.dev0/pysisyphus/drivers/thermo.py +31 -0
  320. mlmm_toolkit-0.2.2.dev0/pysisyphus/dynamics/Gaussian.py +103 -0
  321. mlmm_toolkit-0.2.2.dev0/pysisyphus/dynamics/__init__.py +20 -0
  322. mlmm_toolkit-0.2.2.dev0/pysisyphus/dynamics/colvars.py +136 -0
  323. mlmm_toolkit-0.2.2.dev0/pysisyphus/dynamics/driver.py +297 -0
  324. mlmm_toolkit-0.2.2.dev0/pysisyphus/dynamics/helpers.py +256 -0
  325. mlmm_toolkit-0.2.2.dev0/pysisyphus/dynamics/lincs.py +105 -0
  326. mlmm_toolkit-0.2.2.dev0/pysisyphus/dynamics/mdp.py +364 -0
  327. mlmm_toolkit-0.2.2.dev0/pysisyphus/dynamics/rattle.py +121 -0
  328. mlmm_toolkit-0.2.2.dev0/pysisyphus/dynamics/thermostats.py +128 -0
  329. mlmm_toolkit-0.2.2.dev0/pysisyphus/dynamics/wigner.py +266 -0
  330. mlmm_toolkit-0.2.2.dev0/pysisyphus/elem_data.py +3473 -0
  331. mlmm_toolkit-0.2.2.dev0/pysisyphus/exceptions.py +2 -0
  332. mlmm_toolkit-0.2.2.dev0/pysisyphus/filtertrj.py +69 -0
  333. mlmm_toolkit-0.2.2.dev0/pysisyphus/helpers.py +623 -0
  334. mlmm_toolkit-0.2.2.dev0/pysisyphus/helpers_pure.py +649 -0
  335. mlmm_toolkit-0.2.2.dev0/pysisyphus/init_logging.py +50 -0
  336. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/Bend.py +69 -0
  337. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/Bend2.py +25 -0
  338. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/BondedFragment.py +32 -0
  339. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/Cartesian.py +41 -0
  340. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/CartesianCoords.py +140 -0
  341. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/Coords.py +56 -0
  342. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/DLC.py +197 -0
  343. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/DistanceFunction.py +34 -0
  344. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/DummyImproper.py +70 -0
  345. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/DummyTorsion.py +72 -0
  346. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/LinearBend.py +105 -0
  347. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/LinearDisplacement.py +80 -0
  348. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/OutOfPlane.py +59 -0
  349. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/PrimTypes.py +286 -0
  350. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/Primitive.py +137 -0
  351. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/RedundantCoords.py +659 -0
  352. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/RobustTorsion.py +59 -0
  353. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/Rotation.py +147 -0
  354. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/Stretch.py +31 -0
  355. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/Torsion.py +101 -0
  356. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/Torsion2.py +25 -0
  357. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/Translation.py +45 -0
  358. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/__init__.py +61 -0
  359. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/augment_bonds.py +126 -0
  360. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/derivatives.py +10512 -0
  361. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/eval.py +80 -0
  362. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/exceptions.py +37 -0
  363. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/findiffs.py +48 -0
  364. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/generate_derivatives.py +414 -0
  365. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/helpers.py +235 -0
  366. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/logging_conf.py +10 -0
  367. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/mp_derivatives.py +10836 -0
  368. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/setup.py +962 -0
  369. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/setup_fast.py +176 -0
  370. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/update.py +272 -0
  371. mlmm_toolkit-0.2.2.dev0/pysisyphus/intcoords/valid.py +89 -0
  372. mlmm_toolkit-0.2.2.dev0/pysisyphus/interpolate/Geodesic.py +93 -0
  373. mlmm_toolkit-0.2.2.dev0/pysisyphus/interpolate/IDPP.py +55 -0
  374. mlmm_toolkit-0.2.2.dev0/pysisyphus/interpolate/Interpolator.py +116 -0
  375. mlmm_toolkit-0.2.2.dev0/pysisyphus/interpolate/LST.py +70 -0
  376. mlmm_toolkit-0.2.2.dev0/pysisyphus/interpolate/Redund.py +152 -0
  377. mlmm_toolkit-0.2.2.dev0/pysisyphus/interpolate/__init__.py +9 -0
  378. mlmm_toolkit-0.2.2.dev0/pysisyphus/interpolate/helpers.py +34 -0
  379. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/__init__.py +22 -0
  380. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/aomix.py +178 -0
  381. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/cjson.py +24 -0
  382. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/crd.py +101 -0
  383. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/cube.py +220 -0
  384. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/fchk.py +184 -0
  385. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/hdf5.py +49 -0
  386. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/hessian.py +72 -0
  387. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/mol2.py +146 -0
  388. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/molden.py +293 -0
  389. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/orca.py +189 -0
  390. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/pdb.py +269 -0
  391. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/psf.py +79 -0
  392. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/pubchem.py +31 -0
  393. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/qcschema.py +34 -0
  394. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/sdf.py +29 -0
  395. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/xyz.py +61 -0
  396. mlmm_toolkit-0.2.2.dev0/pysisyphus/io/zmat.py +175 -0
  397. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/DWI.py +108 -0
  398. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/DampedVelocityVerlet.py +134 -0
  399. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/Euler.py +22 -0
  400. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/EulerPC.py +345 -0
  401. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/GonzalezSchlegel.py +187 -0
  402. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/IMKMod.py +164 -0
  403. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/IRC.py +878 -0
  404. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/IRCDummy.py +10 -0
  405. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/Instanton.py +307 -0
  406. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/LQA.py +53 -0
  407. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/ModeKill.py +136 -0
  408. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/ParamPlot.py +53 -0
  409. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/RK4.py +36 -0
  410. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/__init__.py +31 -0
  411. mlmm_toolkit-0.2.2.dev0/pysisyphus/irc/initial_displ.py +219 -0
  412. mlmm_toolkit-0.2.2.dev0/pysisyphus/linalg.py +411 -0
  413. mlmm_toolkit-0.2.2.dev0/pysisyphus/line_searches/Backtracking.py +88 -0
  414. mlmm_toolkit-0.2.2.dev0/pysisyphus/line_searches/HagerZhang.py +184 -0
  415. mlmm_toolkit-0.2.2.dev0/pysisyphus/line_searches/LineSearch.py +232 -0
  416. mlmm_toolkit-0.2.2.dev0/pysisyphus/line_searches/StrongWolfe.py +108 -0
  417. mlmm_toolkit-0.2.2.dev0/pysisyphus/line_searches/__init__.py +9 -0
  418. mlmm_toolkit-0.2.2.dev0/pysisyphus/line_searches/interpol.py +15 -0
  419. mlmm_toolkit-0.2.2.dev0/pysisyphus/modefollow/NormalMode.py +40 -0
  420. mlmm_toolkit-0.2.2.dev0/pysisyphus/modefollow/__init__.py +10 -0
  421. mlmm_toolkit-0.2.2.dev0/pysisyphus/modefollow/davidson.py +199 -0
  422. mlmm_toolkit-0.2.2.dev0/pysisyphus/modefollow/lanczos.py +95 -0
  423. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/BFGS.py +99 -0
  424. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/BacktrackingOptimizer.py +113 -0
  425. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/ConjugateGradient.py +98 -0
  426. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/CubicNewton.py +75 -0
  427. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/FIRE.py +113 -0
  428. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/HessianOptimizer.py +1176 -0
  429. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/LBFGS.py +228 -0
  430. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/LayerOpt.py +411 -0
  431. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/MicroOptimizer.py +169 -0
  432. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/NCOptimizer.py +90 -0
  433. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/Optimizer.py +1084 -0
  434. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/PreconLBFGS.py +260 -0
  435. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/PreconSteepestDescent.py +7 -0
  436. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/QuickMin.py +74 -0
  437. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/RFOptimizer.py +181 -0
  438. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/RSA.py +99 -0
  439. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/StabilizedQNMethod.py +248 -0
  440. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/SteepestDescent.py +23 -0
  441. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/StringOptimizer.py +173 -0
  442. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/__init__.py +41 -0
  443. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/closures.py +301 -0
  444. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/cls_map.py +58 -0
  445. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/exceptions.py +6 -0
  446. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/gdiis.py +280 -0
  447. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/guess_hessians.py +311 -0
  448. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/hessian_updates.py +355 -0
  449. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/poly_fit.py +285 -0
  450. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/precon.py +153 -0
  451. mlmm_toolkit-0.2.2.dev0/pysisyphus/optimizers/restrict_step.py +24 -0
  452. mlmm_toolkit-0.2.2.dev0/pysisyphus/pack.py +172 -0
  453. mlmm_toolkit-0.2.2.dev0/pysisyphus/peakdetect.py +948 -0
  454. mlmm_toolkit-0.2.2.dev0/pysisyphus/plot.py +1031 -0
  455. mlmm_toolkit-0.2.2.dev0/pysisyphus/run.py +2106 -0
  456. mlmm_toolkit-0.2.2.dev0/pysisyphus/socket_helper.py +74 -0
  457. mlmm_toolkit-0.2.2.dev0/pysisyphus/stocastic/FragmentKick.py +132 -0
  458. mlmm_toolkit-0.2.2.dev0/pysisyphus/stocastic/Kick.py +81 -0
  459. mlmm_toolkit-0.2.2.dev0/pysisyphus/stocastic/Pipeline.py +303 -0
  460. mlmm_toolkit-0.2.2.dev0/pysisyphus/stocastic/__init__.py +21 -0
  461. mlmm_toolkit-0.2.2.dev0/pysisyphus/stocastic/align.py +127 -0
  462. mlmm_toolkit-0.2.2.dev0/pysisyphus/testing.py +96 -0
  463. mlmm_toolkit-0.2.2.dev0/pysisyphus/thermo.py +156 -0
  464. mlmm_toolkit-0.2.2.dev0/pysisyphus/trj.py +824 -0
  465. mlmm_toolkit-0.2.2.dev0/pysisyphus/tsoptimizers/RSIRFOptimizer.py +56 -0
  466. mlmm_toolkit-0.2.2.dev0/pysisyphus/tsoptimizers/RSPRFOptimizer.py +182 -0
  467. mlmm_toolkit-0.2.2.dev0/pysisyphus/tsoptimizers/TRIM.py +59 -0
  468. mlmm_toolkit-0.2.2.dev0/pysisyphus/tsoptimizers/TSHessianOptimizer.py +463 -0
  469. mlmm_toolkit-0.2.2.dev0/pysisyphus/tsoptimizers/__init__.py +23 -0
  470. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/Basis.py +239 -0
  471. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/DIIS.py +76 -0
  472. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/__init__.py +25 -0
  473. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/build_ext.py +42 -0
  474. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/cart2sph.py +190 -0
  475. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/diabatization.py +304 -0
  476. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/excited_states.py +435 -0
  477. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/gen_ints.py +1811 -0
  478. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/helpers.py +104 -0
  479. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/ints/__init__.py +0 -0
  480. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/ints/boys.py +193 -0
  481. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/ints/boys_table_N_64_xasym_27.1_step_0.01.npy +0 -0
  482. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/ints/cart_gto3d.py +176 -0
  483. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/ints/coulomb3d.py +25928 -0
  484. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/ints/diag_quadrupole3d.py +10036 -0
  485. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/ints/dipole3d.py +8762 -0
  486. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/ints/int2c2e3d.py +7198 -0
  487. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/ints/int3c2e3d_sph.py +65040 -0
  488. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/ints/kinetic3d.py +8240 -0
  489. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/ints/ovlp3d.py +3777 -0
  490. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/ints/quadrupole3d.py +15054 -0
  491. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/ints/self_ovlp3d.py +198 -0
  492. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/localization.py +458 -0
  493. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/multipole.py +159 -0
  494. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/normalization.py +36 -0
  495. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/pop_analysis.py +134 -0
  496. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/shells.py +1171 -0
  497. mlmm_toolkit-0.2.2.dev0/pysisyphus/wavefunction/wavefunction.py +504 -0
  498. mlmm_toolkit-0.2.2.dev0/pysisyphus/wrapper/__init__.py +11 -0
  499. mlmm_toolkit-0.2.2.dev0/pysisyphus/wrapper/exceptions.py +2 -0
  500. mlmm_toolkit-0.2.2.dev0/pysisyphus/wrapper/jmol.py +120 -0
  501. mlmm_toolkit-0.2.2.dev0/pysisyphus/wrapper/mwfn.py +169 -0
  502. mlmm_toolkit-0.2.2.dev0/pysisyphus/wrapper/packmol.py +71 -0
  503. mlmm_toolkit-0.2.2.dev0/pysisyphus/xyzloader.py +168 -0
  504. mlmm_toolkit-0.2.2.dev0/pysisyphus/yaml_mods.py +45 -0
  505. mlmm_toolkit-0.2.2.dev0/scripts/check_all_scan_contract.py +123 -0
  506. mlmm_toolkit-0.2.2.dev0/scripts/check_intro_template.py +100 -0
  507. mlmm_toolkit-0.2.2.dev0/scripts/check_markdown_links.py +122 -0
  508. mlmm_toolkit-0.2.2.dev0/scripts/generate_reference.py +297 -0
  509. mlmm_toolkit-0.2.2.dev0/scripts/run_docs_quality.py +75 -0
  510. mlmm_toolkit-0.2.2.dev0/scripts/smoke_docs_commands.py +293 -0
  511. mlmm_toolkit-0.2.2.dev0/scripts/smoke_dump_trajectories.py +239 -0
  512. mlmm_toolkit-0.2.2.dev0/setup.cfg +4 -0
  513. mlmm_toolkit-0.2.2.dev0/tests/README.md +124 -0
  514. mlmm_toolkit-0.2.2.dev0/tests/conftest.py +11 -0
  515. mlmm_toolkit-0.2.2.dev0/tests/smoke/p_complex.parm7 +1346 -0
  516. mlmm_toolkit-0.2.2.dev0/tests/smoke/p_complex.pdb +125 -0
  517. mlmm_toolkit-0.2.2.dev0/tests/smoke/p_complex.rst7 +63 -0
  518. mlmm_toolkit-0.2.2.dev0/tests/smoke/p_complex_layered.pdb +125 -0
  519. mlmm_toolkit-0.2.2.dev0/tests/smoke/pocket_p.pdb +63 -0
  520. mlmm_toolkit-0.2.2.dev0/tests/smoke/pocket_r.pdb +48 -0
  521. mlmm_toolkit-0.2.2.dev0/tests/smoke/r_complex.pdb +122 -0
  522. mlmm_toolkit-0.2.2.dev0/tests/smoke/r_complex_layered.pdb +122 -0
  523. mlmm_toolkit-0.2.2.dev0/tests/smoke/run.sh +107 -0
  524. mlmm_toolkit-0.2.2.dev0/tests/test_all_multiplicity_option.py +20 -0
  525. mlmm_toolkit-0.2.2.dev0/tests/test_bool_compat_cli.py +64 -0
  526. mlmm_toolkit-0.2.2.dev0/tests/test_cli_feature_regressions.py +116 -0
  527. mlmm_toolkit-0.2.2.dev0/tests/test_cli_help.py +202 -0
  528. mlmm_toolkit-0.2.2.dev0/tests/test_cli_utils.py +53 -0
  529. mlmm_toolkit-0.2.2.dev0/tests/test_default_group.py +204 -0
  530. mlmm_toolkit-0.2.2.dev0/tests/test_defaults.py +78 -0
  531. mlmm_toolkit-0.2.2.dev0/tests/test_e2e_minimal.py +102 -0
  532. mlmm_toolkit-0.2.2.dev0/tests/test_error_handling.py +103 -0
  533. mlmm_toolkit-0.2.2.dev0/tests/test_extract.py +170 -0
  534. mlmm_toolkit-0.2.2.dev0/tests/test_imports.py +34 -0
  535. mlmm_toolkit-0.2.2.dev0/tests/test_mm_parm_preflight.py +30 -0
  536. mlmm_toolkit-0.2.2.dev0/tests/test_opt.py +97 -0
  537. mlmm_toolkit-0.2.2.dev0/tests/test_preflight.py +62 -0
  538. mlmm_toolkit-0.2.2.dev0/tests/test_scan_oniom_smoke.py +386 -0
  539. mlmm_toolkit-0.2.2.dev0/tests/test_summary_log.py +67 -0
  540. mlmm_toolkit-0.2.2.dev0/tests/test_utils.py +267 -0
  541. mlmm_toolkit-0.2.2.dev0/thermoanalysis/LICENSE +674 -0
  542. mlmm_toolkit-0.2.2.dev0/thermoanalysis/QCData.py +244 -0
  543. mlmm_toolkit-0.2.2.dev0/thermoanalysis/__init__.py +0 -0
  544. mlmm_toolkit-0.2.2.dev0/thermoanalysis/config.py +3 -0
  545. mlmm_toolkit-0.2.2.dev0/thermoanalysis/constants.py +20 -0
  546. mlmm_toolkit-0.2.2.dev0/thermoanalysis/thermo.py +1011 -0
@@ -0,0 +1,51 @@
1
+ name: Deploy Documentation
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ workflow_dispatch:
7
+
8
+ permissions:
9
+ contents: read
10
+ pages: write
11
+ id-token: write
12
+
13
+ concurrency:
14
+ group: "pages"
15
+ cancel-in-progress: false
16
+
17
+ jobs:
18
+ build:
19
+ runs-on: ubuntu-latest
20
+ steps:
21
+ - uses: actions/checkout@v4
22
+
23
+ - name: Set up Python
24
+ uses: actions/setup-python@v5
25
+ with:
26
+ python-version: '3.11'
27
+
28
+ - name: Install dependencies
29
+ run: |
30
+ pip install -r docs/requirements_docs.txt
31
+
32
+ - name: Build documentation
33
+ run: |
34
+ cd docs
35
+ make html
36
+
37
+ - name: Upload artifact
38
+ uses: actions/upload-pages-artifact@v3
39
+ with:
40
+ path: docs/_build/html
41
+
42
+ deploy:
43
+ needs: build
44
+ runs-on: ubuntu-latest
45
+ environment:
46
+ name: github-pages
47
+ url: ${{ steps.deployment.outputs.page_url }}
48
+ steps:
49
+ - name: Deploy to GitHub Pages
50
+ id: deployment
51
+ uses: actions/deploy-pages@v4
@@ -0,0 +1,42 @@
1
+ name: Docs Quality
2
+
3
+ on:
4
+ pull_request:
5
+ push:
6
+ branches: [main]
7
+
8
+ jobs:
9
+ reference-and-smoke:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: actions/checkout@v4
13
+
14
+ - name: Set up Python
15
+ uses: actions/setup-python@v5
16
+ with:
17
+ python-version: "3.11"
18
+
19
+ - name: Install minimal dependencies
20
+ run: |
21
+ python -m pip install --upgrade pip
22
+ pip install torch --index-url https://download.pytorch.org/whl/cpu
23
+ pip install -e . --no-deps
24
+ pip install click pyyaml numpy biopython scipy ase \
25
+ autograd dask distributed h5py fabric jinja2 joblib \
26
+ matplotlib natsort psutil rmsd sympy scikit-learn \
27
+ pandas tabulate plotly kaleido ParmEd
28
+
29
+ - name: Run docs quality suite
30
+ timeout-minutes: 20
31
+ env:
32
+ DOCS_DUMP_CASE_TIMEOUT_SEC: "180"
33
+ run: |
34
+ set -o pipefail
35
+ python scripts/run_docs_quality.py --skip-dump | tee docs_quality_timing.log
36
+
37
+ - name: Upload docs quality timing log
38
+ if: always()
39
+ uses: actions/upload-artifact@v4
40
+ with:
41
+ name: docs_quality_timing_log
42
+ path: docs_quality_timing.log
@@ -0,0 +1,43 @@
1
+ name: Pytest
2
+
3
+ on:
4
+ pull_request:
5
+ push:
6
+ branches: [main]
7
+
8
+ jobs:
9
+ pytest:
10
+ runs-on: ubuntu-latest
11
+ strategy:
12
+ fail-fast: false
13
+ matrix:
14
+ python-version: ["3.11", "3.12"]
15
+ steps:
16
+ - uses: actions/checkout@v4
17
+
18
+ - name: Set up Python ${{ matrix.python-version }}
19
+ uses: actions/setup-python@v5
20
+ with:
21
+ python-version: ${{ matrix.python-version }}
22
+
23
+ - name: Install mlmm with dev extras
24
+ run: |
25
+ python -m pip install --upgrade pip
26
+ pip install torch --index-url https://download.pytorch.org/whl/cpu
27
+ pip install -e . --no-deps
28
+ pip install click pyyaml numpy biopython scipy ase \
29
+ autograd dask distributed h5py fabric jinja2 joblib \
30
+ matplotlib natsort psutil rmsd sympy scikit-learn \
31
+ pandas tabulate plotly kaleido ParmEd \
32
+ pytest pytest-cov pytest-timeout
33
+ timeout-minutes: 15
34
+
35
+ - name: Run pytest
36
+ run: |
37
+ pytest tests/ -v --tb=short -x --timeout=120 --cov=mlmm --cov-report=term-missing --cov-fail-under=20
38
+ timeout-minutes: 10
39
+
40
+ - name: Run hessian_ff tests
41
+ run: |
42
+ pytest hessian_ff/tests/ -v --tb=short -x --timeout=120 --cov=hessian_ff --cov-report=term-missing --cov-fail-under=50
43
+ timeout-minutes: 10
@@ -0,0 +1,41 @@
1
+ name: Publish to PyPI
2
+
3
+ on:
4
+ release:
5
+ types:
6
+ - published
7
+
8
+ permissions:
9
+ contents: read
10
+ id-token: write
11
+
12
+ jobs:
13
+ publish:
14
+ name: Build and publish
15
+ runs-on: ubuntu-latest
16
+ steps:
17
+ - name: Checkout
18
+ uses: actions/checkout@v4
19
+ with:
20
+ fetch-depth: 0
21
+
22
+ - name: Setup Python
23
+ uses: actions/setup-python@v5
24
+ with:
25
+ python-version: "3.11"
26
+
27
+ - name: Install build dependencies
28
+ run: python -m pip install --upgrade build twine
29
+
30
+ - name: Build package
31
+ run: |
32
+ rm -rf dist
33
+ python -m build
34
+
35
+ - name: Verify distribution
36
+ run: python -m twine check dist/*
37
+
38
+ - name: Publish to PyPI (Trusted Publishing)
39
+ uses: pypa/gh-action-pypi-publish@release/v1
40
+ with:
41
+ packages-dir: dist/
@@ -0,0 +1,125 @@
1
+ name: Smoke Test
2
+
3
+ on:
4
+ pull_request:
5
+ push:
6
+ branches: [main]
7
+
8
+ jobs:
9
+ cli-smoke:
10
+ runs-on: ubuntu-latest
11
+ strategy:
12
+ fail-fast: false
13
+ matrix:
14
+ python-version: ["3.11", "3.12"]
15
+ steps:
16
+ - uses: actions/checkout@v4
17
+
18
+ - name: Set up Python ${{ matrix.python-version }}
19
+ uses: actions/setup-python@v5
20
+ with:
21
+ python-version: ${{ matrix.python-version }}
22
+
23
+ - name: Install mlmm (CPU-only, UMA backend)
24
+ run: |
25
+ python -m pip install --upgrade pip
26
+ pip install torch --index-url https://download.pytorch.org/whl/cpu
27
+ pip install -e . --no-deps
28
+ pip install click pyyaml numpy biopython scipy ase \
29
+ autograd dask distributed h5py fabric jinja2 joblib \
30
+ matplotlib natsort psutil rmsd sympy scikit-learn \
31
+ pandas tabulate plotly kaleido ParmEd
32
+ timeout-minutes: 15
33
+
34
+ - name: CLI version and help
35
+ run: |
36
+ set -e
37
+ mlmm --version
38
+ for cmd in all extract define-layer mm-parm opt tsopt freq irc dft scan scan2d scan3d path-opt path-search trj2fig add-elem-info oniom-export oniom-import fix-altloc energy-diagram; do
39
+ echo "--- mlmm $cmd --help ---"
40
+ mlmm "$cmd" --help
41
+ done
42
+
43
+ - name: Progressive help (--help-advanced)
44
+ run: |
45
+ set -e
46
+ for cmd in opt tsopt freq scan dft extract path-search path-opt irc all; do
47
+ echo "--- mlmm $cmd --help-advanced ---"
48
+ mlmm "$cmd" --help-advanced
49
+ done
50
+
51
+ - name: Backend import checks
52
+ run: |
53
+ python -c "
54
+ from mlmm.mlmm_calc import _MLBackend, _UMABackend
55
+ print('UMA backend class: OK')
56
+ from mlmm.mlmm_calc import _ASEMLBackend
57
+ print('ASE backend base: OK')
58
+ from mlmm.mlmm_calc import _create_ml_backend
59
+ print('Factory function: OK')
60
+ from mlmm.defaults import MLMM_CALC_KW
61
+ assert 'backend' in MLMM_CALC_KW
62
+ assert MLMM_CALC_KW['backend'] == 'uma'
63
+ assert 'embedcharge' in MLMM_CALC_KW
64
+ print('Defaults: OK')
65
+ "
66
+
67
+ - name: Backend lazy import guards
68
+ run: |
69
+ python -c "
70
+ # Verify non-UMA backends raise ImportError cleanly
71
+ import torch
72
+ from mlmm.mlmm_calc import _OrbBackend, _MACEBackend, _AIMNet2Backend
73
+ for cls, name in [(_OrbBackend, 'ORB'), (_MACEBackend, 'MACE'), (_AIMNet2Backend, 'AIMNet2')]:
74
+ try:
75
+ cls(ml_device=torch.device('cpu'))
76
+ print(f'{name}: available (installed)')
77
+ except ImportError as e:
78
+ print(f'{name}: ImportError raised correctly: {e}')
79
+ except Exception as e:
80
+ print(f'{name}: unexpected error: {e}')
81
+ raise
82
+ "
83
+
84
+ - name: Invalid backend rejection
85
+ run: |
86
+ # Verify --backend with invalid value is rejected by Click
87
+ ! mlmm opt --help 2>&1 | grep -q "INTERNAL ERROR" || true
88
+ # This should fail with a Click error, not a traceback
89
+ ! mlmm opt -i /dev/null --parm /dev/null -q 0 --backend invalid_value 2>&1 && echo "Invalid backend correctly rejected"
90
+
91
+ import-optional:
92
+ runs-on: ubuntu-latest
93
+ steps:
94
+ - uses: actions/checkout@v4
95
+
96
+ - name: Set up Python
97
+ uses: actions/setup-python@v5
98
+ with:
99
+ python-version: "3.11"
100
+
101
+ - name: Install mlmm (minimal, no CUDA)
102
+ run: |
103
+ python -m pip install --upgrade pip
104
+ pip install torch --index-url https://download.pytorch.org/whl/cpu
105
+ pip install -e . --no-deps
106
+ pip install click pyyaml numpy biopython scipy ase \
107
+ autograd dask distributed h5py fabric jinja2 joblib \
108
+ matplotlib natsort psutil rmsd sympy scikit-learn \
109
+ pandas tabulate plotly kaleido ParmEd
110
+ timeout-minutes: 15
111
+
112
+ - name: Verify optional deps don't break import
113
+ run: |
114
+ python -c "
115
+ # Core import should succeed even without optional backends
116
+ import mlmm
117
+ from mlmm import mlmm_calc
118
+ from mlmm import defaults
119
+ print('Core imports: OK')
120
+
121
+ # CLI entry point should be loadable
122
+ from mlmm.cli import cli
123
+ print('CLI entry point: OK')
124
+
125
+ "
@@ -0,0 +1,55 @@
1
+ .history/
2
+
3
+ __pycache__/
4
+ *.pyc
5
+ *.pyo
6
+ *.pyd
7
+
8
+ venv/
9
+ env/
10
+ env.bak/
11
+ env1/
12
+ env2/
13
+ .env
14
+
15
+ .vscode/
16
+ *.code-workspace
17
+
18
+ build/
19
+ dist/
20
+ *.egg-info/
21
+ *.egg
22
+
23
+ test-reports/
24
+ .coverage
25
+ .pytest_cache/
26
+
27
+ # Smoke test outputs
28
+ tests/smoke/test[0-9]*/
29
+ tests/smoke/test*.out
30
+ tests/smoke/test_*/
31
+ tests/smoke/*_smoke.pdb
32
+ tests/smoke/*_smoke_refactor.pdb
33
+ tests/smoke/test_*.png
34
+
35
+ # Sphinx documentation
36
+ docs/_build/
37
+ docs/_static/*.css.map
38
+ docs/_static/*.js.map
39
+ docs/_autosummary/
40
+ docs/.myst_cache/
41
+ docs/.ipynb_checkpoints/
42
+
43
+ *.bak
44
+ *.swp
45
+ *.tmp
46
+ *.tmp.*
47
+ *~
48
+
49
+ PLAN.md
50
+
51
+ # hessian_ff build artifacts
52
+ hessian_ff/native/.build_*/
53
+
54
+ # setuptools-scm generated version file
55
+ mlmm_toolkit/_version.py
@@ -0,0 +1,111 @@
1
+ # Changelog
2
+
3
+ All notable changes to **mlmm-toolkit** will be documented in this file.
4
+
5
+ The format follows [Keep a Changelog](https://keepachangelog.com/).
6
+
7
+ ## [0.2.1] — 2026-03-18
8
+
9
+ ### Added
10
+ - GitHub Pages deployment and PyPI release workflows.
11
+ - Bidirectional scan (4-tuple) documentation (EN/JA).
12
+
13
+ ### Fixed
14
+ - Regenerated CLI reference docs to match current `--help` output.
15
+ - Documentation accuracy: defaults, YAML examples, EN/JA alignment.
16
+ - Generalized UMA-specific wording to MLIP where applicable.
17
+ - Improved hessian_ff JIT build error message.
18
+
19
+ ## [0.2.0] — 2026-03-16
20
+
21
+ **Complete rewrite from `mlmm` (v0.1.1) to `mlmm-toolkit` (v0.2.0).**
22
+ This release replaces the previous pysisyphus-wrapper architecture with a unified Click-based CLI toolkit. The package name, CLI interface, dependency stack, and internal architecture have all changed.
23
+
24
+ ### Breaking Changes
25
+
26
+ - **Package name**: `mlmm-toolkit` on PyPI. Install with `pip install mlmm-toolkit`.
27
+ - **CLI completely redesigned**: The old entry points (`mlmm`, `def_ml_region`, `bond_scan`, `ts_search`, `energy_summary`, `trj2fig`, `add_elem_info`, `get_freeze_indices`, `xyz_geom2pdb`) are replaced by a single `mlmm <subcommand>` interface with 21 subcommands.
28
+ - **OpenMM removed**: MM calculations now use `hessian_ff`, a bundled C++ native extension for Amber force fields. OpenMM and OpenMM-CUDA-12 are no longer dependencies.
29
+ - **RDKit removed**: No longer required.
30
+ - **pysisyphus bundled**: No longer installed from a separate git repository; a modified fork is included in the package.
31
+ - **fairchem-core from PyPI**: No longer installed from a custom git fork.
32
+ - **numpy constraint relaxed**: `numpy<2.0` → `numpy>=1.24` (NumPy 2.x compatible).
33
+ - **Configuration**: Inline kwargs replaced by a centralized `defaults.py` as the single source of truth for all default values.
34
+
35
+ ### Added — CLI & Workflow
36
+
37
+ - **`mlmm all`**: End-to-end workflow command. Given PDB files (R → P), automatically extracts active-site pockets, generates MM parameters, assigns ONIOM layers, runs MEP search, and optionally performs TS optimization, IRC, vibrational analysis, and single-point DFT — all in one invocation.
38
+ - **`mlmm opt`**: Single-structure geometry optimization with LBFGS (grad mode) or RFO (hess mode) with microiteration support.
39
+ - **`mlmm scan` / `scan2d` / `scan3d`**: 1D, 2D, and 3D constrained distance scans along user-specified atom pairs.
40
+ - **`mlmm path-search`**: Recursive minimum-energy path search with GSM (Growing String Method) and DMF (Direct Max Flux).
41
+ - **`mlmm path-opt`**: Single-pass MEP optimization (GSM or DMF).
42
+ - **`mlmm tsopt`**: Transition-state optimization (dimer method with partial Hessian, or RS-I-RFO with full Hessian).
43
+ - **`mlmm irc`**: Intrinsic reaction coordinate calculation from a TS geometry. Outputs `forward_last.pdb` and `backward_last.pdb` endpoint structures.
44
+ - **`mlmm freq`**: Vibrational analysis and thermochemistry (partial or full Hessian).
45
+ - **`mlmm dft`**: GPU-accelerated single-point DFT via PySCF / gpu4pyscf (`pip install "mlmm-toolkit[dft]"`).
46
+ - **`mlmm extract`**: Active-site pocket extraction from full protein-ligand PDB structures.
47
+ - **`mlmm mm-parm`**: Automatic Amber parm7/rst7 generation via AmberTools (tleap + GAFF2/AM1-BCC).
48
+ - **`mlmm define-layer`**: Assign 3-layer ML/MM partitioning via B-factor encoding (ML=0, MovableMM=10, FrozenMM=20).
49
+ - **`mlmm oniom-export` / `oniom-import`**: Gaussian/ORCA ONIOM input/output interoperability.
50
+ - **`mlmm add-elem-info`**: Fix missing or incorrect PDB element columns.
51
+ - **`mlmm fix-altloc`**: Resolve alternate location indicators in PDB files.
52
+ - **`mlmm energy-diagram`**: Plot energy profiles with Plotly (interactive HTML + static PNG).
53
+ - **`mlmm trj2fig`**: Trajectory visualization (PNG snapshots from XYZ trajectories).
54
+
55
+ ### Added — Core Features
56
+
57
+ - **Multi-backend MLIP support**: UMA (default), ORB, MACE, AIMNet2 — selectable via `-b/--backend` on all subcommands.
58
+ - **ONIOM-like ML/MM decomposition**: `E = E_MM_real + E_ML_model − E_MM_model` with link-atom Jacobian transformation.
59
+ - **hessian_ff**: Bundled C++ native extension for analytical Amber force field energies, forces, and Hessians (replaces OpenMM).
60
+ - **Microiteration scheme**: Efficient optimization of large ML/MM systems (~10,000 atoms) by separating ML and MM degrees of freedom.
61
+ - **xTB embed-charge correction**: Optional point-charge embedding for the ML region (`--embedcharge`).
62
+ - **Partial Hessian approach**: Compute Hessians only for the ML region + boundary atoms, enabling TS optimization and frequency analysis on large systems.
63
+ - **Automatic versioning**: setuptools-scm replaces hard-coded `__version__`.
64
+ - **Progressive help**: `--help` shows primary options; `--help-advanced` shows the full option set.
65
+ - **DefaultGroup**: Lazy-loading Click subcommand architecture with automatic boolean normalization (`--flag/--no-flag` and `--flag True/False` both supported).
66
+
67
+ ### Added — Dependencies & Extras
68
+
69
+ - **Optional backends**: `pip install "mlmm-toolkit[orb]"`, `"mlmm-toolkit[mace]"`, `"mlmm-toolkit[aimnet2]"`.
70
+ - **Optional DFT**: `pip install "mlmm-toolkit[dft]"` for PySCF + gpu4pyscf-cuda12x + CuPy.
71
+ - **Optional PDBFixer**: `pip install "mlmm-toolkit[pdbfixer]"` for hydrogen addition.
72
+ - **New core dependencies**: `click`, `torch_geometric`, `torch_scatter`, `pyparsing`, `tabulate`.
73
+ - **Bundled packages**: `pysisyphus` (modified fork), `thermoanalysis`, `hessian_ff`.
74
+
75
+ ### Added — Documentation & Testing
76
+
77
+ - Bilingual documentation (English + Japanese) under `docs/` and `docs/ja/`.
78
+ - Per-subcommand reference docs with CLI tables and YAML configuration examples.
79
+ - `CONTRIBUTING.md` with contributor guidelines.
80
+ - GitHub Actions CI: `pytest.yml`, `smoke_test.yml`, `docs_quality.yml`.
81
+ - 198 unit tests with `pytest --timeout=120`.
82
+ - Smoke test suite: 34 end-to-end tests covering all subcommands.
83
+ - Working examples in `examples/toy_system/` and `examples/methyltransferase/`.
84
+
85
+ ### Fixed (relative to v0.1.1)
86
+
87
+ - IRC energy-based initial displacement: Added `step_length` clamp (max 0.5 au) to prevent divergence when `min_eigval ≈ 0`.
88
+ - Hessian cache: Fixed `set_calculator()` clearing `within_partial_hessian` before `cart_hessian` assignment.
89
+ - HessianOptimizer: Fixed GPU/CPU device mismatch in `hessian_recalc`.
90
+ - Frequency analysis: Added float64 enforcement and explicit `(H+Hᵀ)/2` symmetrization.
91
+ - PDB element inference: Fixed `_infer_element_from_pdb_atom_name()` misidentifying protein hydrogens (e.g., `HG2` → `Hg`). Now uses residue-context-aware `guess_element()`.
92
+ - Silent `except Exception: pass` blocks converted to `logger.debug(...)` across all modules.
93
+ - Charge derivation: Uses `--model-pdb` instead of full input when provided.
94
+ - TypeError in `_pseudo_irc_and_match` when mapping value is `None`.
95
+
96
+ ### Architecture — v0.1.1 → v0.2.0
97
+
98
+ | Aspect | v0.1.1 (`mlmm`) | v0.2.0 (`mlmm-toolkit`) |
99
+ |--------|------------------|--------------------------|
100
+ | Package name | `mlmm` | `mlmm-toolkit` |
101
+ | Codebase size | ~3,700 lines (13 files) | ~35,000 lines (40+ files) |
102
+ | CLI framework | 8 separate entry points (argparse) | 1 entry point, 21 Click subcommands |
103
+ | MM backend | OpenMM (finite difference) | hessian_ff (analytical C++) |
104
+ | ML backends | UMA, AIMNet2 | UMA, ORB, MACE, AIMNet2 |
105
+ | pysisyphus | Git dependency | Bundled (modified fork) |
106
+ | fairchem-core | Git fork | PyPI release |
107
+ | Configuration | Inline kwargs | Centralized `defaults.py` |
108
+ | ONIOM support | Basic link atoms | Full Jacobian + 3-layer B-factor |
109
+ | Documentation | README only | Full bilingual docs (EN/JA) |
110
+ | CI/CD | None | GitHub Actions (3 workflows) |
111
+ | Tests | None | 198 unit + 34 smoke tests |
@@ -0,0 +1,47 @@
1
+ # Contributing to mlmm-toolkit
2
+
3
+ Thank you for your interest in contributing to **mlmm-toolkit**.
4
+
5
+ ## Development Setup
6
+
7
+ ```bash
8
+ # Clone the repository
9
+ git clone https://github.com/t-0hmura/mlmm_toolkit.git
10
+ cd mlmm_toolkit
11
+
12
+ # Create a conda environment
13
+ conda create -n mlmm python=3.11
14
+ conda activate mlmm
15
+
16
+ # Install in editable mode
17
+ pip install -e .
18
+ ```
19
+
20
+ ## Running Tests
21
+
22
+ ```bash
23
+ # Run the full test suite
24
+ pytest tests/ -v --tb=short
25
+
26
+ # Run with coverage
27
+ pytest tests/ -v --tb=short --cov=mlmm --cov-report=term-missing
28
+ ```
29
+
30
+ ## Code Style
31
+
32
+ - Use `from __future__ import annotations` in all modules.
33
+ - Use `logging.getLogger(__name__)` for structured logging; avoid bare `print()`.
34
+ - CLI options should include `show_default=True` where applicable.
35
+ - Warning messages via `click.echo()` should use `err=True` to write to stderr.
36
+
37
+ ## Submitting Changes
38
+
39
+ 1. Fork the repository and create a feature branch.
40
+ 2. Make your changes and add tests where appropriate.
41
+ 3. Ensure all tests pass locally.
42
+ 4. Open a pull request with a clear description of the changes.
43
+
44
+ ## License
45
+
46
+ By contributing, you agree that your contributions will be licensed under the
47
+ [GPL-3.0 License](LICENSE).