caddforge-docs 0.3.0__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.
Files changed (152) hide show
  1. caddforge_docs/__init__.py +1 -0
  2. caddforge_docs/cli.py +20 -0
  3. caddforge_docs/server.py +124 -0
  4. caddforge_docs/site/404.html +2118 -0
  5. caddforge_docs/site/assets/_mkdocstrings.css +237 -0
  6. caddforge_docs/site/assets/images/favicon.png +0 -0
  7. caddforge_docs/site/assets/javascripts/bundle.d7400e89.min.js +16 -0
  8. caddforge_docs/site/assets/javascripts/bundle.d7400e89.min.js.map +7 -0
  9. caddforge_docs/site/assets/javascripts/workers/search.2c215733.min.js +42 -0
  10. caddforge_docs/site/assets/javascripts/workers/search.2c215733.min.js.map +7 -0
  11. caddforge_docs/site/assets/licenses/W3C-Software-and-Document-2015.txt +15 -0
  12. caddforge_docs/site/assets/licenses/autogrid-COPYING-GPL-2.txt +339 -0
  13. caddforge_docs/site/assets/licenses/autogrid-GCC-RUNTIME-COPYING-GPL-3.txt +674 -0
  14. caddforge_docs/site/assets/licenses/autogrid-GCC-RUNTIME-EXCEPTION.txt +73 -0
  15. caddforge_docs/site/assets/licenses/autogrid-GCC-RUNTIME-NOTICE.txt +24 -0
  16. caddforge_docs/site/assets/licenses/caddforge-opencosmors-COPYING.txt +674 -0
  17. caddforge_docs/site/assets/licenses/caddforge-opencosmors-LICENSE.txt +165 -0
  18. caddforge_docs/site/assets/licenses/caddforge-unidock-tools-LICENSE.txt +202 -0
  19. caddforge_docs/site/assets/licenses/clipboard-LICENSE.txt +19 -0
  20. caddforge_docs/site/assets/licenses/escape-html-LICENSE.txt +2 -0
  21. caddforge_docs/site/assets/licenses/focus-visible-LICENSE.txt +4 -0
  22. caddforge_docs/site/assets/licenses/fontawesome-LICENSE.txt +165 -0
  23. caddforge_docs/site/assets/licenses/fuzzaldrin-plus-LICENSE.txt +21 -0
  24. caddforge_docs/site/assets/licenses/lunr-LICENSE.txt +17 -0
  25. caddforge_docs/site/assets/licenses/material-LICENSE.txt +20 -0
  26. caddforge_docs/site/assets/licenses/material-design-color-LICENSE.txt +31 -0
  27. caddforge_docs/site/assets/licenses/material-shadows-LICENSE.txt +31 -0
  28. caddforge_docs/site/assets/licenses/mkdocs-material-LICENSE.txt +19 -0
  29. caddforge_docs/site/assets/licenses/mkdocs-material-extensions-LICENSE.txt +21 -0
  30. caddforge_docs/site/assets/licenses/mkdocs-section-index-LICENSE.txt +21 -0
  31. caddforge_docs/site/assets/licenses/mkdocstrings-LICENSE.txt +15 -0
  32. caddforge_docs/site/assets/licenses/mkdocstrings-python-LICENSE.txt +15 -0
  33. caddforge_docs/site/assets/licenses/octicons-LICENSE.txt +21 -0
  34. caddforge_docs/site/assets/licenses/preact-LICENSE.txt +19 -0
  35. caddforge_docs/site/assets/licenses/properdocs-LICENSE.txt +26 -0
  36. caddforge_docs/site/assets/licenses/pymdown-extensions-LICENSE.txt +113 -0
  37. caddforge_docs/site/assets/licenses/rxjs-LICENSE.txt +180 -0
  38. caddforge_docs/site/assets/licenses/simple-LICENSE.txt +30 -0
  39. caddforge_docs/site/assets/licenses/tiny-emitter-LICENSE.txt +19 -0
  40. caddforge_docs/site/assets/licenses/tslib-LICENSE.txt +12 -0
  41. caddforge_docs/site/assets/licenses/zeno-rocha-components-LICENSE.txt +22 -0
  42. caddforge_docs/site/assets/stylesheets/main.ec1eaa64.min.css +1 -0
  43. caddforge_docs/site/assets/stylesheets/main.ec1eaa64.min.css.map +1 -0
  44. caddforge_docs/site/assets/stylesheets/palette.ab4e12ef.min.css +1 -0
  45. caddforge_docs/site/assets/stylesheets/palette.ab4e12ef.min.css.map +1 -0
  46. caddforge_docs/site/core/cli/index.html +2446 -0
  47. caddforge_docs/site/core/concepts/index.html +2340 -0
  48. caddforge_docs/site/core/configuration/index.html +2300 -0
  49. caddforge_docs/site/core/index.html +2170 -0
  50. caddforge_docs/site/core/jobs-results/index.html +2315 -0
  51. caddforge_docs/site/core/plugins/index.html +2200 -0
  52. caddforge_docs/site/core/slurm/index.html +2562 -0
  53. caddforge_docs/site/development/ci-publishing/index.html +2345 -0
  54. caddforge_docs/site/development/contributing/index.html +2311 -0
  55. caddforge_docs/site/development/documentation/index.html +2380 -0
  56. caddforge_docs/site/development/index.html +2201 -0
  57. caddforge_docs/site/development/release-notes/index.html +2504 -0
  58. caddforge_docs/site/development/release-readiness/index.html +2333 -0
  59. caddforge_docs/site/development/security/index.html +2181 -0
  60. caddforge_docs/site/development/tool-authoring/index.html +2435 -0
  61. caddforge_docs/site/examples/index.html +2465 -0
  62. caddforge_docs/site/examples/manifest.json +158 -0
  63. caddforge_docs/site/examples/minimize/component_overrides.yaml +14 -0
  64. caddforge_docs/site/examples/minimize/ligand_only.yaml +13 -0
  65. caddforge_docs/site/examples/minimize/pipeline_docking.yaml +84 -0
  66. caddforge_docs/site/examples/minimize/pipeline_scatter.yaml +49 -0
  67. caddforge_docs/site/examples/minimize/pocket_free_shell_restrained.yaml +13 -0
  68. caddforge_docs/site/examples/minimize/pocket_restrained.yaml +13 -0
  69. caddforge_docs/site/examples/minimize/prepared_metal.yaml +14 -0
  70. caddforge_docs/site/examples/minimize/sidechains_free_backbone_fixed.yaml +13 -0
  71. caddforge_docs/site/examples/minimize/sidechains_free_backbone_restrained.yaml +13 -0
  72. caddforge_docs/site/examples/pipelines/descriptor-model-and-candidate-filter.yaml +44 -0
  73. caddforge_docs/site/examples/pipelines/dock-extract-and-minimize-poses.yaml +85 -0
  74. caddforge_docs/site/examples/pipelines/docking-screen-and-rescore.yaml +55 -0
  75. caddforge_docs/site/examples/pipelines/flexible-gnina-to-openbpmd-to-md-to-abfe.yaml +189 -0
  76. caddforge_docs/site/examples/pipelines/gnina-flexible-complex-artifacts.yaml +52 -0
  77. caddforge_docs/site/examples/pipelines/minimize-a-multi-pose-sdf.yaml +46 -0
  78. caddforge_docs/site/examples/pipelines/pose-level-md-selection.yaml +95 -0
  79. caddforge_docs/site/examples/pipelines/result-collection-and-diagnostics.yaml +55 -0
  80. caddforge_docs/site/examples/quickstart/diagnostics.yaml +8 -0
  81. caddforge_docs/site/examples/quickstart/index.html +2172 -0
  82. caddforge_docs/site/examples/quickstart/pipeline.yaml +23 -0
  83. caddforge_docs/site/examples/quickstart/run.py +18 -0
  84. caddforge_docs/site/examples/quickstart/run_pipeline.py +6 -0
  85. caddforge_docs/site/examples/quickstart/scores.csv +7 -0
  86. caddforge_docs/site/examples/quickstart/values.csv +31 -0
  87. caddforge_docs/site/examples/run_tool.py +40 -0
  88. caddforge_docs/site/examples/tools/datascience-csv-scatter.yaml +17 -0
  89. caddforge_docs/site/examples/tools/datascience-distribution-diagnostics.yaml +10 -0
  90. caddforge_docs/site/examples/tools/descriptors-ani-conformers.yaml +9 -0
  91. caddforge_docs/site/examples/tools/descriptors-ani-psa.yaml +9 -0
  92. caddforge_docs/site/examples/tools/descriptors-cluster-molecules.yaml +11 -0
  93. caddforge_docs/site/examples/tools/descriptors-phesa.yaml +7 -0
  94. caddforge_docs/site/examples/tools/docking-gnina.yaml +12 -0
  95. caddforge_docs/site/examples/tools/docking-idockya.yaml +8 -0
  96. caddforge_docs/site/examples/tools/docking-unidock.yaml +12 -0
  97. caddforge_docs/site/examples/tools/fep-openfe-abfe.yaml +53 -0
  98. caddforge_docs/site/examples/tools/fep-openfe-rbfe-septop.yaml +23 -0
  99. caddforge_docs/site/examples/tools/md-center-and-align.yaml +16 -0
  100. caddforge_docs/site/examples/tools/md-cluster-representative.yaml +16 -0
  101. caddforge_docs/site/examples/tools/md-extract-frames.yaml +17 -0
  102. caddforge_docs/site/examples/tools/md-fix-structure.yaml +20 -0
  103. caddforge_docs/site/examples/tools/md-grand.yaml +28 -0
  104. caddforge_docs/site/examples/tools/md-inducia.yaml +29 -0
  105. caddforge_docs/site/examples/tools/md-minimize.yaml +13 -0
  106. caddforge_docs/site/examples/tools/md-openbpmd.yaml +11 -0
  107. caddforge_docs/site/examples/tools/md-plain-md.yaml +28 -0
  108. caddforge_docs/site/examples/tools/ml-explore-classifier.yaml +5 -0
  109. caddforge_docs/site/examples/tools/ml-model-factory.yaml +32 -0
  110. caddforge_docs/site/examples/tools/ml-model-zoo.yaml +16 -0
  111. caddforge_docs/site/examples/tools/ml-pca.yaml +10 -0
  112. caddforge_docs/site/examples/tools/ml-simple-gp.yaml +17 -0
  113. caddforge_docs/site/examples/tools/qm-transfer-free-energy.yaml +11 -0
  114. caddforge_docs/site/explanation/references/index.html +2218 -0
  115. caddforge_docs/site/explanation/reproducibility/index.html +2306 -0
  116. caddforge_docs/site/explanation/third-party-notices/index.html +2599 -0
  117. caddforge_docs/site/getting-started/first-pipeline/index.html +2195 -0
  118. caddforge_docs/site/getting-started/first-workflow/index.html +2329 -0
  119. caddforge_docs/site/getting-started/index.html +2200 -0
  120. caddforge_docs/site/getting-started/installation/index.html +2541 -0
  121. caddforge_docs/site/gui/index.html +2267 -0
  122. caddforge_docs/site/gui/plugin-authoring/index.html +2280 -0
  123. caddforge_docs/site/gui/walkthrough/index.html +2181 -0
  124. caddforge_docs/site/how-to/jobs/index.html +2195 -0
  125. caddforge_docs/site/how-to/scatter/index.html +2193 -0
  126. caddforge_docs/site/how-to/troubleshooting/index.html +2429 -0
  127. caddforge_docs/site/index.html +2359 -0
  128. caddforge_docs/site/objects.inv +0 -0
  129. caddforge_docs/site/pipelines/artifacts/index.html +2314 -0
  130. caddforge_docs/site/pipelines/built-ins/index.html +2670 -0
  131. caddforge_docs/site/pipelines/examples/index.html +3186 -0
  132. caddforge_docs/site/pipelines/index.html +2164 -0
  133. caddforge_docs/site/pipelines/specification/index.html +2278 -0
  134. caddforge_docs/site/plugins/datascience/index.html +2405 -0
  135. caddforge_docs/site/plugins/descriptors/index.html +2609 -0
  136. caddforge_docs/site/plugins/docking/index.html +2480 -0
  137. caddforge_docs/site/plugins/fep/index.html +2508 -0
  138. caddforge_docs/site/plugins/index.html +2216 -0
  139. caddforge_docs/site/plugins/md/index.html +3795 -0
  140. caddforge_docs/site/plugins/ml/index.html +2815 -0
  141. caddforge_docs/site/plugins/qm/index.html +2309 -0
  142. caddforge_docs/site/plugins/version-matrix/index.html +2449 -0
  143. caddforge_docs/site/reference/api/index.html +4414 -0
  144. caddforge_docs/site/reference/index.html +2166 -0
  145. caddforge_docs/site/search/search_index.json +1 -0
  146. caddforge_docs/site/sitemap.xml +191 -0
  147. caddforge_docs/site/sitemap.xml.gz +0 -0
  148. caddforge_docs-0.3.0.dist-info/METADATA +158 -0
  149. caddforge_docs-0.3.0.dist-info/RECORD +152 -0
  150. caddforge_docs-0.3.0.dist-info/WHEEL +4 -0
  151. caddforge_docs-0.3.0.dist-info/entry_points.txt +2 -0
  152. caddforge_docs-0.3.0.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,158 @@
