comparison sim.xml @ 0:1a5960636405 draft

"planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tools/gromacs commit 3b99f08f22b9e0c16c0a0adc82f8c16c1a25cedf"
author chemteam
date Mon, 07 Oct 2019 12:48:44 -0400
parents
children ec3f665cca3e
comparison
equal deleted inserted replaced
-1:000000000000 0:1a5960636405
1 <tool id="gmx_sim" name="GROMACS simulation" version="@VERSION@">
2 <description>for system equilibration or data collection</description>
3 <macros>
4 <import>macros.xml</import>
5 </macros>
6 <expand macro="requirements" />
7 <command detect_errors="exit_code"><![CDATA[
8 #if $mdp.mdpfile == "custom":
9 ln -s '$mdp.mdp_input' ./md.mdp &&
10 #end if
11 #if $mdp.mdpfile == "default":
12 ln -s '$md' ./md.mdp &&
13 #end if
14
15 ln -s '$gro_input' ./inp.gro &&
16 ln -s '$top_input' ./top_input.top &&
17
18 #if $posres.posres_bool == "true":
19 ln -s '$posres.itp_inp' ./posres.itp &&
20 #end if
21
22 #if $cpt_inp.cpt_bool == "yes":
23 ln -s '$cpt_inp.cpt_in' ./inp.cpt &&
24 #end if
25
26 gmx grompp
27 -f ./md.mdp
28 -c ./inp.gro
29 #if $cpt_inp.cpt_bool == "yes":
30 -t ./inp.cpt
31 #end if
32 #if $posres.posres_bool == "true":
33 -r ./inp.gro
34 #end if
35 -p ./top_input.top
36 -o outp.tpr &>> verbose.txt &&
37
38
39 gmx mdrun -deffnm outp &>> verbose.txt
40
41 #if $str == 'pdb' or $str == 'both'
42 && gmx editconf -f outp.gro -o outp.pdb &>> verbose.txt
43 #end if
44
45 && cat md.mdp &>> verbose.txt
46
47 ]]></command>
48 <configfiles>
49 <!-- .mdp file for the gromacs simulation -->
50 <configfile name="md">
51 #if $mdp.mdpfile == 'default':
52 title = OPLS Lysozyme MD simulation
53 ; Run parameters
54 integrator = $mdp.integrator ; leap-frog integrator
55 nsteps = $mdp.md_steps ; 2 * 500000 = 1000 ps (1 ns)
56 dt = $mdp.step_length ; 2 fs
57 ; Output control
58 nstxout = $mdp.write_freq ; save coordinates every 10.0 ps
59 nstvout = $mdp.write_freq ; save velocities every 10.0 ps
60 nstenergy = $mdp.write_freq ; save energies every 10.0 ps
61 nstlog = $mdp.write_freq ; update log file every 10.0 ps
62 nstxout-compressed = $mdp.write_freq ; save compressed coordinates every 10.0 ps
63 ; nstxout-compressed replaces nstxtcout
64 compressed-x-grps = System ; group(s) to write to the compressed trajectory file
65 ; Bond parameters
66 continuation = $cpt_inp.cpt_bool ; Restarting after NPT
67 constraint_algorithm = lincs ; holonomic constraints
68 constraints = $mdp.constraints ; all bonds (even heavy atom-H bonds) constrained
69 lincs_iter = 1 ; accuracy of LINCS
70 lincs_order = 4 ; also related to accuracy
71 ; Neighborsearching
72 cutoff-scheme = $mdp.cutoffscheme
73 ns_type = grid ; search neighboring grid cells
74 nstlist = 10 ; 20 fs, largely irrelevant with Verlet scheme
75 rcoulomb = $mdp.rcoulomb ; Short-range electrostatic cut-off
76 rlist = $mdp.rlist ; Cut-off distance for the short-range neighbor list.
77 rvdw = $mdp.rvdw ; Short-range Van der Waals cut-off
78 ; Electrostatics
79 coulombtype = $mdp.coulombtype ; method for electrostatics calculations e.g. PME
80 pme_order = 4 ; cubic interpolation
81 fourierspacing = 0.16 ; grid spacing for FFT
82 ; Temperature coupling is on
83 tcoupl = V-rescale ; modified Berendsen thermostat
84 tc-grps = Protein Non-Protein ; two coupling groups - more accurate
85 tau_t = 0.1 0.1 ; time constant, in ps
86 ref_t = $mdp.temperature $mdp.temperature ; reference temperature, one for each group, in K
87 ; Periodic boundary conditions
88 pbc = xyz ; 3-D PBC
89 ; Dispersion correction
90 DispCorr = EnerPres ; account for cut-off vdW scheme
91 ; Velocity generation
92 gen_vel = no ; Velocity generation is off
93 #end if
94 #if $posres.posres_bool == "true":
95 define = -DPOSRES ; position restrain the protein
96 refcoord_scaling = com
97 #end if
98 #if $ensemble == "nvt":
99 pcoupl = no ; no pressure coupling in NVT
100 #else:
101 ; Pressure coupling is on
102 pcoupl = Parrinello-Rahman ; Pressure coupling on in NPT
103 pcoupltype = isotropic ; uniform scaling of box vectors
104 tau_p = 2.0 ; time constant, in ps
105 ref_p = 1.0 ; reference pressure, in bar
106 compressibility = 4.5e-5 ; isothermal compressibility of water, bar^-1
107 #end if
108
109 </configfile>
110
111 </configfiles>
112 <inputs>
113 <param argument="gro_input" type="data" format='gro' label="GRO structure file"/>
114 <param argument="top_input" type="data" format='top' label="Topology (TOP) file"/>
115 <conditional name="cpt_inp">
116 <param name="cpt_bool" type="select" label="Use a checkpoint (CPT) file" help="CPT file from a previous MD run">
117 <option value="yes">Continue simulation from a CPT file</option>
118 <option value="no" selected="true">No CPT input</option>
119 </param>
120 <when value="yes">
121 <param argument="cpt_in" type="data" format='cpt' label="Checkpoint file"/>
122 </when>
123 <when value="no"/>
124 </conditional>
125 <param name="cpt_out" type="select" label="Produce a checkpoint (CPT) file" help="Produce CPT file for a subsequent MD run">
126 <option value="true">Produce CPT output</option>
127 <option value="false" selected="true">No CPT output</option>
128 </param>
129
130 <conditional name="posres">
131 <param name="posres_bool" type="select" label="Apply position restraints" help="Used e.g. for equilibration of solvent around a protein" value="false">
132 <option value="true">Apply position restraints</option>
133 <option value="false" selected="true">No position restraints</option>
134 </param>
135 <when value="true">
136 <param argument="itp_inp" type="data" format='itp' label="Position restraint (ITP) file"/>
137 </when>
138 <when value="false"/>
139 </conditional>
140
141 <param name="ensemble" label="Ensemble" type="select" help="NVT ensemble (constant number of particles, volume and temperature) or NPT ensemble (constant number of particles, pressure and temperature)">
142 <option value="nvt">Isothermal-isochoric ensemble (NVT)</option>
143 <option value="npt">Isothermal-isobaric ensemble (NPT)</option>
144 </param>
145
146 <expand macro="md_inputs"/>
147 </inputs>
148 <outputs>
149 <data name="output1" format="gro" from_work_dir="outp.gro">
150 <filter>str == 'gro' or str == 'both'</filter>
151 </data>
152 <data name="output2" format="pdb" from_work_dir="outp.pdb">
153 <filter>str == 'pdb' or str == 'both'</filter>
154 </data>
155 <data name="output3" format="trr" from_work_dir="outp.trr">
156 <filter>traj == 'trr' or traj == 'both'</filter>
157 </data>
158 <data name="output4" format="xtc" from_work_dir="outp.xtc">
159 <filter>traj == 'xtc' or traj == 'both'</filter>
160 </data>
161 <data name="output5" format="cpt" from_work_dir="outp.cpt">
162 <filter>cpt_out</filter>
163 </data>
164
165 <data name="report" format="txt" from_work_dir="verbose.txt">
166 <filter>capture_log</filter>
167 </data>
168 </outputs>
169
170 <tests>
171 <test>
172 <param name="gro_input" value="npt.gro" />
173 <param name="top_input" value="topol_solv.top" />
174 <param name="cpt_bool" value="yes" />
175 <param name="cpt_in" value="npt.cpt" />
176 <param name="mdpfile" value="custom" />
177 <param name="mdp_input" value="md.mdp" />
178 <param name="traj" value="trr"/>
179 <param name="str" value="gro"/>
180 <param name="ensemble" value="npt" />
181 <param name="posres_bool" value="false" />
182 <output name="output1" file="md_0_1.gro" ftype="gro" compare="sim_size"/>
183 <output name="output3" file="md_0_1.trr" ftype="trr" compare="sim_size"/>
184 </test>
185
186 <test>
187 <param name="gro_input" value="npt.gro" />
188 <param name="top_input" value="topol_solv.top" />
189 <param name="cpt_bool" value="yes" />
190 <param name="cpt_in" value="npt.cpt" />
191 <param name="traj" value="trr"/>
192 <param name="str" value="both"/>
193 <expand macro="test_params"/>
194 <param name="ensemble" value="npt" />
195 <param name="posres_bool" value="false" />
196 <output name="output1" file="md_0_1.gro" ftype="gro" compare="sim_size"/>
197 <output name="output2" file="md_0_1.pdb" ftype="pdb" compare="sim_size"/>
198 <output name="output3" file="md_0_1.trr" ftype="trr" compare="sim_size"/>
199 </test>
200
201 <test>
202 <param name="gro_input" value="em.gro" />
203 <param name="top_input" value="topol_solv.top" />
204 <param name="posres_bool" value="true" />
205 <param name="itp_inp" value="posres.itp" />
206 <param name="cpt_bool" value="no" />
207 <param name="cpt_out" value="true" />
208 <param name="traj" value="xtc"/>
209 <param name="str" value="pdb"/>
210 <param name="ensemble" value="nvt" />
211 <expand macro="test_params"/>
212
213 <output name="output2" file="nvt.pdb" ftype="pdb" compare="sim_size"/>
214 <output name="output4" file="nvt.xtc" ftype="xtc" compare="sim_size"/>
215 <output name="output5" file="nvt.cpt" ftype="cpt" compare="sim_size"/>
216
217 </test>
218 </tests>
219
220 <help><![CDATA[
221
222 .. class:: infomark
223
224 **What it does**
225
226 This tool performs a molecular dynamics simulation with GROMACS.
227
228 _____
229
230 .. class:: infomark
231
232 **Input**
233
234 - GRO structure file.
235 - Topology (TOP) file.
236
237 A variety of other options can also be specified:
238 - MDP parameter file to take advantage of all GROMACS features. Otherwise, choose parameters through the Galaxy interface. See the `manual`_ for more information on the options.
239 - Accepting and producing checkpoint (CPT) input/output files, which allows sequential MD simulations, e.g. when performing NVT and NPT equilibration followed by a production simulation.
240 - Position restraint (ITP) file, useful for equilibrating solvent around a protein.
241 - Choice of ensemble: NVT or NPT.
242 - Whether to return trajectory (XTC or TRR) and/or structure (GRO or PDB) files.
243
244 .. _`manual`: http://manual.gromacs.org/documentation/2018/user-guide/mdp-options.html
245
246 _____
247
248
249 .. class:: infomark
250
251 **Output**
252
253 - Structure and/or trajectory files as specified in the input.
254
255 ]]></help>
256
257 <expand macro="citations" />
258 </tool>