stjames 0.0.89__py3-none-any.whl → 0.0.91__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of stjames might be problematic. Click here for more details.

stjames/engine.py ADDED
@@ -0,0 +1,16 @@
1
+ from .base import LowercaseStrEnum
2
+
3
+
4
+ class Mode(LowercaseStrEnum):
5
+ AIMNET2 = "aimnet2"
6
+ MACE = "mace"
7
+ OCP24 = "ocp24"
8
+ OMOL25 = "omol25"
9
+ ORB = "orb"
10
+ TBLITE = "tblite"
11
+ XTB = "xtb"
12
+ TERRACHEM = "terrachem"
13
+ PYSCF = "pyscf"
14
+ PSI4 = "psi4"
15
+ OPENFF = "openff"
16
+ EGRET = "egret"
stjames/method.py CHANGED
@@ -37,7 +37,6 @@ class Method(LowercaseStrEnum):
37
37
  OCP24_L = "ocp24_l"
38
38
  OMOL25_CONSERVING_S = "omol25_conserving_s"
39
39
  UMA_M_OMOL = "uma_m_omol"
40
- ORB_V2 = "orb_v2"
41
40
  ORB_V3_CONSERVATIVE_INF_OMAT = "orb_v3_conservative_inf_omat"
42
41
 
43
42
  GFN_FF = "gfn_ff"
@@ -51,12 +50,53 @@ class Method(LowercaseStrEnum):
51
50
 
52
51
  OFF_SAGE_2_2_1 = "off_sage_2_2_1"
53
52
 
54
- RM1 = "rm1"
55
-
56
53
  EGRET_1 = "egret_1"
57
54
  EGRET_1E = "egret_1e"
58
55
  EGRET_1T = "egret_1t"
59
56
 
57
+ def default_engine(self, *, is_periodic: bool = False) -> str:
58
+ """
59
+ Return the canonical engine name for this quantum-chemistry method.
60
+
61
+ :param bool is_periodic:
62
+ If ``True`` **and** the method is in the XTB family, return
63
+ ``"tblite"`` (periodic-capable backend) instead of ``"xtb"``.
64
+ :returns: Lower-case engine identifier (e.g. ``"psi4"``, ``"mace"``).
65
+
66
+ **Examples**
67
+
68
+ .. code-block:: python
69
+
70
+ Method.MACE_MP_0B2_L.default_engine()
71
+ # 'mace'
72
+
73
+ Method.GFN2_XTB.default_engine()
74
+ # 'xtb'
75
+
76
+ Method.GFN2_XTB.default_engine(is_periodic=True)
77
+ # 'tblite'
78
+ """
79
+ match self:
80
+ case Method.AIMNET2_WB97MD3:
81
+ return "aimnet2"
82
+ case Method.MACE_MP_0B2_L:
83
+ return "mace"
84
+ case Method.OCP24_S | Method.OCP24_L:
85
+ return "ocp24"
86
+ case Method.OMOL25_CONSERVING_S | Method.UMA_M_OMOL:
87
+ return "omol25"
88
+ case Method.ORB_V3_CONSERVATIVE_INF_OMAT:
89
+ return "orb"
90
+ case _ if self in XTB_METHODS:
91
+ return "tblite" if is_periodic else "xtb"
92
+ case Method.OFF_SAGE_2_2_1:
93
+ return "openff"
94
+ case Method.EGRET_1 | Method.EGRET_1E | Method.EGRET_1T:
95
+ return "egret"
96
+ case _:
97
+ # All remaining methods (HF, DFT, composite, etc.) fall back to Psi4
98
+ return "psi4"
99
+
60
100
 