1
+ [
2
+ {
3
+ "section": "docking",
4
+ "tool": "unidock",
5
+ "config": "cadd_docking.unidock.workflow.UniDockConfig",
6
+ "path": "tools/docking-unidock.yaml"
7
+ },
8
+ {
9
+ "section": "docking",
10
+ "tool": "idockya",
11
+ "config": "cadd_docking.idockya.workflow.IDockYaConfig",
12
+ "path": "tools/docking-idockya.yaml"
13
+ },
14
+ {
15
+ "section": "docking",
16
+ "tool": "gnina",
17
+ "config": "cadd_docking.gnina.workflow.GninaConfig",
18
+ "path": "tools/docking-gnina.yaml"
19
+ },
20
+ {
21
+ "section": "descriptors",
22
+ "tool": "ani-psa",
23
+ "config": "cadd_descriptors.ani_psa.workflow.AniPsaConfig",
24
+ "path": "tools/descriptors-ani-psa.yaml"
25
+ },
26
+ {
27
+ "section": "descriptors",
28
+ "tool": "phesa",
29
+ "config": "cadd_descriptors.phesa.workflow.PhesaConfig",
30
+ "path": "tools/descriptors-phesa.yaml"
31
+ },
32
+ {
33
+ "section": "descriptors",
34
+ "tool": "ani-conformers",
35
+ "config": "cadd_descriptors.ani_conformers.workflow.AniConformersConfig",
36
+ "path": "tools/descriptors-ani-conformers.yaml"
37
+ },
38
+ {
39
+ "section": "descriptors",
40
+ "tool": "cluster-molecules",
41
+ "config": "cadd_descriptors.cluster_molecules.workflow.ClusterMoleculesConfig",
42
+ "path": "tools/descriptors-cluster-molecules.yaml"
43
+ },
44
+ {
45
+ "section": "md",
46
+ "tool": "fix-structure",
47
+ "config": "cadd_md.fix_structure.workflow.FixStructureConfig",
48
+ "path": "tools/md-fix-structure.yaml"
49
+ },
50
+ {
51
+ "section": "md",
52
+ "tool": "center-and-align",
53
+ "config": "cadd_md.center_and_align.workflow.CenterAndAlignConfig",
54
+ "path": "tools/md-center-and-align.yaml"
55
+ },
56
+ {
57
+ "section": "md",
58
+ "tool": "extract-frames",
59
+ "config": "cadd_md.extract_frames.workflow.ExtractFramesConfig",
60
+ "path": "tools/md-extract-frames.yaml"
61
+ },
62
+ {
63
+ "section": "md",
64
+ "tool": "cluster-representative",
65
+ "config": "cadd_md.cluster_representative.workflow.ClusterRepresentativeConfig",
66
+ "path": "tools/md-cluster-representative.yaml"
67
+ },
68
+ {
69
+ "section": "md",
70
+ "tool": "plain-md",
71
+ "config": "cadd_md.plain_md.workflow.PlainMDConfig",
72
+ "path": "tools/md-plain-md.yaml"
73
+ },
74
+ {
75
+ "section": "md",
76
+ "tool": "minimize",
77
+ "config": "cadd_md.minimize.MinimizeConfig",
78
+ "path": "tools/md-minimize.yaml"
79
+ },
80
+ {
81
+ "section": "md",
82
+ "tool": "openbpmd",
83
+ "config": "cadd_md.openbpmd.workflow.OpenBPMDConfig",
84
+ "path": "tools/md-openbpmd.yaml"
85
+ },
86
+ {
87
+ "section": "md",
88
+ "tool": "grand",
89
+ "config": "cadd_md.grand.workflow.GrandConfig",
90
+ "path": "tools/md-grand.yaml"
91
+ },
92
+ {
93
+ "section": "md",
94
+ "tool": "inducia",
95
+ "config": "cadd_md.inducia.workflow.InduciaConfig",
96
+ "path": "tools/md-inducia.yaml"
97
+ },
98
+ {
99
+ "section": "fep",
100
+ "tool": "openfe-abfe",
101
+ "config": "cadd_fep.openfe_abfe.workflow.OpenfeAbfeConfig",
102
+ "path": "tools/fep-openfe-abfe.yaml"
103
+ },
104
+ {
105
+ "section": "fep",
106
+ "tool": "openfe-rbfe-septop",
107
+ "config": "cadd_fep.openfe_rbfe_septop.workflow.OpenfeRbfeSeptopConfig",
108
+ "path": "tools/fep-openfe-rbfe-septop.yaml"
109
+ },
110
+ {
111
+ "section": "qm",
112
+ "tool": "transfer-free-energy",
113
+ "config": "cadd_qm.cosmors.workflow.CosmoRSConfig",
114
+ "path": "tools/qm-transfer-free-energy.yaml"
115
+ },
116
+ {
117
+ "section": "ml",
118
+ "tool": "simple-gp",
119
+ "config": "cadd_ml.simple_gp.workflow.SimpleGPConfig",
120
+ "path": "tools/ml-simple-gp.yaml"
121
+ },
122
+ {
123
+ "section": "ml",
124
+ "tool": "pca",
125
+ "config": "cadd_ml.pca.workflow.PCAConfig",
126
+ "path": "tools/ml-pca.yaml"
127
+ },
128
+ {
129
+ "section": "ml",
130
+ "tool": "model-zoo",
131
+ "config": "cadd_ml.model_zoo.workflow.ModelZooConfig",
132
+ "path": "tools/ml-model-zoo.yaml"
133
+ },
134
+ {
135
+ "section": "ml",
136
+ "tool": "model-factory",
137
+ "config": "cadd_ml.model_factory.workflow.ModelFactoryConfig",
138
+ "path": "tools/ml-model-factory.yaml"
139
+ },
140
+ {
141
+ "section": "ml",
142
+ "tool": "explore-classifier",
143
+ "config": "cadd_ml.explore_classifier.workflow.ExploreClassifierConfig",
144
+ "path": "tools/ml-explore-classifier.yaml"
145
+ },
146
+ {
147
+ "section": "datascience",
148
+ "tool": "csv-scatter",
149
+ "config": "cadd_datascience.csv_scatter.workflow.CsvScatterConfig",
150
+ "path": "tools/datascience-csv-scatter.yaml"
151
+ },
152
+ {
153
+ "section": "datascience",
154
+ "tool": "distribution-diagnostics",
155
+ "config": "cadd_datascience.distribution_diagnostics.workflow.DistributionDiagnosticsConfig",
156
+ "path": "tools/datascience-distribution-diagnostics.yaml"
157
+ }
158
+ ]
@@ -0,0 +1,14 @@
1
+ # Replace indices with zero-based INPUT residue indices, not PDB numbers.
2
+ complex_pdb_path: complex_with_cofactor_and_water.pdb
3
+ ligand_path: ligand.sdf
4
+ mode: pocket_restrained
5
+ cofactors:
6
+ - residue_index: 200
7
+ chemistry_path: cofactor.sdf
8
+ component_mobility:
9
+ 200:
10
+ mobility: restrained
11
+ restraint_strength: moderate # k = 1000 kJ mol^-1 nm^-2, E = 0.5*k*displacement^2
12
+ 201:
13
+ mobility: free # retained water; flexible geometry, no positional restraints
14
+ run_directory: runs/minimize-components
@@ -0,0 +1,13 @@
1
+ # Replace paths with one complex and its authoritative ligand chemistry.
2
+ complex_pdb_path: complex.pdb
3
+ ligand_path: ligand.sdf
4
+ lig_resname: LIG
5
+ mode: ligand_only
6
+ pocket_radius_angstrom: 5.0
7
+ shell_radius_angstrom: 5.0
8
+ backbone_restraint_strength: moderate
9
+ shell_restraint_strength: very_strong
10
+ tolerance_kj_mol_nm: 10.0
11
+ max_iterations: 1000
12
+ platform: CPU
13
+ run_directory: runs/minimize-ligand_only
@@ -0,0 +1,84 @@
1
+ # Rigid-receptor GNINA docking followed by local OpenMM pose cleanup.
2
+ # Supply GNINA on PATH and authoritative ligand chemistry in the input SDF.
3
+ version: 1
4
+ name: dock-extract-minimize
5
+
6
+ defaults:
7
+ backend: local
8
+ run_directory: runs/dock-extract-minimize
9
+ registry_path: runs/job_registry.sqlite
10
+ export_results: false
11
+
12
+ stages:
13
+ - id: dock
14
+ tool: docking/gnina
15
+ config:
16
+ receptor_path: data/receptor.pdb
17
+ ligand_path: data/ligands.sdf
18
+ autobox_ligand_path: data/reference_ligand.sdf
19
+ output_format: sdf
20
+ outputs:
21
+ poses: poses_dir
22
+ scores: best_scores_csv
23
+
24
+ - id: extract
25
+ type: poses.extract
26
+ inputs:
27
+ poses: dock.poses
28
+ table: dock.scores
29
+ config:
30
+ ligand_column: ligand
31
+ path_column: pose_file
32
+ output_name: pose_manifest.csv
33
+
34
+ - id: hydrogenate
35
+ type: molecules.hydrogenate
36
+ inputs:
37
+ molecules: extract.poses
38
+ table: extract.manifest
39
+ config:
40
+ on_template_failure: fail
41
+ on_failure: fail
42
+ add_coords: true
43
+
44
+ - id: minimize
45
+ tool: md/minimize
46
+ config:
47
+ protein_pdb_path: data/receptor.pdb
48
+ mode: sidechains_free_backbone_restrained
49
+ backbone_restraint_strength: moderate
50
+ strict_quality: false
51
+ inputs:
52
+ ligand: hydrogenate.molecules
53
+ scatter:
54
+ by: ligand_path
55
+ chunk_size: 1
56
+ outputs:
57
+ results: result_record
58
+ ligands: minimized_ligand
59
+
60
+ - id: collect
61
+ type: results.collect
62
+ inputs:
63
+ results: minimize.results
64
+ config:
65
+ metrics:
66
+ quality_passed: metrics.quality_passed
67
+ quality_flag_count: metrics.quality_flag_count
68
+ convergence: metrics.convergence_status
69
+ ligand_rmsd_angstrom: metrics.ligand_heavy_atom_rmsd_angstrom
70
+ minimized_complex_file: paths.minimized_complex
71
+ minimized_ligand_file: paths.minimized_ligand
72
+ diagnostics_file: paths.diagnostics
73
+ output_name: minimized_pose_metrics.csv
74
+
75
+ - id: accepted
76
+ type: filter.tabular
77
+ inputs:
78
+ table: collect.table
79
+ config:
80
+ filters:
81
+ - column: quality_passed
82
+ op: '=='
83
+ value: 1
84
+ output_name: accepted_minimized_poses.csv
@@ -0,0 +1,49 @@
1
+ # Poses must share receptor coordinates and contain explicit hydrogens.
2
+ # Paths resolve relative to the submission working directory.
3
+ version: 1
4
+ name: pose-cleanup
5
+
6
+ defaults:
7
+ backend: local
8
+ run_directory: runs/pose-cleanup
9
+ registry_path: runs/job_registry.sqlite
10
+ export_results: false
11
+
12
+ stages:
13
+ - id: minimize
14
+ tool: md/minimize
15
+ config:
16
+ protein_pdb_path: receptor.pdb
17
+ ligand_path: poses.sdf
18
+ mode: ligand_only
19
+ scatter:
20
+ by: ligand_path
21
+ chunk_size: 1
22
+ outputs:
23
+ results: result_record
24
+ ligands: minimized_ligand
25
+
26
+ - id: collect
27
+ type: results.collect
28
+ inputs:
29
+ results: minimize.results
30
+ config:
31
+ metrics:
32
+ quality_passed: metrics.quality_passed
33
+ convergence: metrics.convergence_status
34
+ ligand_rmsd_angstrom: metrics.ligand_heavy_atom_rmsd_angstrom
35
+ minimized_ligand_file: paths.minimized_ligand
36
+
37
+ - id: accepted
38
+ type: filter.tabular
39
+ inputs:
40
+ table: collect.table
41
+ config:
42
+ filters:
43
+ - column: quality_passed
44
+ op: '=='
45
+ value: 1
46
+ # Inspect rejected rows and detailed diagnostics; cleanup energy is not affinity.
47
+ # When consuming an upstream poses.extract.poses artifact, replace ligand_path
48
+ # with inputs: {ligand: extract.poses}. Core preserves its pose IDs in the
49
+ # scatter manifest and joins them into the collected table automatically.
@@ -0,0 +1,13 @@
1
+ # Replace paths with one complex and its authoritative ligand chemistry.
2
+ complex_pdb_path: complex.pdb
3
+ ligand_path: ligand.sdf
4
+ lig_resname: LIG
5
+ mode: pocket_free_shell_restrained
6
+ pocket_radius_angstrom: 5.0
7
+ shell_radius_angstrom: 5.0
8
+ backbone_restraint_strength: moderate
9
+ shell_restraint_strength: very_strong
10
+ tolerance_kj_mol_nm: 10.0
11
+ max_iterations: 1000
12
+ platform: CPU
13
+ run_directory: runs/minimize-pocket_free_shell_restrained
@@ -0,0 +1,13 @@
1
+ # Replace paths with one complex and its authoritative ligand chemistry.
2
+ complex_pdb_path: complex.pdb
3
+ ligand_path: ligand.sdf
4
+ lig_resname: LIG
5
+ mode: pocket_restrained
6
+ pocket_radius_angstrom: 5.0
7
+ shell_radius_angstrom: 5.0
8
+ backbone_restraint_strength: moderate
9
+ shell_restraint_strength: very_strong
10
+ tolerance_kj_mol_nm: 10.0
11
+ max_iterations: 1000
12
+ platform: CPU
13
+ run_directory: runs/minimize-pocket_restrained
@@ -0,0 +1,14 @@
1
+ # Supply a scientifically validated nonperiodic Amber metal-site model.
2
+ # This template does not generate or validate a model's physical accuracy.
3
+ complex_pdb_path: complex_with_metal.pdb
4
+ ligand_path: ligand.sdf
5
+ amber_topology_path: prepared.prmtop
6
+ amber_coordinates_path: prepared.inpcrd
7
+ amber_mapping_path: prepared_mapping.json
8
+ mode: sidechains_free_backbone_restrained
9
+ metal_sites:
10
+ - atom_index: 1500 # zero-based INPUT atom index, not PDB serial
11
+ oxidation_state: 2
12
+ coordinating_atom_indices: [123, 234, 345, 456] # replace with actual donors
13
+ parameter_source: "Replace with parameter-set citation, version, and site model"
14
+ run_directory: runs/minimize-metal
@@ -0,0 +1,13 @@
1
+ # Replace paths with one complex and its authoritative ligand chemistry.
2
+ complex_pdb_path: complex.pdb
3
+ ligand_path: ligand.sdf
4
+ lig_resname: LIG
5
+ mode: sidechains_free_backbone_fixed
6
+ pocket_radius_angstrom: 5.0
7
+ shell_radius_angstrom: 5.0
8
+ backbone_restraint_strength: moderate
9
+ shell_restraint_strength: very_strong
10
+ tolerance_kj_mol_nm: 10.0
11
+ max_iterations: 1000
12
+ platform: CPU
13
+ run_directory: runs/minimize-sidechains_free_backbone_fixed
@@ -0,0 +1,13 @@
1
+ # Replace paths with one complex and its authoritative ligand chemistry.
2
+ complex_pdb_path: complex.pdb
3
+ ligand_path: ligand.sdf
4
+ lig_resname: LIG
5
+ mode: sidechains_free_backbone_restrained
6
+ pocket_radius_angstrom: 5.0
7
+ shell_radius_angstrom: 5.0
8
+ backbone_restraint_strength: moderate
9
+ shell_restraint_strength: very_strong
10
+ tolerance_kj_mol_nm: 10.0
11
+ max_iterations: 1000
12
+ platform: CPU
13
+ run_directory: runs/minimize-sidechains_free_backbone_restrained
@@ -0,0 +1,44 @@
1
+ # Advanced template: supply all prepared inputs and scientific runtimes.
2
+ version: 1
3
+ name: descriptor-ml-filter
4
+
5
+ defaults:
6
+ backend: local
7
+ registry_path: runs/job_registry.sqlite
8
+
9
+ stages:
10
+ - id: psa_descriptors
11
+ tool: descriptors/ani-psa
12
+ config: configs/ani_psa_batch.yaml
13
+ outputs:
14
+ # Expose Result.paths["results_csv"] as psa_descriptors.table.
15
+ table: results_csv
16
+
17
+ - id: train_gp
18
+ tool: ml/simple-gp
19
+ config:
20
+ train_path: data/training_descriptors.csv
21
+ target_column: measured_property
22
+ # Use the table artifact from the descriptor stage as the GP test/prediction set.
23
+ test_path: psa_descriptors.table
24
+ feature_columns: [ani_psa, heavy_atom_count]
25
+ kernel: rbf
26
+ mode: train
27
+ model_path: artifacts/simple_gp_model.joblib
28
+ outputs:
29
+ # Expose Result.paths["predictions_csv"] as train_gp.predictions.
30
+ predictions: predictions_csv
31
+
32
+ - id: promising_candidates
33
+ type: filter.tabular
34
+ inputs:
35
+ table: train_gp.predictions
36
+ config:
37
+ filters:
38
+ - column: y_pred
39
+ op: ">="
40
+ value: 7.0
41
+ sort_by: y_pred
42
+ ascending: false
43
+ top_n: 250
44
+ output_name: promising_candidates.csv
@@ -0,0 +1,85 @@
1
+ # Advanced template: supply all prepared inputs and scientific runtimes.
2
+ # Rigid-receptor GNINA docking followed by local OpenMM pose cleanup.
3
+ # Supply GNINA on PATH and authoritative ligand chemistry in the input SDF.
4
+ version: 1
5
+ name: dock-extract-minimize
6
+
7
+ defaults:
8
+ backend: local
9
+ run_directory: runs/dock-extract-minimize
10
+ registry_path: runs/job_registry.sqlite
11
+ export_results: false
12
+
13
+ stages:
14
+ - id: dock
15
+ tool: docking/gnina
16
+ config:
17
+ receptor_path: data/receptor.pdb
18
+ ligand_path: data/ligands.sdf
19
+ autobox_ligand_path: data/reference_ligand.sdf
20
+ output_format: sdf
21
+ outputs:
22
+ poses: poses_dir
23
+ scores: best_scores_csv
24
+
25
+ - id: extract
26
+ type: poses.extract
27
+ inputs:
28
+ poses: dock.poses
29
+ table: dock.scores
30
+ config:
31
+ ligand_column: ligand
32
+ path_column: pose_file
33
+ output_name: pose_manifest.csv
34
+
35
+ - id: hydrogenate
36
+ type: molecules.hydrogenate
37
+ inputs:
38
+ molecules: extract.poses
39
+ table: extract.manifest
40
+ config:
41
+ on_template_failure: fail
42
+ on_failure: fail
43
+ add_coords: true
44
+
45
+ - id: minimize
46
+ tool: md/minimize
47
+ config:
48
+ protein_pdb_path: data/receptor.pdb
49
+ mode: sidechains_free_backbone_restrained
50
+ backbone_restraint_strength: moderate
51
+ strict_quality: false
52
+ inputs:
53
+ ligand: hydrogenate.molecules
54
+ scatter:
55
+ by: ligand_path
56
+ chunk_size: 1
57
+ outputs:
58
+ results: result_record
59
+ ligands: minimized_ligand
60
+
61
+ - id: collect
62
+ type: results.collect
63
+ inputs:
64
+ results: minimize.results
65
+ config:
66
+ metrics:
67
+ quality_passed: metrics.quality_passed
68
+ quality_flag_count: metrics.quality_flag_count
69
+ convergence: metrics.convergence_status
70
+ ligand_rmsd_angstrom: metrics.ligand_heavy_atom_rmsd_angstrom
71
+ minimized_complex_file: paths.minimized_complex
72
+ minimized_ligand_file: paths.minimized_ligand
73
+ diagnostics_file: paths.diagnostics
74
+ output_name: minimized_pose_metrics.csv
75
+
76
+ - id: accepted
77
+ type: filter.tabular
78
+ inputs:
79
+ table: collect.table
80
+ config:
81
+ filters:
82
+ - column: quality_passed
83
+ op: '=='
84
+ value: 1
85
+ output_name: accepted_minimized_poses.csv
@@ -0,0 +1,55 @@
1
+ # Advanced template: supply all prepared inputs and scientific runtimes.
2
+ version: 1
3
+ name: docking-screen-rescore
4
+
5
+ defaults:
6
+ backend: local
7
+ registry_path: runs/job_registry.sqlite
8
+ job_name: docking-screen-rescore
9
+
10
+ stages:
11
+ - id: unidock_screen
12
+ tool: docking/unidock
13
+ config: configs/unidock.yaml
14
+ scatter:
15
+ # Split the ligand_multisdf_path field from configs/unidock.yaml into independent shards.
16
+ by: ligand_multisdf_path
17
+ chunk_size: 50000
18
+ outputs:
19
+ # Expose Result.paths["best_scores_csv"] as unidock_screen.scores.
20
+ scores: best_scores_csv
21
+ # Expose Result.paths["poses_dir"] as unidock_screen.poses.
22
+ poses: poses_dir
23
+
24
+ - id: top_unidock_scores
25
+ type: filter.tabular
26
+ inputs:
27
+ # Read the score table produced by the previous stage.
28
+ table: unidock_screen.scores
29
+ config:
30
+ sort_by: best_score
31
+ ascending: true
32
+ top_n: 1000
33
+ output_name: top_unidock_scores.csv
34
+
35
+ - id: retain_unidock_poses
36
+ type: filter.molecules
37
+ inputs:
38
+ # Filter the pose directory/path collection from UniDock.
39
+ molecules: unidock_screen.poses
40
+ # Use the filtered table from filter.tabular; this built-in always emits filtered_table.
41
+ ids: top_unidock_scores.filtered_table
42
+ config:
43
+ # The values in this column are matched against pose metadata or filenames.
44
+ id_column: ligand
45
+
46
+ - id: gnina_rescore
47
+ tool: docking/gnina
48
+ config: configs/gnina_rescore.yaml
49
+ inputs:
50
+ # Bind the retained pose path collection to GninaConfig.ligand_paths.
51
+ ligand_paths: retain_unidock_poses.molecules
52
+ outputs:
53
+ # Expose Gnina result paths for downstream stages.
54
+ scores: best_scores_csv
55
+ poses: poses_dir