rowan-python 3.0.1__tar.gz → 3.0.4__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.
Files changed (126) hide show
  1. {rowan_python-3.0.1 → rowan_python-3.0.4}/PKG-INFO +1 -1
  2. {rowan_python-3.0.1 → rowan_python-3.0.4}/docs/index.md +1 -0
  3. rowan_python-3.0.4/examples/descriptors.py +25 -0
  4. rowan_python-3.0.4/examples/estimate_workflow.py +33 -0
  5. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/webhook.py +3 -1
  6. {rowan_python-3.0.1 → rowan_python-3.0.4}/pixi.lock +183 -194
  7. {rowan_python-3.0.1 → rowan_python-3.0.4}/pyproject.toml +1 -1
  8. rowan_python-3.0.4/rowan/rowan_rdkit/__init__.py +29 -0
  9. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/rowan_rdkit/chem_utils.py +9 -9
  10. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/user.py +1 -1
  11. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/__init__.py +1 -0
  12. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/admet.py +3 -0
  13. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/analogue_docking.py +3 -0
  14. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/base.py +66 -0
  15. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/basic_calculation.py +3 -0
  16. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/batch_docking.py +3 -0
  17. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/bde.py +3 -0
  18. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/conformer_search.py +3 -0
  19. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/descriptors.py +22 -6
  20. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/docking.py +3 -0
  21. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/double_ended_ts_search.py +3 -0
  22. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/electronic_properties.py +3 -0
  23. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/fukui.py +3 -0
  24. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/hydrogen_bond_donor_acceptor_strength.py +3 -0
  25. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/interaction_energy_decomposition.py +3 -0
  26. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/ion_mobility.py +3 -0
  27. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/irc.py +3 -0
  28. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/macropka.py +3 -0
  29. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/membrane_permeability.py +3 -0
  30. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/msa.py +3 -0
  31. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/multistage_optimization.py +3 -0
  32. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/nmr.py +3 -0
  33. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/pka.py +3 -0
  34. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/pose_analysis_md.py +3 -0
  35. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/protein_binder_design.py +3 -0
  36. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/protein_cofolding.py +3 -0
  37. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/protein_md.py +3 -0
  38. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/rbfe_graph.py +3 -0
  39. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/redox_potential.py +3 -0
  40. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/relative_binding_free_energy_perturbation.py +3 -0
  41. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/scan.py +3 -0
  42. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/solubility.py +3 -0
  43. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/solvent_dependent_conformers.py +3 -0
  44. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/spin_states.py +3 -0
  45. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/strain.py +3 -0
  46. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/tautomer_search.py +3 -0
  47. rowan_python-3.0.1/rowan/rowan_rdkit/__init__.py +0 -14
  48. {rowan_python-3.0.1 → rowan_python-3.0.4}/.envrc +0 -0
  49. {rowan_python-3.0.1 → rowan_python-3.0.4}/.github/workflows/build-and-deploy-docs.yml +0 -0
  50. {rowan_python-3.0.1 → rowan_python-3.0.4}/.github/workflows/python-publish.yml +0 -0
  51. {rowan_python-3.0.1 → rowan_python-3.0.4}/.github/workflows/test.yml +0 -0
  52. {rowan_python-3.0.1 → rowan_python-3.0.4}/.gitignore +0 -0
  53. {rowan_python-3.0.1 → rowan_python-3.0.4}/.pre-commit-config.yaml +0 -0
  54. {rowan_python-3.0.1 → rowan_python-3.0.4}/LICENSE +0 -0
  55. {rowan_python-3.0.1 → rowan_python-3.0.4}/README.md +0 -0
  56. {rowan_python-3.0.1 → rowan_python-3.0.4}/docs/images/deciduous-tree-favicon.png +0 -0
  57. {rowan_python-3.0.1 → rowan_python-3.0.4}/docs/rowan_rdkit.md +0 -0
  58. {rowan_python-3.0.1 → rowan_python-3.0.4}/docs/stylesheets/colors.css +0 -0
  59. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/PROTAC_solubility.py +0 -0
  60. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/admet.py +0 -0
  61. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/analogue_docking.py +0 -0
  62. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/aqueous_solubility.py +0 -0
  63. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/basic_calculation.py +0 -0
  64. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/basic_calculation_from_json.py +0 -0
  65. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/basic_calculation_with_constraint.py +0 -0
  66. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/basic_calculation_with_solvent.py +0 -0
  67. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/batch_docking.py +0 -0
  68. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/bde.py +0 -0
  69. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/boltz_paired_msa.py +0 -0
  70. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/boltz_single_msa.py +0 -0
  71. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/chai_paired_msa.py +0 -0
  72. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/chai_single_msa.py +0 -0
  73. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/cofolding_screen.py +0 -0
  74. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/colabfold_paired_msa.py +0 -0
  75. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/colabfold_single_msa.py +0 -0
  76. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/conformer_dependent_redox.py +0 -0
  77. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/conformers.py +0 -0
  78. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/data/1iep_receptorH.pdb +0 -0
  79. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/data/citalopram_1iep.xyz +0 -0
  80. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/data/tyk2_ligands.sdf +0 -0
  81. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/data/tyk2_structure.pdb +0 -0
  82. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/data/workflow_example.json +0 -0
  83. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/dcd_download.py +0 -0
  84. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/docking_screen.py +0 -0
  85. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/double_ended_ts_search.py +0 -0
  86. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/electronic_properties.py +0 -0
  87. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/fukui_index.py +0 -0
  88. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/hydrogen_bond_basicity.py +0 -0
  89. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/interaction_energy_decomposition.py +0 -0
  90. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/ion_mobility.py +0 -0
  91. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/irc.py +0 -0
  92. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/macropka.py +0 -0
  93. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/membrane_permeability.py +0 -0
  94. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/multistage_optimization.py +0 -0
  95. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/nmr.py +0 -0
  96. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/optimization.py +0 -0
  97. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/pdb_download.py +0 -0
  98. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/phenol_pka.py +0 -0
  99. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/pka.py +0 -0
  100. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/pose_analysis_md.py +0 -0
  101. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/protein_binder_design.py +0 -0
  102. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/protein_cofolding.py +0 -0
  103. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/protein_md.py +0 -0
  104. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/rbfe_graph.py +0 -0
  105. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/redox_potential.py +0 -0
  106. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/relative_binding_free_energy_perturbation.py +0 -0
  107. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/retrieve_workflow.py +0 -0
  108. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/scan.py +0 -0
  109. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/solvent_dependent_conformers.py +0 -0
  110. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/spin_states.py +0 -0
  111. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/strain.py +0 -0
  112. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/tautomer.py +0 -0
  113. {rowan_python-3.0.1 → rowan_python-3.0.4}/examples/template.py +0 -0
  114. {rowan_python-3.0.1 → rowan_python-3.0.4}/mkdocs.yml +0 -0
  115. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/__init__.py +0 -0
  116. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/calculation.py +0 -0
  117. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/config.py +0 -0
  118. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/constants.py +0 -0
  119. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/folder.py +0 -0
  120. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/molecule.py +0 -0
  121. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/project.py +0 -0
  122. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/protein.py +0 -0
  123. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/py.typed +0 -0
  124. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/types.py +0 -0
  125. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/utils.py +0 -0
  126. {rowan_python-3.0.1 → rowan_python-3.0.4}/rowan/workflows/constants.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rowan-python
