Skip to content

Commit

Permalink
vacuum minimization
Browse files Browse the repository at this point in the history
  • Loading branch information
ndonyapour committed Jan 30, 2024
1 parent f65b543 commit 26d3a76
Show file tree
Hide file tree
Showing 21 changed files with 221 additions and 60 deletions.
16 changes: 15 additions & 1 deletion cwl_adapters/combine_structure.cwl
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ baseCommand: ['python', '/combine_structure.py']

hints:
DockerRequirement:
dockerPull: ndonyapour/combine_structure
dockerPull: ndonyapour/combine_structure_zip

inputs:
input_structure1:
Expand Down Expand Up @@ -40,6 +40,20 @@ inputs:
- edam:format_3877
inputBinding:
prefix: --input_structure2

input_top_zip_path:
label: Input zip file
doc: |-
Input zip file
Type: string
File type: input
Accepted formats: zip
Example file: https://github.com/bioexcel/biobb_md/blob/master/biobb_md/test/data/gromacs/genion.zip
type: File
format:
- edam:format_3987
inputBinding:
prefix: --input_top_zip_path

output_structure_path:
label: Output combined PDB file path
Expand Down
6 changes: 5 additions & 1 deletion examples/config_ci.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,11 @@
"vs_demo_2_weekly",
"vs_demo_3_weekly",
"vs_demo_4_weekly",
"docking_rescoring_weekly"
"docking_rescoring_weekly",
"stability",
"docking_stability",
"nmr",
"tutorial"
],
// NOTE: Most of the workflows in this list have free variables because they are subworkflows
// i.e. if you try to run them, you will get "Missing required input parameter"
Expand Down
1 change: 1 addition & 0 deletions examples/docking/docking.yml
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@ steps:
in:
input_structure1: '*receptor.xyz' # '*receptor_hydrogens.pdb'
input_structure2: '*pose_ligand.xyz'
input_top_zip_path: '*complex_vac.zip'
output_structure_path: '&complex_vac.pdb'

wic:
Expand Down
24 changes: 22 additions & 2 deletions examples/docking/docking_stability.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,14 +29,31 @@ wic:
inlineable: True
(2, stability.yml):
wic:
inlineable: True
inlineable: False
steps:
(1, setup_vac_min.yml):
wic:
steps:
(3, solv_ion.yml):
wic:
steps:
(4, genion):
in:
output_top_zip_path: '&genion_complex.zip'
(2, basic.yml):
in:
top_zip_path: '*genion_complex.zip'
wic:
steps:
(3, prod.yml):
wic:
steps:
(2, grompp):
in:
input_top_zip_path: '*genion_complex.zip'
(3, mdrun):
in:
output_crd_path: '&prod_complex.gro'
(4, cwl_watcher_analysis.yml):
wic:
backend: complex
Expand All @@ -45,4 +62,7 @@ wic:
steps:
(1, analysis_realtime.yml):
wic:
backend: complex
backend: complex
(2, analysis_final.yml):
wic:
backend: complex
46 changes: 28 additions & 18 deletions examples/docking/dsb.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,23 +9,17 @@ steps:
sdf_path: ~sdf_path
- stability.yml:
in:
# NOTE: crd_path and top_zip_path are currently only necessary
# due to a limitation of the inlineing implementation.
# Moreover, crd_path and top_zip_path are overridden below
crd_path: '*complex_vac.pdb'
top_zip_path: '*complex_vac.zip'
nsteps: 100000
nsteps: 10000
dt: 0.002
temperature: 298.0
pressure: 1.0
- stability.yml:
in:
# NOTE: crd_path and top_zip_path are currently only necessary
# due to a limitation of the inlineing implementation.
# Moreover, crd_path and top_zip_path are overridden below
crd_path: '*complex_vac.pdb'
top_zip_path: '*complex_vac.zip'
nsteps: 100000
crd_path: '*ligand_GMX.gro'
top_zip_path: '*ligand_GMX.zip'
nsteps: 10000
dt: 0.002
temperature: 298.0
pressure: 1.0
Expand All @@ -41,13 +35,18 @@ wic:
environment:
action: checkpoint
steps:
(1, setup.yml):
(1, setup_vac_min.yml):
wic:
steps:
(4, genion):
in:
output_top_zip_path: '&genion_complex.zip'
(3, solv_ion.yml):
wic:
steps:
(4, genion):
in:
output_top_zip_path: '&genion_complex.zip'
(2, basic.yml):
in:
top_zip_path: '*genion_complex.zip'
wic:
steps:
(3, prod.yml):
Expand Down Expand Up @@ -82,13 +81,24 @@ wic:
action: restore
save_defs: ['genion_complex.zip', 'prod_complex.gro']
steps:
(1, setup.yml):
(1, setup_vac_min.yml):
wic:
steps:
(4, genion):
in:
output_top_zip_path: '&genion_ligand.zip'
(1, topology.yml):
wic:
steps:
(1, editconf):
in:
output_crd_path: '&ligand_box.g96'
(3, solv_ion.yml):
wic:
steps:
(4, genion):
in:
output_top_zip_path: '&genion_ligand.zip'
(2, basic.yml):
in:
top_zip_path: '*genion_ligand.zip'
wic:
steps:
(3, prod.yml):
Expand Down
1 change: 1 addition & 0 deletions examples/docking/gen_topol_params.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ steps:
in:
input_structure1: ~input_receptor_xyz_path
input_structure2: '*pose_ligand.xyz'
input_top_zip_path: '*complex_vac.zip'
output_structure_path: '&complex_vac.pdb'

