Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

elm #116

Closed
wants to merge 1 commit into from
Closed

elm #116

Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
83 changes: 83 additions & 0 deletions docking/elm.wic
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
steps:
download_pdb.wic:
in:
#pdb_id: !ii 1r4l # ACE2
#pdb_id: !ii 1ntp # trypsin
pdb_id: !ii 1uao # chignolin (for speed)
setup_pdb.wic:
in:
input_pdb_path: !* protein.pdb
pdb_path: !ii pdb.pdbqt
box_path: !ii box.pdb
box_buffer: !ii 20 # Angstroms
water_type: !ii spce
forcefield: !ii amber99sb-ildn
out:
- pdb_path: !& pdb.pdbqt
- box_path: !& box.pdb
download_ligand_database:
in:
database: !ii /NCIOpen.sdf
extract_molecules_sdf:
in:
first_molecule: !ii 1
last_molecule: !ii 1
# out:
# - output_sdf_path: !& ligands.sdf
# NOTE: We need to extract the models first, before splitting them into separate files.
# If we try to do both simultaneously, obabel ignores -f and -l and outputs ALL models.
split_sdf:
# in:
# input_path: !* ligands.sdf
out:
- output_sdf_path: !& ligand.sdf # Array type
docking_stability.wic:
scatter: [sdf_path]
in:
# NOTE: sdf_path is currently only necessary
# due to a limitation of the inlineing implementation.
sdf_path: !* ligand.sdf
# NOTE: Do not add scattering arguments here, add them to the wic: metadata annotations.
# (We want this information at the call site, not inserted within the subworkflow.)

wic:
steps:
(1, download_pdb.wic):
wic:
inlineable: False
(2, setup_pdb.wic):
wic:
inlineable: True
(4, extract_molecules_sdf):
wic:
graphviz:
label: Choose Ligands from\nCheminformatics Database
(5, split_sdf):
wic:
graphviz:
label: Split Ligands into\nSeparate Files
(6, docking_stability.wic):
wic:
# Scattering changes the input/output types and thus creates a barrier to inlineing.
inlineable: False

# Beware 0 vs 1 -based indexing! JavaScript (and thus CWL) uses 0-based indices.
# If you accidentally use 1-based indices, the last array access will be out of
# bounds and return null, which causes the following nasty error message:

# Cannot make job: Expression evaluation error:
# Expecting value: line 1 column 1 (char 0)
# script was:
# ...
# "index": 2
# };
# var self = [
# ...
# ];
# var runtime = {
# "tmpdir": null,
# "outdir": null
# };
# (function(){return ((self[inputs.__index__]));})()
# stdout was: 'undefined'
# stderr was: ''
Loading