Configure PRODIGY pipeline for WES execution with S3 and Harbor
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
ci / test (3.13) (push) Has been cancelled
ci / test (3.9) (push) Has been cancelled

This commit is contained in:
2026-03-17 16:38:16 +01:00
commit 19fd443501
38 changed files with 16328 additions and 0 deletions

157
params.json Normal file
View File

@@ -0,0 +1,157 @@
{
"params": {
"pdb": {
"type": "file",
"description": "Path to input PDB or mmCIF structure file(s) for binding affinity prediction",
"default": "s3://omic/eureka/prodigy/input/*.pdb",
"required": true,
"pipeline_io": "input",
"var_name": "params.pdb",
"examples": [
"s3://omic/eureka/prodigy/input/3bzd.pdb",
"s3://omic/eureka/prodigy/input/*.pdb"
],
"pattern": ".*\\.(pdb|cif)$",
"enum": [],
"validation": {},
"notes": "Input protein-protein complex structure in PDB or mmCIF format. Can be a single file or glob pattern for batch processing."
},
"outdir": {
"type": "folder",
"description": "Directory for PRODIGY prediction results",
"default": "s3://omic/eureka/prodigy/output",
"required": true,
"pipeline_io": "output",
"var_name": "params.outdir",
"examples": [
"s3://omic/eureka/prodigy/output",
"s3://omic/eureka/prodigy/custom_output"
],
"pattern": ".*",
"enum": [],
"validation": {},
"notes": "Directory where prediction results will be stored. Created if it does not exist."
},
"distance_cutoff": {
"type": "float",
"description": "Distance cutoff (Angstrom) for calculating intermolecular contacts",
"default": 5.5,
"required": false,
"pipeline_io": "parameter",
"var_name": "params.distance_cutoff",
"examples": [
5.5,
4.0,
6.0
],
"pattern": null,
"enum": [],
"validation": {
"min": 1.0,
"max": 20.0
},
"notes": "Default value of 5.5 Angstrom was optimized in Vangone & Bonvin (2015) eLife. This threshold includes different non-bonded interactions including salt bridges."
},
"acc_threshold": {
"type": "float",
"description": "Accessibility threshold for buried surface area (BSA) analysis",
"default": 0.05,
"required": false,
"pipeline_io": "parameter",
"var_name": "params.acc_threshold",
"examples": [
0.05,
0.1
],
"pattern": null,
"enum": [],
"validation": {
"min": 0.0,
"max": 1.0
},
"notes": "Relative accessibility threshold used to identify surface residues for non-interacting surface (NIS) calculations."
},
"temperature": {
"type": "float",
"description": "Temperature (Celsius) for dissociation constant (Kd) prediction",
"default": 25.0,
"required": false,
"pipeline_io": "parameter",
"var_name": "params.temperature",
"examples": [
25.0,
37.0,
4.0
],
"pattern": null,
"enum": [],
"validation": {
"min": -273.15,
"max": 100.0
},
"notes": "Temperature used to convert predicted binding free energy (deltaG) to dissociation constant (Kd)."
},
"selection": {
"type": "string",
"description": "Chain selection for interface calculation",
"default": "",
"required": false,
"pipeline_io": "parameter",
"var_name": "params.selection",
"examples": [
"A B",
"A,B C",
"H,L A"
],
"pattern": null,
"enum": [],
"validation": {},
"notes": "Specify chains to consider for binding affinity calculation. Format: 'A B' calculates contacts between chains A and B. 'A,B C' treats chains A and B as one molecule interacting with chain C. Useful for antibody-antigen complexes where heavy and light chains should be grouped."
},
"contact_list": {
"type": "boolean",
"description": "Output list of intermolecular contacts",
"default": false,
"required": false,
"pipeline_io": "parameter",
"var_name": "params.contact_list",
"examples": [
true,
false
],
"enum": [true, false],
"validation": {},
"notes": "When enabled, outputs a detailed list of all residue-residue contacts at the interface."
},
"pymol_selection": {
"type": "boolean",
"description": "Output PyMOL script to visualize interface",
"default": false,
"required": false,
"pipeline_io": "parameter",
"var_name": "params.pymol_selection",
"examples": [
true,
false
],
"enum": [true, false],
"validation": {},
"notes": "When enabled, generates a PyMOL script (.pml) to highlight interface residues for visualization."
},
"quiet": {
"type": "boolean",
"description": "Output only predicted affinity values",
"default": false,
"required": false,
"pipeline_io": "parameter",
"var_name": "params.quiet",
"examples": [
true,
false
],
"enum": [true, false],
"validation": {},
"notes": "When enabled, outputs only the predicted binding affinity value without detailed analysis. Useful for batch processing and downstream parsing."
}
}
}