stjames 0.0.80__tar.gz → 0.0.81__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.

Files changed (80) hide show
  1. {stjames-0.0.80/stjames.egg-info → stjames-0.0.81}/PKG-INFO +1 -1
  2. {stjames-0.0.80 → stjames-0.0.81}/pyproject.toml +1 -1
  3. {stjames-0.0.80 → stjames-0.0.81}/stjames/types.py +11 -0
  4. stjames-0.0.81/stjames/workflows/protein_cofolding.py +61 -0
  5. {stjames-0.0.80 → stjames-0.0.81/stjames.egg-info}/PKG-INFO +1 -1
  6. stjames-0.0.80/stjames/workflows/protein_cofolding.py +0 -55
  7. {stjames-0.0.80 → stjames-0.0.81}/LICENSE +0 -0
  8. {stjames-0.0.80 → stjames-0.0.81}/README.md +0 -0
  9. {stjames-0.0.80 → stjames-0.0.81}/setup.cfg +0 -0
  10. {stjames-0.0.80 → stjames-0.0.81}/stjames/__init__.py +0 -0
  11. {stjames-0.0.80 → stjames-0.0.81}/stjames/_deprecated_solvent_settings.py +0 -0
  12. {stjames-0.0.80 → stjames-0.0.81}/stjames/atom.py +0 -0
  13. {stjames-0.0.80 → stjames-0.0.81}/stjames/atomium_stjames/__init__.py +0 -0
  14. {stjames-0.0.80 → stjames-0.0.81}/stjames/atomium_stjames/data.py +0 -0
  15. {stjames-0.0.80 → stjames-0.0.81}/stjames/atomium_stjames/mmcif.py +0 -0
  16. {stjames-0.0.80 → stjames-0.0.81}/stjames/atomium_stjames/pdb.py +0 -0
  17. {stjames-0.0.80 → stjames-0.0.81}/stjames/atomium_stjames/utilities.py +0 -0
  18. {stjames-0.0.80 → stjames-0.0.81}/stjames/base.py +0 -0
  19. {stjames-0.0.80 → stjames-0.0.81}/stjames/basis_set.py +0 -0
  20. {stjames-0.0.80 → stjames-0.0.81}/stjames/calculation.py +0 -0
  21. {stjames-0.0.80 → stjames-0.0.81}/stjames/compute_settings.py +0 -0
  22. {stjames-0.0.80 → stjames-0.0.81}/stjames/constraint.py +0 -0
  23. {stjames-0.0.80 → stjames-0.0.81}/stjames/correction.py +0 -0
  24. {stjames-0.0.80 → stjames-0.0.81}/stjames/data/__init__.py +0 -0
  25. {stjames-0.0.80 → stjames-0.0.81}/stjames/data/bragg_radii.json +0 -0
  26. {stjames-0.0.80 → stjames-0.0.81}/stjames/data/elements.py +0 -0
  27. {stjames-0.0.80 → stjames-0.0.81}/stjames/data/isotopes.json +0 -0
  28. {stjames-0.0.80 → stjames-0.0.81}/stjames/data/nist_isotopes.json +0 -0
  29. {stjames-0.0.80 → stjames-0.0.81}/stjames/data/read_nist_isotopes.py +0 -0
  30. {stjames-0.0.80 → stjames-0.0.81}/stjames/data/symbol_element.json +0 -0
  31. {stjames-0.0.80 → stjames-0.0.81}/stjames/diis_settings.py +0 -0
  32. {stjames-0.0.80 → stjames-0.0.81}/stjames/grid_settings.py +0 -0
  33. {stjames-0.0.80 → stjames-0.0.81}/stjames/int_settings.py +0 -0
  34. {stjames-0.0.80 → stjames-0.0.81}/stjames/message.py +0 -0
  35. {stjames-0.0.80 → stjames-0.0.81}/stjames/method.py +0 -0
  36. {stjames-0.0.80 → stjames-0.0.81}/stjames/mode.py +0 -0
  37. {stjames-0.0.80 → stjames-0.0.81}/stjames/molecule.py +0 -0
  38. {stjames-0.0.80 → stjames-0.0.81}/stjames/opt_settings.py +0 -0
  39. {stjames-0.0.80 → stjames-0.0.81}/stjames/pdb.py +0 -0
  40. {stjames-0.0.80 → stjames-0.0.81}/stjames/periodic_cell.py +0 -0
  41. {stjames-0.0.80 → stjames-0.0.81}/stjames/py.typed +0 -0
  42. {stjames-0.0.80 → stjames-0.0.81}/stjames/scf_settings.py +0 -0
  43. {stjames-0.0.80 → stjames-0.0.81}/stjames/settings.py +0 -0
  44. {stjames-0.0.80 → stjames-0.0.81}/stjames/solvent.py +0 -0
  45. {stjames-0.0.80 → stjames-0.0.81}/stjames/status.py +0 -0
  46. {stjames-0.0.80 → stjames-0.0.81}/stjames/task.py +0 -0
  47. {stjames-0.0.80 → stjames-0.0.81}/stjames/thermochem_settings.py +0 -0
  48. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/__init__.py +0 -0
  49. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/admet.py +0 -0
  50. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/basic_calculation.py +0 -0
  51. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/bde.py +0 -0
  52. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/conformer.py +0 -0
  53. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/conformer_search.py +0 -0
  54. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/descriptors.py +0 -0
  55. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/docking.py +0 -0
  56. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/electronic_properties.py +0 -0
  57. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/fukui.py +0 -0
  58. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/hydrogen_bond_basicity.py +0 -0
  59. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/ion_mobility.py +0 -0
  60. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/irc.py +0 -0
  61. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/macropka.py +0 -0
  62. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/molecular_dynamics.py +0 -0
  63. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/multistage_opt.py +0 -0
  64. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/pka.py +0 -0
  65. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/redox_potential.py +0 -0
  66. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/scan.py +0 -0
  67. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/solubility.py +0 -0
  68. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/spin_states.py +0 -0
  69. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/tautomer.py +0 -0
  70. {stjames-0.0.80 → stjames-0.0.81}/stjames/workflows/workflow.py +0 -0
  71. {stjames-0.0.80 → stjames-0.0.81}/stjames.egg-info/SOURCES.txt +0 -0
  72. {stjames-0.0.80 → stjames-0.0.81}/stjames.egg-info/dependency_links.txt +0 -0
  73. {stjames-0.0.80 → stjames-0.0.81}/stjames.egg-info/requires.txt +0 -0
  74. {stjames-0.0.80 → stjames-0.0.81}/stjames.egg-info/top_level.txt +0 -0
  75. {stjames-0.0.80 → stjames-0.0.81}/tests/test_constraints.py +0 -0
  76. {stjames-0.0.80 → stjames-0.0.81}/tests/test_from_extxyz.py +0 -0
  77. {stjames-0.0.80 → stjames-0.0.81}/tests/test_molecule.py +0 -0
  78. {stjames-0.0.80 → stjames-0.0.81}/tests/test_pdb.py +0 -0
  79. {stjames-0.0.80 → stjames-0.0.81}/tests/test_rounding.py +0 -0
  80. {stjames-0.0.80 → stjames-0.0.81}/tests/test_settings.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: stjames
