rowan-python 3.1.5__tar.gz → 3.1.6__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-3.1.6/.agents/plugins/marketplace.json +20 -0
- rowan_python-3.1.6/.claude-plugin/marketplace.json +17 -0
- rowan_python-3.1.6/.codex-plugin/plugin.json +37 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/PKG-INFO +2 -2
- rowan_python-3.1.6/examples/covalent_docking.py +48 -0
- rowan_python-3.1.6/examples/covalent_inhibitor_scan.py +35 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/double_ended_ts_search.py +8 -10
- {rowan_python-3.1.5 → rowan_python-3.1.6}/pixi.lock +338 -331
- {rowan_python-3.1.5 → rowan_python-3.1.6}/pyproject.toml +2 -2
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/__init__.py +7 -5
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/__init__.py +5 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/analogue_docking.py +1 -0
- rowan_python-3.1.6/rowan/workflows/covalent_inhibitor_scan.py +129 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/docking.py +44 -16
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/double_ended_ts_search.py +5 -4
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/irc.py +42 -1
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/protein_cofolding.py +3 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/SKILL.md +2 -1
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/analogue_docking.md +5 -1
- rowan_python-3.1.6/skills/computational-chemistry-and-biology/reference/covalent_inhibitor_scan.md +48 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/docking.md +31 -3
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/double_ended_ts_search.md +2 -2
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/irc.md +2 -1
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/protein_cofolding.md +1 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/.envrc +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/.github/workflows/build-and-deploy-docs.yml +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/.github/workflows/publish-skill.yml +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/.github/workflows/python-publish.yml +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/.github/workflows/test.yml +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/.gitignore +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/.pre-commit-config.yaml +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/AGENTS.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/CLAUDE.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/GEMINI.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/LICENSE +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/README.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/docs/images/deciduous-tree-favicon.png +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/docs/index.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/docs/stylesheets/colors.css +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/PROTAC_solubility.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/admet.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/analogue_docking.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/aqueous_solubility.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/basic_calculation.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/basic_calculation_from_json.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/basic_calculation_with_constraint.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/basic_calculation_with_solvent.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/batch_docking.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/bde.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/binding_affinity.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/boltz_paired_msa.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/boltz_single_msa.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/chai_paired_msa.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/chai_single_msa.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/cofolding_screen.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/colabfold_paired_msa.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/colabfold_single_msa.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/conformer_dependent_redox.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/conformers.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/conformers_screen.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/data/1iep_receptorH.pdb +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/data/Al_FCC.xyz +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/data/citalopram_1iep.xyz +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/data/ibuprofen_conformers.sdf +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/data/tyk2_ligands.sdf +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/data/tyk2_structure.pdb +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/data/workflow_example.json +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/dcd_download.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/descriptors.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/docking.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/docking_screen.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/electronic_properties.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/estimate_workflow.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/fukui_index.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/hydrogen_bond_basicity.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/interaction_energy_decomposition.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/ion_mobility.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/irc.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/macropka.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/membrane_permeability.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/multistage_optimization.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/nmr.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/optimization.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/pdb_download.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/periodic_dft.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/phenol_pka.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/pka.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/pocket_detection.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/pose_analysis_md.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/project_scoped_api_key.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/protein_binder_design.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/protein_cofolding.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/protein_cofolding_with_constraints.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/protein_cofolding_with_templates.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/protein_md.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/rbfe_graph.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/rbfe_resubmit.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/redox_potential.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/relative_binding_free_energy_perturbation.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/resubmit_with_perturbations.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/retrieve_workflow.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/scan.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/solvent_dependent_conformers.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/spin_states.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/strain.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/tautomer.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/template.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/examples/webhook.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/mkdocs.yml +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/api_keys.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/calculation.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/config.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/constants.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/folder.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/molecule.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/project.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/protein.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/py.typed +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/types.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/user.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/utils.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/admet.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/base.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/basic_calculation.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/batch_docking.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/bde.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/binding_affinity.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/conformer_search.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/constants.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/descriptors.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/electronic_properties.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/fukui.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/hydrogen_bond_donor_acceptor_strength.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/interaction_energy_decomposition.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/ion_mobility.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/macropka.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/membrane_permeability.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/msa.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/multistage_optimization.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/nmr.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/pka.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/pocket_detection.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/pose_analysis_md.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/protein_binder_design.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/protein_md.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/rbfe_graph.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/redox_potential.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/relative_binding_free_energy_perturbation.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/scan.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/solubility.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/solvent_dependent_conformers.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/spin_states.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/strain.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/rowan/workflows/tautomer_search.py +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/admet.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/basic_calculation.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/batch_docking.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/bde.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/binding_affinity.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/conformer_search.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/descriptors.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/electronic_properties.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/folders_and_projects.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/fukui.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/hydrogen_bond_donor_acceptor_strength.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/interaction_energy_decomposition.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/ion_mobility.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/macropka.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/membrane_permeability.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/msa.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/multistage_optimization.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/nmr.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/pka.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/pocket_detection.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/pose_analysis_md.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/protein_binder_design.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/protein_md.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/protein_prep.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/rbfe_graph.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/redox_potential.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/relative_binding_free_energy_perturbation.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/scan.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/solubility.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/solvent_dependent_conformers.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/spin_states.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/strain.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/tautomer_search.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/reference/webhooks.md +0 -0
- {rowan_python-3.1.5 → rowan_python-3.1.6}/skills/computational-chemistry-and-biology/scripts/check_env.py +0 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "rowan",
|
|
3
|
+
"interface": {
|
|
4
|
+
"displayName": "Rowan"
|
|
5
|
+
},
|
|
6
|
+
"plugins": [
|
|
7
|
+
{
|
|
8
|
+
"name": "computational-chemistry-and-biology",
|
|
9
|
+
"source": {
|
|
10
|
+
"source": "local",
|
|
11
|
+
"path": "./"
|
|
12
|
+
},
|
|
13
|
+
"policy": {
|
|
14
|
+
"installation": "AVAILABLE",
|
|
15
|
+
"authentication": "ON_INSTALL"
|
|
16
|
+
},
|
|
17
|
+
"category": "Science"
|
|
18
|
+
}
|
|
19
|
+
]
|
|
20
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "rowan",
|
|
3
|
+
"owner": {
|
|
4
|
+
"name": "Rowan",
|
|
5
|
+
"email": "eli@rowansci.com"
|
|
6
|
+
},
|
|
7
|
+
"description": "Claude Code plugins for the Rowan computational chemistry platform",
|
|
8
|
+
"plugins": [
|
|
9
|
+
{
|
|
10
|
+
"name": "computational-chemistry-and-biology",
|
|
11
|
+
"source": "./skills/computational-chemistry-and-biology",
|
|
12
|
+
"description": "Run computational chemistry and structural biology calculations on the Rowan platform via the rowan Python package",
|
|
13
|
+
"skills": ["./"],
|
|
14
|
+
"strict": false
|
|
15
|
+
}
|
|
16
|
+
]
|
|
17
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "computational-chemistry-and-biology",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"description": "Run computational chemistry and structural biology calculations on the Rowan platform via the rowan-python package",
|
|
5
|
+
"skills": "./skills/",
|
|
6
|
+
"author": {
|
|
7
|
+
"name": "Rowan",
|
|
8
|
+
"email": "eli@rowansci.com",
|
|
9
|
+
"url": "https://rowansci.com"
|
|
10
|
+
},
|
|
11
|
+
"homepage": "https://rowansci.com",
|
|
12
|
+
"repository": "https://github.com/rowansci/rowan-python",
|
|
13
|
+
"license": "MIT",
|
|
14
|
+
"keywords": [
|
|
15
|
+
"computational chemistry",
|
|
16
|
+
"structural biology",
|
|
17
|
+
"molecular simulation",
|
|
18
|
+
"Rowan"
|
|
19
|
+
],
|
|
20
|
+
"interface": {
|
|
21
|
+
"displayName": "Rowan Computational Chemistry",
|
|
22
|
+
"shortDescription": "Run computational chemistry and structural biology workflows with Rowan.",
|
|
23
|
+
"longDescription": "Use Rowan to choose and run molecular and protein workflows, including quantum chemistry, docking, molecular dynamics, protein structure prediction, and cheminformatics. The bundled skill provides workflow selection guidance, safe defaults, result retrieval patterns, and links to detailed workflow references.",
|
|
24
|
+
"developerName": "Rowan",
|
|
25
|
+
"category": "Science",
|
|
26
|
+
"capabilities": [
|
|
27
|
+
"Read",
|
|
28
|
+
"Compute"
|
|
29
|
+
],
|
|
30
|
+
"websiteURL": "https://rowansci.com",
|
|
31
|
+
"defaultPrompt": [
|
|
32
|
+
"Run a Rowan calculation for this molecule.",
|
|
33
|
+
"Help me choose a Rowan workflow for my chemistry question.",
|
|
34
|
+
"Analyze this protein-ligand system with Rowan."
|
|
35
|
+
]
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rowan-python
|
|
3
|
-
Version: 3.1.
|
|
3
|
+
Version: 3.1.6
|
|
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.228
|
|
15
15
|
Description-Content-Type: text/markdown
|
|
16
16
|
|
|
17
17
|
# Rowan Python Library
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import rowan
|
|
2
|
+
|
|
3
|
+
# Set your API key or use the ROWAN_API_KEY environment variable
|
|
4
|
+
# rowan.api_key = "rowan-sk..."
|
|
5
|
+
folder = rowan.get_folder("examples")
|
|
6
|
+
|
|
7
|
+
# TG2, catalytic Cys277, acrylamide inhibitor (k_inact record P21980-00).
|
|
8
|
+
tg2_inhibitor = rowan.Molecule.from_smiles(
|
|
9
|
+
"C=CC(=O)NCCCC[C@H](NC(=O)Cc1ccc(Cl)c(Cl)c1)C(=O)N1CCN(C(=O)c2cccc3ccccc23)CC1"
|
|
10
|
+
)
|
|
11
|
+
|
|
12
|
+
protein = rowan.create_protein_from_pdb_id("2Q3Z")
|
|
13
|
+
# Chain A is TG2; chain X is a small covalently-bound peptide in the crystal, not
|
|
14
|
+
# part of the protein. `protein.chains` order isn't guaranteed, so select by name.
|
|
15
|
+
protein = protein.select_chains(["A"])
|
|
16
|
+
protein.prepare()
|
|
17
|
+
|
|
18
|
+
# Pocket is [[center_x, center_y, center_z], [size_x, size_y, size_z]] in Å.
|
|
19
|
+
center = [-1.079, -3.081, 18.122]
|
|
20
|
+
size = [22.22, 14.08, 21.74]
|
|
21
|
+
|
|
22
|
+
# 0-based, all-atom (including hydrogens) indices of the reacting atoms.
|
|
23
|
+
# Ligand: acrylamide's terminal =CH2 carbon. Protein: Cys277 SG, found by downloading
|
|
24
|
+
# the prepared structure and locating that atom in file order.
|
|
25
|
+
covalent_ligand_atom_index = 0
|
|
26
|
+
covalent_protein_atom_index = 4293
|
|
27
|
+
gnina_settings = rowan.GninaSettings(
|
|
28
|
+
scoring_function="gnina_cnn",
|
|
29
|
+
covalent_ligand_atom_index=covalent_ligand_atom_index,
|
|
30
|
+
covalent_protein_atom_index=covalent_protein_atom_index,
|
|
31
|
+
)
|
|
32
|
+
|
|
33
|
+
workflow = rowan.submit_docking_workflow(
|
|
34
|
+
protein,
|
|
35
|
+
pocket=[center, size],
|
|
36
|
+
initial_molecule=tg2_inhibitor,
|
|
37
|
+
docking_settings=gnina_settings,
|
|
38
|
+
name="TG2 covalent docking (Cys277, 2Q3Z)",
|
|
39
|
+
folder=folder,
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
print(f"View workflow privately at: https://labs.rowansci.com/docking/{workflow.uuid}")
|
|
43
|
+
|
|
44
|
+
result = workflow.result()
|
|
45
|
+
print(result)
|
|
46
|
+
|
|
47
|
+
for i, score in enumerate(result.scores):
|
|
48
|
+
print(f" Pose {i}: score={score.score:.3f} posebusters_valid={score.posebusters_valid}")
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import rowan
|
|
2
|
+
|
|
3
|
+
# Set your API key or use the ROWAN_API_KEY environment variable
|
|
4
|
+
# rowan.api_key = "rowan-sk..."
|
|
5
|
+
folder = rowan.get_folder("examples")
|
|
6
|
+
|
|
7
|
+
# BTK, catalytic Cys481. 4YHF already has a covalently-bound small-molecule inhibitor
|
|
8
|
+
# (residue 4C9) linked to Cys481 SG via the ligand's C1 atom.
|
|
9
|
+
protein = rowan.create_protein_from_pdb_id("4YHF")
|
|
10
|
+
protein = protein.select_chains(["A"])
|
|
11
|
+
protein.prepare(remove_heterogens=False)
|
|
12
|
+
|
|
13
|
+
# 0-based indices of Cys481 SG and the ligand's C1 atom, found by downloading the
|
|
14
|
+
# prepared PDB (protein.download_pdb_file()).
|
|
15
|
+
protein_reactive_atom_index = 1571
|
|
16
|
+
ligand_reactive_atom_index = 4492
|
|
17
|
+
|
|
18
|
+
workflow = rowan.submit_covalent_inhibitor_scan_workflow(
|
|
19
|
+
protein=protein,
|
|
20
|
+
protein_reactive_atom_index=protein_reactive_atom_index,
|
|
21
|
+
ligand_reactive_atom_index=ligand_reactive_atom_index,
|
|
22
|
+
settings=rowan.CovalentInhibitorScanSettings(scan_num=4),
|
|
23
|
+
name="BTK covalent inhibitor scan (Cys481, 4YHF)",
|
|
24
|
+
folder=folder,
|
|
25
|
+
)
|
|
26
|
+
|
|
27
|
+
print(
|
|
28
|
+
f"View workflow privately at: https://labs.rowansci.com/covalent-inhibitor-scan/{workflow.uuid}"
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
result = workflow.result()
|
|
32
|
+
print(result)
|
|
33
|
+
|
|
34
|
+
for distance, energy in result.get_energies():
|
|
35
|
+
print(f" distance={distance:.3f} Å energy={energy}")
|
|
@@ -22,22 +22,20 @@ H 0 0 2.3
|
|
|
22
22
|
C 0 0 0
|
|
23
23
|
N 0 0 1.2""",
|
|
24
24
|
)
|
|
25
|
-
fsm_settings = rowan.FSMSettings(
|
|
26
|
-
optimization_coordinates=rowan.FSMOptimizationCoordinates.CARTESIAN,
|
|
27
|
-
interpolation_method=rowan.FSMInterpolation.REDUNDANT_INTERNAL_COORDINATES,
|
|
28
|
-
min_num_nodes=7,
|
|
29
|
-
num_interpolation_points=5,
|
|
30
|
-
max_optimizer_iterations=3,
|
|
31
|
-
max_line_search_steps=2,
|
|
32
|
-
max_displacement=0.1,
|
|
33
|
-
)
|
|
34
25
|
|
|
26
|
+
# Freezing string method (FSM)
|
|
27
|
+
search_settings = rowan.StringMethodSettings(
|
|
28
|
+
freeze=True,
|
|
29
|
+
interpolation_method=rowan.Interpolation.GEODESIC,
|
|
30
|
+
)
|
|
31
|
+
# Use `freeze=False` for the growing string method (GSM)
|
|
32
|
+
# Use rowan.NEBSettings for nudged elastic band (NEB)
|
|
35
33
|
|
|
36
34
|
workflow = rowan.submit_double_ended_ts_search_workflow(
|
|
37
35
|
reactant=HCN,
|
|
38
36
|
product=CNH,
|
|
39
37
|
calculation_settings=rowan.Settings(method=rowan.Method.GFN2_XTB),
|
|
40
|
-
search_settings=
|
|
38
|
+
search_settings=search_settings,
|
|
41
39
|
optimize_inputs=True,
|
|
42
40
|
optimize_ts=True,
|
|
43
41
|
name="H-C≡N Isomerization",
|