Skip to content

Commit 58022ff

Browse files
committed
vacuum minimization
1 parent 5c6786e commit 58022ff

21 files changed

+352
-189
lines changed

cwl_adapters/combine_structure.cwl

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ baseCommand: ['python', '/combine_structure.py']
1212

1313
hints:
1414
DockerRequirement:
15-
dockerPull: ndonyapour/combine_structure
15+
dockerPull: ndonyapour/combine_structure_zip
1616

1717
inputs:
1818
input_structure1:
@@ -40,6 +40,20 @@ inputs:
4040
- edam:format_3877
4141
inputBinding:
4242
prefix: --input_structure2
43+
44+
input_top_zip_path:
45+
label: Input zip file
46+
doc: |-
47+
Input zip file
48+
Type: string
49+
File type: input
50+
Accepted formats: zip
51+
Example file: https://github.com/bioexcel/biobb_md/blob/master/biobb_md/test/data/gromacs/genion.zip
52+
type: File
53+
format:
54+
- edam:format_3987
55+
inputBinding:
56+
prefix: --input_top_zip_path
4357

4458
output_structure_path:
4559
label: Output combined PDB file path

examples/config_ci.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,11 @@
1010
"vs_demo_2_weekly",
1111
"vs_demo_3_weekly",
1212
"vs_demo_4_weekly",
13-
"docking_rescoring_weekly"
13+
"docking_rescoring_weekly",
14+
"stability",
15+
"docking_stability",
16+
"nmr",
17+
"tutorial"
1418
],
1519
// NOTE: Most of the workflows in this list have free variables because they are subworkflows
1620
// i.e. if you try to run them, you will get "Missing required input parameter"

examples/docking/docking.wic

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,8 +98,9 @@ steps:
9898
- output_top_zip_path: !& complex_vac.zip
9999
combine_structure:
100100
in:
101-
input_structure1: !* receptor.xyz # receptor_hydrogens.pdb
101+
input_structure1: !* receptor.xyz # !* receptor_hydrogens.pdb
102102
input_structure2: !* pose_ligand.xyz
103+
input_top_zip_path: !* complex_vac.zip
103104
out:
104105
- output_structure_path: !& complex_vac.pdb
105106

examples/docking/docking_stability.wic

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ steps:
2020
dt: !ii 0.002
2121
temperature: !ii 298.0
2222
pressure: !ii 1.0
23+
2324
wic:
2425
graphviz:
2526
label: Docking + MD Stability Analysis
@@ -31,12 +32,31 @@ wic:
3132
wic:
3233
inlineable: False
3334
steps:
35+
(1, setup_vac_min.wic):
36+
wic:
37+
steps:
38+
(3, solv_ion.wic):
39+
wic:
40+
steps:
41+
(4, genion):
42+
out:
43+
- output_top_zip_path: !& genion_complex.zip
3444
(2, basic.wic):
45+
in:
46+
top_zip_path: !* genion_complex.zip
3547
wic:
3648
steps:
3749
(3, prod.wic):
3850
wic:
3951
steps:
52+
(2, grompp):
53+
in:
54+
input_top_zip_path: !* genion_complex.zip
55+
(3, mdrun):
56+
out:
57+
- output_crd_path: !& prod_complex.gro # overload prod.gro
58+
- output_trr_path: !& prod.trr
59+
- output_edr_path: !& prod.edr
4060
(4, cwl_subinterpreter_analysis.wic):
4161
wic:
4262
implementation: complex
@@ -45,4 +65,8 @@ wic:
4565
steps:
4666
(1, analysis_realtime.wic):
4767
wic:
48-
implementation: complex
68+
implementation: complex
69+
(2, analysis_final.wic):
70+
wic:
71+
implementation: complex
72+

examples/docking/gen_topol_params.wic

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ steps:
7878
in:
7979
input_structure1: input_receptor_xyz_path
8080
input_structure2: !* pose_ligand.xyz
81+
input_top_zip_path: !* complex_vac.zip
8182
out:
8283
- output_structure_path: !& complex_vac.pdb
8384

examples/docking/vs_demo_2.wic

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -155,14 +155,19 @@ wic:
155155
wic:
156156
inlineable: False
157157
steps:
158-
(1, setup.wic):
158+
(1, setup_vac_min.wic):
159159
wic:
160160
steps:
161-
(4, genion):
162-
out:
163-
- output_top_zip_path: !& genion_complex.zip
161+
(3, solv_ion.wic):
162+
wic:
163+
steps:
164+
(4, genion):
165+
out:
166+
- output_top_zip_path: !& genion_complex.zip
164167
(2, basic.wic):
165-
wic:
168+
in:
169+
top_zip_path: !* genion_complex.zip
170+
wic:
166171
steps:
167172
(3, prod.wic):
168173
wic:

examples/docking/vs_demo_3.wic

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -127,18 +127,24 @@ wic:
127127
(7, gen_topol_params.wic):
128128
wic:
129129
inlineable: False
130+
130131
(8, stability.wic):
131132
wic:
132133
inlineable: False
133134
steps:
134-
(1, setup.wic):
135+
(1, setup_vac_min.wic):
135136
wic:
136137
steps:
137-
(4, genion):
138-
out:
139-
- output_top_zip_path: !& genion_complex.zip
138+
(3, solv_ion.wic):
139+
wic:
140+
steps:
141+
(4, genion):
142+
out:
143+
- output_top_zip_path: !& genion_complex.zip
140144
(2, basic.wic):
141-
wic:
145+
in:
146+
top_zip_path: !* genion_complex.zip
147+
wic:
142148
steps:
143149
(3, prod.wic):
144150
wic:

