rowan-python 3.2.1__py3-none-any.whl → 3.2.2__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.
rowan/__init__.py CHANGED
@@ -67,6 +67,7 @@ from stjames.engine_compatibility import (
67
67
  METHOD_ENGINES,
68
68
  get_supported_corrections,
69
69
  )
70
+ from stjames.pdb import ResidueRef
70
71
  from stjames.optimization.band_method import NEBSettings
71
72
  from stjames.optimization.interpolation import Interpolation
72
73
  from stjames.optimization.string_method import FSMSettings, StringMethodSettings
rowan/project.py CHANGED
@@ -197,8 +197,15 @@ def default_project() -> Project:
197
197
 
198
198
  Raises:
199
199
  httpx.HTTPStatusError: API request fails
200
+ ValueError: user has no default project in the API key's organization
200
201
  """
201
202
  with api_client() as client:
202
203
  response = client.get("/user/me/default_project")
203
204
  response.raise_for_status()
204
- return Project(**response.json())
205
+ project = response.json()
206
+ if project is None:
207
+ raise ValueError(
208
+ "You have no default project in this organization. "
209
+ "Set a default project, or pass a folder or project."
210
+ )
211
+ return Project(**project)
@@ -153,9 +153,15 @@ def submit_binding_affinity_workflow(
153
153
  binding_affinity_settings=binding_affinity_settings or SinglePointEnergySettings(),
154
154
  )
155
155
 
156
+ workflow_data = workflow.model_dump(serialize_as_any=True, mode="json")
157
+ if isinstance(workflow.binding_affinity_settings, SinglePointEnergySettings):
158
+ workflow_data["binding_affinity_settings"]["truncation_radius"] = (
159
+ workflow.binding_affinity_settings.truncation_radius
160
+ )
161
+
156
162
  data = {
157
163
  "workflow_type": "binding_affinity",
158
- "workflow_data": workflow.model_dump(serialize_as_any=True, mode="json"),
164
+ "workflow_data": workflow_data,
159
165
  "name": name,
160
166
  "folder_uuid": folder_uuid,
161
167
  "max_credits": max_credits,
@@ -149,7 +149,7 @@ def submit_protein_md_workflow(
149
149
  binder: Binder | None = None,
150
150
  protein_restraint_cutoff: float | None = None,
151
151
  protein_restraint_constant: float = 100,
152
- analysis_interval_ps: float | None = None,
152
+ analysis_interval_ps: float | None = 100,
153
153
  clustering: KMeansClusteringSettings | GreedyClusteringSettings | None = None,
154
154
  validate_forcefield: bool = True,
155
155
  name: str = "Protein MD Workflow",
@@ -194,8 +194,8 @@ def submit_protein_md_workflow(
194
194
  protein_restraint_cutoff: cutoff distance from the binder past which Cα atoms are
195
195
  harmonically restrained, in Å; None disables restraints
196
196
  protein_restraint_constant: force constant for Cα backbone restraints, in kcal/mol/Ų
197
- analysis_interval_ps: interval at which to compute per-frame SASA and polar SASA, in ps.
198
- None disables those analyses
197
+ analysis_interval_ps: interval at which to compute per-frame SASA and polar SASA
198
+ (default 100), in ps. None disables those analyses
199
199
  clustering: how to cluster trajectory frames. None disables clustering; pass a
200
200
  KMeansClusteringSettings (num_clusters) or GreedyClusteringSettings (cutoff_angstrom)
201
201
  validate_forcefield: validate the protein forcefield
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: rowan-python
3
- Version: 3.2.1
3
+ Version: 3.2.2
4
4
  Summary: Rowan Python Library
5
5
  Project-URL: Homepage, https://github.com/rowansci/rowan-client
6
6
  Project-URL: Bug Tracker, https://github.com/rowansci/rowan-client/issues
@@ -12,7 +12,7 @@ Requires-Dist: httpx
12
12
  Requires-Dist: nest-asyncio
13
13
  Requires-Dist: rdkit
14
14
  Requires-Dist: setuptools
15
- Requires-Dist: stjames>=0.0.275
15
+ Requires-Dist: stjames>=0.0.281
16
16
  Description-Content-Type: text/markdown
17
17
 
18
18
  # Rowan Python Library
@@ -1,11 +1,11 @@
1
- rowan/__init__.py,sha256=inUxeeRp1yF7Jwn-_ZRjBBgmaZGlxY-9kmz_a0ejECE,2111
1
+ rowan/__init__.py,sha256=NBswhyW8dInEyeCwizI9zZoxhAEBhnP5i00-ETllcG8,2146
2
2
  rowan/api_keys.py,sha256=ms8NAkLreFQcaEUPCf8lSf7T0x2OmrWCAT44N1cgocE,6955
3
3
  rowan/calculation.py,sha256=E1dAox4ScE3NHJXiKFZ3Lpmw2h7DKCVzcwRvGZ2H2cQ,3802
4
4
  rowan/config.py,sha256=ay6UxKLE9bbTxHFXxDfUXGRVJWJ1T-eS2_L4HF8mb_E,20927
5
5
  rowan/constants.py,sha256=emCH4m9OL2Hm5E-6mJGM_FgzrK_JrZT-FiKJ6pMNQ4Y,84
6
6
  rowan/folder.py,sha256=8Gb60oes78G7QTGm0EX-ofkmQEggv5cwseA7dRBIhok,13883
7
7
  rowan/molecule.py,sha256=1ueC_M2Yaubkt5eQlONCagShWPnoJfNNXgd0s7sslPM,15826
8
- rowan/project.py,sha256=N8DdNt7xCYHunIAqTvPmBGkH8thzwmguATo4Thfa13o,5479
8
+ rowan/project.py,sha256=R5uwpzg7GOaGQ_ebCvTysYvkUHE_hHxWAhujp7CBqU0,5770
9
9
  rowan/protein.py,sha256=AGHarvWfciSwWXfHnVjdUW47FML7vI4Kk4dYTeFfKAQ,19322
10
10
  rowan/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
11
  rowan/types.py,sha256=D0d6MW6MvLMs6UtNgGKlapFGOnPlzqFTk9EAgB9dwks,636
@@ -19,7 +19,7 @@ rowan/workflows/base.py,sha256=DR2k5VFMmv2sa9v4hYU_Fvzf8k2unp5nhPqvOd7NX64,39520
19
19
  rowan/workflows/basic_calculation.py,sha256=7o9jxEpDMiong2k3Ke1WCLwaSWZvKY5tqhbixnbQWbo,12945
20
20
  rowan/workflows/batch_docking.py,sha256=AtCp2-D_LOVxzSPmQ144zYIz5kft9NeRljELdRDU6vY,4941
21
21
  rowan/workflows/bde.py,sha256=4Yw27U2RPsuUDf9tw-7wPbw_4gaUcvDlQP8je7VJktU,7099
22
- rowan/workflows/binding_affinity.py,sha256=O0fL_oQtMpYlmdaCvHTR7WSNfOENMPAN0OUBxO4640k,6553
22
+ rowan/workflows/binding_affinity.py,sha256=CP5rsWNMhsdLGzLdPBIs89wZDW6sa8YwGEkqep0ls1Q,6821
23
23
  rowan/workflows/conformer_search.py,sha256=enx9HbFZVVYgHJP-HUFam63E0qCDq6jjGeXNuBXXlys,16311
24
24
  rowan/workflows/constants.py,sha256=iM9-6DyIe0N2ydyq-lRYP7VDufFmMrN5tDjnpUSlxF8,588
25
25
  rowan/workflows/covalent_inhibitor_scan.py,sha256=VcZhwW3HRuFuGZNedMPZBWbzuhGvz_B5pNJSIPyi9Kw,6721
@@ -43,7 +43,7 @@ rowan/workflows/pocket_detection.py,sha256=dFeCLB59v5-Izf54blrRzJhwUtBQX2SJyVKT_
43
43
  rowan/workflows/pose_analysis_md.py,sha256=ndfGS8oP8oQ3EXe83Wgbx1H8ZFURlm8IJZN34aDpqeE,10599
44
44
  rowan/workflows/protein_binder_design.py,sha256=ee3qYGzTzQsca9otnRz9Qjwj1X66LTCKqtTQ5EOzBHk,9181
45
45
  rowan/workflows/protein_cofolding.py,sha256=s4bLxlix4kAO_NzS75tc2wiEYqUxpFofxziUnxI2iUY,17422
46
- rowan/workflows/protein_md.py,sha256=M4lbfEEvyxmhBWfz_Hf3whmNIYuHe3Q3HZzDcq-jYII,12264
46
+ rowan/workflows/protein_md.py,sha256=iDeKW0ONY3ZPKPsjmZVQhbFQbo0vmOp5M8ko2Hfc16U,12277
47
47
  rowan/workflows/protein_preparation.py,sha256=8C04rhR4AiGiYJWZ8V06O4kpV443tGihcTk8rnNgscE,5325
48
48
  rowan/workflows/rbfe_graph.py,sha256=DBNxtmgw7BNSwOXFLpHDxJtfpheTpDPs8U3SYB2MXdE,8070
49
49
  rowan/workflows/redox_potential.py,sha256=0AV2nKTngEFw7VDDpDQvdeBo5u03Aklc2ak4bDWxUz0,5366
@@ -54,7 +54,7 @@ rowan/workflows/solvent_dependent_conformers.py,sha256=1dYf8UBVMRFELdwHzv3MI0pe1
54
54
  rowan/workflows/spin_states.py,sha256=C3hJEY4hccE1fCW4UjI4nIqGZLw9l2C2VKWCLiopSlY,9044
55
55
  rowan/workflows/strain.py,sha256=hq0dOlxnN72V4Sohr3qNFbOrjGmV01tc5zcF0HrL2-Y,6372
56
56
  rowan/workflows/tautomer_search.py,sha256=o5iFXHfcb6DvvWH7itA05hvWIrzxrc3a_9IDikYftiM,6351
57
- rowan_python-3.2.1.dist-info/METADATA,sha256=g0STX2NMLAvsvtvLRpJ8gaR6qBV-9SckC_SQzSaJzE0,3934
58
- rowan_python-3.2.1.dist-info/WHEEL,sha256=W3fkpkm7-wf9vBI5Z-7s0eWkeM-spu78I8Neb98DeEg,87
59
- rowan_python-3.2.1.dist-info/licenses/LICENSE,sha256=i05z7xEhyrg6f8j0lR3XYjShnF-MJGFQ-DnpsZ8yiVI,1084
60
- rowan_python-3.2.1.dist-info/RECORD,,
57
+ rowan_python-3.2.2.dist-info/METADATA,sha256=xezscvm6Crm8AmqvJ0fXrjTPLcstG5WYq20pkIypqa8,3934
58
+ rowan_python-3.2.2.dist-info/WHEEL,sha256=W3fkpkm7-wf9vBI5Z-7s0eWkeM-spu78I8Neb98DeEg,87
59
+ rowan_python-3.2.2.dist-info/licenses/LICENSE,sha256=i05z7xEhyrg6f8j0lR3XYjShnF-MJGFQ-DnpsZ8yiVI,1084
60
+ rowan_python-3.2.2.dist-info/RECORD,,