kinbot 2.2.1__tar.gz → 2.2.2__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.
- {kinbot-2.2.1 → kinbot-2.2.2}/KinBot.egg-info/PKG-INFO +54 -14
- {kinbot-2.2.1 → kinbot-2.2.2}/KinBot.egg-info/SOURCES.txt +16 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/KinBot.egg-info/requires.txt +3 -2
- {kinbot-2.2.1 → kinbot-2.2.2}/KinBot.egg-info/top_level.txt +3 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/LICENSE +3 -2
- {kinbot-2.2.1 → kinbot-2.2.2}/PKG-INFO +54 -14
- {kinbot-2.2.1 → kinbot-2.2.2}/README.md +38 -5
- kinbot-2.2.2/kinbot/ase_modules/calculators/nn_pes.py +220 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/cheminfo.py +2 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/config_log.py +8 -1
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/conformers.py +107 -24
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/find_motif.py +2 -0
- kinbot-2.2.2/kinbot/fragments.py +853 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/frequencies.py +3 -1
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/geometry.py +88 -21
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/hindered_rotors.py +14 -3
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/irc.py +11 -6
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/kb.py +64 -22
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/license_message.py +1 -1
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/mess.py +86 -31
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/modify_geom.py +40 -25
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/molpro.py +124 -20
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/optimize.py +67 -40
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/parameters.py +164 -10
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/pes.py +573 -191
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/postprocess.py +90 -20
- kinbot-2.2.2/kinbot/pp_settings.py +381 -0
- kinbot-2.2.2/kinbot/pp_tables.py +22 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/qc.py +406 -167
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reac_General.py +4 -2
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reac_family.py +52 -34
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reaction_finder.py +147 -165
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reaction_generator.py +330 -249
- kinbot-2.2.2/kinbot/reactions/reac_R_Addition_MultipleBond.py +108 -0
- kinbot-2.2.2/kinbot/reactions/reac_h2_elim.py +34 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reader_gauss.py +103 -7
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/stationary_pt.py +137 -52
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_gauss_hir.tpl.py +1 -1
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_gauss_irc.tpl.py +26 -11
- kinbot-2.2.2/kinbot/tpl/ase_gauss_vts.tpl.py +124 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_qchem_ts_search.tpl.py +0 -1
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_sella_hir.tpl.py +12 -4
- kinbot-2.2.2/kinbot/tpl/ase_sella_irc.tpl.py +81 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_sella_opt_well.tpl.py +30 -16
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_sella_ring_conf.tpl.py +30 -17
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_sella_ts_end.tpl.py +25 -14
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_sella_ts_search.tpl.py +14 -5
- kinbot-2.2.2/kinbot/tpl/ase_sella_vts.tpl.py +213 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_barrierless.tpl +6 -4
- kinbot-2.2.2/kinbot/tpl/mess_hinderedrotorgeom.tpl +10 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/molpro.tpl +4 -6
- kinbot-2.2.2/kinbot/tpl/molpro_ts_search.tpl.py +63 -0
- kinbot-2.2.2/kinbot/tpl/molpro_vts.tpl +17 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/pesviewer.inp.tpl +2 -1
- kinbot-2.2.2/kinbot/tpl/rotdPy.tpl +89 -0
- kinbot-2.2.2/kinbot/tpl/rotdPy_1d_corr.tpl +12 -0
- kinbot-2.2.2/kinbot/tpl/rotdPy_calc.tpl +10 -0
- kinbot-2.2.2/kinbot/tpl/rotdPy_frag.tpl +4 -0
- kinbot-2.2.2/kinbot/tpl/rotdPy_surf.tpl +7 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/slurm_molpro.tpl +1 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/utils.py +115 -26
- kinbot-2.2.2/kinbot/vrc_tst_scan.py +633 -0
- kinbot-2.2.2/kinbot/vrc_tst_surfaces.py +40 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/zmatrix.py +1 -2
- {kinbot-2.2.1 → kinbot-2.2.2}/pyproject.toml +8 -8
- kinbot-2.2.1/kinbot/reactions/reac_R_Addition_MultipleBond.py +0 -75
- kinbot-2.2.1/kinbot/reactions/reac_h2_elim.py +0 -31
- kinbot-2.2.1/kinbot/tpl/ase_sella_irc.tpl.py +0 -60
- {kinbot-2.2.1 → kinbot-2.2.2}/KinBot.egg-info/dependency_links.txt +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/KinBot.egg-info/entry_points.txt +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/__init__.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/ase_modules/__init__.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/ase_modules/calculators/__init__.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/ase_modules/calculators/gaussian.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/ase_modules/calculators/qchem.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/ase_modules/constraints.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/ase_modules/io/__init__.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/ase_modules/io/formats.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/ase_modules/io/gaussian.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/ase_modules/io/zmatrix.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/bfgs.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/bond_combinations.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/constants.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/exceptions.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/mesmer.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/orca.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reaction_finder_bimol.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/__init__.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_12_shift_S_F.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_12_shift_S_R.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Cyclic_Ether_Formation.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Diels_alder_addition.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_HO2_Elimination_from_PeroxyRadical.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Intra_Diels_alder_R.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Intra_RH_Add_Endocyclic_F.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Intra_RH_Add_Endocyclic_R.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Intra_RH_Add_Exocyclic_F.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Intra_RH_Add_Exocyclic_R.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Intra_R_Add_Endocyclic_F.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Intra_R_Add_ExoTetCyclic_F.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Intra_R_Add_Exocyclic_F.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Intra_disproportionation_F.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Intra_disproportionation_R.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Korcek_step2.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Korcek_step2_even.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Korcek_step2_odd.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_R_Addition_COm3_R.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_R_Addition_CSm_R.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_Retro_Ene.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_abstraction.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_barrierless_saddle.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_beta_delta.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_bimol_disproportionation_R.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_birad_recombination_F.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_birad_recombination_R.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_combinatorial.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_cpd_H_migration.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_homolytic_scission.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_intra_H_migration.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_intra_H_migration_suprafacial.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_intra_OH_migration.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_intra_OH_migration_Exocyclic_F.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_intra_R_migration.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_ketoenol.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_r12_cycloaddition.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_r12_insertion_R.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_r13_insertion_CO2.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_r13_insertion_ROR.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_r13_insertion_RSR.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_r14_birad_scission.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_r14_cyclic_birad_scission_R.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reactions/reac_r22_cycloaddition.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/reader_qchem.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/symmetry.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/thread_kinbot.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/__init__.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_gauss_opt_well.tpl.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_gauss_ring_conf.tpl.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_gauss_ts_end.tpl.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_gauss_ts_search.tpl.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_nwchem_freq_well.tpl.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_nwchem_irc.tpl.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_nwchem_opt_well.tpl.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_nwchem_ts_end.tpl.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_nwchem_ts_search.tpl.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_nwchem_ts_search_ase_constraints.tpl.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_qchem_hir.tpl.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_qchem_irc.tpl.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_qchem_opt_well.tpl.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/ase_qchem_ts_end.tpl.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/local_molpro.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_2tst.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_atom.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_barrier.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_barrier_union.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_bimol.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_bimol_union.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_core_rr.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_dummy.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_fragment.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_fragment_OH.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_freerotor.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_header.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_hinderedrotor.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_outerrrho.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_pst.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_pstfragment.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_rrho.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_termol.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_ts.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_tunneling.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_variational.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_well.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/mess_well_union.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/pbs.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/pbs_mesmer.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/pbs_mess.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/pbs_mess_uq.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/pbs_molpro.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/pbs_python.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/slurm.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/slurm_mesmer.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/slurm_mess.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/slurm_mess_uq.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/slurm_orca.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/tpl/slurm_python.tpl +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/kinbot/uncertaintyAnalysis.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/setup.cfg +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/tests/__init__.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/tests/bfgs.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/tests/cheminfo.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/tests/dihedrals.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/tests/find_motif.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/tests/frequencies.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/tests/geometry.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/tests/modify_geom.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/tests/multimolecular.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/tests/resonance.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/tests/symmetry.py +0 -0
- {kinbot-2.2.1 → kinbot-2.2.2}/tests/test_kinbot.py +0 -0
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: kinbot
|
|
3
|
-
Version: 2.2.
|
|
3
|
+
Version: 2.2.2
|
|
4
4
|
Summary: Automated reaction kinetics for gas-phase species
|
|
5
|
-
Author-email: Judit Zádor <jzador@sandia.gov>, Ruben
|
|
6
|
-
Maintainer-email: Judit Zádor <jzador@sandia.gov>,
|
|
5
|
+
Author-email: Judit Zádor <jzador@sandia.gov>, Ruben Van de Vijver <ruben.vandevijver@ugent.be>, Carles Martí <cmartia@sandia.gov>, Clément Soulié <csoulie@sandia.gov>, Amanda Dewyer <adewyer@sandia.gov>
|
|
6
|
+
Maintainer-email: Judit Zádor <jzador@sandia.gov>, Clément Soulié <csoulie@sandia.gov>
|
|
7
7
|
License: BSD 3-Clause License
|
|
8
8
|
|
|
9
|
-
Copyright (c) 2018,
|
|
10
|
-
|
|
9
|
+
Copyright (c) 2018, National Technology & Engineering Solutions of Sandia,
|
|
10
|
+
LLC (NTESS). Under the terms of Contract DE-NA0003525 with NTESS,
|
|
11
|
+
the U.S. Government retains certain rights in this software
|
|
11
12
|
|
|
12
13
|
Redistribution and use in source and binary forms, with or without
|
|
13
14
|
modification, are permitted provided that the following conditions are met:
|
|
@@ -41,14 +42,20 @@ Classifier: Intended Audience :: Science/Research
|
|
|
41
42
|
Classifier: Natural Language :: English
|
|
42
43
|
Classifier: License :: OSI Approved :: BSD License
|
|
43
44
|
Classifier: Operating System :: OS Independent
|
|
44
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
45
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
46
45
|
Classifier: Programming Language :: Python :: 3.10
|
|
47
46
|
Classifier: Topic :: Scientific/Engineering :: Chemistry
|
|
48
|
-
Requires-Python: >=3.
|
|
47
|
+
Requires-Python: >=3.10
|
|
49
48
|
Description-Content-Type: text/markdown
|
|
50
|
-
Provides-Extra: plot
|
|
51
49
|
License-File: LICENSE
|
|
50
|
+
Requires-Dist: numpy<2.0,>=1.17.0
|
|
51
|
+
Requires-Dist: ase<3.23,>=3.19
|
|
52
|
+
Requires-Dist: networkx
|
|
53
|
+
Requires-Dist: rmsd>=1.5.1
|
|
54
|
+
Requires-Dist: sella
|
|
55
|
+
Provides-Extra: plot
|
|
56
|
+
Requires-Dist: matplotlib; extra == "plot"
|
|
57
|
+
Requires-Dist: pyvis; extra == "plot"
|
|
58
|
+
Requires-Dist: rdkit; extra == "plot"
|
|
52
59
|
|
|
53
60
|
[](https://gitter.im/zadorlab/KinBot)
|
|
54
61
|
|
|
@@ -59,14 +66,37 @@ License-File: LICENSE
|
|
|
59
66
|
</p>
|
|
60
67
|
|
|
61
68
|
## Description
|
|
62
|
-
This repository contains the KinBot code version 2.
|
|
69
|
+
This repository contains the KinBot code version 2.2.1,
|
|
63
70
|
a tool for automatically searching for reactions on the potential energy surface.
|
|
64
71
|
|
|
65
72
|
If you are using this tool in scientific publications, please reference the following publications:
|
|
66
73
|
|
|
67
74
|
* Ruben Van de Vijver, Judit Zádor: KinBot: _Automated stationary point search on potential energy surfaces_, Comp. Phys. Comm., **2019**, 248, 106947. https://doi.org/10.1016/j.cpc.2019.106947
|
|
75
|
+
```
|
|
76
|
+
@article{Vijver2020,
|
|
77
|
+
author = {Van de Vijver, Ruben and Z\'ador, Judit},
|
|
78
|
+
title = {KinBot: Automated stationary point search on potential energy surfaces},
|
|
79
|
+
journal = {Comput. Phys. Commun.},
|
|
80
|
+
volume = {248},
|
|
81
|
+
pages = {106947},
|
|
82
|
+
year = {2020},
|
|
83
|
+
type = {Journal Article}
|
|
84
|
+
}
|
|
85
|
+
```
|
|
68
86
|
* Judit Zádor, Carles Martí, Ruben Van de Vijver, Sommer L. Johansen, Yoona Yang, Hope A. Michelsen, Habib N. Najm: _Automated reaction kinetics of gas-phase organic species over multiwell potential energy surfaces_, J. Phys. Chem. A, **2023**, 127, 565–588. https://doi.org/10.1021/acs.jpca.2c06558
|
|
69
87
|
|
|
88
|
+
```
|
|
89
|
+
@article{Zador2022,
|
|
90
|
+
author = {Z\'ador, Judit and Mart\'i, Carles and Van de Vijver, Ruben and Johansen, Sommer L. and Yang, Yoona and Michelsen, Hope A. and Najm, Habib N.},
|
|
91
|
+
title = {Automated reaction kinetics of gas-phase organic species over multiwell potential energy surfaces},
|
|
92
|
+
journal = {J. Phys. Chem. A},
|
|
93
|
+
volume = {127},
|
|
94
|
+
pages = {565-588},
|
|
95
|
+
year = {2023},
|
|
96
|
+
type = {Journal Article}
|
|
97
|
+
}
|
|
98
|
+
```
|
|
99
|
+
|
|
70
100
|
We appreciate if you send us the DOI of your published paper that used KinBot, so we can feature it here below.
|
|
71
101
|
|
|
72
102
|
## How to Install
|
|
@@ -78,7 +108,7 @@ KinBot can be installed both in three different ways, from the PyPI index (`pip
|
|
|
78
108
|
pip install kinbot
|
|
79
109
|
|
|
80
110
|
> **Note**
|
|
81
|
-
> KinBot only works with Python >= 3.
|
|
111
|
+
> KinBot only works with Python >= 3.10.
|
|
82
112
|
|
|
83
113
|
### conda-forge
|
|
84
114
|
|
|
@@ -112,18 +142,28 @@ To run a full PES search, make an input file (e.g. input.json) and run:
|
|
|
112
142
|
You can find additional command line arguments in the manual.
|
|
113
143
|
|
|
114
144
|
## Documentation
|
|
115
|
-
See [wiki](https://github.com/zadorlab/KinBot/wiki).
|
|
145
|
+
See the [wiki](https://github.com/zadorlab/KinBot/wiki) for keywords, and our [tutorial](https://hackmd.io/@jzador/kinbot_workshop_2023#/) for a more hands-on introduction to the code.
|
|
116
146
|
|
|
117
147
|
## List of files in this project
|
|
118
148
|
See [list](https://github.com/zadorlab/KinBot/wiki/KinBot-file-structure).
|
|
119
149
|
|
|
120
150
|
## Authors
|
|
121
151
|
* Judit Zádor (jzador@sandia.gov)
|
|
122
|
-
* Ruben Van de Vijver
|
|
152
|
+
* Ruben Van de Vijver
|
|
123
153
|
* Amanda Dewyer
|
|
124
|
-
* Carles Martí
|
|
154
|
+
* Carles Martí
|
|
155
|
+
* Clément Soulié (csoulie@sandia.gov)
|
|
125
156
|
|
|
126
157
|
## Papers using KinBot
|
|
158
|
+
* Almeida, T. G., Martí, C., Kurtén, T., Zádor, J., Johansen, S. L.: _Theoretical analysis of the OH-Initiated atmospheric oxidation reactions of imidazole_. Phys. Chem. Chem. Phys., **2024** 26 23570-23587. https://doi.org/10.1039/D4CP02103G
|
|
159
|
+
* Yuan, E. C.-Y., Kumar, A., Guan, X., Hermes, E. D., Rosen, A. S., Zádor, J., Head-Gordon, T., Blau, S. M.: _Analytical ab initio Hessian from a Deep Learning Potential for Transition State Optimization_. Nat. Comm., **2024**
|
|
160
|
+
* Doner, A. C., Zádor, J., Rotavera, B.: _Stereoisomer-dependent rate coefficients and reaction mechanisms of 2-ethyloxetanylperoxy radicals_. Proc. Combust. Inst., **2024**, 40, 105578. https://doi.org/10.1016/j.proci.2024.105578
|
|
161
|
+
* Hansen, N. A, Price, T. D., Filardi, L. R., Gurses, S. M., Zhou, W., Hansen, N., Osborn, D. L. Zádor, J., Kronawitter, C. X.: _The photoionization of methoxymethanol: Fingerprinting a reactive C2 oxygenate in a complex reactive mixture_. J. Chem. Phys., **2024**, 160, 124306. https://doi.org/10.1063/5.0197827
|
|
162
|
+
* Martí, C., Devereux, C., Najm, H. N., Zádor, J.: _Evaluation of rate coefficients in the gas-phase using a machine learned potential_. J. Phys. Chem. A, **2024**, 128, 1958–1971. https://doi.org/10.1021/acs.jpca.3c07872
|
|
163
|
+
* Lang, J., Foley, C. D., Thawoos, S., Behzadfar, A., Liu, Y., Zádor, J., Suits, A. G.: _Reaction dynamics of S(3P) with 1,3-butadiene and isoprene: Crossed beam scattering, low temperature flow experiments, and high-level electronic structure calculations_. Farad. Discuss., **2024**, 251, 550-572. https://doi.org/10.1039/D4FD00009A
|
|
164
|
+
* Wang, D., Tian, Z.-Y., Zheng, Z.-H., Li, W., Wu, L.-N., Kuang, J.-J., Yang, J.-Z.: _Experimental and modeling study of the n, n-dimethylformamide pyrolysis at atmospheric pressure_. Combust. Flame, **2024**, 260, 113240. https://doi.org/10.1016/j.combustflame.2023.113240
|
|
165
|
+
* Doner, A. C., Zádor, J., Rotavera, B.: _Unimolecular reactions of 2,4-dimethyloxetanyl radicals._ J. Phys. Chem A, **2023**, 127, 2591–2600 https://doi.org/10.1021/acs.jpca.2c08290
|
|
166
|
+
* Li, H., Lang, J., Foley, C. D., Zádor, J., Suits, A. G.: _Sulfur (3P) reaction with conjugated dienes gives cyclization to thiophenes under single collision conditions._ J. Phys. Chem. Letters, **2023**, 14, 7611–7617. https://doi.org/10.1021/acs.jpclett.3c01953
|
|
127
167
|
* Martí, C., Michelsen, H. A., Najm, H. N., Zádor, J.: _Comprehensive kinetics on the C7H7 potential energy surface under combustion conditions._ J. Phys. Chem. A, **2023**, 127, 1941–1959. https://pubs.acs.org/doi/full/10.1021/acs.jpca.2c08035
|
|
128
168
|
* Zádor, J, Martí, C., Van de Vijver, R., Johansen, S. L., Yang, Y., Michelsen, H. A., Najm, H. N.: _Automated reaction kinetics of gas-phase organic species over multiwell potential energy surfaces._ J. Phys. Chem. A, **2023**, 127, 565–588. https://doi.org/10.1021/acs.jpca.2c06558
|
|
129
169
|
* Lockwood, K. S., Ahmed, S. F., Huq, N. A., Stutzman, S. C., Foust, T. D., Labbe, N. J.: _Advances in predictive chemistry enable a multi-scale rational design approach for biofuels with advantaged properties_ Sustainable Energy Fuels, **2022**, 6, 5371-5383. https://doi.org/10.1039/D2SE00773H
|
|
@@ -16,6 +16,7 @@ kinbot/conformers.py
|
|
|
16
16
|
kinbot/constants.py
|
|
17
17
|
kinbot/exceptions.py
|
|
18
18
|
kinbot/find_motif.py
|
|
19
|
+
kinbot/fragments.py
|
|
19
20
|
kinbot/frequencies.py
|
|
20
21
|
kinbot/geometry.py
|
|
21
22
|
kinbot/hindered_rotors.py
|
|
@@ -31,6 +32,8 @@ kinbot/orca.py
|
|
|
31
32
|
kinbot/parameters.py
|
|
32
33
|
kinbot/pes.py
|
|
33
34
|
kinbot/postprocess.py
|
|
35
|
+
kinbot/pp_settings.py
|
|
36
|
+
kinbot/pp_tables.py
|
|
34
37
|
kinbot/qc.py
|
|
35
38
|
kinbot/reac_General.py
|
|
36
39
|
kinbot/reac_family.py
|
|
@@ -44,6 +47,8 @@ kinbot/symmetry.py
|
|
|
44
47
|
kinbot/thread_kinbot.py
|
|
45
48
|
kinbot/uncertaintyAnalysis.py
|
|
46
49
|
kinbot/utils.py
|
|
50
|
+
kinbot/vrc_tst_scan.py
|
|
51
|
+
kinbot/vrc_tst_surfaces.py
|
|
47
52
|
kinbot/zmatrix.py
|
|
48
53
|
kinbot.egg-info/PKG-INFO
|
|
49
54
|
kinbot.egg-info/SOURCES.txt
|
|
@@ -55,6 +60,7 @@ kinbot/ase_modules/__init__.py
|
|
|
55
60
|
kinbot/ase_modules/constraints.py
|
|
56
61
|
kinbot/ase_modules/calculators/__init__.py
|
|
57
62
|
kinbot/ase_modules/calculators/gaussian.py
|
|
63
|
+
kinbot/ase_modules/calculators/nn_pes.py
|
|
58
64
|
kinbot/ase_modules/calculators/qchem.py
|
|
59
65
|
kinbot/ase_modules/io/__init__.py
|
|
60
66
|
kinbot/ase_modules/io/formats.py
|
|
@@ -114,6 +120,7 @@ kinbot/tpl/ase_gauss_opt_well.tpl.py
|
|
|
114
120
|
kinbot/tpl/ase_gauss_ring_conf.tpl.py
|
|
115
121
|
kinbot/tpl/ase_gauss_ts_end.tpl.py
|
|
116
122
|
kinbot/tpl/ase_gauss_ts_search.tpl.py
|
|
123
|
+
kinbot/tpl/ase_gauss_vts.tpl.py
|
|
117
124
|
kinbot/tpl/ase_nwchem_freq_well.tpl.py
|
|
118
125
|
kinbot/tpl/ase_nwchem_irc.tpl.py
|
|
119
126
|
kinbot/tpl/ase_nwchem_opt_well.tpl.py
|
|
@@ -131,6 +138,7 @@ kinbot/tpl/ase_sella_opt_well.tpl.py
|
|
|
131
138
|
kinbot/tpl/ase_sella_ring_conf.tpl.py
|
|
132
139
|
kinbot/tpl/ase_sella_ts_end.tpl.py
|
|
133
140
|
kinbot/tpl/ase_sella_ts_search.tpl.py
|
|
141
|
+
kinbot/tpl/ase_sella_vts.tpl.py
|
|
134
142
|
kinbot/tpl/local_molpro.tpl
|
|
135
143
|
kinbot/tpl/mess_2tst.tpl
|
|
136
144
|
kinbot/tpl/mess_atom.tpl
|
|
@@ -146,6 +154,7 @@ kinbot/tpl/mess_fragment_OH.tpl
|
|
|
146
154
|
kinbot/tpl/mess_freerotor.tpl
|
|
147
155
|
kinbot/tpl/mess_header.tpl
|
|
148
156
|
kinbot/tpl/mess_hinderedrotor.tpl
|
|
157
|
+
kinbot/tpl/mess_hinderedrotorgeom.tpl
|
|
149
158
|
kinbot/tpl/mess_outerrrho.tpl
|
|
150
159
|
kinbot/tpl/mess_pst.tpl
|
|
151
160
|
kinbot/tpl/mess_pstfragment.tpl
|
|
@@ -157,6 +166,8 @@ kinbot/tpl/mess_variational.tpl
|
|
|
157
166
|
kinbot/tpl/mess_well.tpl
|
|
158
167
|
kinbot/tpl/mess_well_union.tpl
|
|
159
168
|
kinbot/tpl/molpro.tpl
|
|
169
|
+
kinbot/tpl/molpro_ts_search.tpl.py
|
|
170
|
+
kinbot/tpl/molpro_vts.tpl
|
|
160
171
|
kinbot/tpl/pbs.tpl
|
|
161
172
|
kinbot/tpl/pbs_mesmer.tpl
|
|
162
173
|
kinbot/tpl/pbs_mess.tpl
|
|
@@ -164,6 +175,11 @@ kinbot/tpl/pbs_mess_uq.tpl
|
|
|
164
175
|
kinbot/tpl/pbs_molpro.tpl
|
|
165
176
|
kinbot/tpl/pbs_python.tpl
|
|
166
177
|
kinbot/tpl/pesviewer.inp.tpl
|
|
178
|
+
kinbot/tpl/rotdPy.tpl
|
|
179
|
+
kinbot/tpl/rotdPy_1d_corr.tpl
|
|
180
|
+
kinbot/tpl/rotdPy_calc.tpl
|
|
181
|
+
kinbot/tpl/rotdPy_frag.tpl
|
|
182
|
+
kinbot/tpl/rotdPy_surf.tpl
|
|
167
183
|
kinbot/tpl/slurm.tpl
|
|
168
184
|
kinbot/tpl/slurm_mesmer.tpl
|
|
169
185
|
kinbot/tpl/slurm_mess.tpl
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
BSD 3-Clause License
|
|
2
2
|
|
|
3
|
-
Copyright (c) 2018,
|
|
4
|
-
|
|
3
|
+
Copyright (c) 2018, National Technology & Engineering Solutions of Sandia,
|
|
4
|
+
LLC (NTESS). Under the terms of Contract DE-NA0003525 with NTESS,
|
|
5
|
+
the U.S. Government retains certain rights in this software
|
|
5
6
|
|
|
6
7
|
Redistribution and use in source and binary forms, with or without
|
|
7
8
|
modification, are permitted provided that the following conditions are met:
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: kinbot
|
|
3
|
-
Version: 2.2.
|
|
3
|
+
Version: 2.2.2
|
|
4
4
|
Summary: Automated reaction kinetics for gas-phase species
|
|
5
|
-
Author-email: Judit Zádor <jzador@sandia.gov>, Ruben
|
|
6
|
-
Maintainer-email: Judit Zádor <jzador@sandia.gov>,
|
|
5
|
+
Author-email: Judit Zádor <jzador@sandia.gov>, Ruben Van de Vijver <ruben.vandevijver@ugent.be>, Carles Martí <cmartia@sandia.gov>, Clément Soulié <csoulie@sandia.gov>, Amanda Dewyer <adewyer@sandia.gov>
|
|
6
|
+
Maintainer-email: Judit Zádor <jzador@sandia.gov>, Clément Soulié <csoulie@sandia.gov>
|
|
7
7
|
License: BSD 3-Clause License
|
|
8
8
|
|
|
9
|
-
Copyright (c) 2018,
|
|
10
|
-
|
|
9
|
+
Copyright (c) 2018, National Technology & Engineering Solutions of Sandia,
|
|
10
|
+
LLC (NTESS). Under the terms of Contract DE-NA0003525 with NTESS,
|
|
11
|
+
the U.S. Government retains certain rights in this software
|
|
11
12
|
|
|
12
13
|
Redistribution and use in source and binary forms, with or without
|
|
13
14
|
modification, are permitted provided that the following conditions are met:
|
|
@@ -41,14 +42,20 @@ Classifier: Intended Audience :: Science/Research
|
|
|
41
42
|
Classifier: Natural Language :: English
|
|
42
43
|
Classifier: License :: OSI Approved :: BSD License
|
|
43
44
|
Classifier: Operating System :: OS Independent
|
|
44
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
45
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
46
45
|
Classifier: Programming Language :: Python :: 3.10
|
|
47
46
|
Classifier: Topic :: Scientific/Engineering :: Chemistry
|
|
48
|
-
Requires-Python: >=3.
|
|
47
|
+
Requires-Python: >=3.10
|
|
49
48
|
Description-Content-Type: text/markdown
|
|
50
|
-
Provides-Extra: plot
|
|
51
49
|
License-File: LICENSE
|
|
50
|
+
Requires-Dist: numpy<2.0,>=1.17.0
|
|
51
|
+
Requires-Dist: ase<3.23,>=3.19
|
|
52
|
+
Requires-Dist: networkx
|
|
53
|
+
Requires-Dist: rmsd>=1.5.1
|
|
54
|
+
Requires-Dist: sella
|
|
55
|
+
Provides-Extra: plot
|
|
56
|
+
Requires-Dist: matplotlib; extra == "plot"
|
|
57
|
+
Requires-Dist: pyvis; extra == "plot"
|
|
58
|
+
Requires-Dist: rdkit; extra == "plot"
|
|
52
59
|
|
|
53
60
|
[](https://gitter.im/zadorlab/KinBot)
|
|
54
61
|
|
|
@@ -59,14 +66,37 @@ License-File: LICENSE
|
|
|
59
66
|
</p>
|
|
60
67
|
|
|
61
68
|
## Description
|
|
62
|
-
This repository contains the KinBot code version 2.
|
|
69
|
+
This repository contains the KinBot code version 2.2.1,
|
|
63
70
|
a tool for automatically searching for reactions on the potential energy surface.
|
|
64
71
|
|
|
65
72
|
If you are using this tool in scientific publications, please reference the following publications:
|
|
66
73
|
|
|
67
74
|
* Ruben Van de Vijver, Judit Zádor: KinBot: _Automated stationary point search on potential energy surfaces_, Comp. Phys. Comm., **2019**, 248, 106947. https://doi.org/10.1016/j.cpc.2019.106947
|
|
75
|
+
```
|
|
76
|
+
@article{Vijver2020,
|
|
77
|
+
author = {Van de Vijver, Ruben and Z\'ador, Judit},
|
|
78
|
+
title = {KinBot: Automated stationary point search on potential energy surfaces},
|
|
79
|
+
journal = {Comput. Phys. Commun.},
|
|
80
|
+
volume = {248},
|
|
81
|
+
pages = {106947},
|
|
82
|
+
year = {2020},
|
|
83
|
+
type = {Journal Article}
|
|
84
|
+
}
|
|
85
|
+
```
|
|
68
86
|
* Judit Zádor, Carles Martí, Ruben Van de Vijver, Sommer L. Johansen, Yoona Yang, Hope A. Michelsen, Habib N. Najm: _Automated reaction kinetics of gas-phase organic species over multiwell potential energy surfaces_, J. Phys. Chem. A, **2023**, 127, 565–588. https://doi.org/10.1021/acs.jpca.2c06558
|
|
69
87
|
|
|
88
|
+
```
|
|
89
|
+
@article{Zador2022,
|
|
90
|
+
author = {Z\'ador, Judit and Mart\'i, Carles and Van de Vijver, Ruben and Johansen, Sommer L. and Yang, Yoona and Michelsen, Hope A. and Najm, Habib N.},
|
|
91
|
+
title = {Automated reaction kinetics of gas-phase organic species over multiwell potential energy surfaces},
|
|
92
|
+
journal = {J. Phys. Chem. A},
|
|
93
|
+
volume = {127},
|
|
94
|
+
pages = {565-588},
|
|
95
|
+
year = {2023},
|
|
96
|
+
type = {Journal Article}
|
|
97
|
+
}
|
|
98
|
+
```
|
|
99
|
+
|
|
70
100
|
We appreciate if you send us the DOI of your published paper that used KinBot, so we can feature it here below.
|
|
71
101
|
|
|
72
102
|
## How to Install
|
|
@@ -78,7 +108,7 @@ KinBot can be installed both in three different ways, from the PyPI index (`pip
|
|
|
78
108
|
pip install kinbot
|
|
79
109
|
|
|
80
110
|
> **Note**
|
|
81
|
-
> KinBot only works with Python >= 3.
|
|
111
|
+
> KinBot only works with Python >= 3.10.
|
|
82
112
|
|
|
83
113
|
### conda-forge
|
|
84
114
|
|
|
@@ -112,18 +142,28 @@ To run a full PES search, make an input file (e.g. input.json) and run:
|
|
|
112
142
|
You can find additional command line arguments in the manual.
|
|
113
143
|
|
|
114
144
|
## Documentation
|
|
115
|
-
See [wiki](https://github.com/zadorlab/KinBot/wiki).
|
|
145
|
+
See the [wiki](https://github.com/zadorlab/KinBot/wiki) for keywords, and our [tutorial](https://hackmd.io/@jzador/kinbot_workshop_2023#/) for a more hands-on introduction to the code.
|
|
116
146
|
|
|
117
147
|
## List of files in this project
|
|
118
148
|
See [list](https://github.com/zadorlab/KinBot/wiki/KinBot-file-structure).
|
|
119
149
|
|
|
120
150
|
## Authors
|
|
121
151
|
* Judit Zádor (jzador@sandia.gov)
|
|
122
|
-
* Ruben Van de Vijver
|
|
152
|
+
* Ruben Van de Vijver
|
|
123
153
|
* Amanda Dewyer
|
|
124
|
-
* Carles Martí
|
|
154
|
+
* Carles Martí
|
|
155
|
+
* Clément Soulié (csoulie@sandia.gov)
|
|
125
156
|
|
|
126
157
|
## Papers using KinBot
|
|
158
|
+
* Almeida, T. G., Martí, C., Kurtén, T., Zádor, J., Johansen, S. L.: _Theoretical analysis of the OH-Initiated atmospheric oxidation reactions of imidazole_. Phys. Chem. Chem. Phys., **2024** 26 23570-23587. https://doi.org/10.1039/D4CP02103G
|
|
159
|
+
* Yuan, E. C.-Y., Kumar, A., Guan, X., Hermes, E. D., Rosen, A. S., Zádor, J., Head-Gordon, T., Blau, S. M.: _Analytical ab initio Hessian from a Deep Learning Potential for Transition State Optimization_. Nat. Comm., **2024**
|
|
160
|
+
* Doner, A. C., Zádor, J., Rotavera, B.: _Stereoisomer-dependent rate coefficients and reaction mechanisms of 2-ethyloxetanylperoxy radicals_. Proc. Combust. Inst., **2024**, 40, 105578. https://doi.org/10.1016/j.proci.2024.105578
|
|
161
|
+
* Hansen, N. A, Price, T. D., Filardi, L. R., Gurses, S. M., Zhou, W., Hansen, N., Osborn, D. L. Zádor, J., Kronawitter, C. X.: _The photoionization of methoxymethanol: Fingerprinting a reactive C2 oxygenate in a complex reactive mixture_. J. Chem. Phys., **2024**, 160, 124306. https://doi.org/10.1063/5.0197827
|
|
162
|
+
* Martí, C., Devereux, C., Najm, H. N., Zádor, J.: _Evaluation of rate coefficients in the gas-phase using a machine learned potential_. J. Phys. Chem. A, **2024**, 128, 1958–1971. https://doi.org/10.1021/acs.jpca.3c07872
|
|
163
|
+
* Lang, J., Foley, C. D., Thawoos, S., Behzadfar, A., Liu, Y., Zádor, J., Suits, A. G.: _Reaction dynamics of S(3P) with 1,3-butadiene and isoprene: Crossed beam scattering, low temperature flow experiments, and high-level electronic structure calculations_. Farad. Discuss., **2024**, 251, 550-572. https://doi.org/10.1039/D4FD00009A
|
|
164
|
+
* Wang, D., Tian, Z.-Y., Zheng, Z.-H., Li, W., Wu, L.-N., Kuang, J.-J., Yang, J.-Z.: _Experimental and modeling study of the n, n-dimethylformamide pyrolysis at atmospheric pressure_. Combust. Flame, **2024**, 260, 113240. https://doi.org/10.1016/j.combustflame.2023.113240
|
|
165
|
+
* Doner, A. C., Zádor, J., Rotavera, B.: _Unimolecular reactions of 2,4-dimethyloxetanyl radicals._ J. Phys. Chem A, **2023**, 127, 2591–2600 https://doi.org/10.1021/acs.jpca.2c08290
|
|
166
|
+
* Li, H., Lang, J., Foley, C. D., Zádor, J., Suits, A. G.: _Sulfur (3P) reaction with conjugated dienes gives cyclization to thiophenes under single collision conditions._ J. Phys. Chem. Letters, **2023**, 14, 7611–7617. https://doi.org/10.1021/acs.jpclett.3c01953
|
|
127
167
|
* Martí, C., Michelsen, H. A., Najm, H. N., Zádor, J.: _Comprehensive kinetics on the C7H7 potential energy surface under combustion conditions._ J. Phys. Chem. A, **2023**, 127, 1941–1959. https://pubs.acs.org/doi/full/10.1021/acs.jpca.2c08035
|
|
128
168
|
* Zádor, J, Martí, C., Van de Vijver, R., Johansen, S. L., Yang, Y., Michelsen, H. A., Najm, H. N.: _Automated reaction kinetics of gas-phase organic species over multiwell potential energy surfaces._ J. Phys. Chem. A, **2023**, 127, 565–588. https://doi.org/10.1021/acs.jpca.2c06558
|
|
129
169
|
* Lockwood, K. S., Ahmed, S. F., Huq, N. A., Stutzman, S. C., Foust, T. D., Labbe, N. J.: _Advances in predictive chemistry enable a multi-scale rational design approach for biofuels with advantaged properties_ Sustainable Energy Fuels, **2022**, 6, 5371-5383. https://doi.org/10.1039/D2SE00773H
|
|
@@ -7,14 +7,37 @@
|
|
|
7
7
|
</p>
|
|
8
8
|
|
|
9
9
|
## Description
|
|
10
|
-
This repository contains the KinBot code version 2.
|
|
10
|
+
This repository contains the KinBot code version 2.2.1,
|
|
11
11
|
a tool for automatically searching for reactions on the potential energy surface.
|
|
12
12
|
|
|
13
13
|
If you are using this tool in scientific publications, please reference the following publications:
|
|
14
14
|
|
|
15
15
|
* Ruben Van de Vijver, Judit Zádor: KinBot: _Automated stationary point search on potential energy surfaces_, Comp. Phys. Comm., **2019**, 248, 106947. https://doi.org/10.1016/j.cpc.2019.106947
|
|
16
|
+
```
|
|
17
|
+
@article{Vijver2020,
|
|
18
|
+
author = {Van de Vijver, Ruben and Z\'ador, Judit},
|
|
19
|
+
title = {KinBot: Automated stationary point search on potential energy surfaces},
|
|
20
|
+
journal = {Comput. Phys. Commun.},
|
|
21
|
+
volume = {248},
|
|
22
|
+
pages = {106947},
|
|
23
|
+
year = {2020},
|
|
24
|
+
type = {Journal Article}
|
|
25
|
+
}
|
|
26
|
+
```
|
|
16
27
|
* Judit Zádor, Carles Martí, Ruben Van de Vijver, Sommer L. Johansen, Yoona Yang, Hope A. Michelsen, Habib N. Najm: _Automated reaction kinetics of gas-phase organic species over multiwell potential energy surfaces_, J. Phys. Chem. A, **2023**, 127, 565–588. https://doi.org/10.1021/acs.jpca.2c06558
|
|
17
28
|
|
|
29
|
+
```
|
|
30
|
+
@article{Zador2022,
|
|
31
|
+
author = {Z\'ador, Judit and Mart\'i, Carles and Van de Vijver, Ruben and Johansen, Sommer L. and Yang, Yoona and Michelsen, Hope A. and Najm, Habib N.},
|
|
32
|
+
title = {Automated reaction kinetics of gas-phase organic species over multiwell potential energy surfaces},
|
|
33
|
+
journal = {J. Phys. Chem. A},
|
|
34
|
+
volume = {127},
|
|
35
|
+
pages = {565-588},
|
|
36
|
+
year = {2023},
|
|
37
|
+
type = {Journal Article}
|
|
38
|
+
}
|
|
39
|
+
```
|
|
40
|
+
|
|
18
41
|
We appreciate if you send us the DOI of your published paper that used KinBot, so we can feature it here below.
|
|
19
42
|
|
|
20
43
|
## How to Install
|
|
@@ -26,7 +49,7 @@ KinBot can be installed both in three different ways, from the PyPI index (`pip
|
|
|
26
49
|
pip install kinbot
|
|
27
50
|
|
|
28
51
|
> **Note**
|
|
29
|
-
> KinBot only works with Python >= 3.
|
|
52
|
+
> KinBot only works with Python >= 3.10.
|
|
30
53
|
|
|
31
54
|
### conda-forge
|
|
32
55
|
|
|
@@ -60,18 +83,28 @@ To run a full PES search, make an input file (e.g. input.json) and run:
|
|
|
60
83
|
You can find additional command line arguments in the manual.
|
|
61
84
|
|
|
62
85
|
## Documentation
|
|
63
|
-
See [wiki](https://github.com/zadorlab/KinBot/wiki).
|
|
86
|
+
See the [wiki](https://github.com/zadorlab/KinBot/wiki) for keywords, and our [tutorial](https://hackmd.io/@jzador/kinbot_workshop_2023#/) for a more hands-on introduction to the code.
|
|
64
87
|
|
|
65
88
|
## List of files in this project
|
|
66
89
|
See [list](https://github.com/zadorlab/KinBot/wiki/KinBot-file-structure).
|
|
67
90
|
|
|
68
91
|
## Authors
|
|
69
92
|
* Judit Zádor (jzador@sandia.gov)
|
|
70
|
-
* Ruben Van de Vijver
|
|
93
|
+
* Ruben Van de Vijver
|
|
71
94
|
* Amanda Dewyer
|
|
72
|
-
* Carles Martí
|
|
95
|
+
* Carles Martí
|
|
96
|
+
* Clément Soulié (csoulie@sandia.gov)
|
|
73
97
|
|
|
74
98
|
## Papers using KinBot
|
|
99
|
+
* Almeida, T. G., Martí, C., Kurtén, T., Zádor, J., Johansen, S. L.: _Theoretical analysis of the OH-Initiated atmospheric oxidation reactions of imidazole_. Phys. Chem. Chem. Phys., **2024** 26 23570-23587. https://doi.org/10.1039/D4CP02103G
|
|
100
|
+
* Yuan, E. C.-Y., Kumar, A., Guan, X., Hermes, E. D., Rosen, A. S., Zádor, J., Head-Gordon, T., Blau, S. M.: _Analytical ab initio Hessian from a Deep Learning Potential for Transition State Optimization_. Nat. Comm., **2024**
|
|
101
|
+
* Doner, A. C., Zádor, J., Rotavera, B.: _Stereoisomer-dependent rate coefficients and reaction mechanisms of 2-ethyloxetanylperoxy radicals_. Proc. Combust. Inst., **2024**, 40, 105578. https://doi.org/10.1016/j.proci.2024.105578
|
|
102
|
+
* Hansen, N. A, Price, T. D., Filardi, L. R., Gurses, S. M., Zhou, W., Hansen, N., Osborn, D. L. Zádor, J., Kronawitter, C. X.: _The photoionization of methoxymethanol: Fingerprinting a reactive C2 oxygenate in a complex reactive mixture_. J. Chem. Phys., **2024**, 160, 124306. https://doi.org/10.1063/5.0197827
|
|
103
|
+
* Martí, C., Devereux, C., Najm, H. N., Zádor, J.: _Evaluation of rate coefficients in the gas-phase using a machine learned potential_. J. Phys. Chem. A, **2024**, 128, 1958–1971. https://doi.org/10.1021/acs.jpca.3c07872
|
|
104
|
+
* Lang, J., Foley, C. D., Thawoos, S., Behzadfar, A., Liu, Y., Zádor, J., Suits, A. G.: _Reaction dynamics of S(3P) with 1,3-butadiene and isoprene: Crossed beam scattering, low temperature flow experiments, and high-level electronic structure calculations_. Farad. Discuss., **2024**, 251, 550-572. https://doi.org/10.1039/D4FD00009A
|
|
105
|
+
* Wang, D., Tian, Z.-Y., Zheng, Z.-H., Li, W., Wu, L.-N., Kuang, J.-J., Yang, J.-Z.: _Experimental and modeling study of the n, n-dimethylformamide pyrolysis at atmospheric pressure_. Combust. Flame, **2024**, 260, 113240. https://doi.org/10.1016/j.combustflame.2023.113240
|
|
106
|
+
* Doner, A. C., Zádor, J., Rotavera, B.: _Unimolecular reactions of 2,4-dimethyloxetanyl radicals._ J. Phys. Chem A, **2023**, 127, 2591–2600 https://doi.org/10.1021/acs.jpca.2c08290
|
|
107
|
+
* Li, H., Lang, J., Foley, C. D., Zádor, J., Suits, A. G.: _Sulfur (3P) reaction with conjugated dienes gives cyclization to thiophenes under single collision conditions._ J. Phys. Chem. Letters, **2023**, 14, 7611–7617. https://doi.org/10.1021/acs.jpclett.3c01953
|
|
75
108
|
* Martí, C., Michelsen, H. A., Najm, H. N., Zádor, J.: _Comprehensive kinetics on the C7H7 potential energy surface under combustion conditions._ J. Phys. Chem. A, **2023**, 127, 1941–1959. https://pubs.acs.org/doi/full/10.1021/acs.jpca.2c08035
|
|
76
109
|
* Zádor, J, Martí, C., Van de Vijver, R., Johansen, S. L., Yang, Y., Michelsen, H. A., Najm, H. N.: _Automated reaction kinetics of gas-phase organic species over multiwell potential energy surfaces._ J. Phys. Chem. A, **2023**, 127, 565–588. https://doi.org/10.1021/acs.jpca.2c06558
|
|
77
110
|
* Lockwood, K. S., Ahmed, S. F., Huq, N. A., Stutzman, S. C., Foust, T. D., Labbe, N. J.: _Advances in predictive chemistry enable a multi-scale rational design approach for biofuels with advantaged properties_ Sustainable Energy Fuels, **2022**, 6, 5371-5383. https://doi.org/10.1039/D2SE00773H
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
import os
|
|
2
|
+
from pathlib import Path
|
|
3
|
+
import warnings
|
|
4
|
+
|
|
5
|
+
import numpy as np
|
|
6
|
+
import torch
|
|
7
|
+
from ase import Atoms
|
|
8
|
+
from ase.calculators.calculator import Calculator, all_changes
|
|
9
|
+
|
|
10
|
+
from util import util_path
|
|
11
|
+
from util.data import data
|
|
12
|
+
import util.nn.pes_compNet_multifid as pes
|
|
13
|
+
from util.sfi import daev
|
|
14
|
+
|
|
15
|
+
os.environ['KMP_DUPLICATE_LIB_OK']='True'
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class Nn_surr(Calculator):
|
|
19
|
+
implemented_properties = ['energy', 'forces']
|
|
20
|
+
|
|
21
|
+
def __init__(self, fname, restart=None, ignore_bad_restart_file=False,
|
|
22
|
+
label='surrogate', atoms=None, tnsr=False, **kwargs):
|
|
23
|
+
Calculator.__init__(self, restart=restart,
|
|
24
|
+
ignore_bad_restart_file=ignore_bad_restart_file,
|
|
25
|
+
label=label,
|
|
26
|
+
atoms=atoms, tnsr=tnsr, **kwargs)
|
|
27
|
+
if isinstance(fname, list) and fname.__len__() > 1:
|
|
28
|
+
self.multinn = True
|
|
29
|
+
else:
|
|
30
|
+
self.multinn = False
|
|
31
|
+
self.surrogate = Nnpes_calc(fname, self.multinn)
|
|
32
|
+
self.tnsr = tnsr
|
|
33
|
+
|
|
34
|
+
def calculate(self, atoms=None, properties=['energy', 'forces'],
|
|
35
|
+
system_changes=all_changes, loaddb=None, args=None, xid=None):
|
|
36
|
+
Calculator.calculate(self, atoms, properties, system_changes)
|
|
37
|
+
if 'forces' in properties:
|
|
38
|
+
favail = True
|
|
39
|
+
else:
|
|
40
|
+
favail = False
|
|
41
|
+
|
|
42
|
+
xyzd = [[[s for s in atoms.symbols], np.array(atoms.positions)]]
|
|
43
|
+
self.surrogate.dpes.aev_from_xyz(xyzd, 32, 8, 8, [4.6,3.1], False,
|
|
44
|
+
self.surrogate.myaev)
|
|
45
|
+
self.surrogate.nforce = self.surrogate.dpes.full_symb_data[0].__len__() * 3
|
|
46
|
+
|
|
47
|
+
if self.multinn:
|
|
48
|
+
energy, Estd, E_hf = self.surrogate.eval()
|
|
49
|
+
if favail:
|
|
50
|
+
force, Fstd, force_ind = self.surrogate.evalforce()
|
|
51
|
+
else:
|
|
52
|
+
energy = self.surrogate.eval()[0][0]
|
|
53
|
+
Estd = torch.tensor(0.)
|
|
54
|
+
if favail:
|
|
55
|
+
force = self.surrogate.evalforce()
|
|
56
|
+
Fstd = torch.tensor(0.)
|
|
57
|
+
|
|
58
|
+
if self.tnsr:
|
|
59
|
+
self.results['energy'] = energy
|
|
60
|
+
self.results['energy_std'] = Estd
|
|
61
|
+
if self.multinn:
|
|
62
|
+
self.results['all_energies'] = E_hf
|
|
63
|
+
if favail:
|
|
64
|
+
self.results['forces'] = force.view(-1, 3)
|
|
65
|
+
self.results['forces_std'] = Fstd
|
|
66
|
+
if self.multinn:
|
|
67
|
+
self.results['all_forces'] = force_ind
|
|
68
|
+
else:
|
|
69
|
+
self.results['energy'] = float(energy)
|
|
70
|
+
self.results['energy_std'] = Estd.detach().numpy()
|
|
71
|
+
if self.multinn:
|
|
72
|
+
self.results['all_energies'] = E_hf.detach().numpy()
|
|
73
|
+
if favail:
|
|
74
|
+
self.results['forces'] = np.reshape(force.detach().numpy(),
|
|
75
|
+
(-1, 3))
|
|
76
|
+
self.results['forces_std'] = Fstd.detach().numpy()
|
|
77
|
+
if self.multinn:
|
|
78
|
+
self.results['all_forces'] = force_ind.detach().numpy()
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
class My_args():
|
|
82
|
+
|
|
83
|
+
def __init__(self, nntype, model_name, fid):
|
|
84
|
+
self.nntype = [nntype]
|
|
85
|
+
if model_name is None:
|
|
86
|
+
self.load_model = False
|
|
87
|
+
else:
|
|
88
|
+
if isinstance(model_name, list):
|
|
89
|
+
self.load_model_name = model_name
|
|
90
|
+
else:
|
|
91
|
+
self.load_model_name = [model_name]
|
|
92
|
+
self.fid = [fid]
|
|
93
|
+
self.nw = True
|
|
94
|
+
self.savepth = None
|
|
95
|
+
self.savepth_pars = None
|
|
96
|
+
self.device = torch.device('cpu')
|
|
97
|
+
|
|
98
|
+
class Nnpes_calc():
|
|
99
|
+
|
|
100
|
+
def __init__(self, fname, multinn=False):
|
|
101
|
+
self.dpes = data.Data_pes(['C', 'H'])
|
|
102
|
+
self.myaev = self.dpes.prep_aev()
|
|
103
|
+
if multinn:
|
|
104
|
+
self.nmodel = fname.__len__()
|
|
105
|
+
options = [My_args('Comp', fnm, 'hfonly') for fnm in fname]
|
|
106
|
+
self.dpes.device = options[0].device
|
|
107
|
+
self.nn_pes = [pes.prep_model(True, opts, load_opt=False)
|
|
108
|
+
for opts in options]
|
|
109
|
+
else:
|
|
110
|
+
self.nmodel = 1
|
|
111
|
+
options = My_args('Comp', fname, 'hfonly')
|
|
112
|
+
self.dpes.device = options.device
|
|
113
|
+
self.nn_pes = pes.prep_model(True, options, load_opt=False)
|
|
114
|
+
#print('SAE energies: ', self.nn_pes.sae_energies)
|
|
115
|
+
|
|
116
|
+
def eval(self, indvout=False):
|
|
117
|
+
idl = list(range(0, self.dpes.ndat))
|
|
118
|
+
self.dpes.prep_data(idl)
|
|
119
|
+
self.dpes.indvout = indvout
|
|
120
|
+
self.dpes.ymax = np.max([y[-1] for y in self.dpes.xdat])
|
|
121
|
+
self.dpes.ymin = np.min([y[-1] for y in self.dpes.xdat])
|
|
122
|
+
self.dpes.xb = [[xt.requires_grad_() for xt in self.dpes.xb[b]]
|
|
123
|
+
for b in range(self.dpes.nbt)]
|
|
124
|
+
if self.nmodel == 1:
|
|
125
|
+
self.E_lf, self.E_hf = self.nn_pes.eval_dl(self.dpes)
|
|
126
|
+
E_pred = self.E_hf
|
|
127
|
+
return E_pred
|
|
128
|
+
else:
|
|
129
|
+
self.E_hf = torch.empty((self.dpes.ndat, self.nmodel))
|
|
130
|
+
for i in range(self.nmodel):
|
|
131
|
+
E_lf, E_hf = self.nn_pes[i].eval_dl(self.dpes)
|
|
132
|
+
self.E_hf[:, i] = E_hf.reshape(-1)
|
|
133
|
+
E_pred = torch.mean(self.E_hf)
|
|
134
|
+
Estd = torch.std(self.E_hf, 1)
|
|
135
|
+
return E_pred, Estd, self.E_hf
|
|
136
|
+
|
|
137
|
+
def evalgrad(self):
|
|
138
|
+
if self.nmodel == 1:
|
|
139
|
+
dEdxyz = daev.cal_dEdxyz_dl(self.dpes, self.E_hf)[0]
|
|
140
|
+
return dEdxyz
|
|
141
|
+
else:
|
|
142
|
+
dEdxyz = torch.empty((self.dpes.ndat, self.nmodel, self.nforce))
|
|
143
|
+
for i in range(self.nmodel):
|
|
144
|
+
tmp = daev.cal_dEdxyz_dl(self.dpes, self.E_hf[:, i])[0]
|
|
145
|
+
dEdxyz[:, i] = tmp
|
|
146
|
+
gmean = torch.mean(dEdxyz, 1).reshape(-1)
|
|
147
|
+
gstd = torch.std(dEdxyz, 1).reshape(-1)
|
|
148
|
+
return gmean, gstd, dEdxyz
|
|
149
|
+
|
|
150
|
+
def evalforce(self):
|
|
151
|
+
if self.nmodel == 1:
|
|
152
|
+
gradient = self.evalgrad()
|
|
153
|
+
return -gradient
|
|
154
|
+
else:
|
|
155
|
+
gmean, gstd, dEdxyz = self.evalgrad()
|
|
156
|
+
return -gmean, gstd, -dEdxyz
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
def main():
|
|
160
|
+
# set default pytorch as double precision
|
|
161
|
+
torch.set_default_dtype(torch.float64)
|
|
162
|
+
|
|
163
|
+
torch.set_printoptions(precision=12)
|
|
164
|
+
|
|
165
|
+
home = str(Path.home())
|
|
166
|
+
|
|
167
|
+
nn1 = home+'/mls/util/models/AL/C5H5-2b2IRC1ts_full/run1-1/C5H5_lf_reddb_2w2IRC1ts_20k_rand0-29540.pt'
|
|
168
|
+
nn2 = home+'/mls/util/models/AL/C5H5-2b2IRC1ts_full/run1-1/C5H5_lf_reddb_2w2IRC1ts_20k_rand1-29260.pt'
|
|
169
|
+
nn3 = home+'/mls/util/models/AL/C5H5-2b2IRC1ts_full/run1-1/C5H5_lf_reddb_2w2IRC1ts_20k_rand2-29115.pt'
|
|
170
|
+
nn4 = home+'/mls/util/models/AL/C5H5-2b2IRC1ts_full/run1-1/C5H5_lf_reddb_2w2IRC1ts_20k_rand3-0005.pt'
|
|
171
|
+
nn5 = home+'/mls/util/models/AL/C5H5-2b2IRC1ts_full/run1-1/C5H5_lf_reddb_2w2IRC1ts_20k_rand4-2500.pt'
|
|
172
|
+
|
|
173
|
+
# import glob
|
|
174
|
+
# fn_nn = glob.glob('../../models/AL/C5H5-2b2IRC1ts_smallset/run0/*')
|
|
175
|
+
# fn_nn = ['comp-0010.pt', 'comp-0010.pt']
|
|
176
|
+
|
|
177
|
+
fn_nn = [nn1, nn2, nn3, nn4, nn5]
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
#atoms = Atoms(['C', 'H', 'C'],
|
|
181
|
+
# [(1.734285, 1.257951, 0.130304),
|
|
182
|
+
# (3.016641, 1.515035, 0.130976),
|
|
183
|
+
# (1.617565, -0.19116, -0.177416)])
|
|
184
|
+
|
|
185
|
+
xyz_db = [[
|
|
186
|
+
['C', 'H', 'C'],
|
|
187
|
+
np.array([[1.734285, 1.257951, 0.130304],
|
|
188
|
+
[3.016641, 1.515035, 0.130976],
|
|
189
|
+
[1.617565, -0.19116, -0.177416]])
|
|
190
|
+
]]
|
|
191
|
+
|
|
192
|
+
# simple test
|
|
193
|
+
for nn in fn_nn:
|
|
194
|
+
print("nn:",nn)
|
|
195
|
+
surr = Nn_surr(nn,tnsr=False)
|
|
196
|
+
for xyz in xyz_db:
|
|
197
|
+
atoms = Atoms(xyz[0], xyz[1])
|
|
198
|
+
atoms.set_calculator(surr)
|
|
199
|
+
surr.calculate(atoms)
|
|
200
|
+
print('System:',atoms)
|
|
201
|
+
print('Energy:', surr.results['energy'])
|
|
202
|
+
print('Forces:\n', surr.results['forces'])
|
|
203
|
+
print('Numerical forces with ASE:\n',
|
|
204
|
+
surr.calculate_numerical_forces(atoms))
|
|
205
|
+
|
|
206
|
+
print("avg nn:")
|
|
207
|
+
surr = Nn_surr(fn_nn,tnsr=False)
|
|
208
|
+
for xyz in xyz_db:
|
|
209
|
+
atoms = Atoms(xyz[0], xyz[1])
|
|
210
|
+
atoms.set_calculator(surr)
|
|
211
|
+
surr.calculate(atoms)
|
|
212
|
+
print('System:',atoms)
|
|
213
|
+
print('Energy:', surr.results['energy'])
|
|
214
|
+
print('Forces:\n', surr.results['forces'])
|
|
215
|
+
print('Numerical forces with ASE:\n',
|
|
216
|
+
surr.calculate_numerical_forces(atoms))
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
if __name__ == "__main__":
|
|
220
|
+
main()
|