3
- Version: 0.0.80
3
+ Version: 0.0.81
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
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "stjames"
3
- version = "0.0.80"
3
+ version = "0.0.81"
4
4
  description = "standardized JSON atom/molecule encoding scheme"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.11"
@@ -19,6 +19,17 @@ def round_list(round_to: int = 6) -> Callable[[Iterable[float]], list[float]]:
19
19
  return rounder
20
20
 
21
21
 
22
+ def round_optional_list(round_to: int = 6) -> Callable[[Iterable[float] | None], list[float] | None]:
23
+ """Create a validator that rounds each float in a list to a given number of decimal places."""
24
+
25
+ def rounder(values: Iterable[float] | None) -> list[float] | None:
26
+ if values is None:
27
+ return None
28
+ return [round(value, round_to) for value in values]
29
+
30
+ return rounder
31
+
32
+
22
33
  def round_vector3d(round_to: int = 6) -> Callable[[Vector3D], Vector3D]:
23
34
  """Create a validator that rounds each component of a Vector3D to a given number of decimal places."""
24
35
 
@@ -0,0 +1,61 @@
1
+ """Protein Cofolding Workflow."""
2
+
3
+ from typing import Annotated
4
+
5
+ from pydantic import AfterValidator, BaseModel
6
+
7
+ from ..base import LowercaseStrEnum, round_float
8
+ from ..types import UUID, round_optional_list
9
+ from .workflow import FASTAWorkflow
10
+
11
+
12
+ class CofoldingModel(LowercaseStrEnum):
13
+ """Cofolding model to be used for prediction."""
14
+
15
+ CHAI_1R = "chai_1r"
16
+ BOLTZ_1 = "boltz_1"
17
+ BOLTZ_2 = "boltz_2"
18
+
19
+
20
+ class CofoldingScores(BaseModel):
21
+ confidence_score: Annotated[float, AfterValidator(round_float(3))]
22
+ ptm: Annotated[float, AfterValidator(round_float(3))] # predicted template modeling score
23
+ iptm: Annotated[float, AfterValidator(round_float(3))] # interface predicted template modeling score
24
+ avg_lddt: Annotated[float, AfterValidator(round_float(3))]
25
+
26
+
27
+ class AffinityScore(BaseModel):
28
+ pred_value: Annotated[float, AfterValidator(round_float(3))]
29
+ probability_binary: Annotated[float, AfterValidator(round_float(3))]
30
+ pred_value1: Annotated[float, AfterValidator(round_float(3))]
31
+ probability_binary1: Annotated[float, AfterValidator(round_float(3))]
32
+ pred_value2: Annotated[float, AfterValidator(round_float(3))]
33
+ probability_binary2: Annotated[float, AfterValidator(round_float(3))]
34
+
35
+
36
+ class ProteinCofoldingWorkflow(FASTAWorkflow):
37
+ """
38
+ A workflow for predicting structures. Especially protein structures.
39
+
40
+ Inherited:
41
+ :param initial_protein_sequences: protein sequences of interest
42
+ :param initial_smiles_list: SMILES strings of interest
43
+
44
+ New:
45
+ :param use_msa_server: whether to use the MSA server
46
+ :param use_templates_server: whether to use the templates server
47
+ :param predicted_structure_uuid: UUID of the predicted structure
48
+ """
49
+
50
+ use_msa_server: bool = False
51
+ use_templates_server: bool = False
52
+ use_potentials: bool = False
53
+ predicted_structure_uuid: UUID | None = None
54
+ scores: CofoldingScores | None = None
55
+ model: CofoldingModel = CofoldingModel.BOLTZ_2
56
+ affinity_score: AffinityScore | None = None
57
+ lddt: Annotated[list[float] | None, AfterValidator(round_optional_list(3))] = None
58
+
59
+
60
+ reduced_mass: Annotated[float, AfterValidator(round_float(3))] # amu
61
+ solubilities: Annotated[list[float] | None, AfterValidator(round_optional_list(3))]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: stjames
3
- Version: 0.0.80
3
+ Version: 0.0.81
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
@@ -1,55 +0,0 @@
1
- """Protein Cofolding Workflow."""
2
-
3
- from pydantic import BaseModel
4
-
5
- from ..base import LowercaseStrEnum
6
- from ..types import UUID
7
- from .workflow import FASTAWorkflow
8
-
9
-
10
- class CofoldingModel(LowercaseStrEnum):
11
- """Cofolding model to be used for prediction."""
12
-
13
- CHAI_1R = "chai_1r"
14
- BOLTZ_1 = "boltz_1"
15
- BOLTZ_2 = "boltz_2"
16
-
17
-
18
- class CofoldingScores(BaseModel):
19
- confidence_score: float
20
- ptm: float # predicted template modeling score
21
- iptm: float # interface predicted template modeling score
22
- avg_lddt: float
23
-
24
-
25
- class AffinityScore(BaseModel):
26
- pred_value: float
27
- probability_binary: float
28
- pred_value1: float
29
- probability_binary1: float
30
- pred_value2: float
31
- probability_binary2: float
32
-
33
-
34
- class ProteinCofoldingWorkflow(FASTAWorkflow):
35
- """
36
- A workflow for predicting structures. Especially protein structures.
37
-
38
- Inherited:
39
- :param initial_protein_sequences: protein sequences of interest
40
- :param initial_smiles_list: SMILES strings of interest
41
-
42
- New:
43
- :param use_msa_server: whether to use the MSA server
44
- :param use_templates_server: whether to use the templates server
45
- :param predicted_structure_uuid: UUID of the predicted structure
46
- """
47
-
48
- use_msa_server: bool = False
49
- use_templates_server: bool = False
50
- use_potentials: bool = False
51
- predicted_structure_uuid: UUID | None = None
52
- scores: CofoldingScores | None = None
53
- model: CofoldingModel = CofoldingModel.BOLTZ_2
54
- affinity_score: AffinityScore | None = None
55
- lddt: list[float] | None = None
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