wic:
Expand Down
13 changes: 9 additions & 4 deletions examples/docking/vs_demo_2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -146,13 +146,18 @@ wic:
wic:
inlineable: False
steps:
(1, setup.yml):
(1, setup_vac_min.yml):
wic:
steps:
(4, genion):
in:
output_top_zip_path: '&genion_complex.zip'
(3, solv_ion.yml):
wic:
steps:
(4, genion):
in:
output_top_zip_path: '&genion_complex.zip'
(2, basic.yml):
in:
top_zip_path: '*genion_complex.zip'
wic:
steps:
(3, prod.yml):
Expand Down
13 changes: 9 additions & 4 deletions examples/docking/vs_demo_3.yml
Original file line number Diff line number Diff line change
Expand Up @@ -124,13 +124,18 @@ wic:
wic:
inlineable: False
steps:
(1, setup.yml):
(1, setup_vac_min.yml):
wic:
steps:
(4, genion):
in:
output_top_zip_path: '&genion_complex.zip'
(3, solv_ion.yml):
wic:
steps:
(4, genion):
in:
output_top_zip_path: '&genion_complex.zip'
(2, basic.yml):
in:
top_zip_path: '*genion_complex.zip'
wic:
steps:
(3, prod.yml):
Expand Down
13 changes: 9 additions & 4 deletions examples/docking/vs_demo_4.yml
Original file line number Diff line number Diff line change
Expand Up @@ -191,13 +191,18 @@ wic:
wic:
inlineable: False
steps:
(1, setup.yml):
(1, setup_vac_min.yml):
wic:
steps:
(4, genion):
in:
output_top_zip_path: '&genion_complex.zip'
(3, solv_ion.yml):
wic:
steps:
(4, genion):
in:
output_top_zip_path: '&genion_complex.zip'
(2, basic.yml):
in:
top_zip_path: '*genion_complex.zip'
wic:
steps:
(3, prod.yml):
Expand Down
6 changes: 6 additions & 0 deletions examples/gromacs/basic.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
inputs:
top_zip_path:
type: File
format:
- edam:format_3987
nsteps:
type: int
dt:
Expand All @@ -16,6 +20,8 @@ steps:
# to this level and use the following syntax to pass it to only one call site.
# (Moreover, the former will create multiple definitions of &min.tpr, which is not allowed.)
- min.yml:
in:
top_zip_path: ~top_zip_path
- equil.yml:
- prod.yml:
in:
Expand Down
7 changes: 7 additions & 0 deletions examples/gromacs/cg.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@
inputs:
top_zip_path:
type: File
format:
- edam:format_3987

steps:
- grompp:
in:
input_top_zip_path: ~top_zip_path
config:
mdp:
integrator: cg
Expand Down
10 changes: 10 additions & 0 deletions examples/gromacs/min.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,19 @@
inputs:
top_zip_path:
type: File
format:
- edam:format_3987

steps:
- steep.yml:
in:
top_zip_path: ~top_zip_path
# Fatal error:
# The coordinates could not be constrained. Minimizer 'cg' can not handle
# constraint failures, use minimizer 'steep' before using 'cg'.
- cg.yml:
in:
top_zip_path: ~top_zip_path
# Fatal error:
# The combination of constraints and L-BFGS minimization is not implemented.
# Either do not use constraints, or use another minimizer (e.g. steepest
Expand Down
7 changes: 0 additions & 7 deletions examples/gromacs/setup.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,6 @@ inputs:
- edam:format_3987

steps:
# - editconf:
# in:
# input_crd_path: ~crd_path
# #input_crd_path: '*complex_vac.pdb'
# config:
# box_type: cubic
# distance_to_molecule: 1.2
- gmx_editconf:
in:
input_crd_path: ~crd_path
Expand Down
33 changes: 31 additions & 2 deletions examples/gromacs/setup_vac_min.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,37 @@
inputs:
crd_path:
type: File
format:
- edam:format_1476
- edam:format_2033
top_zip_path:
type: File
format:
- edam:format_3987

steps:
- topology.yml:
in:
crd_path: ~crd_path
- min.yml: # Minimize in vacuum first, then in solvent.
in:
top_zip_path: ~top_zip_path
- solv_ion.yml:

in:
top_zip_path: ~top_zip_path
wic:
graphviz:
label: System Setup
label: System Setup
steps:
(1, topology.yml):
wic:
graphviz:
label: 'Initialize\nPeriodic Box'
(2, min.yml):
wic:
graphviz:
label: 'Vacuum Minimization'
(3, solv_ion.yml):
wic:
graphviz:
label: 'Add Water\nSolvent'
21 changes: 14 additions & 7 deletions examples/gromacs/solv_ion.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,19 @@
inputs:
top_zip_path:
type: File
format:
- edam:format_3987

steps:
- editconf:
- gmx_editconf:
in:
config:
box_type: cubic
distance_to_molecule: 1.0
#input_crd_path: ~crd_path
align_principal_axes: 0
box_type: cubic
distance_to_molecule: 1.2
- solvate:
in:
input_top_zip_path: '*complex_vac.zip'
input_top_zip_path: ~top_zip_path
output_crd_path: '&solvate.gro'
output_top_zip_path: '&solvate.zip'
- grompp:
Expand All @@ -28,10 +35,10 @@ wic:
graphviz:
label: Solvation & Ionization
ranksame:
- (1, editconf)
- (1, gmx_editconf)
- (4, genion)
steps:
(1, editconf):
(1, gmx_editconf):
wic:
graphviz:
label: 'Initialize\nPeriodic Box'
Expand Down
Loading

0 comments on commit 26d3a76

Please sign in to comment.