stjames 0.0.89__tar.gz → 0.0.91__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.
Potentially problematic release.
This version of stjames might be problematic. Click here for more details.
- {stjames-0.0.89/stjames.egg-info → stjames-0.0.91}/PKG-INFO +1 -1
- {stjames-0.0.89 → stjames-0.0.91}/pyproject.toml +1 -1
- stjames-0.0.91/stjames/engine.py +16 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/method.py +45 -7
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/ion_mobility.py +6 -0
- {stjames-0.0.89 → stjames-0.0.91/stjames.egg-info}/PKG-INFO +1 -1
- {stjames-0.0.89 → stjames-0.0.91}/stjames.egg-info/SOURCES.txt +1 -0
- {stjames-0.0.89 → stjames-0.0.91}/LICENSE +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/README.md +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/setup.cfg +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/__init__.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/_deprecated_solvent_settings.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/atom.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/atomium_stjames/__init__.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/atomium_stjames/data.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/atomium_stjames/mmcif.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/atomium_stjames/pdb.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/atomium_stjames/utilities.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/base.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/basis_set.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/calculation.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/compute_settings.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/constraint.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/correction.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/data/__init__.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/data/bragg_radii.json +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/data/elements.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/data/isotopes.json +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/data/nist_isotopes.json +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/data/read_nist_isotopes.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/data/symbol_element.json +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/diis_settings.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/grid_settings.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/int_settings.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/message.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/mode.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/molecule.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/opt_settings.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/pdb.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/periodic_cell.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/py.typed +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/scf_settings.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/settings.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/solvent.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/status.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/task.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/thermochem_settings.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/types.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/__init__.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/admet.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/basic_calculation.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/bde.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/conformer.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/conformer_search.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/descriptors.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/docking.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/electronic_properties.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/fukui.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/hydrogen_bond_basicity.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/irc.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/macropka.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/molecular_dynamics.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/multistage_opt.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/pka.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/pose_analysis_md.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/protein_cofolding.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/redox_potential.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/scan.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/solubility.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/spin_states.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/tautomer.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames/workflows/workflow.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames.egg-info/dependency_links.txt +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames.egg-info/requires.txt +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/stjames.egg-info/top_level.txt +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/tests/test_constraints.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/tests/test_from_extxyz.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/tests/test_molecule.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/tests/test_pdb.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/tests/test_rounding.py +0 -0
- {stjames-0.0.89 → stjames-0.0.91}/tests/test_settings.py +0 -0
|
@@ -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"
|
|
@@ -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
|
|
88
|
-
CORRECTABLE_NNP_METHODS = [Method.MACE_MP_0B2_L
|
|
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] = []
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|