examples/docking/vs_demo_4.wic

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -206,14 +206,19 @@ wic:
206206
wic:
207207
inlineable: False
208208
steps:
209-
(1, setup.wic):
209+
(1, setup_vac_min.wic):
210210
wic:
211211
steps:
212-
(4, genion):
213-
out:
214-
- output_top_zip_path: !& genion_complex.zip
212+
(3, solv_ion.wic):
213+
wic:
214+
steps:
215+
(4, genion):
216+
out:
217+
- output_top_zip_path: !& genion_complex.zip
215218
(2, basic.wic):
216-
wic:
219+
in:
220+
top_zip_path: !* genion_complex.zip
221+
wic:
217222
steps:
218223
(3, prod.wic):
219224
wic:

examples/gromacs/basic.wic

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
inputs:
2+
top_zip_path:
3+
type: File
4+
format:
5+
- edam:format_3987
26
nsteps:
37
type: int
48
dt:
@@ -15,14 +19,16 @@ steps:
1519
# (i.e. immediately before molecular dynamics) so we can extract &min.tpr
1620
# to this level and use the following syntax to pass it to only one call site.
1721
# (Moreover, the former will create multiple definitions of &min.tpr, which is not allowed.)
18-
min.wic:
19-
equil.wic:
20-
prod.wic:
21-
in:
22-
nsteps: nsteps
23-
dt: dt
24-
ref-t: ref-t
25-
ref-p: ref-p
22+
min.wic:
23+
in:
24+
top_zip_path: top_zip_path
25+
equil.wic:
26+
prod.wic:
27+
in:
28+
nsteps: nsteps
29+
dt: dt
30+
ref-t: ref-t
31+
ref-p: ref-p
2632

2733
# Pass the CWL `in` tag as a parameter through BOTH of the yml DSL tags cg.wic and grompp.
2834
# Use (1-based) indexing to uniquely reference (step_number, step_name).

examples/gromacs/cg.wic

Lines changed: 35 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,39 @@
1+
inputs:
2+
top_zip_path:
3+
type: File
4+
format:
5+
- edam:format_3987
6+
17
steps:
2-
grompp:
3-
in:
4-
config: !ii
5-
mdp:
6-
integrator: cg
7-
define: -DFLEXIBLE # Defines a flexible water model if it exists in the system
8-
# https://manual.gromacs.org/current/reference-manual/algorithms/energy-minimization.html#conjugate-gradient
9-
rvdw: 1.4
10-
rcoulomb: 1.4
11-
#coulombtype: PME
12-
nsteps: 1000
13-
emstep: 0.01
14-
emtol: 10
15-
nstxout: 100
16-
nstenergy: 1
17-
mdrun:
18-
in:
19-
nb_terms: !ii cpu # NOTE: Workaround for a bug in gromacs 2022.2, fixed in 2022.3
20-
# https://manual.gromacs.org/current/release-notes/2022/2022.3.html#energy-minimization-would-not-converge-with-gpu-and-without-dd
21-
bonded_terms: !ii cpu # GPU implementation IS supported for md integrator, is NOT supported for sd integrator, etc.
22-
pme_terms: !ii cpu
23-
pme_fft_terms: !ii cpu
24-
update_terms: !ii cpu
25-
gmx_energy:
26-
in:
27-
config: !ii
28-
terms: [Potential]
29-
output_xvg_path: !ii energy_min_cg.xvg
8+
grompp:
9+
in:
10+
input_top_zip_path: top_zip_path
11+
config: !ii
12+
mdp:
13+
integrator: cg
14+
define: -DFLEXIBLE # Defines a flexible water model if it exists in the system
15+
# https://manual.gromacs.org/current/reference-manual/algorithms/energy-minimization.html#conjugate-gradient
16+
rvdw: 1.4
17+
rcoulomb: 1.4
18+
#coulombtype: PME
19+
nsteps: 1000
20+
emstep: 0.01
21+
emtol: 10
22+
nstxout: 100
23+
nstenergy: 1
24+
mdrun:
25+
in:
26+
nb_terms: !ii cpu # NOTE: Workaround for a bug in gromacs 2022.2, fixed in 2022.3
27+
# https://manual.gromacs.org/current/release-notes/2022/2022.3.html#energy-minimization-would-not-converge-with-gpu-and-without-dd
28+
bonded_terms: !ii cpu # GPU implementation IS supported for md integrator, is NOT supported for sd integrator, etc.
29+
pme_terms: !ii cpu
30+
pme_fft_terms: !ii cpu
31+
update_terms: !ii cpu
32+
gmx_energy:
33+
in:
34+
config: !ii
35+
terms: [Potential]
36+
output_xvg_path: !ii energy_min_cg.xvg
3037

3138
wic:
3239
graphviz:

0 commit comments

Comments
 (0)