rowan-python 2.1.12__tar.gz → 2.1.14__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.
- rowan_python-2.1.14/.envrc +4 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/.github/workflows/build-and-deploy-docs.yml +4 -3
- {rowan_python-2.1.12 → rowan_python-2.1.14}/.github/workflows/test.yml +2 -2
- {rowan_python-2.1.12 → rowan_python-2.1.14}/PKG-INFO +2 -2
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/PROTAC_solubility.py +3 -0
- rowan_python-2.1.14/examples/admet.py +15 -0
- rowan_python-2.1.14/examples/analogue_docking.py +27 -0
- rowan_python-2.1.14/examples/aqueous_solubility.py +18 -0
- rowan_python-2.1.14/examples/basic_calculation.py +19 -0
- rowan_python-2.1.14/examples/basic_calculation_from_json.py +20 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/basic_calculation_with_constraint.py +6 -6
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/basic_calculation_with_solvent.py +11 -11
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/batch_docking.py +4 -4
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/bde.py +6 -7
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/boltz_paired_msa.py +2 -1
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/boltz_single_msa.py +2 -1
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/chai_paired_msa.py +3 -1
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/chai_single_msa.py +3 -1
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/cofolding_screen.py +3 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/colabfold_paired_msa.py +2 -1
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/colabfold_single_msa.py +2 -1
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/conformer_dependent_redox.py +8 -7
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/conformers.py +6 -4
- rowan_python-2.1.14/examples/data/1iep_receptorH.pdb +4414 -0
- rowan_python-2.1.14/examples/data/citalopram_1iep.xyz +47 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/data/workflow_example.json +1 -1
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/dcd_download.py +2 -1
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/docking_screen.py +3 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/double_ended_ts_search.py +12 -9
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/fukui_index.py +4 -2
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/ion_mobility.py +4 -4
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/irc.py +6 -3
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/macropka.py +4 -4
- rowan_python-2.1.14/examples/membrane_permeability.py +28 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/multistage_opt.py +4 -3
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/nmr.py +4 -4
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/optimization.py +6 -3
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/pdb_download.py +2 -1
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/phenol_pka.py +4 -1
- rowan_python-2.1.14/examples/pka.py +40 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/pose_analysis_md.py +9 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/protein_cofolding.py +7 -5
- rowan_python-2.1.14/examples/protein_md.py +21 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/redox_potential.py +6 -3
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/scan.py +6 -4
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/strain.py +4 -3
- {rowan_python-2.1.12 → rowan_python-2.1.14}/examples/tautomer.py +4 -3
- rowan_python-2.1.14/examples/template.py +14 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/pixi.lock +449 -465
- {rowan_python-2.1.12 → rowan_python-2.1.14}/pyproject.toml +3 -3
- {rowan_python-2.1.12 → rowan_python-2.1.14}/rowan/workflow.py +266 -56
- rowan_python-2.1.12/.envrc +0 -7
- rowan_python-2.1.12/examples/admet.py +0 -12
- rowan_python-2.1.12/examples/aqueous_solubility.py +0 -17
- rowan_python-2.1.12/examples/basic_calculation.py +0 -21
- rowan_python-2.1.12/examples/basic_calculation_from_json.py +0 -21
- rowan_python-2.1.12/examples/membrane_permeability.py +0 -12
- rowan_python-2.1.12/examples/pka.py +0 -31
- {rowan_python-2.1.12 → rowan_python-2.1.14}/.github/workflows/python-publish.yml +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/.gitignore +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/.pre-commit-config.yaml +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/LICENSE +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/README.md +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/docs/images/deciduous-tree-favicon.png +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/docs/index.md +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/docs/rowan_rdkit.md +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/docs/stylesheets/colors.css +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/mkdocs.yml +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/rowan/__init__.py +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/rowan/constants.py +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/rowan/folder.py +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/rowan/project.py +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/rowan/protein.py +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/rowan/py.typed +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/rowan/rowan_rdkit/__init__.py +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/rowan/rowan_rdkit/chem_utils.py +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/rowan/user.py +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/rowan/utils.py +0 -0
- {rowan_python-2.1.12 → rowan_python-2.1.14}/tests/test_macropka_loop.py +0 -0
|
@@ -3,6 +3,7 @@ name: Build & Deploy Rowan Python Docs
|
|
|
3
3
|
on:
|
|
4
4
|
release:
|
|
5
5
|
types: [published]
|
|
6
|
+
workflow_dispatch:
|
|
6
7
|
|
|
7
8
|
permissions:
|
|
8
9
|
contents: read
|
|
@@ -16,8 +17,8 @@ jobs:
|
|
|
16
17
|
uses: actions/checkout@v4
|
|
17
18
|
with:
|
|
18
19
|
fetch-depth: 0
|
|
19
|
-
ref:
|
|
20
|
-
|
|
20
|
+
ref: master
|
|
21
|
+
|
|
21
22
|
- name: Install Pixi
|
|
22
23
|
uses: prefix-dev/setup-pixi@v0.9.1
|
|
23
24
|
with:
|
|
@@ -39,4 +40,4 @@ jobs:
|
|
|
39
40
|
- name: Deploy with rsync
|
|
40
41
|
run: |
|
|
41
42
|
rsync -avz --delete ./ \
|
|
42
|
-
${{ secrets.DOCS_USERNAME }}@${{ secrets.DOCS_IP }}
|
|
43
|
+
${{ secrets.DOCS_USERNAME }}@${{ secrets.DOCS_IP }}:${{ secrets.DOCS_TARGET_DIR }}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rowan-python
|
|
3
|
-
Version: 2.1.
|
|
3
|
+
Version: 2.1.14
|
|
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
|
|
@@ -11,7 +11,7 @@ Requires-Dist: httpx
|
|
|
11
11
|
Requires-Dist: nest-asyncio
|
|
12
12
|
Requires-Dist: rdkit
|
|
13
13
|
Requires-Dist: setuptools
|
|
14
|
-
Requires-Dist: stjames>=0.0.
|
|
14
|
+
Requires-Dist: stjames>=0.0.144
|
|
15
15
|
Description-Content-Type: text/markdown
|
|
16
16
|
|
|
17
17
|
# Rowan Python Library
|
|
@@ -2,6 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
import rowan
|
|
4
4
|
|
|
5
|
+
# Set ROWAN_API_KEY environment variable to your API key or set rowan.api_key directly
|
|
6
|
+
# rowan.api_key = "rowan-sk..."
|
|
7
|
+
|
|
5
8
|
PROTACs = {
|
|
6
9
|
4564: "CC1=C(C2=CC=C(CNC(=O)[C@@H]3C[C@@H](O)CN3C(=O)[C@@H](NC(=O)CCCCCCCCCN3C=C(CCCOC(=O)NCC4=CC=C(C(=O)NC5=CC=CC=C5N)C=C4)N=N3)C(C)(C)C)C=C2)SC=N1",
|
|
7
10
|
2438: "CC(=O)N[C@H](C(=O)N1C[C@H](O)C[C@H]1C(=O)NCC1=CC=C(C2=C(C)N=CS2)C=C1OCCCCCCCCCCCC(=O)NC1=CC=C(C(=O)NC2=CC=CC=C2N)C=C1)C(C)(C)C",
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import rowan
|
|
2
|
+
|
|
3
|
+
# Set ROWAN_API_KEY environment variable to your API key or set rowan.api_key directly
|
|
4
|
+
# rowan.api_key = "rowan-sk..."
|
|
5
|
+
|
|
6
|
+
oseltamivir_SMILES = "C1CCOC(=O)C1=C[C@@H](OC(CC)CC)[C@H](NC(C)=O)[C@@H]([NH3+])C1CCC1"
|
|
7
|
+
|
|
8
|
+
workflow = rowan.submit_admet_workflow(
|
|
9
|
+
initial_smiles=oseltamivir_SMILES,
|
|
10
|
+
name="Oseltamivir ADMET",
|
|
11
|
+
)
|
|
12
|
+
|
|
13
|
+
print(f"View workflow privately at: https://labs.rowansci.com/solubility/{workflow.uuid}")
|
|
14
|
+
workflow.wait_for_result().fetch_latest(in_place=True)
|
|
15
|
+
print(workflow)
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
from pathlib import Path
|
|
2
|
+
|
|
3
|
+
import stjames
|
|
4
|
+
|
|
5
|
+
import rowan
|
|
6
|
+
|
|
7
|
+
citalopram_analogues = [
|
|
8
|
+
"CN(C)CCC[C@@]1(c2ccccc2)OCc2cc(C#N)ccc21",
|
|
9
|
+
"CN(C)CCC[C@@]1(c2ccc(F)cc2)OCc2c(CC)c(C#N)ccc21",
|
|
10
|
+
"CN(C)CCC[C@@]1(c2ccc(CCC)cc2)OCc2cc(C#N)ccc21",
|
|
11
|
+
]
|
|
12
|
+
|
|
13
|
+
bound_pose = stjames.Molecule.from_file("examples/data/citalopram_1iep.xyz")
|
|
14
|
+
|
|
15
|
+
protein = rowan.upload_protein("1IEP receptor", Path("examples/data/1iep_receptorH.pdb"))
|
|
16
|
+
|
|
17
|
+
workflow = rowan.submit_analogue_docking_workflow(
|
|
18
|
+
analogues=citalopram_analogues,
|
|
19
|
+
protein=protein,
|
|
20
|
+
initial_molecule=bound_pose,
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
print(f"View MD workflow privately at: https://labs.rowansci.com/analogue-docking/{workflow.uuid}")
|
|
24
|
+
workflow.wait_for_result().fetch_latest(in_place=True)
|
|
25
|
+
|
|
26
|
+
# print ligand RMSD by frame
|
|
27
|
+
print(workflow.data)
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import rowan
|
|
2
|
+
|
|
3
|
+
# Set ROWAN_API_KEY environment variable to your API key or set rowan.api_key directly
|
|
4
|
+
# rowan.api_key = "rowan-sk..."
|
|
5
|
+
|
|
6
|
+
oseltamivir_SMILES = "C1CCOC(=O)C1=C[C@@H](OC(CC)CC)[C@H](NC(C)=O)[C@@H]([NH3+])C1CCC1"
|
|
7
|
+
|
|
8
|
+
workflow = rowan.submit_solubility_workflow(
|
|
9
|
+
initial_smiles=oseltamivir_SMILES,
|
|
10
|
+
solubility_method="kingfisher",
|
|
11
|
+
solvents=["O"],
|
|
12
|
+
temperatures=[298.15],
|
|
13
|
+
name="Oseltamivir aqueous solubility",
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
print(f"View workflow privately at: https://labs.rowansci.com/workflow/{workflow.uuid}")
|
|
17
|
+
workflow.wait_for_result().fetch_latest(in_place=True)
|
|
18
|
+
print(workflow) # Solubility in log(mol/L), temperature in kelvin
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
from stjames import Method, Molecule
|
|
2
|
+
|
|
3
|
+
import rowan
|
|
4
|
+
|
|
5
|
+
# Set ROWAN_API_KEY environment variable to your API key or set rowan.api_key directly
|
|
6
|
+
# rowan.api_key = "rowan-sk..."
|
|
7
|
+
|
|
8
|
+
workflow = rowan.submit_basic_calculation_workflow(
|
|
9
|
+
initial_molecule=Molecule.from_smiles("CC(=C)C=C"),
|
|
10
|
+
method=Method.OMOL25_CONSERVING_S,
|
|
11
|
+
tasks=["energy"],
|
|
12
|
+
mode="auto",
|
|
13
|
+
engine="omol25",
|
|
14
|
+
name="Isoprene Energy",
|
|
15
|
+
)
|
|
16
|
+
|
|
17
|
+
print(f"View workflow privately at: https://labs.rowansci.com/calculation/{workflow.uuid}")
|
|
18
|
+
workflow.wait_for_result().fetch_latest(in_place=True)
|
|
19
|
+
print(workflow)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import json
|
|
2
|
+
|
|
3
|
+
import rowan
|
|
4
|
+
|
|
5
|
+
# Set ROWAN_API_KEY environment variable to your API key or set rowan.api_key directly
|
|
6
|
+
# rowan.api_key = "rowan-sk..."
|
|
7
|
+
|
|
8
|
+
with open("examples/data/workflow_example.json") as f:
|
|
9
|
+
workflow_data = json.load(f)
|
|
10
|
+
|
|
11
|
+
workflow = rowan.submit_workflow(
|
|
12
|
+
workflow_type="basic_calculation",
|
|
13
|
+
workflow_data=workflow_data,
|
|
14
|
+
name="basic calculation from json",
|
|
15
|
+
initial_molecule=workflow_data["initial_molecule"],
|
|
16
|
+
)
|
|
17
|
+
|
|
18
|
+
print(f"View workflow privately at: https://labs.rowansci.com/calculation/{workflow.uuid}")
|
|
19
|
+
workflow.wait_for_result().fetch_latest(in_place=True)
|
|
20
|
+
print(workflow)
|
|
@@ -2,9 +2,10 @@ from stjames import Molecule
|
|
|
2
2
|
|
|
3
3
|
import rowan
|
|
4
4
|
|
|
5
|
-
# rowan.api_key
|
|
5
|
+
# Set ROWAN_API_KEY environment variable to your API key or set rowan.api_key directly
|
|
6
|
+
# rowan.api_key = "rowan-sk..."
|
|
6
7
|
|
|
7
|
-
|
|
8
|
+
workflow = rowan.submit_workflow(
|
|
8
9
|
initial_molecule=Molecule.from_smiles("CCCC"),
|
|
9
10
|
workflow_type="basic_calculation",
|
|
10
11
|
name="Constrained Butane",
|
|
@@ -26,7 +27,6 @@ result = rowan.submit_workflow(
|
|
|
26
27
|
},
|
|
27
28
|
)
|
|
28
29
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
print(result)
|
|
30
|
+
print(f"View workflow privately at: https://labs.rowansci.com/calculation/{workflow.uuid}")
|
|
31
|
+
workflow.wait_for_result().fetch_latest(in_place=True)
|
|
32
|
+
print(workflow)
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
from stjames import Molecule, Method
|
|
1
|
+
from stjames import Method, Molecule
|
|
3
2
|
|
|
4
3
|
import rowan
|
|
5
4
|
|
|
6
|
-
# rowan.api_key
|
|
5
|
+
# Set ROWAN_API_KEY environment variable to your API key or set rowan.api_key directly
|
|
6
|
+
# rowan.api_key = "rowan-sk..."
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
def compute_energy_with_solvent_correction(molecule: Molecule, method: Method, name: str) -> float:
|
|
10
|
-
|
|
10
|
+
opt_workflow = rowan.submit_workflow(
|
|
11
11
|
initial_molecule=molecule,
|
|
12
12
|
workflow_type="basic_calculation",
|
|
13
13
|
name=f"{name} {method} optimization",
|
|
@@ -16,13 +16,13 @@ def compute_energy_with_solvent_correction(molecule: Molecule, method: Method, n
|
|
|
16
16
|
},
|
|
17
17
|
)
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
print(f"View workflow privately at: https://labs.rowansci.com/calculation/{opt_workflow.uuid}")
|
|
20
|
+
opt_workflow.wait_for_result().fetch_latest(in_place=True)
|
|
21
21
|
|
|
22
|
-
calculation_uuid =
|
|
22
|
+
calculation_uuid = opt_workflow.data["calculation_uuid"]
|
|
23
23
|
optimized_molecule = rowan.retrieve_calculation_molecules(calculation_uuid)[-1]
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
sp_workflow = rowan.submit_workflow(
|
|
26
26
|
initial_molecule=optimized_molecule,
|
|
27
27
|
workflow_type="basic_calculation",
|
|
28
28
|
name=f"{name} {method} single point",
|
|
@@ -35,10 +35,10 @@ def compute_energy_with_solvent_correction(molecule: Molecule, method: Method, n
|
|
|
35
35
|
},
|
|
36
36
|
)
|
|
37
37
|
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
print(f"View workflow privately at: https://labs.rowansci.com/calculation/{sp_workflow.uuid}")
|
|
39
|
+
sp_workflow.wait_for_result().fetch_latest(in_place=True)
|
|
40
40
|
|
|
41
|
-
calculation_uuid =
|
|
41
|
+
calculation_uuid = sp_workflow.data["calculation_uuid"]
|
|
42
42
|
final_molecule = rowan.retrieve_calculation_molecules(calculation_uuid)[0]
|
|
43
43
|
return final_molecule["energy"]
|
|
44
44
|
|
|
@@ -2,6 +2,9 @@ import time
|
|
|
2
2
|
|
|
3
3
|
import rowan
|
|
4
4
|
|
|
5
|
+
# Set ROWAN_API_KEY environment variable to your API key or set rowan.api_key directly
|
|
6
|
+
# rowan.api_key = "rowan-sk..."
|
|
7
|
+
|
|
5
8
|
ligands = [
|
|
6
9
|
"CCC(C)(C)NC1=NCC2(CCC(=O)C2C)N1",
|
|
7
10
|
"CCC(C)CN=C1NCC2(CCCOC2)CN1",
|
|
@@ -105,9 +108,6 @@ ligands = [
|
|
|
105
108
|
"CC(C)C(CN)C1NCC2=C(SC=C2C)C1C",
|
|
106
109
|
]
|
|
107
110
|
|
|
108
|
-
workflows = []
|
|
109
|
-
results = {}
|
|
110
|
-
|
|
111
111
|
protein = rowan.create_protein_from_pdb_id(
|
|
112
112
|
"CDK2", "1HCK", project_uuid=rowan.default_project().uuid
|
|
113
113
|
)
|
|
@@ -125,6 +125,6 @@ workflow = rowan.submit_batch_docking_workflow(
|
|
|
125
125
|
)
|
|
126
126
|
|
|
127
127
|
|
|
128
|
+
print(f"View workflow privately at: https://labs.rowansci.com/batch-docking/{workflow.uuid}")
|
|
128
129
|
workflow.wait_for_result().fetch_latest(in_place=True)
|
|
129
|
-
|
|
130
130
|
print(workflow.data["best_scores"])
|
|
@@ -18,10 +18,10 @@ from stjames import Molecule
|
|
|
18
18
|
|
|
19
19
|
import rowan
|
|
20
20
|
|
|
21
|
-
# rowan.api_key
|
|
21
|
+
# Set ROWAN_API_KEY environment variable to your API key or set rowan.api_key directly
|
|
22
|
+
# rowan.api_key = "rowan-sk..."
|
|
22
23
|
|
|
23
|
-
|
|
24
|
-
result = rowan.submit_workflow(
|
|
24
|
+
workflow = rowan.submit_workflow(
|
|
25
25
|
initial_molecule=Molecule.from_smiles("CCCC"),
|
|
26
26
|
workflow_type="bde",
|
|
27
27
|
name="Butane BDE",
|
|
@@ -31,7 +31,6 @@ result = rowan.submit_workflow(
|
|
|
31
31
|
},
|
|
32
32
|
)
|
|
33
33
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
print(result)
|
|
34
|
+
print(f"View workflow privately at: https://labs.rowansci.com/bde/{workflow.uuid}")
|
|
35
|
+
workflow.wait_for_result().fetch_latest(in_place=True)
|
|
36
|
+
print(workflow)
|
|
@@ -6,7 +6,9 @@ from stjames import MSAFormat
|
|
|
6
6
|
|
|
7
7
|
import rowan
|
|
8
8
|
|
|
9
|
-
# rowan.api_key
|
|
9
|
+
# Set ROWAN_API_KEY environment variable to your API key or set rowan.api_key directly
|
|
10
|
+
# rowan.api_key = "rowan-sk..."
|
|
11
|
+
|
|
10
12
|
example_fasta = (
|
|
11
13
|
">protein|name=example-protein\n"
|
|
12
14
|
"VLSPADKTNVKAAWGKVGAHAGEYGAEALERMFLSFPTTKTYFPHFDLSHGSAQVKGHGKKVADALTNAVAHVDDMPNALSALSDLHAHKLRVDPVNFKLLSHCLLVTLAAHLPAEFTPAVHASLDKFLASVSTVLTSKYR\n"
|
|
@@ -6,7 +6,9 @@ from stjames import MSAFormat
|
|
|
6
6
|
|
|
7
7
|
import rowan
|
|
8
8
|
|
|
9
|
-
# rowan.api_key
|
|
9
|
+
# Set ROWAN_API_KEY environment variable to your API key or set rowan.api_key directly
|
|
10
|
+
# rowan.api_key = "rowan-sk..."
|
|
11
|
+
|
|
10
12
|
example_fasta = (
|
|
11
13
|
">protein|name=example-protein\n"
|
|
12
14
|
"HPETLVKVKDAEDQLGARVGYIELDLNSGKILESFRPEERFPMMSTFKVLLCGAVLSRIDAGQEQLGRRIHYSQNDLVEYSPVTEKHLTDGMTVRELCSAAITMSDNTAANLLLTTIGGPKELTAFLHNMGDHVTRLDRWEPELNEAIPNDERDTTMPVAMATTLRKLLTGELLTLASRQQLIDWMEADKVAGPLLRSALPAGWFIADKSGAGERGSRGIIAALGPDGKPSRIVVIYTTGSQATMDERNRQIAEIGASLIKHW\n"
|
|
@@ -3,20 +3,21 @@ from stjames import Molecule
|
|
|
3
3
|
|
|
4
4
|
import rowan
|
|
5
5
|
|
|
6
|
-
# rowan.api_key
|
|
6
|
+
# Set ROWAN_API_KEY environment variable to your API key or set rowan.api_key directly
|
|
7
|
+
# rowan.api_key = "rowan-sk..."
|
|
7
8
|
|
|
8
|
-
conformer_dependent_redox_folder = rowan.create_folder(name="Conformer dependent redox
|
|
9
|
+
conformer_dependent_redox_folder = rowan.create_folder(name="Conformer dependent redox workflows")
|
|
9
10
|
|
|
10
|
-
|
|
11
|
+
workflow = rowan.submit_conformer_search_workflow(
|
|
11
12
|
initial_molecule=Molecule.from_smiles("CC(C)Cc1ccc(C(=O)c2ccc(O)cc2)cc1"),
|
|
12
13
|
folder_uuid=conformer_dependent_redox_folder.uuid,
|
|
13
14
|
)
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
print(f"View workflow privately at: https://labs.rowansci.com/workflow/{workflow.uuid}")
|
|
16
|
+
workflow.wait_for_result().fetch_latest(in_place=True)
|
|
16
17
|
|
|
17
18
|
redox_potential_workflows = []
|
|
18
19
|
|
|
19
|
-
for conformer in
|
|
20
|
+
for conformer in workflow.data["conformer_uuids"][:10]:
|
|
20
21
|
uuid = conformer[0]
|
|
21
22
|
molecule = rowan.retrieve_calculation_molecules(uuid)[0]
|
|
22
23
|
stjames_molecule = stjames.Molecule.model_validate(molecule)
|
|
@@ -30,7 +31,7 @@ for conformer in result.data["conformer_uuids"][:10]:
|
|
|
30
31
|
)
|
|
31
32
|
|
|
32
33
|
for workflow in redox_potential_workflows:
|
|
33
|
-
workflow.
|
|
34
|
+
workflow.wait_for_workflow()
|
|
34
35
|
workflow.fetch_latest(in_place=True)
|
|
35
36
|
|
|
36
37
|
|
|
@@ -21,11 +21,13 @@ from stjames import Molecule
|
|
|
21
21
|
|
|
22
22
|
import rowan
|
|
23
23
|
|
|
24
|
-
# rowan.api_key
|
|
24
|
+
# Set ROWAN_API_KEY environment variable to your API key or set rowan.api_key directly
|
|
25
|
+
# rowan.api_key = "rowan-sk..."
|
|
25
26
|
|
|
26
|
-
|
|
27
|
-
result = rowan.submit_conformer_search_workflow(
|
|
27
|
+
workflow = rowan.submit_conformer_search_workflow(
|
|
28
28
|
initial_molecule=Molecule.from_smiles("CCOCC"),
|
|
29
29
|
)
|
|
30
30
|
|
|
31
|
-
print(
|
|
31
|
+
print(f"View workflow privately at: https://labs.rowansci.com/workflow/{workflow.uuid}")
|
|
32
|
+
workflow.wait_for_result().fetch_latest(in_place=True)
|
|
33
|
+
print(workflow)
|