3
- Version: 3.0.1
3
+ Version: 3.0.4
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,6 +12,7 @@
12
12
  - Workflow
13
13
  - WorkflowResult
14
14
  - WorkflowError
15
+ - DispatchInfo
15
16
  - Message
16
17
  - Solvent
17
18
  - Mode
@@ -0,0 +1,25 @@
1
+ """
2
+ Calculate molecular descriptors using the Rowan API.
3
+
4
+ Computes molecular descriptors including COSMO descriptors (surface area,
5
+ screening charge, dielectric energy, polar surface area) in water by default.
6
+
7
+ See documentation at: https://docs.rowansci.com/science/workflows/descriptors
8
+ """
9
+
10
+ import rowan
11
+
12
+ # Set your API key or use the ROWAN_API_KEY environment variable
13
+ # rowan.api_key = "rowan-sk..."
14
+ folder = rowan.get_folder("examples")
15
+
16
+ workflow = rowan.submit_descriptors_workflow(
17
+ initial_molecule=rowan.Molecule.from_smiles("CC(=O)Oc1ccccc1C(=O)O"),
18
+ name="Aspirin Descriptors",
19
+ folder=folder,
20
+ )
21
+
22
+ print(f"View workflow privately at: https://labs.rowansci.com/descriptors/{workflow.uuid}")
23
+ result = workflow.result()
24
+ print(result)
25
+ # e.g. <DescriptorsResult n=1686>
@@ -0,0 +1,33 @@
1
+ """Compare dispatch info for different property predictions to decide which to submit."""
2
+
3
+ import rowan
4
+
5
+ folder = rowan.get_folder("examples")
6
+ smiles = "c1ccc(CC(=O)O)cc1" # phenylacetic acid
7
+
8
+ # Create drafts, nothing runs yet
9
+ admet_draft = rowan.submit_admet_workflow(
10
+ initial_smiles=smiles, name="Estimate Workflow - ADMET", folder=folder, is_draft=True
11
+ )
12
+ solubility_draft = rowan.submit_solubility_workflow(
13
+ initial_smiles=smiles, name="Estimate Workflow - Solubility", folder=folder, is_draft=True
14
+ )
15
+ membrane_draft = rowan.submit_membrane_permeability_workflow(
16
+ initial_molecule=smiles,
17
+ name="Estimate Workflow - Membrane Permeability",
18
+ folder=folder,
19
+ is_draft=True,
20
+ )
21
+
22
+ # Check dispatch info for each
23
+ print("ADMET:", admet_draft.dispatch_info())
24
+ print("Solubility:", solubility_draft.dispatch_info())
25
+ print("Membrane:", membrane_draft.dispatch_info())
26
+
27
+ # Pick ADMET, clean up the rest
28
+ solubility_draft.delete()
29
+ membrane_draft.delete()
30
+ admet_draft.submit_draft()
31
+
32
+ result = admet_draft.result()
33
+ print(result)
@@ -10,11 +10,13 @@ secret = rowan.create_webhook_secret()
10
10
  # Rotate to a new secret (invalidates the old one)
11
11
  # secret = rowan.rotate_webhook_secret()
12
12
 
13
+ folder = rowan.get_folder("examples")
13
14
  oseltamivir = "C1CCOC(=O)C1=C[C@@H](OC(CC)CC)[C@H](NC(C)=O)[C@@H]([NH3+])C1CCC1"
14
15
 
15
16
  workflow = rowan.submit_admet_workflow(
16
17
  initial_smiles=oseltamivir,
17
- name="Oseltamivir ADMET (webhook)",
18
+ name="Webhook - ADMET",
19
+ folder=folder,
18
20
  webhook_url="https://your-server.com/webhook",
19
21
  )
20
22