61
101
  PrepackagedNNPMethod = Literal[
62
102
  Method.AIMNET2_WB97MD3,
@@ -64,7 +104,6 @@ PrepackagedNNPMethod = Literal[
64
104
  Method.OCP24_L,
65
105
  Method.OMOL25_CONSERVING_S,
66
106
  Method.UMA_M_OMOL,
67
- Method.RM1,
68
107
  Method.ORB_V3_CONSERVATIVE_INF_OMAT,
69
108
  Method.EGRET_1,
70
109
  Method.EGRET_1E,
@@ -77,15 +116,14 @@ PREPACKAGED_NNP_METHODS = [
77
116
  Method.OCP24_L,
78
117
  Method.OMOL25_CONSERVING_S,
79
118
  Method.UMA_M_OMOL,
80
- Method.RM1,
81
119
  Method.ORB_V3_CONSERVATIVE_INF_OMAT,
82
120
  Method.EGRET_1,
83
121
  Method.EGRET_1E,
84
122
  Method.EGRET_1T,
85
123
  ]
86
124
 
87
- CorrectableNNPMethod = Literal[Method.MACE_MP_0B2_L, Method.ORB_V2]
88
- CORRECTABLE_NNP_METHODS = [Method.MACE_MP_0B2_L, Method.ORB_V2]
125
+ CorrectableNNPMethod = Literal[Method.MACE_MP_0B2_L]
126
+ CORRECTABLE_NNP_METHODS = [Method.MACE_MP_0B2_L]
89
127
 
90
128
  NNPMethod = PrepackagedNNPMethod | CorrectableNNPMethod
91
129
  NNP_METHODS = [*PREPACKAGED_NNP_METHODS, *CORRECTABLE_NNP_METHODS]
@@ -13,10 +13,13 @@ class IonMobilityWorkflow(MoleculeWorkflow):
13
13
  :param mode: Mode for workflow (currently unused)
14
14
 
15
15
  New:
16
+ :param protonate: automatically protonate the molecule
17
+ :param temperature: the temperature, in Kelvin
16
18
  :param do_csearch: whether to perform a conformational search
17
19
  :param do_optimization: whether to perform an optimization
18
20
 
19
21
  Results:
22
+ :param conformers: the UUIDs of the conformers
20
23
  :param conformer_ccs: the collision cross section (Å**2) per conformer
21
24
  :param conformer_ccs_stdev: the uncertainty in the same
22
25
  :param conformer_weights: the Boltzmann weights at RT
@@ -24,8 +27,11 @@ class IonMobilityWorkflow(MoleculeWorkflow):
24
27
  :param average_ccs_stdev: the uncertainty in the same
25
28
  """
26
29
 
30
+ protonate: bool = False
31
+ temperature: float = 300
27
32
  do_csearch: bool = True
28
33
  do_optimization: bool = True
34
+
29
35
  conformers: list[UUID] = []
30
36
 
31
37
  conformer_ccs: list[float] = []
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: stjames
3
- Version: 0.0.89
3
+ Version: 0.0.91
4
4
  Summary: standardized JSON atom/molecule encoding scheme
5
5
  Author-email: Corin Wagen <corin@rowansci.com>
6
6
  Project-URL: Homepage, https://github.com/rowansci/stjames
@@ -8,10 +8,11 @@ stjames/compute_settings.py,sha256=wuYE6W4WqP3oFHwAeEp7XQ0oMz_MNLucWgrsuJ4kEFQ,2
8
8
  stjames/constraint.py,sha256=B6oV0rYjmAWr8gpi5f03gRy_uuqjUURVDVwoez5Cfbg,2442
9
9
  stjames/correction.py,sha256=ZVErCcj4TPyZeKrdvXVjHa0tFynsCaoy96QZUVxWFM8,413
10
10
  stjames/diis_settings.py,sha256=4m1EQQWBlpHhMnWopix8qOqJv7QCluvdnV9jSKJDFtE,552
11
+ stjames/engine.py,sha256=wVItZQSIeR3ap6EZG3kOw0xCZztZm-6KKFrX84ZyFsE,313
11
12
  stjames/grid_settings.py,sha256=WrSNGc-8_f87YBZYt9Hh7RbhM4MweADoVzwBMcSqcsE,640
12
13
  stjames/int_settings.py,sha256=5HXp8opt5ZyY1UpmfaK7NVloWVLM5jkG0elEEqpVLUo,896
13
14
  stjames/message.py,sha256=Rq6QqmHZKecWxYH8fVyXmuoCCPZv8YinvgykSeorXSU,216
14
- stjames/method.py,sha256=aPFUhfUtJ_befRHO1Aa_c4ofEQAPZlQUvHWLaCv32Z4,2945
15
+ stjames/method.py,sha256=mwCDlLmUlBWjVGDdlTIPODu-V_QtmQ_1L3N6xf4nVv0,4373
15
16
  stjames/mode.py,sha256=xw46Cc7f3eTS8i35qECi-8DocAlANhayK3w4akD4HBU,496
16
17
  stjames/molecule.py,sha256=l4S6prH1xflnZtbwidSF2THsiHaSJtRiy1rmUbH366Q,20631
17
18
  stjames/opt_settings.py,sha256=LEwGXUEKq5TfU5rr60Z4QQBhCqiw1Ch5w0M_lXawWo8,642
@@ -48,7 +49,7 @@ stjames/workflows/docking.py,sha256=GCW_-JeEZcMXKZ9EQFOxWUYRo0jsbzwIv10aSz8KuaQ,
48
49
  stjames/workflows/electronic_properties.py,sha256=GT3-NC7w-dbcOJ-3AzJ7LgzH6frTbiH2Iyb9BCa-SvY,4112
49
50
  stjames/workflows/fukui.py,sha256=T6TDg-lcE-sfTDVpa3KFBenLe7PGUO2QrQ2jNuw_iiU,1756
50
51
  stjames/workflows/hydrogen_bond_basicity.py,sha256=q9eXty68ZyCmrB6G_8bfeOT8Ui_IQquRPu6z-3rNreQ,1589
51
- stjames/workflows/ion_mobility.py,sha256=e6XSidrud5qSkrAcjzOzgHaf-G09JoP09V76myjdyjc,1097
52
+ stjames/workflows/ion_mobility.py,sha256=HbO_222pjiG4YeJ70kYtQJvXQJieDSMAU5y26vIx1vI,1316
52
53
  stjames/workflows/irc.py,sha256=ZP7icylW8rgo_Uh7h3bmyumn0ru1IyF-61nP5Jnmq3M,3402
53
54
  stjames/workflows/macropka.py,sha256=KRIyk4gsSYL3eqyzCDndStGLwjWSo60cgCAzvAoD1Nk,3754
54
55
  stjames/workflows/molecular_dynamics.py,sha256=kxugE73Ntzpj-xpJSoQ1EwGzXXdvi_NTyeP4913EVwE,3173
@@ -62,8 +63,8 @@ stjames/workflows/solubility.py,sha256=kGfVyPPGDLRpf2j6dSY7woCkfsoXSbUzdSImA4mcM
62
63
  stjames/workflows/spin_states.py,sha256=0degmE-frovgoXweshZyjfjqL7nkbaFoO9YoJhvQnaI,4748
63
64
  stjames/workflows/tautomer.py,sha256=7eYKziGPg8Km6lfowTzSkgJfJ4SHUPrAmnTf8Bi-SB0,1164
64
65
  stjames/workflows/workflow.py,sha256=OE05pt2ZOd8TzTOlBngXCVg9wv_553ZR60VNRPlq0f8,1953
65
- stjames-0.0.89.dist-info/licenses/LICENSE,sha256=i7ehYBS-6gGmbTcgU4mgk28pyOx2kScJ0kcx8n7bWLM,1084
66
- stjames-0.0.89.dist-info/METADATA,sha256=qK-0cUePnvLM9_nDO4QkwixCJz7WfJhX4pC9iYe2dd8,1724
67
- stjames-0.0.89.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
68
- stjames-0.0.89.dist-info/top_level.txt,sha256=FYCwxl6quhYOAgG-mnPQcCK8vsVM7B8rIUrO-WrQ_PI,8
69
- stjames-0.0.89.dist-info/RECORD,,
66
+ stjames-0.0.91.dist-info/licenses/LICENSE,sha256=i7ehYBS-6gGmbTcgU4mgk28pyOx2kScJ0kcx8n7bWLM,1084
67
+ stjames-0.0.91.dist-info/METADATA,sha256=gUeuoa8dXyp9cjlUtCGQBGN8EUuZZciu17n_95tTVFk,1724
68
+ stjames-0.0.91.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
69
+ stjames-0.0.91.dist-info/top_level.txt,sha256=FYCwxl6quhYOAgG-mnPQcCK8vsVM7B8rIUrO-WrQ_PI,8
70
+ stjames-0.0.91.dist-info/RECORD,,