stjames 0.0.59__py3-none-any.whl → 0.0.62__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/atomium_stjames/mmcif.py +216 -162
- stjames/atomium_stjames/utilities.py +58 -46
- stjames/molecule.py +46 -1
- stjames/types.py +10 -1
- stjames/workflows/__init__.py +5 -2
- stjames/workflows/admet.py +15 -4
- stjames/workflows/basic_calculation.py +17 -2
- stjames/workflows/bde.py +5 -5
- stjames/workflows/conformer.py +4 -2
- stjames/workflows/conformer_search.py +3 -3
- stjames/workflows/descriptors.py +16 -3
- stjames/workflows/docking.py +26 -11
- stjames/workflows/electronic_properties.py +5 -2
- stjames/workflows/fukui.py +19 -2
- stjames/workflows/hydrogen_bond_basicity.py +29 -5
- stjames/workflows/irc.py +4 -2
- stjames/workflows/molecular_dynamics.py +28 -3
- stjames/workflows/multistage_opt.py +5 -3
- stjames/workflows/pka.py +36 -2
- stjames/workflows/redox_potential.py +4 -2
- stjames/workflows/scan.py +37 -2
- stjames/workflows/solubility.py +60 -0
- stjames/workflows/spin_states.py +4 -2
- stjames/workflows/tautomer.py +24 -2
- stjames/workflows/workflow.py +27 -4
- {stjames-0.0.59.dist-info → stjames-0.0.62.dist-info}/METADATA +2 -3
- {stjames-0.0.59.dist-info → stjames-0.0.62.dist-info}/RECORD +30 -29
- {stjames-0.0.59.dist-info → stjames-0.0.62.dist-info}/LICENSE +0 -0
- {stjames-0.0.59.dist-info → stjames-0.0.62.dist-info}/WHEEL +0 -0
- {stjames-0.0.59.dist-info → stjames-0.0.62.dist-info}/top_level.txt +0 -0
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
"""Molecular dynamics workflow."""
|
|
2
|
+
|
|
1
3
|
from typing import Self
|
|
2
4
|
|
|
3
5
|
from pydantic import PositiveFloat, PositiveInt, computed_field, model_validator
|
|
@@ -6,22 +8,28 @@ from ..base import Base, LowercaseStrEnum
|
|
|
6
8
|
from ..constraint import PairwiseHarmonicConstraint, SphericalHarmonicConstraint
|
|
7
9
|
from ..settings import Settings
|
|
8
10
|
from ..types import UUID
|
|
9
|
-
from .workflow import
|
|
11
|
+
from .workflow import MoleculeWorkflow
|
|
10
12
|
|
|
11
13
|
|
|
12
14
|
class MolecularDynamicsInitialization(LowercaseStrEnum):
|
|
15
|
+
"""Initialization method for molecular dynamics."""
|
|
16
|
+
|
|
13
17
|
RANDOM = "random"
|
|
14
18
|
QUASICLASSICAL = "quasiclassical"
|
|
15
19
|
READ = "read"
|
|
16
20
|
|
|
17
21
|
|
|
18
22
|
class ThermodynamicEnsemble(LowercaseStrEnum):
|
|
23
|
+
"""Thermodynamic ensemble for molecular dynamics."""
|
|
24
|
+
|
|
19
25
|
NPT = "npt"
|
|
20
26
|
NVT = "nvt"
|
|
21
27
|
NVE = "nve"
|
|
22
28
|
|
|
23
29
|
|
|
24
30
|
class Frame(Base):
|
|
31
|
+
"""A frame in a molecular dynamics simulation."""
|
|
32
|
+
|
|
25
33
|
index: int # what number frame this is within the MD simulation
|
|
26
34
|
|
|
27
35
|
calculation_uuid: UUID | None = None # UUID of calculation
|
|
@@ -39,6 +47,8 @@ class Frame(Base):
|
|
|
39
47
|
|
|
40
48
|
|
|
41
49
|
class MolecularDynamicsSettings(Base):
|
|
50
|
+
"""Settings for a molecular dynamics simulation."""
|
|
51
|
+
|
|
42
52
|
ensemble: ThermodynamicEnsemble = ThermodynamicEnsemble.NVT
|
|
43
53
|
initialization: MolecularDynamicsInitialization = MolecularDynamicsInitialization.RANDOM
|
|
44
54
|
|
|
@@ -66,10 +76,25 @@ class MolecularDynamicsSettings(Base):
|
|
|
66
76
|
return self
|
|
67
77
|
|
|
68
78
|
|
|
69
|
-
class MolecularDynamicsWorkflow(
|
|
79
|
+
class MolecularDynamicsWorkflow(MoleculeWorkflow):
|
|
80
|
+
"""
|
|
81
|
+
Workflow for running a molecular dynamics simulation.
|
|
82
|
+
|
|
83
|
+
Inherited:
|
|
84
|
+
:param initial_molecule: Molecule of interest
|
|
85
|
+
:param mode: Mode for workflow (currently unused)
|
|
86
|
+
|
|
87
|
+
New:
|
|
88
|
+
:param settings: settings for the molecular dynamics simulation
|
|
89
|
+
:param calc_settings: settings for the gradient calculation
|
|
90
|
+
:param calc_engine: engine to use for the gradient calculation
|
|
91
|
+
|
|
92
|
+
Results:
|
|
93
|
+
:param frames: Frames from the MD
|
|
94
|
+
"""
|
|
95
|
+
|
|
70
96
|
settings: MolecularDynamicsSettings
|
|
71
97
|
calc_settings: Settings
|
|
72
98
|
calc_engine: str | None = None
|
|
73
99
|
|
|
74
|
-
# UUIDs of scan points
|
|
75
100
|
frames: list[Frame] = []
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
"""Multi-stage optimization workflow."""
|
|
2
|
+
|
|
1
3
|
from typing import Self, Sequence
|
|
2
4
|
|
|
3
5
|
from pydantic import BaseModel, Field, model_validator
|
|
@@ -10,7 +12,7 @@ from ..settings import Settings
|
|
|
10
12
|
from ..solvent import Solvent, SolventSettings
|
|
11
13
|
from ..task import Task
|
|
12
14
|
from ..types import UUID
|
|
13
|
-
from .workflow import
|
|
15
|
+
from .workflow import MoleculeWorkflow
|
|
14
16
|
|
|
15
17
|
|
|
16
18
|
class MultiStageOptSettings(BaseModel):
|
|
@@ -177,9 +179,9 @@ class MultiStageOptSettings(BaseModel):
|
|
|
177
179
|
raise NotImplementedError(f"Cannot assign settings for {mode=}")
|
|
178
180
|
|
|
179
181
|
|
|
180
|
-
class MultiStageOptWorkflow(
|
|
182
|
+
class MultiStageOptWorkflow(MoleculeWorkflow, MultiStageOptSettings):
|
|
181
183
|
"""
|
|
182
|
-
|
|
184
|
+
MoleculeWorkflow for multi-stage optimizations.
|
|
183
185
|
|
|
184
186
|
Inherited
|
|
185
187
|
:param initial_molecule: Molecule of interest
|
stjames/workflows/pka.py
CHANGED
|
@@ -1,20 +1,54 @@
|
|
|
1
|
+
"""pKa workflow."""
|
|
2
|
+
|
|
1
3
|
from typing import Annotated
|
|
2
4
|
|
|
3
5
|
from pydantic import AfterValidator
|
|
4
6
|
|
|
5
7
|
from ..base import Base, round_float, round_optional_float
|
|
6
8
|
from ..mode import Mode
|
|
7
|
-
from .workflow import DBCalculation,
|
|
9
|
+
from .workflow import DBCalculation, MoleculeWorkflow
|
|
8
10
|
|
|
9
11
|
|
|
10
12
|
class pKaMicrostate(Base):
|
|
13
|
+
"""
|
|
14
|
+
A microstate for pKa calculations.
|
|
15
|
+
|
|
16
|
+
:param atom_index: index of the atom
|
|
17
|
+
:param structures: DBCalculation for the microstate
|
|
18
|
+
:param deltaG: relative free energy
|
|
19
|
+
:param pka: pKa
|
|
20
|
+
"""
|
|
21
|
+
|
|
11
22
|
atom_index: int
|
|
12
23
|
structures: list[DBCalculation] = []
|
|
13
24
|
deltaG: Annotated[float, AfterValidator(round_float(3))]
|
|
14
25
|
pka: Annotated[float, AfterValidator(round_float(3))]
|
|
15
26
|
|
|
16
27
|
|
|
17
|
-
class pKaWorkflow(
|
|
28
|
+
class pKaWorkflow(MoleculeWorkflow):
|
|
29
|
+
"""
|
|
30
|
+
Workflow for calculating pKa.
|
|
31
|
+
|
|
32
|
+
Inherited:
|
|
33
|
+
:param initial_molecule: Molecule of interest
|
|
34
|
+
:param mode: Mode for workflow
|
|
35
|
+
|
|
36
|
+
New:
|
|
37
|
+
:param pka_range: range of pKa values to consider
|
|
38
|
+
:param deprotonate_elements: elements to deprotonate
|
|
39
|
+
:param deprotonate_atoms: atoms to deprotonate
|
|
40
|
+
:param protonate_elements: elements to protonate
|
|
41
|
+
:param protonate_atoms: atom indices to protonate
|
|
42
|
+
:param reasonableness_buffer: buffer for pKa reasonableness
|
|
43
|
+
|
|
44
|
+
Results:
|
|
45
|
+
:param structures: DBCalculations for the microstates
|
|
46
|
+
:param conjugate_acids: conjugate acid microstates
|
|
47
|
+
:param conjugate_bases: conjugate base microstates
|
|
48
|
+
:param strongest_acid: pKa of the strongest acid
|
|
49
|
+
:param strongest_base: pKa of the strongest base
|
|
50
|
+
"""
|
|
51
|
+
|
|
18
52
|
mode: Mode = Mode.CAREFUL
|
|
19
53
|
|
|
20
54
|
pka_range: tuple[float, float] = (2, 12)
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
"""Redox potential workflow."""
|
|
2
|
+
|
|
1
3
|
from typing import Annotated, Any, TypeVar
|
|
2
4
|
|
|
3
5
|
from pydantic import AfterValidator, ValidationInfo, field_validator, model_validator
|
|
@@ -7,12 +9,12 @@ from ..mode import Mode
|
|
|
7
9
|
from ..solvent import Solvent
|
|
8
10
|
from ..types import UUID
|
|
9
11
|
from .multistage_opt import MultiStageOptMixin
|
|
10
|
-
from .workflow import
|
|
12
|
+
from .workflow import MoleculeWorkflow
|
|
11
13
|
|
|
12
14
|
_T = TypeVar("_T")
|
|
13
15
|
|
|
14
16
|
|
|
15
|
-
class RedoxPotentialWorkflow(
|
|
17
|
+
class RedoxPotentialWorkflow(MoleculeWorkflow, MultiStageOptMixin):
|
|
16
18
|
"""
|
|
17
19
|
Workflow for computing spin states of molecules.
|
|
18
20
|
|
stjames/workflows/scan.py
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
"""Scan workflow."""
|
|
2
|
+
|
|
1
3
|
from typing import Annotated
|
|
2
4
|
|
|
3
5
|
import numpy as np
|
|
@@ -8,10 +10,19 @@ from ..base import Base, round_optional_float
|
|
|
8
10
|
from ..molecule import Molecule
|
|
9
11
|
from ..settings import Settings
|
|
10
12
|
from ..types import UUID
|
|
11
|
-
from .workflow import
|
|
13
|
+
from .workflow import MoleculeWorkflow
|
|
12
14
|
|
|
13
15
|
|
|
14
16
|
class ScanPoint(Base):
|
|
17
|
+
"""
|
|
18
|
+
A point in a scan.
|
|
19
|
+
|
|
20
|
+
:param index: index of the point
|
|
21
|
+
:param molecule: Molecule at the point
|
|
22
|
+
:param energy: energy of the point
|
|
23
|
+
:param uuid: UUID of the calculation
|
|
24
|
+
"""
|
|
25
|
+
|
|
15
26
|
index: int
|
|
16
27
|
molecule: Molecule
|
|
17
28
|
energy: Annotated[float | None, AfterValidator(round_optional_float(6))] = None
|
|
@@ -19,6 +30,16 @@ class ScanPoint(Base):
|
|
|
19
30
|
|
|
20
31
|
|
|
21
32
|
class ScanSettings(Base):
|
|
33
|
+
"""
|
|
34
|
+
Settings for a scan.
|
|
35
|
+
|
|
36
|
+
:param type: type of scan (bond, angle, dihedral)
|
|
37
|
+
:param atoms: indices of atoms to scan
|
|
38
|
+
:param start: start of scan
|
|
39
|
+
:param stop: end of scan
|
|
40
|
+
:param num: number of points in the scan
|
|
41
|
+
"""
|
|
42
|
+
|
|
22
43
|
type: str # "bond", "angle", "dihedral" - make Enum later
|
|
23
44
|
atoms: list[int]
|
|
24
45
|
start: float
|
|
@@ -32,7 +53,21 @@ class ScanSettings(Base):
|
|
|
32
53
|
from_attributes = True
|
|
33
54
|
|
|
34
55
|
|
|
35
|
-
class ScanWorkflow(
|
|
56
|
+
class ScanWorkflow(MoleculeWorkflow):
|
|
57
|
+
"""
|
|
58
|
+
Workflow for scanning a bond, angle, or dihedral.
|
|
59
|
+
|
|
60
|
+
Inherited:
|
|
61
|
+
:param initial_molecule: Molecule of interest
|
|
62
|
+
:param mode: Mode for workflow (currently unused)
|
|
63
|
+
|
|
64
|
+
New:
|
|
65
|
+
:param scan_settings: information about what coordinate to scan
|
|
66
|
+
:param calc_settings: settings for the calculation
|
|
67
|
+
:param calc_engine: engine to use for the calculation
|
|
68
|
+
:param scan_points: points along the scan
|
|
69
|
+
"""
|
|
70
|
+
|
|
36
71
|
scan_settings: ScanSettings
|
|
37
72
|
calc_settings: Settings
|
|
38
73
|
calc_engine: str
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"""Solubility prediction workflow."""
|
|
2
|
+
|
|
3
|
+
from typing import Annotated, Self
|
|
4
|
+
|
|
5
|
+
from pydantic import AfterValidator, BaseModel, model_validator
|
|
6
|
+
|
|
7
|
+
from ..types import round_list
|
|
8
|
+
from .workflow import SMILESWorkflow
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class SolubilityResult(BaseModel):
|
|
12
|
+
"""
|
|
13
|
+
Solubility result.
|
|
14
|
+
|
|
15
|
+
:param solubilities: solubilities in log(S)/L
|
|
16
|
+
:param uncertainties: uncertainties in the solubility in log(S)/L
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
solubilities: Annotated[list[float], AfterValidator(round_list(6))]
|
|
20
|
+
uncertainties: Annotated[list[float], AfterValidator(round_list(6))]
|
|
21
|
+
|
|
22
|
+
@model_validator(mode="after")
|
|
23
|
+
def check_size(self) -> Self:
|
|
24
|
+
"""Confirm that the shapes are the same"""
|
|
25
|
+
if len(self.solubilities) != len(self.uncertainties):
|
|
26
|
+
raise ValueError("Solubilities and uncertainties must have the same length.")
|
|
27
|
+
|
|
28
|
+
return self
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class SolubilityWorkflow(SMILESWorkflow):
|
|
32
|
+
"""
|
|
33
|
+
Solubility prediction workflow.
|
|
34
|
+
|
|
35
|
+
Inputs:
|
|
36
|
+
:param initial_smiles: SMILES string of the molecule
|
|
37
|
+
:param solvents: list of solvent SMILES strings
|
|
38
|
+
:param temperatures: temperatures in K
|
|
39
|
+
|
|
40
|
+
Results:
|
|
41
|
+
:param solubilities: {solvent: SolubilityResult}
|
|
42
|
+
"""
|
|
43
|
+
|
|
44
|
+
initial_smiles: str
|
|
45
|
+
solvents: list[str]
|
|
46
|
+
temperatures: list[float] = [273.15, 298.15, 323.15, 348.15, 373.15, 398.15, 423.15] # 0–150 °C
|
|
47
|
+
|
|
48
|
+
solubilities: dict[str, SolubilityResult] = {}
|
|
49
|
+
|
|
50
|
+
@model_validator(mode="after")
|
|
51
|
+
def check_size(self) -> Self:
|
|
52
|
+
"""Check that the sizes of the lists are consistent."""
|
|
53
|
+
for solvent, result in self.solubilities.items():
|
|
54
|
+
if len(result.solubilities) != len(self.temperatures):
|
|
55
|
+
raise ValueError(f"Solubilities for {solvent} must have the same length as temperatures.")
|
|
56
|
+
|
|
57
|
+
if solvent not in self.solvents:
|
|
58
|
+
raise ValueError(f"Solvent {solvent} not in initial list of solvents")
|
|
59
|
+
|
|
60
|
+
return self
|
stjames/workflows/spin_states.py
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
"""Spin-state prediction workflow."""
|
|
2
|
+
|
|
1
3
|
from typing import Annotated, Any
|
|
2
4
|
|
|
3
5
|
from pydantic import AfterValidator, BaseModel, Field, PositiveInt, field_validator, model_validator
|
|
@@ -6,7 +8,7 @@ from ..base import round_float
|
|
|
6
8
|
from ..mode import Mode
|
|
7
9
|
from ..types import UUID
|
|
8
10
|
from .multistage_opt import MultiStageOptMixin
|
|
9
|
-
from .workflow import
|
|
11
|
+
from .workflow import MoleculeWorkflow
|
|
10
12
|
|
|
11
13
|
|
|
12
14
|
class SpinState(BaseModel):
|
|
@@ -37,7 +39,7 @@ class SpinState(BaseModel):
|
|
|
37
39
|
_sentinel_mso_mode = object()
|
|
38
40
|
|
|
39
41
|
|
|
40
|
-
class SpinStatesWorkflow(
|
|
42
|
+
class SpinStatesWorkflow(MoleculeWorkflow, MultiStageOptMixin):
|
|
41
43
|
"""
|
|
42
44
|
Workflow for computing spin states of molecules.
|
|
43
45
|
|
stjames/workflows/tautomer.py
CHANGED
|
@@ -1,13 +1,24 @@
|
|
|
1
|
+
"""Tautomer prediction workflow."""
|
|
2
|
+
|
|
1
3
|
from typing import Annotated, Optional
|
|
2
4
|
|
|
3
5
|
from pydantic import AfterValidator
|
|
4
6
|
|
|
5
7
|
from ..base import Base, round_float, round_optional_float
|
|
6
8
|
from ..mode import Mode
|
|
7
|
-
from .workflow import DBCalculation,
|
|
9
|
+
from .workflow import DBCalculation, MoleculeWorkflow
|
|
8
10
|
|
|
9
11
|
|
|
10
12
|
class Tautomer(Base):
|
|
13
|
+
"""
|
|
14
|
+
A tautomer.
|
|
15
|
+
|
|
16
|
+
:param energy: energy of the tautomer
|
|
17
|
+
:param weight: statistical weight of the tautomer
|
|
18
|
+
:param predicted_relative_energy: relative energy of the tautomer
|
|
19
|
+
:param structures: UUIDs of the structures
|
|
20
|
+
"""
|
|
21
|
+
|
|
11
22
|
energy: Annotated[float, AfterValidator(round_float(6))]
|
|
12
23
|
weight: Annotated[Optional[float], AfterValidator(round_optional_float(6))] = None
|
|
13
24
|
predicted_relative_energy: Annotated[Optional[float], AfterValidator(round_optional_float(6))] = None
|
|
@@ -16,6 +27,17 @@ class Tautomer(Base):
|
|
|
16
27
|
structures: list[DBCalculation] = []
|
|
17
28
|
|
|
18
29
|
|
|
19
|
-
class TautomerWorkflow(
|
|
30
|
+
class TautomerWorkflow(MoleculeWorkflow):
|
|
31
|
+
"""
|
|
32
|
+
A workflow to calculate tautomers.
|
|
33
|
+
|
|
34
|
+
Inherited:
|
|
35
|
+
:param initial_molecule: Molecule of interest
|
|
36
|
+
:param mode: Mode for workflow
|
|
37
|
+
|
|
38
|
+
Results:
|
|
39
|
+
:param tautomers: resulting Tautomers
|
|
40
|
+
"""
|
|
41
|
+
|
|
20
42
|
mode: Mode = Mode.CAREFUL
|
|
21
43
|
tautomers: list[Tautomer] = []
|
stjames/workflows/workflow.py
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
"""Base classes for workflows."""
|
|
2
|
+
|
|
1
3
|
from pydantic import field_validator
|
|
2
4
|
|
|
3
5
|
from ..base import Base
|
|
@@ -11,18 +13,39 @@ class Workflow(Base):
|
|
|
11
13
|
"""
|
|
12
14
|
Base class for Workflows.
|
|
13
15
|
|
|
14
|
-
:param initial_molecule: Molecule of interest
|
|
15
|
-
:param mode: Mode to use
|
|
16
16
|
:param messages: messages to display
|
|
17
17
|
"""
|
|
18
18
|
|
|
19
|
-
initial_molecule: Molecule
|
|
20
|
-
mode: Mode = Mode.AUTO
|
|
21
19
|
messages: list[Message] = []
|
|
22
20
|
|
|
23
21
|
def __str__(self) -> str:
|
|
24
22
|
return repr(self)
|
|
25
23
|
|
|
24
|
+
|
|
25
|
+
class SMILESWorkflow(Workflow):
|
|
26
|
+
"""
|
|
27
|
+
Base class for Workflows that operate on a single SMILES string.
|
|
28
|
+
|
|
29
|
+
:param initial_smiles: SMILES string of interest
|
|
30
|
+
"""
|
|
31
|
+
|
|
32
|
+
initial_smiles: str
|
|
33
|
+
|
|
34
|
+
def __repr__(self) -> str:
|
|
35
|
+
return f"<{type(self).__name__} {self.initial_smiles}>"
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
class MoleculeWorkflow(Workflow):
|
|
39
|
+
"""
|
|
40
|
+
Base class for Workflows that operate on a single molecule.
|
|
41
|
+
|
|
42
|
+
:param initial_molecule: Molecule of interest
|
|
43
|
+
:param mode: Mode to use
|
|
44
|
+
"""
|
|
45
|
+
|
|
46
|
+
initial_molecule: Molecule
|
|
47
|
+
mode: Mode = Mode.AUTO
|
|
48
|
+
|
|
26
49
|
def __repr__(self) -> str:
|
|
27
50
|
return f"<{type(self).__name__} {self.mode.name}>"
|
|
28
51
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: stjames
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.62
|
|
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,11 +8,10 @@ Project-URL: Bug Tracker, https://github.com/rowansci/stjames/issues
|
|
|
8
8
|
Requires-Python: >=3.11
|
|
9
9
|
Description-Content-Type: text/markdown
|
|
10
10
|
License-File: LICENSE
|
|
11
|
-
Requires-Dist: atomium<2,>=1
|
|
12
11
|
Requires-Dist: pydantic>=2.4
|
|
13
12
|
Requires-Dist: numpy
|
|
14
|
-
Requires-Dist: atomium<2.0,>=1.0
|
|
15
13
|
Requires-Dist: requests
|
|
14
|
+
Requires-Dist: rdkit
|
|
16
15
|
|
|
17
16
|
# stjames
|
|
18
17
|
|
|
@@ -13,7 +13,7 @@ stjames/int_settings.py,sha256=5HXp8opt5ZyY1UpmfaK7NVloWVLM5jkG0elEEqpVLUo,896
|
|
|
13
13
|
stjames/message.py,sha256=Rq6QqmHZKecWxYH8fVyXmuoCCPZv8YinvgykSeorXSU,216
|
|
14
14
|
stjames/method.py,sha256=5hBHk2xQLpxZ52LwJ9FHWaqQMdFKnsbQEOxaVe6O4Go,2321
|
|
15
15
|
stjames/mode.py,sha256=xw46Cc7f3eTS8i35qECi-8DocAlANhayK3w4akD4HBU,496
|
|
16
|
-
stjames/molecule.py,sha256=
|
|
16
|
+
stjames/molecule.py,sha256=GLOWgXPiIsy3cjqRUNAMR0YLQVlzYilGESsGdNIhxww,14075
|
|
17
17
|
stjames/opt_settings.py,sha256=gxXGtjy9l-Q5Wen9eO6T6HHRCuS8rfOofdVQIJj0JcI,550
|
|
18
18
|
stjames/pdb.py,sha256=UxbgtIbc28L9O74AESYQiLBeiWZhdEbrBUT3mlyqRt8,25411
|
|
19
19
|
stjames/periodic_cell.py,sha256=eV_mArsY_MPEFSrFEsTC-CyCc6V8ITAXdk7yhjjNI7M,1080
|
|
@@ -24,12 +24,12 @@ stjames/solvent.py,sha256=u037tmu-9oa21s-WEDZ7VC7nuNVjkqR2ML4JWjWSME4,1158
|
|
|
24
24
|
stjames/status.py,sha256=wTKNcNxStoEHrxxgr_zTyN90NITa3rxMQZzOgrCifEw,332
|
|
25
25
|
stjames/task.py,sha256=OLINRqe66o7t8arffilwmggrF_7TH0L79u6DhGruxV8,329
|
|
26
26
|
stjames/thermochem_settings.py,sha256=ZTLz31v8Ltutde5Nfm0vH5YahWjcfFWfr_R856KffxE,517
|
|
27
|
-
stjames/types.py,sha256=
|
|
27
|
+
stjames/types.py,sha256=rs2CdpkruIfU-PS98rjr9HAJNFGdZDB_zl-u3wa5rAs,4092
|
|
28
28
|
stjames/atomium_stjames/__init__.py,sha256=gZkzC7i9D_fmWUTN55gtygITo3-qvJUda5CXLR0jyCQ,306
|
|
29
29
|
stjames/atomium_stjames/data.py,sha256=-hzwBpTHq5JetsOVyopUJswKnKAkMtJ_XkONxjXVupU,5675
|
|
30
|
-
stjames/atomium_stjames/mmcif.py,sha256=
|
|
30
|
+
stjames/atomium_stjames/mmcif.py,sha256=llbJ65p2B-aZN31-E_ODVDmrVeBoSw9y_Mg5XjyQvTA,26755
|
|
31
31
|
stjames/atomium_stjames/pdb.py,sha256=C2mEcBDDrnoXD9ZCMIH2uJpjiWPJy6ktXq8IFZsrQKM,22482
|
|
32
|
-
stjames/atomium_stjames/utilities.py,sha256
|
|
32
|
+
stjames/atomium_stjames/utilities.py,sha256=-YtM7sRMvMk0wWrC3svWUWH4CGI0NtY77nXsg9tjHfc,4964
|
|
33
33
|
stjames/data/__init__.py,sha256=O59Ksp7AIqwOELCWymfCx7YeBzwNOGCMlGQi7tNLqiE,24
|
|
34
34
|
stjames/data/bragg_radii.json,sha256=hhbn-xyZNSdmnULIjN2Cvq-_BGIZIqG243Ls_mey61w,1350
|
|
35
35
|
stjames/data/elements.py,sha256=9BW01LZlyJ0H5s7Q26vUmjZIST41fwOYYrGvmPd7q0w,858
|
|
@@ -37,28 +37,29 @@ stjames/data/isotopes.json,sha256=5ba8QnLrHD_Ypv2xekv2cIRwYrX3MQ19-1FOFtt0RuU,83
|
|
|
37
37
|
stjames/data/nist_isotopes.json,sha256=d5DNk1dX0iB1waEYIRR6JMHuA7AuYwSBEgBvb4EKyhM,14300
|
|
38
38
|
stjames/data/read_nist_isotopes.py,sha256=y10FNjW43QpC45qib7VHsIghEwT7GG5rsNwHdc9osRI,3309
|
|
39
39
|
stjames/data/symbol_element.json,sha256=vl_buFusTqBd-muYQtMLtTDLy2OtBI6KkBeqkaWRQrg,1186
|
|
40
|
-
stjames/workflows/__init__.py,sha256=
|
|
41
|
-
stjames/workflows/admet.py,sha256=
|
|
42
|
-
stjames/workflows/basic_calculation.py,sha256=
|
|
43
|
-
stjames/workflows/bde.py,sha256=
|
|
44
|
-
stjames/workflows/conformer.py,sha256=
|
|
45
|
-
stjames/workflows/conformer_search.py,sha256=
|
|
46
|
-
stjames/workflows/descriptors.py,sha256=
|
|
47
|
-
stjames/workflows/docking.py,sha256=
|
|
48
|
-
stjames/workflows/electronic_properties.py,sha256=
|
|
49
|
-
stjames/workflows/fukui.py,sha256=
|
|
50
|
-
stjames/workflows/hydrogen_bond_basicity.py,sha256=
|
|
51
|
-
stjames/workflows/irc.py,sha256=
|
|
52
|
-
stjames/workflows/molecular_dynamics.py,sha256=
|
|
53
|
-
stjames/workflows/multistage_opt.py,sha256=
|
|
54
|
-
stjames/workflows/pka.py,sha256=
|
|
55
|
-
stjames/workflows/redox_potential.py,sha256=
|
|
56
|
-
stjames/workflows/scan.py,sha256=
|
|
57
|
-
stjames/workflows/
|
|
58
|
-
stjames/workflows/
|
|
59
|
-
stjames/workflows/
|
|
60
|
-
stjames
|
|
61
|
-
stjames-0.0.
|
|
62
|
-
stjames-0.0.
|
|
63
|
-
stjames-0.0.
|
|
64
|
-
stjames-0.0.
|
|
40
|
+
stjames/workflows/__init__.py,sha256=5KX0IcuYElj8K3qE2c-XY8dL-vPdG87US7ErfZlyK88,2293
|
|
41
|
+
stjames/workflows/admet.py,sha256=m8yGWe-UeYK5F7TOeNsQMPTzdWL-aaRSTQsyO7SVa6k,421
|
|
42
|
+
stjames/workflows/basic_calculation.py,sha256=ZX3KwhfyyCTjc2ougQIL4If7gtwZP9WjqpL45mBquW0,573
|
|
43
|
+
stjames/workflows/bde.py,sha256=hdTjwma5L9SrU5F5r6dB1ruB_B6buBUtZHf2sanNW2k,9802
|
|
44
|
+
stjames/workflows/conformer.py,sha256=18aO6ngMBeGAmQkBdLGCCHr398RIYr1v2hD2IT1u4cc,3005
|
|
45
|
+
stjames/workflows/conformer_search.py,sha256=4yPEKIIedeaVvaAwgjwC1FxiHqM6n2zOF6c9Yk_q1oA,13513
|
|
46
|
+
stjames/workflows/descriptors.py,sha256=T4tc7xdtBdxESGO86KR323jPQ2pgwxBqgV0khA6MEgQ,584
|
|
47
|
+
stjames/workflows/docking.py,sha256=p-L1s3NxLcliwDs8uLaohcz1Lap01Nuogq9Xe1eOT2k,2949
|
|
48
|
+
stjames/workflows/electronic_properties.py,sha256=GT3-NC7w-dbcOJ-3AzJ7LgzH6frTbiH2Iyb9BCa-SvY,4112
|
|
49
|
+
stjames/workflows/fukui.py,sha256=e7CF7Mp2Dt1JTipQx-Sz_37W1urL-iRpjXY-9ItSvhM,1268
|
|
50
|
+
stjames/workflows/hydrogen_bond_basicity.py,sha256=XDpHEluw6DQ9Zk5g2Je2a81HqIkqPglZ-6f2YZnd4Bc,1159
|
|
51
|
+
stjames/workflows/irc.py,sha256=ZP7icylW8rgo_Uh7h3bmyumn0ru1IyF-61nP5Jnmq3M,3402
|
|
52
|
+
stjames/workflows/molecular_dynamics.py,sha256=kxugE73Ntzpj-xpJSoQ1EwGzXXdvi_NTyeP4913EVwE,3173
|
|
53
|
+
stjames/workflows/multistage_opt.py,sha256=pPLAZDztHd37q8cxCUkdq8EzOFyrTzZJHNfDV5auiHs,13638
|
|
54
|
+
stjames/workflows/pka.py,sha256=j3vBh2YM3nJzJ1XJKPsmYahRCeaU9n3P-G-u9_moaFw,2065
|
|
55
|
+
stjames/workflows/redox_potential.py,sha256=7S18t9Y3eynSnA3lZbRlvLfdbgeBopdiigLzt1zxg5c,3871
|
|
56
|
+
stjames/workflows/scan.py,sha256=vGS1wWMpMSogb63DEED6U6oHsLgV0D2hXVQg2UWWJgs,1913
|
|
57
|
+
stjames/workflows/solubility.py,sha256=kGfVyPPGDLRpf2j6dSY7woCkfsoXSbUzdSImA4mcMpw,1898
|
|
58
|
+
stjames/workflows/spin_states.py,sha256=0degmE-frovgoXweshZyjfjqL7nkbaFoO9YoJhvQnaI,4748
|
|
59
|
+
stjames/workflows/tautomer.py,sha256=7eYKziGPg8Km6lfowTzSkgJfJ4SHUPrAmnTf8Bi-SB0,1164
|
|
60
|
+
stjames/workflows/workflow.py,sha256=sk2BUz59wdIkT_EyKOnMt5woNrjo3aHVK38cU8x8I7Q,1423
|
|
61
|
+
stjames-0.0.62.dist-info/LICENSE,sha256=i7ehYBS-6gGmbTcgU4mgk28pyOx2kScJ0kcx8n7bWLM,1084
|
|
62
|
+
stjames-0.0.62.dist-info/METADATA,sha256=Vni7VUt_d2w-dqOUh4pUhK6ldBtd8PxJHl0hBtkK1cU,1672
|
|
63
|
+
stjames-0.0.62.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
64
|
+
stjames-0.0.62.dist-info/top_level.txt,sha256=FYCwxl6quhYOAgG-mnPQcCK8vsVM7B8rIUrO-WrQ_PI,8
|
|
65
|
+
stjames-0.0.62.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|