view distance.xml @ 7:ffd6f8d159e1 draft

"planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/ commit 1b23e024af45cc0999d9142d07de6897d4189ec2"
author chemteam
date Mon, 24 Aug 2020 16:14:05 -0400
parents d540ea77b909
children
line wrap: on
line source

<tool id="mdanalysis_distance" name="Distance Analysis" version="@TOOL_VERSION@+galaxy@GALAXY_VERSION@">
    <description>- time series using MDAnalysis</description>
    <macros>
        <import>macros.xml</import>
        <token name="@GALAXY_VERSION@">0</token>
    </macros>   
    <expand macro="requirements" />
    <command detect_errors="exit_code">
<![CDATA[
    #if $inps.inps == 'one':
        python '$__tool_directory__/distance_single.py' 
            --isegid1 '$inps.segid1' 
            --iresid1 '$inps.resid1' 
            --iname1 '$inps.name1'
            --isegid2 '$inps.segid2'
            --iresid2 '$inps.resid2' 
            --iname2 '$inps.name2'
            --odistance_plot '$distance_plot'
        2>&1
    #elif $inps.inps == 'multiple':
        python '$__tool_directory__/distance_multiple.py' 
            --list1 '$inps.list1'
            --list2 '$inps.list2'
    #end if
            --itraj '$trajin' 
            --istr '$strin'
            --itrajext '$trajin.ext'
            --istrext '$strin.ext'
            --output '$output'
            $header

]]></command>
    <inputs>
        <expand macro="analysis_inputs"/>

        <conditional name="inps">
            <param argument="inps" type="select" label="Number of pairwise distances to calculate?">
                <option value="one" selected="true">One</option>
                <option value="multiple">Multiple</option>
            </param>
            <when value="one">
                <param name="segid1"  type="text" value="PRO" label="Segment ID of atom 1"/>
                <param name="resid1"  type="text" value="212" label="Residue ID of atom 1"/>
                <param name="name1"  type="text" value="OE2" label="Atom name of atom 1"/>
                <param name="segid2"  type="text" value="HET" label="Segment ID of atom 2"/>
                <param name="resid2"  type="text" value="3" label="Residue ID of atom 2"/>
                <param name="name2"  type="text" value="C1" label="Atom name of atom 2"/>
            </when>
            <when value="multiple">
                <param name="list1"  type="data" format="text" label="Selection groups (list 1)"/>
                <param name="list2"  type="data" format="text" label="Selection groups (list 2)"/>
            </when>
        </conditional>
        <param name="header" type="boolean" truevalue="--header" falsevalue="" label="Include header in output file"/>
    </inputs>
    <outputs>
        <data format="tabular" name="output" label="Distance Analysis raw data"/>
        <data format="png" name="distance_plot" label="Distance Analysis Plot">
            <filter>inps == 'one'</filter>
        </data>
    </outputs>
    <tests>
        <test>
            <expand macro="tests_inputs"/>
            <param name="segid1" value="PRO"/>
            <param name="resid1" value="212"/>
            <param name="name1" value="OE2"/>
            <param name="segid2" value="HET"/>
            <param name="resid2" value="3"/>
            <param name="name2" value="C1"/>
            <param name="header" value="false"/>
            <output name="output" file="Distance_Analysis_raw_data.tabular" />
        </test>
        <test>
            <expand macro="tests_inputs_gmx"/>
            <param name="segid1" value="SYSTEM"/>
            <param name="resid1" value="212"/>
            <param name="name1" value="OE2"/>
            <param name="segid2" value="SYSTEM"/>
            <param name="resid2" value="3"/>
            <param name="name2" value="C1"/>
            <param name="header" value="false"/>
            <output name="output">
                <assert_contents>
                    <has_n_columns n="2" />
                    <has_line_matching expression="0\s+3.893.*" />
                    <has_line_matching expression="14\s+3.262.*" />
                </assert_contents>
            </output>
        </test>
        <test>
            <expand macro="tests_inputs_gmx"/>
            <param name="inps" value="multiple"/>
            <param name="list1" value="list1.txt"/>
            <param name="list2" value="list2.txt"/>
            <param name="header" value="true"/>
            <output name="output">
                <assert_contents>
                    <has_n_columns n="2" />
                    <has_line_matching expression="Frame\s+resid_212_and_name_OE2-resid_3_and_name_C1" />
                    <has_line_matching expression="0\s+3.893.*" />
                    <has_line_matching expression="14\s+3.262.*" />
                </assert_contents>
            </output>
        </test>
    </tests>
    <help><![CDATA[
.. class:: infomark

**What it does**
        
This tool calculates and plots the distance between pairs of atoms. Two modes are 
available: single pair mode, where distances are calculated between two specified 
atoms, and multiple pair mode, where two lists of atoms need to be provided.

_____


.. class:: infomark

**Input**

       - Trajectory file  (DCD).
       - PDB file.

In single pair mode, segment IDs, residue IDs and names of two atoms are selected. 
Note that a MDAnalysis 'segment' is a larger organizational unit,  for example one 
protein or all the solvent molecules or simply the whole system.

In multiple pair mode, two files need to be uploaded, each with one or more atom 
groups defined using the MDAnalysis atom selection, each on a new line. For example:

::

    resid 163
    resid 56
    resid 12 and type N

All possible distances between the two sets of atom groups will be calculated. For 
example, if List 1 contains 5 atoms and List 2 contains 8 atoms, the output file will
contain 40 columns, each with the distance between one group in List 1 and one group
in List 2.

Note that in multiple pair mode, if the group has multiple atoms, the center of mass
will be used for the calculation.

_____

        
.. class:: infomark

**Output**

       - Tab-separated file of raw data of distance between two atoms calculated for each frame.
       - Image (as png) of the time series graph.


    ]]></help>
    <expand macro="citations" />
</tool>