stjames 0.0.79__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.79/stjames.egg-info → stjames-0.0.81}/PKG-INFO +1 -1
  2. {stjames-0.0.79 → stjames-0.0.81}/pyproject.toml +1 -1
  3. {stjames-0.0.79 → 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.79 → stjames-0.0.81/stjames.egg-info}/PKG-INFO +1 -1
  6. stjames-0.0.79/stjames/workflows/protein_cofolding.py +0 -53
  7. {stjames-0.0.79 → stjames-0.0.81}/LICENSE +0 -0
  8. {stjames-0.0.79 → stjames-0.0.81}/README.md +0 -0
  9. {stjames-0.0.79 → stjames-0.0.81}/setup.cfg +0 -0
  10. {stjames-0.0.79 → stjames-0.0.81}/stjames/__init__.py +0 -0
  11. {stjames-0.0.79 → stjames-0.0.81}/stjames/_deprecated_solvent_settings.py +0 -0
  12. {stjames-0.0.79 → stjames-0.0.81}/stjames/atom.py +0 -0
  13. {stjames-0.0.79 → stjames-0.0.81}/stjames/atomium_stjames/__init__.py +0 -0
  14. {stjames-0.0.79 → stjames-0.0.81}/stjames/atomium_stjames/data.py +0 -0
  15. {stjames-0.0.79 → stjames-0.0.81}/stjames/atomium_stjames/mmcif.py +0 -0
  16. {stjames-0.0.79 → stjames-0.0.81}/stjames/atomium_stjames/pdb.py +0 -0
  17. {stjames-0.0.79 → stjames-0.0.81}/stjames/atomium_stjames/utilities.py +0 -0
  18. {stjames-0.0.79 → stjames-0.0.81}/stjames/base.py +0 -0
  19. {stjames-0.0.79 → stjames-0.0.81}/stjames/basis_set.py +0 -0
  20. {stjames-0.0.79 → stjames-0.0.81}/stjames/calculation.py +0 -0
  21. {stjames-0.0.79 → stjames-0.0.81}/stjames/compute_settings.py +0 -0
  22. {stjames-0.0.79 → stjames-0.0.81}/stjames/constraint.py +0 -0
  23. {stjames-0.0.79 → stjames-0.0.81}/stjames/correction.py +0 -0
  24. {stjames-0.0.79 → stjames-0.0.81}/stjames/data/__init__.py +0 -0
  25. {stjames-0.0.79 → stjames-0.0.81}/stjames/data/bragg_radii.json +0 -0
  26. {stjames-0.0.79 → stjames-0.0.81}/stjames/data/elements.py +0 -0
  27. {stjames-0.0.79 → stjames-0.0.81}/stjames/data/isotopes.json +0 -0
  28. {stjames-0.0.79 → stjames-0.0.81}/stjames/data/nist_isotopes.json +0 -0
  29. {stjames-0.0.79 → stjames-0.0.81}/stjames/data/read_nist_isotopes.py +0 -0
  30. {stjames-0.0.79 → stjames-0.0.81}/stjames/data/symbol_element.json +0 -0
  31. {stjames-0.0.79 → stjames-0.0.81}/stjames/diis_settings.py +0 -0
  32. {stjames-0.0.79 → stjames-0.0.81}/stjames/grid_settings.py +0 -0
  33. {stjames-0.0.79 → stjames-0.0.81}/stjames/int_settings.py +0 -0
  34. {stjames-0.0.79 → stjames-0.0.81}/stjames/message.py +0 -0
  35. {stjames-0.0.79 → stjames-0.0.81}/stjames/method.py +0 -0
  36. {stjames-0.0.79 → stjames-0.0.81}/stjames/mode.py +0 -0
  37. {stjames-0.0.79 → stjames-0.0.81}/stjames/molecule.py +0 -0
  38. {stjames-0.0.79 → stjames-0.0.81}/stjames/opt_settings.py +0 -0
  39. {stjames-0.0.79 → stjames-0.0.81}/stjames/pdb.py +0 -0
  40. {stjames-0.0.79 → stjames-0.0.81}/stjames/periodic_cell.py +0 -0
  41. {stjames-0.0.79 → stjames-0.0.81}/stjames/py.typed +0 -0
  42. {stjames-0.0.79 → stjames-0.0.81}/stjames/scf_settings.py +0 -0
  43. {stjames-0.0.79 → stjames-0.0.81}/stjames/settings.py +0 -0
  44. {stjames-0.0.79 → stjames-0.0.81}/stjames/solvent.py +0 -0
  45. {stjames-0.0.79 → stjames-0.0.81}/stjames/status.py +0 -0
  46. {stjames-0.0.79 → stjames-0.0.81}/stjames/task.py +0 -0
  47. {stjames-0.0.79 → stjames-0.0.81}/stjames/thermochem_settings.py +0 -0
  48. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/__init__.py +0 -0
  49. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/admet.py +0 -0
  50. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/basic_calculation.py +0 -0
  51. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/bde.py +0 -0
  52. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/conformer.py +0 -0
  53. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/conformer_search.py +0 -0
  54. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/descriptors.py +0 -0
  55. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/docking.py +0 -0
  56. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/electronic_properties.py +0 -0
  57. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/fukui.py +0 -0
  58. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/hydrogen_bond_basicity.py +0 -0
  59. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/ion_mobility.py +0 -0
  60. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/irc.py +0 -0
  61. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/macropka.py +0 -0
  62. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/molecular_dynamics.py +0 -0
  63. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/multistage_opt.py +0 -0
  64. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/pka.py +0 -0
  65. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/redox_potential.py +0 -0
  66. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/scan.py +0 -0
  67. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/solubility.py +0 -0
  68. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/spin_states.py +0 -0
  69. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/tautomer.py +0 -0
  70. {stjames-0.0.79 → stjames-0.0.81}/stjames/workflows/workflow.py +0 -0
  71. {stjames-0.0.79 → stjames-0.0.81}/stjames.egg-info/SOURCES.txt +0 -0
  72. {stjames-0.0.79 → stjames-0.0.81}/stjames.egg-info/dependency_links.txt +0 -0
  73. {stjames-0.0.79 → stjames-0.0.81}/stjames.egg-info/requires.txt +0 -0
  74. {stjames-0.0.79 → stjames-0.0.81}/stjames.egg-info/top_level.txt +0 -0
  75. {stjames-0.0.79 → stjames-0.0.81}/tests/test_constraints.py +0 -0
  76. {stjames-0.0.79 → stjames-0.0.81}/tests/test_from_extxyz.py +0 -0
  77. {stjames-0.0.79 → stjames-0.0.81}/tests/test_molecule.py +0 -0
  78. {stjames-0.0.79 → stjames-0.0.81}/tests/test_pdb.py +0 -0
  79. {stjames-0.0.79 → stjames-0.0.81}/tests/test_rounding.py +0 -0
  80. {stjames-0.0.79 → 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.79
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.79"
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.79
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,53 +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
-
23
-
24
- class AffinityScore(BaseModel):
25
- pred_value: float
26
- probability_binary: float
27
- pred_value1: float
28
- probability_binary1: float
29
- pred_value2: float
30
- probability_binary2: float
31
-
32
-
33
- class ProteinCofoldingWorkflow(FASTAWorkflow):
34
- """
35
- A workflow for predicting structures. Especially protein structures.
36
-
37
- Inherited:
38
- :param initial_protein_sequences: protein sequences of interest
39
- :param initial_smiles_list: SMILES strings of interest
40
-
41
- New:
42
- :param use_msa_server: whether to use the MSA server
43
- :param use_templates_server: whether to use the templates server
44
- :param predicted_structure_uuid: UUID of the predicted structure
45
- """
46
-
47
- use_msa_server: bool = False
48
- use_templates_server: bool = False
49
- use_potentials: bool = False
50
- predicted_structure_uuid: UUID | None = None
51
- scores: CofoldingScores | None = None
52
- model: CofoldingModel = CofoldingModel.BOLTZ_2
53
- affinity_score: AffinityScore | 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