comparison mmpbsa_mmgbsa.xml @ 2:51023da731c0 draft

"planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/ commit 4a3f58846bcad26240ccdc6b76e8f4d2cbe63631"
author chemteam
date Mon, 25 Jan 2021 11:14:40 +0000
parents d09f116dfca5
children 2c62c4422f7a
comparison
equal deleted inserted replaced
1:d09f116dfca5 2:51023da731c0
1 <tool id="mmpbsa_mmgbsa" name="mmpbsa mmgbsa" version="@VERSION@.1"> 1 <tool id="mmpbsa_mmgbsa" name="MMPBSA/MMGBSA" version="@TOOL_VERSION@+galaxy@GALAXY_VERSION@">
2 <description>- estimate ligand binding affinities 2 <description>tool for estimating ligand binding affinities</description>
3 </description> 3 <macros>
4 <macros> 4 <import>macros.xml</import>
5 <import>macros.xml</import> 5 <token name="@GALAXY_VERSION@">0</token>
6 </macros> 6 </macros>
7 <expand macro="requirements"> 7 <expand macro="requirements">
8 <requirement type="package" version="2.11.1">jinja2</requirement> 8 <requirement type="package" version="2.11.2">jinja2</requirement>
9 </expand> 9 </expand>
10 <command detect_errors="exit_code"> 10 <command detect_errors="exit_code"><![CDATA[
11 <![CDATA[ 11 python '$mmpbsa_script' '$inputs' &&
12 python '$mmpbsa_script' '$inputs' && 12 PATH_TO_MMPBSA=\$(dirname `which MMPBSA.py`) &&
13 PATH_TO_MMPBSA=\$(dirname `which MMPBSA.py`) && 13 export AMBERHOME=\$(dirname \$PATH_TO_MMPBSA) &&
14 export AMBERHOME=\$(dirname \$PATH_TO_MMPBSA) && 14 #if $input.simulation.solvatedcomplex:
15 #if $input.simulation.solvatedcomplex: 15 MMPBSA.py -O -i '$parameteroutfile' -sp '$input.simulation.solvatedcomplex' -cp '$input.simulation.complex' -rp '$input.simulation.receptor' -lp '$input.simulation.ligand' -y '$input.simulation.trajcomplex' -o '$resultoutfile' -do '$decompoutfile'
16 MMPBSA.py -O -i '$parameteroutfile' -sp '$input.simulation.solvatedcomplex' -cp '$input.simulation.complex' -rp '$input.simulation.receptor' -lp '$input.simulation.ligand' -y '$input.simulation.trajcomplex' -o '$resultoutfile' -do '$decompoutfile' 16 #else:
17 #else: 17 MMPBSA.py -O -i '$parameteroutfile' -cp '$input.simulation.complex' -rp '$input.simulation.receptor' -lp '$input.simulation.ligand' -y '$input.simulation.trajcomplex' -o '$resultoutfile' -do '$decompoutfile'
18 MMPBSA.py -O -i '$parameteroutfile' -cp '$input.simulation.complex' -rp '$input.simulation.receptor' -lp '$input.simulation.ligand' -y '$input.simulation.trajcomplex' -o '$resultoutfile' -do '$decompoutfile' 18 #end if
19 #end if 19 ]]></command>
20 20 <configfiles>
21 ]]> 21 <inputs name="inputs"/>
22 </command> 22 <configfile name="mmpbsa_script"><![CDATA[
23 <configfiles>
24 <inputs name="inputs"/>
25 <configfile name="mmpbsa_script">
26 <![CDATA[
27
28 import os 23 import os
29 import sys 24 import sys
30 import json 25 import json
31 26
32 from jinja2 import Environment, FileSystemLoader 27 from jinja2 import Environment, FileSystemLoader
41 print(params) 36 print(params)
42 37
43 with open("$parameteroutfile",'w+') as f: 38 with open("$parameteroutfile",'w+') as f:
44 f.write(template.render(params)) 39 f.write(template.render(params))
45 40
46 ]]> 41
47 </configfile> 42 ]]></configfile>
48 </configfiles> 43 </configfiles>
49 <inputs> 44 <inputs>
50 <section name="input" title="Input" expanded="true"> 45 <section name="input" title="Input" expanded="true">
51 <conditional name="simulation"> 46 <conditional name="simulation">
52 <param name="simtype" type="select" label="Single or Multiple Trajectories" help="For a single complex in water choose Single. For complex, receptor and ligand trajectories choose multiple"> 47 <param name="simtype" type="select" label="Single or Multiple Trajectories" help="For analysis of a single complex in water choose Single. For separate complex, receptor and ligand trajectories choose Multiple.">
53 <option selected="True" value="single">Single Trajectory Protocol (STP)</option> 48 <option selected="True" value="single">Single Trajectory Protocol (STP)</option>
54 <option value="multiple">Multiple Trajectory Protocol (MTP)</option> 49 <option value="multiple">Multiple Trajectory Protocol (MTP)</option>
55 </param> 50 </param>
56 <when value="single"> 51 <when value="single">
57 <param format="txt" name="ligand" type="data" label="AMBER prmtop input for Ligand"/> 52 <param format="txt" name="ligand" type="data" label="AMBER prmtop input for Ligand"/>
58 <param format="txt" name="receptor" type="data" label="AMBER prmtop input for Receptor"/> 53 <param format="txt" name="receptor" type="data" label="AMBER prmtop input for Receptor"/>
59 <param format="txt" name="complex" type="data" label="AMBER prmtop input for Complex"/> 54 <param format="txt" name="complex" type="data" label="AMBER prmtop input for Complex"/>
60 <param format="txt" optional="true" name="solvatedcomplex" type="data" label="AMBER prmtop input for Solvated Complex" help="This is optional. Not required if trajectory already has solvent removed"/> 55 <param format="txt" optional="true" name="solvatedcomplex" type="data" label="AMBER prmtop input for Solvated Complex" help="This is optional. Not required if trajectory already has solvent removed"/>
61 <param format="netcdf" name="trajcomplex" type="data" label="NetCDF trajectory input for Complex" help="Trajectory of the (solvated) complex"/> 56 <param format="netcdf" name="trajcomplex" type="data" label="NetCDF trajectory input for Complex" help="Trajectory of the (solvated) complex"/>
62 </when> 57 </when>
63 <when value="multiple"> 58 <when value="multiple">
64 <param format="txt" name="ligand" type="data" label="AMBER prmtop input for Ligand"/> 59 <param format="txt" name="ligand" type="data" label="AMBER prmtop input for Ligand"/>
65 <param format="txt" name="receptor" type="data" label="AMBER prmtop input for Receptor"/> 60 <param format="txt" name="receptor" type="data" label="AMBER prmtop input for Receptor"/>
66 <param format="txt" name="complex" type="data" label="AMBER prmtop input for Complex"/> 61 <param format="txt" name="complex" type="data" label="AMBER prmtop input for Complex"/>
67 <param format="txt" optional="true" name="solvatedcomplex" type="data" label="AMBER prmtop input for Solvated Complex" help="This is optional. Not required if trajectory alraeady has solvent removed"/> 62 <param format="txt" optional="true" name="solvatedcomplex" type="data" label="AMBER prmtop input for Solvated Complex" help="This is optional. Not required if trajectory already has solvent removed"/>
68 <param format="netcdf" name="trajligand" type="data" label="NetCDF trajectory input for Ligand"/> 63 <param format="netcdf" name="trajligand" type="data" label="NetCDF trajectory input for Ligand"/>
69 <param format="netcdf" name="trajreceptor" type="data" label="NetCDF trajectory input for Receptor"/> 64 <param format="netcdf" name="trajreceptor" type="data" label="NetCDF trajectory input for Receptor"/>
70 <param format="netcdf" name="trajcomplex" type="data" label="NetCDF trajectory input for Complex"/> 65 <param format="netcdf" name="trajcomplex" type="data" label="NetCDF trajectory input for Complex"/>
71 </when> 66 </when>
72 </conditional> 67 </conditional>
73 </section> 68 </section>
74 <section name="allparams" title="General parameters" expanded="false"> 69 <section name="allparams" title="General parameters" expanded="true">
75 <param name="startframe" type="integer" value="1" label="First frame to analyse" min="1" max="100000000"/> 70 <param name="startframe" type="integer" value="1" label="First frame to analyse" min="1" max="100000000"/>
76 <param name="endframe" type="integer" value="9999999" label="Final frame to analyse" min="1" max="100000000"/> 71 <param name="endframe" type="integer" value="9999999" label="Final frame to analyse" min="1" max="100000000"/>
77 <param name="interval" type="integer" value="1" label="interval between frames analysed" min="1" max="10000"/> 72 <param name="interval" type="integer" value="1" label="Interval between frames analyzed" min="1" max="10000"/>
78 <param name="entropy" type="boolean" checked="true" truevalue="1" falsevalue="0" label="quasi-harmonic entropy calculation" help="Calculate the quasi-harmonic entropy"/> 73 <param name="entropy" type="boolean" checked="true" truevalue="1" falsevalue="0" label="Perform quasi-harmonic entropy calculation?" help="Calculate the quasi-harmonic entropy"/>
79 <param name="use_sander" type="boolean" checked="false" label="use sander" truevalue="1" falsevalue="0" help="defaults to false (will use sander if needed)."/> 74 <param name="use_sander" type="boolean" checked="false" label="Use sander" truevalue="1" falsevalue="0" help="Forces MMPBSA.py to use sander for energy calculations, even when mmpbsa_py_energy will suffice. Default behavior is to use mmpbsa_py_energy where possible."/>
80 <param name="verbose" type="integer" value="2" label="verbosity" min="0" max="3" help="0 - not verbose 3 - ultra verbose"/> 75 <param name="keep_files" type="boolean" checked="false" truevalue="1" falsevalue="0" label="Keep additional files?" help="If specified, temporary files will be kept and stored in a collection, which may be helpful for debugging."/>
81 <param name="keep_files" type="boolean" checked="false" truevalue="1" falsevalue="0" label="keep additional files" help="defaults to false, no extra files kept"/> 76 <param name="strip_mask" type="text" value=":WAT:Cl-:Na+" label="Strip mask" help="Enter a mask for removing unneeded atoms (water and ions) from the solvated prmtop file"/>
82 <param name="strip_mask" type="text" value=":WAT:Cl-:Na+" label="Strip mask" help="Enter a mask for removing unneeded atoms (water/ions)from the solvated prmtop"/> 77 </section>
83 </section> 78 <section name="calcdetails" title="Details of calculation and parameters" expanded="true">
84 <section name="calcdetails" title="Details of calculation and parameters" expanded="true"> 79 <conditional name="gb_pb_calc">
85 <conditional name="gbcalc"> 80 <param name="calctype" type="select" label="GB or PB calculation?" help="Calculate the electrostatic contribution to the free energy with the Poisson-Boltzmann equation or the General Born approximation">
86 <param name="calctype" type="select" label="General Born calculation" help="Choose carry out General Born Calculation"> 81 <option selected="True" value="gb">General Born (GB)</option>
87 <option selected="True" value="yes">yes</option> 82 <option value="pb">Poisson-Boltzmann (PB)</option>
88 <option value="no">no</option> 83 </param>
89 </param> 84 <when value="gb">
90 <when value="yes"> 85 <param name="igb" type="select" value="5" label="GB model to use (igb)" help="5 options are available. Consult the AmberTools manual for more details. Note that some missing values (e.g. 3 and 4) are no longer supported.">
91 <param name="igb" type="integer" value="5" label="igb GB model" min="0" max="7" help="5 - default"/> 86 <!-- <option value="0">0 - no generalized Born term is used</option> -->
92 <param name="saltcon" type="float" value="0.150" label="Salt Concentration (M)" min="0.0" max="2.0"/> 87 <option value="1">1 - Basic pairwise generalized Born model</option>
93 </when> 88 <option value="2">2 - OBC model</option>
94 <when value="no"></when> 89 <option value="5">5 - alternative OBC model</option>
95 </conditional> 90 <option value="7">7 - GBn model</option>
96 <conditional name="pbcalc"> 91 <option value="8">8 - alternative GBn model</option>
97 <param name="calctype" type="select" label="Poisson Boltzman calculation" help="Choose carry out Poisson Boltzman Calculation"> 92 </param>
98 <option value="yes">yes</option> 93 <param name="saltcon" type="float" value="0" label="Salt concentration (M)" min="0.0" max="6.0"/>
99 <option selected="True" value="no">no</option> 94 <param name="surfoff" type="float" value="0" label="Offset to correct (by addition) the value of the non-polar contribution to the solvation free energy term"/>
100 </param> 95 <!-- <param name="surften" type="float" value="0.0072" label="Surface tension">
101 <when value="yes"> 96 <help><![CDATA[Surface tension in kcal / mol / Å<sup>2</sup>]]></help>
102 <param name="istrng" type="float" value="0.15" label="Ionic Strength (M)" min="0.0" max="2.0"/> 97 </param> -->
103 <param name="fillratio" type="float" value="4.0" label="Fill ratio" help="The ratio between the longest dimension of the rectangular finite-difference grid and that of the solute" min="0.0" max="10.0"/> 98 <param name="molsurf" type="boolean" checked="false" truevalue="1" falsevalue="0" label="Use the molsurf algorithm to calculate the surface area for the nonpolar solvation term?" help="The default behavior is to use LCPO (Linear Combination of Pairwise Overlaps)."/>
104 <param name="inp" type="integer" value="1" label="Nonpolar solvation method" min="1" max="2" help="1 - default"/> 99 <param name="probe" type="float" value="1.4" label="Radius of the probe molecule (supposed to be the size of a solvent molecule), in Å, to use when determining the molecular surface" help="Only applicable when the molsurf algorithm is selected." min="0"/>
105 <param name="radiopt" type="integer" value="0" label="Use optimized radii?" min="0" max="2" help="0 - default do not use these"/> 100 <param name="msoffset" type="float" value="0" label="Offset to apply to the individual atomic radii in the system when calculating the molsurf surface." />
106 </when> 101 </when>
107 <when value="no"></when> 102 <when value="pb">
108 </conditional> 103 <param name="istrng" type="float" value="0.15" label="Ionic strength (M)" min="0.0" max="2.0"/>
109 <conditional name="decomposition"> 104 <param name="fillratio" type="float" value="4.0" label="Fill ratio" help="The ratio between the longest dimension of the rectangular finite-difference grid and that of the solute" min="0.0" max="10.0"/>
110 <param name="decomposition" type="select" label="Decomposition Analysis" help="Choose to carry out decomposition analysis"> 105 <param name="inp" type="integer" value="1" label="Nonpolar solvation method" min="1" max="2" help="1 - default"/>
111 <option selected="True" value="yes">yes</option> 106 <param name="radiopt" type="integer" value="0" label="Use optimized radii?" min="0" max="2" help="0 - default do not use these"/>
112 <option value="no">no</option> 107 <param name="cavity_offset" type="float" value="-0.5692" label="Offset value used to correct non-polar free energy contribution" help="Not used for APBS"/>
113 </param> 108 <!-- <param name="cavity_surften" type="float" value="0.0378" label="Surface tension" help="Surface tension in kcal / mol / Ų"/> -->
114 <when value="yes"> 109 <param name="exdi" type="float" value="80.0" label="External dielectric constant"/>
115 <param name="csv_format" type="boolean" checked="true" truevalue="1" falsevalue="0" label="CSV format" help="Defaults to true, CSV format. Choose false for unformatted text output"/> 110 <param name="indi" type="float" value="1.0" label="Internal dielectric constant"/>
116 <param name="dec_verbose" type="integer" value="1" label="Decomposition Verbosity" min="0" max="2" help="choose how verbose the output is. 0 - not verbose, 2- very verbose"/> 111 <param name="scale" type="float" value="2.0" label="Resolution of the Poisson Boltzmann grid" help="Resolution of the Poisson Boltzmann grid, equal to the reciprocal of the grid spacing."/>
117 <param name="idecomp" type="integer" value="1" label="Energy Decomposition Scheme" min="1" max="4" help="choose an energy decomposition scheme. 1 - 2 - 3 - 4"/> 112 <param name="linit" type="integer" value="1000" label="Maximum number of iterations of the linear Poisson Boltzmann equation to try"/>
118 </when> 113 <param name="prbrad" type="select" label="Solvent probe radius in Å">
119 <when value="no"></when> 114 <option value="1.4" selected="True">1.4</option>
120 </conditional> 115 <option value="1.6">1.6</option>
121 </section> 116 </param>
122 </inputs> 117 <!-- <param name="sander_apbs" type="boolean" truevalue="1" falsevalue="0" label="" help=""/> -->
123 <outputs> 118 </when>
124 <data format="txt" name="resultoutfile" label="${tool.name}: Statistics"/> 119 </conditional>
125 <data format="txt" name="decompoutfile" label="${tool.name}: Decomposition Statistics"/> 120 <conditional name="decomposition">
126 <data format="txt" name="parameteroutfile" label="${tool.name}: parameter output"/> 121 <param name="decomposition" type="select" label="Carry out decomposition analysis?" help="Choose to carry out decomposition analysis">
127 </outputs> 122 <option selected="True" value="yes">yes</option>
128 <tests> 123 <option value="no">no</option>
129 <test> 124 </param>
130 <param name="ligand" value="ligand.prmtop" ftype="txt"/> 125 <when value="yes">
131 <param name="receptor" value="receptor.prmtop" ftype="txt"/> 126 <param name="csv_format" type="boolean" checked="true" truevalue="1" falsevalue="0" label="CSV format" help="Output in CSV format; choose false for unformatted text output"/>
132 <param name="complex" value="complex.prmtop" ftype="txt"/> 127 <param name="dec_verbose" type="select" value="0" label="Decomposition verbosity" help="Choose verbosity of the decomposition output file. Note that if the verbosity level selected is too high and the parser cannot find the requested information, the job will fail.">
133 <param name="trajcomplex" value="1err_desolvated_mini.nc" ftype="netcdf"/> 128 <option value="0">DELTA energy, total contribution only</option>
134 <conditional name="allparams"> 129 <option value="1" selected="true">DELTA energy, total, sidechain, and backbone contributions</option>
135 <param name="entropy" value="false"/> 130 <option value="2">Complex, Receptor, Ligand, and DELTA energies, total contribution only</option>
136 </conditional> 131 <option value="3">Complex, Receptor, Ligand, and DELTA energies, total, sidechain, and backbone contributions</option>
137 <conditional name="gbcalc"> 132 </param>
138 <param name="calctype" value="yes"/> 133 <param name="idecomp" type="select" value="1" label="Energy decomposition scheme to use" help="Choose an energy decomposition scheme.">
139 <param name="igb" value="2"/> 134 <option value="1">1 - Per-residue decomp with 1-4 terms added to internal potential terms</option>
140 <param name="saltcon" value="0.100"/> 135 <option value="2">2 - Per-residue decomp with 1-4 EEL added to EEL and 1-4 VDW added to VDW potential terms.</option>
141 </conditional> 136 <option value="3">3 - Pairwise decomp with 1-4 terms added to internal potential terms</option>
142 <conditional name="decomposition"> 137 <option value="4">4 - Pairwise decomp with 1-4 EEL added to EEL and 1-4 VDW added to VDW potential terms</option>
143 <param name="decomposition" value="no"/> 138 </param>
144 </conditional> 139 </when>
145 <output name="resultoutfile"> 140 <when value="no"/>
146 <assert_contents> 141 </conditional>
147 <has_text text="GENERALIZED BORN:"/> 142 </section>
148 <has_text text="DELTA TOTAL -53."/> 143 </inputs>
149 </assert_contents> 144 <outputs>
150 </output> 145 <data format="txt" name="resultoutfile" label="${tool.name}: Statistics"/>
151 </test> 146 <data format="txt" name="decompoutfile" label="${tool.name}: Decomposition statistics">
152 <test> 147 <filter>calcdetails['decomposition']['decomposition'] == 'yes'</filter>
153 <param name="ligand" value="ligand.prmtop" ftype="txt"/> 148 </data>
154 <param name="receptor" value="receptor.prmtop" ftype="txt"/> 149 <data format="txt" name="parameteroutfile" label="${tool.name}: Parameter output"/>
155 <param name="complex" value="complex.prmtop" ftype="txt"/> 150 <collection name="tempfiles" type="list" label="${tool.name}: Temporary files">
156 <param name="trajcomplex" value="1err_desolvated_mini.nc" ftype="netcdf"/> 151 <filter>allparams['keep_files'] == 1</filter>
157 <conditional name="allparams"> 152 <discover_datasets pattern="_MMPBSA(?P&lt;designation&gt;.+)" format="txt"/>
158 <param name="startframe" value="1"/> 153 </collection>
159 <param name="endframe" value="1"/> 154 </outputs>
160 <param name="entropy" value="false"/> 155 <tests>
161 </conditional> 156 <test>
162 <conditional name="gbcalc"> 157 <param name="ligand" value="ligand.prmtop" ftype="txt"/>
163 <param name="calctype" value="yes"/> 158 <param name="receptor" value="receptor.prmtop" ftype="txt"/>
164 <param name="igb" value="2"/> 159 <param name="complex" value="complex.prmtop" ftype="txt"/>
165 <param name="saltcon" value="0.100"/> 160 <param name="trajcomplex" value="1err_desolvated_mini.nc" ftype="netcdf"/>
166 </conditional> 161 <conditional name="allparams">
167 <conditional name="pbcalc"> 162 <param name="entropy" value="0"/>
168 <param name="calctype" value="yes"/> 163 <param name="keep_files" value="1"/>
169 <param name="istrng" value="0.100"/> 164 </conditional>
170 </conditional> 165 <conditional name="gb_pb_calc">
171 <conditional name="decomposition"> 166 <param name="calctype" value="gb"/>
172 <param name="decomposition" value="yes"/> 167 <param name="igb" value="2"/>
173 </conditional> 168 <param name="saltcon" value="0.100"/>
174 <output name="resultoutfile"> 169 </conditional>
175 <assert_contents> 170 <conditional name="">
176 <has_text text="GENERALIZED BORN:"/> 171 <param name="decomposition" value="no"/>
177 <has_text text="DELTA TOTAL -56."/> 172 </conditional>
178 <has_text text="POISSON BOLTZMANN:"/> 173 <output name="resultoutfile">
179 <has_text text="DELTA TOTAL -47"/> 174 <assert_contents>
180 </assert_contents> 175 <has_text text="GENERALIZED BORN:"/>
181 </output> 176 <has_text text="DELTA TOTAL -53."/>
182 <output name="decompoutfile"> 177 </assert_contents>
183 <assert_contents> 178 </output>
184 <has_text text="idecomp = 1: Per-residue decomp adding 1-4 interactions to Internal"/> 179 </test>
185 <has_text text="HIE 240,R HIE 240"/> 180 <test>
186 <has_text text="RAL 241,L RAL 1,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0"/> 181 <param name="ligand" value="ligand.prmtop" ftype="txt"/>
187 </assert_contents> 182 <param name="receptor" value="receptor.prmtop" ftype="txt"/>
188 </output> 183 <param name="complex" value="complex.prmtop" ftype="txt"/>
189 </test> 184 <param name="trajcomplex" value="1err_desolvated_mini.nc" ftype="netcdf"/>
190 </tests> 185 <conditional name="allparams">
191 <help> 186 <param name="startframe" value="1"/>
192 <![CDATA[ 187 <param name="endframe" value="1"/>
193 .. class:: infomark 188 <param name="entropy" value="0"/>
194 189 </conditional>
195 **What it does** 190 <conditional name="gb_pb_calc">
196 191 <param name="calctype" value="pb"/>
197 This tool calculates the Molecular Mechanics Poisson-Boltzman Surface Area (MMPBSA) which is an estimate of the binding free energy between a ligand and a receptor. 192 <param name="istrng" value="0.100"/>
198 193 </conditional>
199 .. class:: infomark 194 <conditional name="decomposition">
200 195 <param name="decomposition" value="yes"/>
201 **How it works** 196 </conditional>
202 197 <output name="resultoutfile">
203 Prior to using this tool simulations of the ligand complexed with the receptor must be run. This tool, which wraps AmberTools will need a prmtop (Amber style parameter topology file for the receptor, ligand and the complex) and the trajectory in netCDF format. 198 <assert_contents>
204 199 <has_text text="POISSON BOLTZMANN:"/>
205 - Single Trajectory Estimate: A simulation of the complex in water is run in advance. The trajectory of this complex is used to estimate the MMPBSA or MMGBSA depending on the options chosen. A General Born (GB) calculation is recommended as this calculation finishes quickly. 200 <has_text text="DELTA TOTAL -47"/>
206 - Multiple Trajectory Estimate: A simulation of the complex in water, the receptor in water and the ligand in water are run in advance. This is useful the ligand is expected to have a significantly different conformation in solution vs in the complex. The trajectory of this complex is used to estimate the MMPBSA or MMGBSA depending on the options chosen. A General Born (GB) calculation is recommended as this calculation finishes quickly. 201 </assert_contents>
207 202 </output>
208 .. class:: infomark 203 <output name="decompoutfile">
209 204 <assert_contents>
210 **Outputs created** 205 <has_text text="idecomp = 1: Per-residue decomp adding 1-4 interactions to Internal"/>
211 206 <has_text text="HIE 240,R HIE 240"/>
212 - The statistics file which includes all information about the frames analysed and average energies. The DELTA G binding is estimated. If negative this is a favourable binding. Note that by default the entropy contribution to binding (unfavourable) is not calculated. A normal mode analysis is needed. 207 <has_text text="RAL 241,L RAL 1,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0"/>
213 - The decomposition file contains a breakdown of each residues contribution to the energy. For example using the default Energy Decomposition Scheme (1) the interaction of each residue with the rest of the system is calculated and listed. 208 </assert_contents>
214 - The parameter file contains the input parameters passed from Galaxy to MMPBSA.py in the expected MMPBSA input format. 209 </output>
215 210 </test>
216 .. class:: infomark 211 </tests>
217 212 <help><![CDATA[
218 **User guide and documentation** 213
219 214 .. class:: infomark
220 - The `AmberTools Manual`_ 215
221 - The `Amber Tutorial`_ on using MMPBSA.py 216 **What it does**
222 - There are many more complex flags available. This Galaxy wrapper only supports GB and PB binding free energies and decomposition. Parallel calculations are not supported at present. 217
223 - This Galaxy tool is based on MMPBSA.py. More details on options that are not details in the Manual and Tutorials can be found in the code - see "$CONDA_PREFIX/lib/python3.7/site-packages/MMPBSA_mods/input_parser.py" and "$CONDA_PREFIX/lib/python3.7/site-packages/MMPBSA_mods/main.py". 218 This tool calculates the Molecular Mechanics Poisson-Boltzman Surface Area (MMPBSA), which is an estimate of the binding free energy between a ligand and a receptor. It also can calculate the MMGBSA, which is a common alternative, replacing the Poisson-Boltzmann term with the General Born approximation.
224 219
225 .. class:: infomark 220 .. class:: infomark
226 221
227 **Test data** 222 **How it works**
228 223
229 - The test data for this tool comes from an `Amber Tutorial`_ and the original dataset_ is available. 224 Prior to using this tool, simulations of the ligand complexed with the receptor must be run. This tool, which wraps AmberTools, requires a prmtop (Amber parameter topology) file for the receptor, ligand and the complex and the trajectory in netCDF format.
230 - For convenience, water has been stripped from the .mdcrd trajectory and this has been converted to netcdf format. 225
231 226 - Single Trajectory Estimate: A single simulation of the complex in water is run. The trajectory of this complex is used to estimate the MMPBSA or MMGBSA, depending on the options chosen.
232 .. code-block:: python 227 - Multiple Trajectory Estimate: Separate simulations of the complex in water, the receptor in water and the ligand in water are run. This is useful if the ligand (or receptor) is expected to have a significantly different conformation in solution compared to in the complex, but is otherwise not recommended as it increases the uncertainty of the results. The trajectories are used to estimate the MMPBSA or MMGBSA depending on the options chosen.
233 228
234 import mdtraj as md 229 If simulations were performed using the Galaxy GROMACS tools, the topology (in top format) and trajectories (in xtc format) can be converted to Amber prmtop and netcdf formats using the Convert Parameters and MDTraj file converter tools respectively.
235 traj = md.load('1err_prod.mdcrd', top='1err.solvated.prmtop') 230
236 topology = traj.topology 231 .. class:: infomark
237 atoms_to_keep = topology.select('not water') 232
238 traj.restrict_atoms(atoms_to_keep) 233 **Outputs created**
239 traj.save('1err_desolvated.nc') 234
240 traj[0:2].save('1err_desolvated_mini.nc') 235 - The statistics file which includes all information about the frames analysed and average energies. The DELTA G binding is estimated. If negative this is a favourable binding. Note that by default the entropy contribution to binding (unfavourable) is not calculated. A normal mode analysis is needed.
241 236 - The parameter file contains the input parameters passed from Galaxy to MMPBSA.py in the expected MMPBSA input format.
242 237 - (Optional, if decomposition analysis is performed) The decomposition file contains a breakdown of each residue's contribution to the energy. For example, using the default energy decomposition scheme (1) the interaction of each residue with the rest of the system is calculated and listed.
243 .. _`Amber Tutorial`: http://ambermd.org/tutorials/advanced/tutorial3/py_script/index.htm 238 - (Optional, if the "Keep additional files?" option is chosen) A collection containing all temporary files generated in the course of the calculation. This may be useful for debugging.
244 .. _`AmberTools Manual`: https://ambermd.org/doc12/Amber18.pdf 239
245 .. _dataset: http://ambermd.org/tutorials/advanced/tutorial3/py_script/files/Est_Rec_top_mdcrd.tgz 240 .. class:: infomark
246 241
247 242 **User guide and documentation**
248 ]]> 243
249 </help> 244 - The `AmberTools Manual`_
250 <expand macro="citations"> 245 - The `Amber Tutorial`_ on using MMPBSA.py
251 <expand macro="mmpbsa_citation"/> 246 - There are many more complex flags available. This Galaxy wrapper only supports GB and PB binding free energies and decomposition. Parallel calculations are not supported at present.
252 </expand> 247
248 .. _`Amber Tutorial`: http://ambermd.org/tutorials/advanced/tutorial3/py_script/index.htm
249 .. _`AmberTools Manual`: https://ambermd.org/doc12/Amber18.pdf
250
251 ]]></help>
252 <expand macro="citations">
253 <expand macro="mmpbsa_citation"/>
254 </expand>
253 </tool> 255 </tool>