stjames 0.0.99__py3-none-any.whl → 0.0.101__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/molecule.py +8 -0
- stjames/workflows/__init__.py +3 -0
- stjames/workflows/basic_calculation.py +13 -1
- stjames/workflows/nmr.py +2 -2
- {stjames-0.0.99.dist-info → stjames-0.0.101.dist-info}/METADATA +1 -1
- {stjames-0.0.99.dist-info → stjames-0.0.101.dist-info}/RECORD +9 -9
- {stjames-0.0.99.dist-info → stjames-0.0.101.dist-info}/licenses/LICENSE +1 -1
- {stjames-0.0.99.dist-info → stjames-0.0.101.dist-info}/WHEEL +0 -0
- {stjames-0.0.99.dist-info → stjames-0.0.101.dist-info}/top_level.txt +0 -0
stjames/molecule.py
CHANGED
|
@@ -157,12 +157,20 @@ class Molecule(Base):
|
|
|
157
157
|
return None
|
|
158
158
|
return self.energy + self.thermal_enthalpy_corr
|
|
159
159
|
|
|
160
|
+
@property
|
|
161
|
+
def enthalpy(self) -> Optional[float]:
|
|
162
|
+
return self.sum_energy_enthalpy
|
|
163
|
+
|
|
160
164
|
@property
|
|
161
165
|
def sum_energy_free_energy(self) -> Optional[float]:
|
|
162
166
|
if (self.energy is None) or (self.thermal_free_energy_corr is None):
|
|
163
167
|
return None
|
|
164
168
|
return self.energy + self.thermal_free_energy_corr
|
|
165
169
|
|
|
170
|
+
@property
|
|
171
|
+
def gibbs_free_energy(self) -> Optional[float]:
|
|
172
|
+
return self.sum_energy_free_energy
|
|
173
|
+
|
|
166
174
|
@pydantic.model_validator(mode="after")
|
|
167
175
|
def check_electron_sanity(self) -> Self:
|
|
168
176
|
num_electrons = sum(self.atomic_numbers) - self.charge
|
stjames/workflows/__init__.py
CHANGED
|
@@ -9,6 +9,7 @@ from .conformer import *
|
|
|
9
9
|
from .conformer_search import *
|
|
10
10
|
from .descriptors import *
|
|
11
11
|
from .docking import *
|
|
12
|
+
from .double_ended_ts_search import DoubleEndedTSSearchWorkflow
|
|
12
13
|
from .electronic_properties import *
|
|
13
14
|
from .fukui import *
|
|
14
15
|
from .hydrogen_bond_basicity import *
|
|
@@ -36,6 +37,7 @@ WORKFLOW_NAME = Literal[
|
|
|
36
37
|
"conformer_search",
|
|
37
38
|
"descriptors",
|
|
38
39
|
"docking",
|
|
40
|
+
"double_ended_ts_search",
|
|
39
41
|
"electronic_properties",
|
|
40
42
|
"fukui",
|
|
41
43
|
"hydrogen_bond_basicity",
|
|
@@ -63,6 +65,7 @@ WORKFLOW_MAPPING: dict[WORKFLOW_NAME, Workflow] = {
|
|
|
63
65
|
"conformer_search": ConformerSearchWorkflow, # type: ignore [dict-item]
|
|
64
66
|
"descriptors": DescriptorsWorkflow, # type: ignore [dict-item]
|
|
65
67
|
"docking": DockingWorkflow, # type: ignore [dict-item]
|
|
68
|
+
"double_ended_ts_search": DoubleEndedTSSearchWorkflow, # type: ignore [dict-item]
|
|
66
69
|
"electronic_properties": ElectronicPropertiesWorkflow, # type: ignore [dict-item]
|
|
67
70
|
"fukui": FukuiIndexWorkflow, # type: ignore [dict-item]
|
|
68
71
|
"hydrogen_bond_basicity": HydrogenBondBasicityWorkflow, # type: ignore [dict-item]
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
"""Basic calculation workflow."""
|
|
2
2
|
|
|
3
|
+
from typing import Self
|
|
4
|
+
|
|
5
|
+
from pydantic import model_validator
|
|
6
|
+
|
|
7
|
+
from ..engine import Engine
|
|
3
8
|
from ..settings import Settings
|
|
4
9
|
from ..types import UUID
|
|
5
10
|
from .workflow import MoleculeWorkflow
|
|
@@ -20,5 +25,12 @@ class BasicCalculationWorkflow(MoleculeWorkflow):
|
|
|
20
25
|
"""
|
|
21
26
|
|
|
22
27
|
settings: Settings
|
|
23
|
-
engine:
|
|
28
|
+
engine: Engine = None # type: ignore [assignment]
|
|
24
29
|
calculation_uuid: UUID | None = None
|
|
30
|
+
|
|
31
|
+
@model_validator(mode="after")
|
|
32
|
+
def set_engine(self) -> Self:
|
|
33
|
+
"""Set the calculation engine."""
|
|
34
|
+
self.engine = self.engine or self.settings.method.default_engine()
|
|
35
|
+
|
|
36
|
+
return self
|
stjames/workflows/nmr.py
CHANGED
|
@@ -29,7 +29,7 @@ class NMRPeak(Base):
|
|
|
29
29
|
|
|
30
30
|
nucleus: int
|
|
31
31
|
shift: Annotated[float, AfterValidator(round_float(3))]
|
|
32
|
-
atom_indices:
|
|
32
|
+
atom_indices: list[int]
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
class NMRSpectroscopyWorkflow(MoleculeWorkflow):
|
|
@@ -68,6 +68,6 @@ class NMRSpectroscopyWorkflow(MoleculeWorkflow):
|
|
|
68
68
|
boltzmann_weights: Annotated[list[float], AfterValidator(round_list(3))] = []
|
|
69
69
|
per_conformer_chemical_shifts: list[Annotated[list[float | None], AfterValidator(round_optional_list(3))]] = []
|
|
70
70
|
chemical_shifts: Annotated[list[float | None], AfterValidator(round_optional_list(3))] = []
|
|
71
|
-
symmetry_equivalent_nuclei: list[
|
|
71
|
+
symmetry_equivalent_nuclei: list[list[int]] = []
|
|
72
72
|
|
|
73
73
|
predicted_peaks: dict[int, list[NMRPeak]] = {}
|
|
@@ -11,7 +11,7 @@ stjames/engine.py,sha256=4Vt1uF1jNGPj-06F2I73oU5RoH1MlNOlDRSNkWN91NE,315
|
|
|
11
11
|
stjames/message.py,sha256=Rq6QqmHZKecWxYH8fVyXmuoCCPZv8YinvgykSeorXSU,216
|
|
12
12
|
stjames/method.py,sha256=gZbrHAivm2OXCbF3_6swei1LG6YQ7Uo1EY7aN0x3XHs,4501
|
|
13
13
|
stjames/mode.py,sha256=xw46Cc7f3eTS8i35qECi-8DocAlANhayK3w4akD4HBU,496
|
|
14
|
-
stjames/molecule.py,sha256=
|
|
14
|
+
stjames/molecule.py,sha256=4Tsa_gRC4C-qGPop24jRIs2q07r0LGbSRb-ApOaZa5c,20839
|
|
15
15
|
stjames/opt_settings.py,sha256=LEwGXUEKq5TfU5rr60Z4QQBhCqiw1Ch5w0M_lXawWo8,642
|
|
16
16
|
stjames/pdb.py,sha256=6ayVUUdTufkXs_nfpRQuT1yGvymuyICB4L5Wh55OsaA,26507
|
|
17
17
|
stjames/periodic_cell.py,sha256=eV_mArsY_MPEFSrFEsTC-CyCc6V8ITAXdk7yhjjNI7M,1080
|
|
@@ -37,9 +37,9 @@ stjames/data/read_nist_isotopes.py,sha256=y10FNjW43QpC45qib7VHsIghEwT7GG5rsNwHdc
|
|
|
37
37
|
stjames/data/symbol_element.json,sha256=vl_buFusTqBd-muYQtMLtTDLy2OtBI6KkBeqkaWRQrg,1186
|
|
38
38
|
stjames/optimization/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
39
39
|
stjames/optimization/freezing_string_method.py,sha256=eEQBqbYHgJH9gVRLDIFtGuPcsHHMLAAt1hF3jtq70lo,2285
|
|
40
|
-
stjames/workflows/__init__.py,sha256
|
|
40
|
+
stjames/workflows/__init__.py,sha256=-HhT_DJeYCzTO-FeM-wabFyxwLreTE8bXHuaSx3Ylzg,3071
|
|
41
41
|
stjames/workflows/admet.py,sha256=h8ph6oeRCxU3-_jqRRWPg3RZcheu9JzCHiWqSC9VYKY,1296
|
|
42
|
-
stjames/workflows/basic_calculation.py,sha256=
|
|
42
|
+
stjames/workflows/basic_calculation.py,sha256=sAgHBcNHE72ZbZPB9vyZShALRC4zOVw6It6cpJlbX2A,911
|
|
43
43
|
stjames/workflows/bde.py,sha256=g_In-caftXiimrhfdptHjpfrYQUs3vF58qYmRnaTN8g,10825
|
|
44
44
|
stjames/workflows/conformer.py,sha256=18aO6ngMBeGAmQkBdLGCCHr398RIYr1v2hD2IT1u4cc,3005
|
|
45
45
|
stjames/workflows/conformer_search.py,sha256=4yPEKIIedeaVvaAwgjwC1FxiHqM6n2zOF6c9Yk_q1oA,13513
|
|
@@ -54,7 +54,7 @@ stjames/workflows/irc.py,sha256=ZP7icylW8rgo_Uh7h3bmyumn0ru1IyF-61nP5Jnmq3M,3402
|
|
|
54
54
|
stjames/workflows/macropka.py,sha256=KRIyk4gsSYL3eqyzCDndStGLwjWSo60cgCAzvAoD1Nk,3754
|
|
55
55
|
stjames/workflows/molecular_dynamics.py,sha256=HqWNxxPSAphfI0DdbTERFkq8UeBjEvhnA_ETv0xw_RY,3522
|
|
56
56
|
stjames/workflows/multistage_opt.py,sha256=SpbA8hNvktnlLS7C-9mBNGluBSrdVS8ygHl1C4TzWcI,16499
|
|
57
|
-
stjames/workflows/nmr.py,sha256=
|
|
57
|
+
stjames/workflows/nmr.py,sha256=Fw7k_ZvIaxpAxkdgW2xMORhaI5s5BY_v7_VEPG1Ylgc,2710
|
|
58
58
|
stjames/workflows/pka.py,sha256=j3vBh2YM3nJzJ1XJKPsmYahRCeaU9n3P-G-u9_moaFw,2065
|
|
59
59
|
stjames/workflows/pose_analysis_md.py,sha256=ES0XlzaLpTjhLrNvcB0zFZa1b1ZHXekN72EbLsx0Skw,4723
|
|
60
60
|
stjames/workflows/protein_cofolding.py,sha256=6WWbVOGzFjIRgQLMmMVODfIxo1jYFmRS1xnJmN0kOBw,3016
|
|
@@ -64,8 +64,8 @@ stjames/workflows/solubility.py,sha256=kGfVyPPGDLRpf2j6dSY7woCkfsoXSbUzdSImA4mcM
|
|
|
64
64
|
stjames/workflows/spin_states.py,sha256=0degmE-frovgoXweshZyjfjqL7nkbaFoO9YoJhvQnaI,4748
|
|
65
65
|
stjames/workflows/tautomer.py,sha256=7eYKziGPg8Km6lfowTzSkgJfJ4SHUPrAmnTf8Bi-SB0,1164
|
|
66
66
|
stjames/workflows/workflow.py,sha256=OE05pt2ZOd8TzTOlBngXCVg9wv_553ZR60VNRPlq0f8,1953
|
|
67
|
-
stjames-0.0.
|
|
68
|
-
stjames-0.0.
|
|
69
|
-
stjames-0.0.
|
|
70
|
-
stjames-0.0.
|
|
71
|
-
stjames-0.0.
|
|
67
|
+
stjames-0.0.101.dist-info/licenses/LICENSE,sha256=i05z7xEhyrg6f8j0lR3XYjShnF-MJGFQ-DnpsZ8yiVI,1084
|
|
68
|
+
stjames-0.0.101.dist-info/METADATA,sha256=TNvGMRniR9D4VJTlQygqa0ZuEtgVLsqeN9jfkNRLdxQ,1725
|
|
69
|
+
stjames-0.0.101.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
70
|
+
stjames-0.0.101.dist-info/top_level.txt,sha256=FYCwxl6quhYOAgG-mnPQcCK8vsVM7B8rIUrO-WrQ_PI,8
|
|
71
|
+
stjames-0.0.101.dist-info/RECORD,,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
The MIT License
|
|
2
2
|
|
|
3
|
-
Copyright (c) Rowan
|
|
3
|
+
Copyright (c) Rowan Scientific Corporation
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
|
File without changes
|
|
File without changes
|