Mercurial > repos > chemteam > pdbfixer
diff pdbfixer.xml @ 0:24bf162ef74b draft default tip
"planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/openmm commit 78cfada16486c61f1de167ed358f8a52fcbe9f70"
author | chemteam |
---|---|
date | Wed, 13 Apr 2022 16:21:56 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pdbfixer.xml Wed Apr 13 16:21:56 2022 +0000 @@ -0,0 +1,189 @@ +<tool id="pdbfixer" name="PDBFixer" version="@TOOL_VERSION@+galaxy@GALAXY_VERSION@"> + <description>to automatically fix a PDB file before performing molecular dynamics simulation</description> + <macros> + <token name="@TOOL_VERSION@">1.8.1</token> + <token name="@GALAXY_VERSION@">0</token> + </macros> + <requirements> + <requirement type="package" version="@TOOL_VERSION@">pdbfixer</requirement> + </requirements> + <command detect_errors="exit_code"><![CDATA[ + pdbfixer + '$pdb_input' + ## --pdbid and --url not implemented here, users can use the get_pdb tool + --output '$output' + --add-atoms='$add_atoms' ## which missing atoms to add: all, heavy, hydrogen, or none [default: all] + --keep-heterogens='$keep_heterogens' ## which heterogens to keep: all, water, or none [default: all] + $replace_nonstandard ## replace nonstandard residues with standard equivalents + $add_residues ## add missing residues + --ph='$ph' ## the pH to use for adding missing hydrogens [default: 7.0] + + #if $solvent.box.water_box == "true": + --water-box=$solvent.box.x $solvent.box.y $solvent.box.z ## add a water box. The value is the box dimensions in nm [example: --water-box=2.5 2.4 3.0] + --positive-ion='$solvent.positive_ion' ## positive ion to include in the water box: Cs+, K+, Li+, Na+, or Rb+ [default: Na+] + --negative-ion='$solvent.negative_ion' ## negative ion to include in the water box: Cl-, Br-, F-, or I- [default: Cl-] + --ionic-strength='$solvent.ionic_strength' ## molar concentration of ions to add to the water box [default: 0.0] + #end if + --verbose + + ]]></command> + <inputs> + <param format="pdb" name="pdb_input" type="data" label="PDB input file"/> + <param name="add_atoms" type="select" label="Missing atoms to be added"> + <option value="all" selected="true">All</option> + <option value="heavy">Heavy atoms only</option> + <option value="hydrogen">Hydrogen atoms only</option> + <option value="none">None</option> + </param> + <param name="keep_heterogens" type="select" label="Which heterogens to keep"> + <option value="all" selected="true">All</option> + <option value="water">Only water</option> + <option value="none">None</option> + </param> + <param name="replace_nonstandard" type="boolean" label="Replace nonstandard residues with standard equivalents?" truevalue="--replace-nonstandard" falsevalue="" value=""/> + <param name="add_residues" type="boolean" label="Add missing residues?" truevalue="--add-residues" falsevalue="" value=""/> + <param name="ph" type="float" min="0" max="14" value="7" label="pH" help="Ignored if not adding hydrogen atoms"/> + <section name="solvent" title="Solvent parameters" help="Note that you may prefer to modify solvent parameters using other tools."> + <conditional name="box"> + <param name="water_box" type="select" label="Add a water box?" help="Dimensions in nanometers"> + <option value="true">Yes</option> + <option value="false" selected="true">No</option> + </param> + <when value="true"> + <param name="x" type="float" min="0" value="0" label="Size in X dimension"/> + <param name="y" type="float" min="0" value="0" label="Size in Y dimension"/> + <param name="z" type="float" min="0" value="0" label="Size in Z dimension"/> + </when> + <when value="false" /> + </conditional> + <param name="positive_ion" type="select" label="Type of positive ion to add"> + <option value="Li+">Lithium (Li+)</option> + <option value="Na+" selected="true">Sodium (Na+)</option> + <option value="K+">Potassium (K+)</option> + <option value="Rb+">Rubidium (Rb+)</option> + <option value="Cs+">Cesium (Cs+)</option> + </param> + <param name="negative_ion" type="select" label="Type of negative ion to add"> + <option value="Cl-" selected="true">Chloride (Cl-)</option> + <option value="Br-">Bromide (Br-)</option> + <option value="F-">Fluoride (F-)</option> + <option value="I-">Iodide (I-)</option> + </param> + <param name="ionic_strength" type="float" min="0" max="10" value="0" label="Ionic strength" help="Molar concentration of ions to add to the water box"/> + </section> + </inputs> + <outputs> + <data name="output" format="pdb"/> + </outputs> + <tests> + <!-- pdbfixer test-data/broken.pdb -add-atoms=all -keep-heterogens=all -replace-nonstandard --> + <test> + <param name="pdb_input" value="broken.pdb"/> + <param name="add_atoms" value="all"/> + <param name="keep_heterogens" value="all"/> + <param name="replace_nonstandard" value="true"/> + <param name="add_residues" value="false"/> + <param name="ph" value="7"/> + <output name="output"> + <assert_contents> + <has_n_lines n="162"/> + <!-- check LYS8 is fixed --> + <has_text text="CD LYS A 8"/> + <has_text text="CE LYS A 8"/> + <!-- check hydration --> + <has_text_matching expression="H \n" n="81"/> + </assert_contents> + </output> + </test> + <!-- pdbfixer test-data/broken.pdb -add-atoms=heavy -keep-heterogens=all -replace-nonstandard -add-residues --> + <test> + <param name="pdb_input" value="broken.pdb"/> + <param name="add_atoms" value="heavy"/> + <param name="keep_heterogens" value="all"/> + <param name="replace_nonstandard" value="true"/> + <param name="add_residues" value="false"/> + <output name="output"> + <assert_contents> + <has_n_lines n="81"/> + <!-- check LYS8 is fixed --> + <has_text text="CD LYS A 8"/> + <has_text text="CE LYS A 8"/> + <!-- check no hydration --> + <has_text_matching expression="H \n" negate="true"/> + </assert_contents> + </output> + </test> + <test> + <param name="pdb_input" value="broken.pdb"/> + <param name="add_atoms" value="all"/> + <param name="keep_heterogens" value="all"/> + <param name="replace_nonstandard" value="true"/> + <param name="add_residues" value="false"/> + <param name="ph" value="14"/> + <param name="water_box" value="true"/> + <param name="x" value="5"/> + <param name="y" value="5"/> + <param name="z" value="5"/> + <param name="positive_ion" value="Li+"/> + <param name="negative_ion" value="I-"/> + <param name="ionic_strength" value="2"/> + <output name="output"> + <assert_contents> + <!-- seems insertion of water is random and not fully reproducible --> + <has_n_lines n="11482" delta="100"/> + <!-- check LYS8 is fixed --> + <has_text text="CD LYS A 8"/> + <has_text text="CE LYS A 8"/> + <!-- check hydration one less due to raised pH --> + <has_text_matching expression="ATOM.* H \n" n="80"/> + <!-- check water and ions --> + <has_text_matching expression="HOH" n="11041" delta="100"/> + <has_text_matching expression=" I .*\n" n="144"/> + <has_text_matching expression=" Li .*\n" n="144"/> + </assert_contents> + </output> + </test> + </tests> + <help><![CDATA[ +.. class:: infomark + +**What it does** + +Fixes any issues in a PDB file (for example, adding missing residues, or missing atoms) prior to performing molecular dynamics simulations. + +PDBFixer can do any or all of the following: + + - Add missing heavy atoms. + - Add missing hydrogen atoms. + - Build missing loops. + - Convert non-standard residues to their standard equivalents. + - Select a single position for atoms with multiple alternate positions listed. + - Delete unwanted chains from the model. + - Delete unwanted heterogens. + - Build a water box for explicit solvent simulations. + +_____ + + +.. class:: infomark + +**Input** + + - PDB file + +_____ + + +.. class:: infomark + +**Output** + + - PDB file + + ]]></help> + <citations> + <citation type="doi">10.1371/journal.pcbi.1005659</citation> + <citation type="bibtex">@misc{pdbfixer, author = {{Peter Eastman et al.}}, title = {PDBFixer}, url={https://github.com/openmm/PDBFixer}, abstract = {PDBFixer is an easy to use application for fixing problems in Protein Data Bank files in preparation for simulating them.}, urldate = {2022-03-25}, publisher = {GitHub}, year = {2022}, month = mar, }</citation> + </citations> +</tool> +