Mercurial > repos > chemteam > gmx_sim
comparison sim.xml @ 0:3c80e68af375 draft
"planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tools/gromacs commit 3b99f08f22b9e0c16c0a0adc82f8c16c1a25cedf"
| author | chemteam |
|---|---|
| date | Mon, 07 Oct 2019 12:37:19 -0400 |
| parents | |
| children | 9f9b35ba9882 |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:3c80e68af375 |
|---|---|
| 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> |
