view PDAUG_AA_Property_Based_Peptide_Descriptor/PDAUG_AA_Property_Based_Peptide_Descriptor.xml @ 6:8158a2f59371 draft

"planemo upload for repository https://github.com/jaidevjoshi83/pdaug commit e8c8198105af7eab636fb2405e5ff335539ca14b"
author jay
date Sun, 31 Jan 2021 02:24:23 +0000
parents ce7100c6884f
children
line wrap: on
line source

<tool id="pdaug_aa_property_based_peptide_descriptor" name="PDAUG AA Property Based Peptide Descriptor" version="0.1.0">
  <description>Calculates amino acid property based peptide descriptors</description>

  <requirements>
    <requirement type="package" version="0.24.2">pandas</requirement>
    <requirement type="package" version="4.2.1">modlamp</requirement> 
  </requirements>
  <stdio>
    <exit_code range="1" level="fatal" />
  </stdio>
    <command detect_errors="exit_code"><![CDATA[


        python '$__tool_directory__/PDAUG_AA_Property_Based_Peptide_Descriptor.py'  '$SelDescriptor.Descriptor'

        				--InFile '$InFile'

                        #if $SelDescriptor.Descriptor == 'AutoCorrCal'
                            --WindowSize '$SelDescriptor.WindowSize'
                            --ScaleName '$SelDescriptor.ScaleName'
                        #end if 

                        #if $SelDescriptor.Descriptor == 'CrossCorrCal'
                            --WindowSize '$SelDescriptor.WindowSize'
                            --ScaleName '$SelDescriptor.ScaleName'
                        #end if 

                        #if $SelDescriptor.Descriptor == 'CalculateMovement'
                            --WindowSize '$SelDescriptor.WindowSize'
                            --Angle '$SelDescriptor.Angle'
                            --Modality '$SelDescriptor.Modality'
                            --ScaleName '$SelDescriptor.ScaleName'
                        #end if 

                        #if $SelDescriptor.Descriptor == 'GlobalCal'
                            --WindowSize '$SelDescriptor.WindowSize'
                            --Modality '$SelDescriptor.Modality'
                            --ScaleName '$SelDescriptor.ScaleName'
                        #end if 

                        #if $SelDescriptor.Descriptor == 'ProfileCal'
                            --ProfType '$SelDescriptor.ProfType'
                            --WindowSize '$SelDescriptor.WindowSize'
                            --ScaleName '$SelDescriptor.ScaleName'
                        #end if 

                        #if $SelDescriptor.Descriptor == 'ArcCal'
                            --Modality '$SelDescriptor.Modality'
                        #end if    

                        --OutFile '$output1'

    ]]></command>


  <inputs>


  	<param name="InFile" type="data" label="Input fasta file" format="fasta" argument= "--InFile" help="Input fasta file with peptide sequence"/>

    <conditional name='SelDescriptor' >

        <param name="Descriptor" type="select" label="Descriptor type" argument="">
          <option value="AutoCorrCal">Calculate AutoCorr</option>
          <option value="CrossCorrCal">Calculate CrossCor</option>
          <option value="CalculateMovement">Calculate Movement</option>
          <option value="GlobalCal">Calculate Global</option>
          <option value="ProfileCal">Calculate Profile</option>
          <option value="ArcCal">Calculate Arc</option>
        </param>

        <when value="AutoCorrCal">          
            <param name="WindowSize" type="integer" label="Correlation window" value="7" argument="--WindowSize" help="Correlation window for descriptor calculation in a sliding window approach" />
            <param name="ScaleName"  type="text" label="AA Scale Name" value="Eisenberg" argument="--ScaleName" help="Name of the amino acid scale to be loaded."/>
        </when>

        <when value="CrossCorrCal">
            <param name="WindowSize" type="integer" label="Correlation window" value="7" argument="--WindowSize" help="correlation window for descriptor calculation in a sliding window approach" />
            <param name="ScaleName"  type="text" value="Eisenberg" label="AA Scale Name" argument="--ScaleName" help="Name of the amino acid scale to be loaded."/>
        </when>

        <when value="CalculateMovement">
            <param name="WindowSize" type="integer" label="AA window" value="1000" argument="--WindowSize" help="Amino acid (AA) window in which to calculate the moment."/>
            <param name="Angle" type="integer" label="Angle" value="100" argument="--Angle" help=" Angle in which to calculate the moment. 100 for alpha helices, 180 for beta sheets."/>
            <param name="Modality" type="select" argument="--Modality" label="Modality" help="Calculate respectively maximum or mean hydrophobic moment. If all, moments for all windows are returned.">
               <option value="all"> All</option>
               <option value="max" selected="true">Max</option>
               <option value="mean">Mean</option>
            </param>
            <param name="ScaleName"  type="text" value="Eisenberg" label = "AA scale name" argument="--ScaleName" help="Name of the amino acid scale to be loaded."/>
        </when>

        <when value="GlobalCal">
            <param name="WindowSize" type="integer" value="1000" argument="--lenmin_s" label="AA window " help="Amino acid(AA) window in which to calculate the moment. If the sequence is shorter than the window, the length of the sequence is taken"/>
            <param name="Modality" type="select" argument="--Modality" label="Modality" help="Calculate respectively maximum or mean hydrophobic moment.">
               <option value="max" selected="true">Max</option>
               <option value="mean">Mean</option>
              </param>
            <param name="ScaleName"  type="text" value="Eisenberg" label = "AA scale name" argument="--ScaleName" help="Name of the amino acid scale to be loaded."/>

        </when>

        <when value="ProfileCal">
            <param name="ProfType" type="select" argument="--ProfType" label="Profile type" help="Profile type of profile, available: ‘H’ for hydrophobicity or ‘uH’ for hydrophobic moment" >
               <option value="H" selected="true">H</option>
               <option value="uH">uH</option>
              </param>

            <param name="WindowSize" type="integer" value="7" argument="--lenmin_s" label="Window Size" help="Size of sliding window used"/>
            <param name="ScaleName"  value="Eisenberg"  type="text" label = "AA scale name" argument="--ScaleName" help="Name of the amino acid scale to be loaded."/>
        </when>

        <when value="ArcCal">
          <param name="Modality" type="select" argument="--Modality" label="Modality" help="modality of the arc to calculate, to choose between max and mean.">
             <option value="max" selected="true">Max</option>
             <option value="mean">Mean</option>
          </param>
        </when>
    </conditional>
  </inputs>


  <outputs>
        <data name='output1' format='tabular' label="${tool.name} on $on_string - ${SelDescriptor.Descriptor} (tabular)" />
  </outputs>
  <tests>
    <test>
      <param name="InFile" value="test.fasta"/>
      <param name="Descriptor" value="AutoCorrCal"/>
      <param name="WindowSize" value="7"/>
      <param name="ScaleName" value="Eisenberg"/>
      <output name="output1" file="out1.tsv"/>
    </test>
    <test>
      <param name="InFile" value="test.fasta"/>
      <param name="Descriptor" value="CrossCorrCal"/>
      <param name="WindowSize" value="7"/>
      <param name="ScaleName" value="Eisenberg"/>
      <output name="output1" file="out2.tsv"/>
    </test>
    <test>
      <param name="InFile" value="test.fasta"/>
      <param name="Descriptor" value="CalculateMovement"/>
      <param name="WindowSize" value="1000"/>
      <param name="ScaleName" value="Eisenberg"/>
      <param name="Angle" value="100"/>
      <param name="Modality" value="max"/>
      <output name="output1" file="out3.tsv"/>
    </test>
    <test>
      <param name="InFile" value="test.fasta"/>
      <param name="Descriptor" value="GlobalCal"/>
      <param name="WindowSize" value="1000"/>
      <param name="ScaleName" value="Eisenberg"/>
      <param name="Modality" value="max"/>
      <output name="output1" file="out4.tsv"/>
    </test>

    <test>
      <param name="InFile" value="test.fasta"/>
      <param name="Descriptor" value="ProfileCal"/>
      <param name="WindowSize" value="7"/>
      <param name="ScaleName" value="Eisenberg"/>
      <param name="ProfType" value="H"/>
      <output name="output1" file="out5.tsv"/>
    </test>

    <test>
      <param name="InFile" value="test.fasta"/>
      <param name="Descriptor" value="ArcCal"/>
      <param name="Modality" value="max"/>
      <output name="output1" file="out6.tsv"/>
    </test>
  </tests>
    <help><![CDATA[
.. class:: infomark

**What it does**

    This tool calculates 6 different types of peptide descriptors.

      * **Calculate AutoCor** This option calculates descriptor via auto-correlating the amino acid values for a given descriptor scale. 
      * **Calculate CrosCor** This option calculates descriptor via cross-correlating the amino acid values for a given descriptor scale. 
      * **Calculate Movement** This option calculates descriptor based on the maximum or mean movement of the amino acid values for a given descriptor scale and window.
      * **Calculate Global** This option calculates descriptors via calculating a global / window averaging descriptor value of a given AA scale.
      * **Calculate Profile** This tool calculates description via calculating hydrophobicity or hydrophobic moment profiles for given sequences and fitting for slope and intercept.
      * **Calculate Arc** This option calculates descriptors via calculating property arcs as seen in the helical wheel plot. This method work for binary amino acid scales only.

-----

**Inputs**
    **1**  Calculate AutoCor    
       * **--Infile** Input fasta file with peptides. 
       * **--WindowSize**  Correlation window for descriptor calculation in a sliding window approach.  
       * **--ScaleName** Method to load amino acid values from a given scale.

    **2** Calculate CrosCor
       * **--Infile** Input fasta file with peptides. 
       * **--WindowSize**  Correlation window for descriptor calculation in a sliding window approach  
       * **--ScaleName** Method to load amino acid values from a given scale.

    **3** Calculate Movement
       * **--Infile** Input fasta file with peptides. 
       * **--WindowSize**  Amino acid window in which to calculate the moment. If the sequence is shorter than the window, the length of the sequence is taken. So if the default window of 1000 is chosen, for all sequences shorter than 1000, the global hydrophobic moment will be calculated. Otherwise, the maximal hydrophiobic moment for the chosen window size found in the sequence will be returned.  
       * **--ScaleName** Method to load amino acid values from a given scale.
       * **--Angle** Angle in which to calculate the moment. 100 for alpha-helices, 180 for beta sheets.
       * **--Modality** Calculate respectively maximum or mean hydrophobic moment. If all, moments for all windows are returned.

    **4** Calculate Global
       * **--Infile** Input fasta file with peptides. 
       * **--Modality** Calculate respectively maximum or mean hydrophobic moment.
       * **--WindowSize** amino acid window in which to calculate the moment. If the sequence is shorter than the window, the length of the sequence is taken.  
       * **--ScaleName** Method to load amino acid values from a given scale.

    **5** Calculate Profile
       * **--Infile** Input fasta file with peptides. 
       * **--Infile** Input fasta file with peptides.  
       * **--ProfType** prof_type of the profile, available: ‘H’ for hydrophobicity or ‘uH’ for a hydrophobic moment
       * **--WindowSize** {int} size of sliding window used (odd-numbered).

    **6** Calculate Arc
       * **--Modality**  Modality of the arc to calculate, to choose between “max” and “mean”.

-----

**Outputs**
    * Return tabular file with the descriptors.]]></help>


<citations>
  <citation type="bibtex">
    @misc{PDAUGGITHUB, 
      author = {Joshi, Jayadev  and Blankenberg, Daniel}, 
      year = {2020}, 
      title ={PDAUG - a Galaxy based toolset for peptide library analysis, visualization, and machine learning modeling}, 
      publisher = {GitHub}, 
      journal = {GitHub repository}, 
      url =
      {https://github.com/jaidevjoshi83/pdaug.git}, 
    }
</citation>

  <citation type="bibtex">
    @article{müller_gabernet_hiss_schneider_2017, 
      title={modlAMP: Python for antimicrobial peptides}, 
      volume={33}, 
      DOI={10.1093/bioinformatics/btx285}, 
      number={17}, 
      journal={Bioinformatics}, 
      author={Müller, Alex T and Gabernet, Gisela and Hiss, Jan A and Schneider, Gisbert}, 
      year={2017}, 
      pages={2753–2755}
    }
  </citation>

</citations>

</tool>