view PDAUG_AA_Property_Based_Peptide_Generation/PDAUG_AA_Property_Based_Peptide_Generation.xml @ 0:1199b572b86c draft

"planemo upload for repository https://github.com/jaidevjoshi83/pdaug commit a9bd83f6a1afa6338cb6e4358b63ebff5bed155e"
author jay
date Wed, 28 Oct 2020 02:40:51 +0000
parents
children ea405d064794
line wrap: on
line source

<tool id="pdaug_aa_property_based_peptide_generation" name="PDAUG AA Property Based Peptide Generation" version="0.1.0">
  <description>Generates peptide sequence library based on amino acid properties</description>

  <requirements>
    <requirement type="package" version="0.24.2">pandas</requirement>
    <requirement type="package" version="4.1.2">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_Generation.py'  '$SelLibGene.LibGene'

                        #if $SelLibGene.LibGene == 'Random'
                            --seq_num '$SelLibGene.seq_num'
                            --lenmin_s '$SelLibGene.lenmin_s'
                            --lenmax_s '$SelLibGene.lenmax_s'
                            --S_proba  '$SelLibGene.S_proba'
                        #end if 

                        #if $SelLibGene.LibGene == 'Helices'
                            --seq_num '$SelLibGene.seq_num'
                            --lenmin_s '$SelLibGene.lenmin_s'
                            --lenmax_s '$SelLibGene.lenmax_s'                 
                        #end if 

                        #if $SelLibGene.LibGene == 'Kinked'
                            --seq_num '$SelLibGene.seq_num'
                            --lenmax_s '$SelLibGene.lenmax_s'
                            --lenmin_s '$SelLibGene.lenmin_s'
                        #end if 

                        #if $SelLibGene.LibGene == 'Oblique'
                            --seq_num '$SelLibGene.seq_num'
                            --lenmax_s '$SelLibGene.lenmax_s'
                            --lenmin_s '$SelLibGene.lenmin_s'
                        #end if 

                        #if $SelLibGene.LibGene == 'Centrosymmetric'
                            --seq_num '$SelLibGene.seq_num'
                            --lenmax_s '$SelLibGene.lenmax_s'
                            --lenmin_s '$SelLibGene.lenmin_s'
                        #end if 

                        #if $SelLibGene.LibGene == 'HelicesACP'
                            --seq_num '$SelLibGene.seq_num'
                            --lenmax_s '$SelLibGene.lenmax_s'
                            --lenmin_s '$SelLibGene.lenmin_s'
                        #end if    

                        #if $SelLibGene.LibGene == 'Hepahelices'
                            --seq_num '$SelLibGene.seq_num'
                            --lenmax_s '$SelLibGene.lenmax_s'
                            --lenmin_s '$SelLibGene.lenmin_s'
                        #end if 

                        #if $SelLibGene.LibGene == 'AMPngrams'
                            --seq_num '$SelLibGene.seq_num'
                            --n_min '$SelLibGene.n_max'
                            --n_max '$SelLibGene.n_min'
                        #end if

                        #if $SelLibGene.LibGene == 'AmphipathicArc' 
                            --seq_num '$SelLibGene.seq_num'
                            --lenmax_s '$SelLibGene.lenmax_s'
                            --lenmin_s '$SelLibGene.lenmin_s'
                            --arcsize '$SelLibGene.arcsize'
                            --hyd_gra '$SelLibGene.hydgra'
                        #end if      


                        --OutFasta '$output1'

    ]]></command>


  <inputs>

    <conditional name='SelLibGene' >

        <param name="LibGene" type="select" label="Methods to generate peptide sequence" argument="">
          <option value="Random">Random sequences</option>
          <option value="Helices">Presumed amphipathic helical sequences with a hydrophobic moment</option>
          <option value="Kinked">Presumed amphipathic helices with a kink (Pro residue)</option>
          <option value="Oblique">Presumed oblique oriented sequences in presence of libid membranes</option>
          <option value="Centrosymmetric">Centrosymmetric sequences with a symmetry axis</option>
          <option value="HelicesACP">Sequences with the amino acid probabiliy of helical ACPs</option>
          <option value="Hepahelices">Presumed amphipathic helices with a heparin-binding-domain</option>
          <option value="AMPngrams">Sequences from most frequent ngrams in the APD3</option>
          <option value="AmphipathicArc">Presumed amphipathic helices with controlled hydrophobic arc size</option>

        </param>

        <when value="Random">
            <param name="seq_num"  type="integer" value="5" label="Number of peptides" argument= "--seq_num" help="Number of peptides."/>
            <param name="lenmin_s" type="integer" value="7" label="Minimum length" argument="--lenmin_s" help="Minimum length of generated peptides."/>
            <param name="lenmax_s" type="integer" value="21" label="Maximum length" argument="--lenmax_s" help="Maximum length of generated peptides."/>
            <param name="S_proba"  type="float" value="1.0" label="Probability" argument="--S_proba" help="AA probability to be used to generate sequences." />  
        </when>

        <when value="Helices">
            <param name="seq_num"  type="integer" value="5" label="Number of peptides" argument= "--seq_num" help="Number of peptides."/>
            <param name="lenmin_s" type="integer" value="7" label="Minimum length" argument="--lenmin_s" help="Minimum length of generated peptides."/>
            <param name="lenmax_s" type="integer" value="21" label="Maximum length" argument="--lenmax_s" help="Maximum length of generated peptides."/>
        </when>

        <when value="Kinked">
            <param name="seq_num"  type="integer" value="5" label="Number of peptides" argument= "--seq_num" help="Number of peptides."/>
            <param name="lenmin_s" type="integer" value="7" label="Minimum length" argument="--lenmin_s" help="Minimum length of generated peptides."/>
            <param name="lenmax_s" type="integer" value="21" label="Maximum length" argument="--lenmax_s" help="Maximum length of generated peptides."/>
        </when>

        <when value="Oblique">
            <param name="seq_num"  type="integer" value="5" label="Number of peptides" argument= "--seq_num" help="Number of peptides."/>
            <param name="lenmin_s" type="integer" value="7" label="Minimum length" argument="--lenmin_s" help="Minimum length of generated peptides."/>
            <param name="lenmax_s" type="integer" value="21" label="Maximum length" argument="--lenmax_s" help="Maximum length of generated peptides."/>
        </when>

        <when value="Centrosymmetric">
            <param name="seq_num"  type="integer" value="5" label="Number of peptides" argument= "--seq_num" help="Number of peptides."/>
            <param name="lenmin_s" type="integer" value="7" label="Minimum length" argument="--lenmin_s" help="Minimum length of generated peptides."/>
            <param name="lenmax_s" type="integer" value="21" label="Maximum length" argument="--lenmax_s" help="Maximum length of generated peptides."/>
            <param name="symmetry_s" type="select" label="Symmetry" argument="--symmetry_s" help="Type of centrosymmetric sequences. symmetric: builds sequences out of only one block, asymmetric: builds sequences out of different blocks.">
              <option value="asymmetric">asymmetric</option>
              <option value="symmetric" >symmetric</option>
            </param>
        </when>

        <when value="HelicesACP">
            <param name="seq_num"  type="integer" value="5" label="Number of peptides" argument= "--seq_num" help="Number of peptides."/>
            <param name="lenmin_s" type="integer" value="7" label="Minimum length" argument="--lenmin_s" help="Minimum length of generated peptides."/>
            <param name="lenmax_s" type="integer" value="21" label="Maximum length" argument="--lenmax_s" help="Maximum length of generated peptides."/>
        </when>

        <when value="Hepahelices">
            <param name="seq_num"  type="integer" value="5" label="Number of peptides" argument= "--seq_num" help="Number of peptides."/>
            <param name="lenmin_s" type="integer" value="7" label="Minimum length" argument="--lenmin_s" help="Minimum length of generated peptides."/>
            <param name="lenmax_s" type="integer" value="21" label="Maximum length" argument="--lenmax_s" help="Maximum length of generated peptides."/>
        </when>

        <when value="AMPngrams">
            <param name="seq_num"  type="integer" value="5" label="Number of peptides" argument= "--seq_num" help="Number of peptides."/>
            <param name="n_min" type="integer" value="3" label="Minimum length" argument="--n_min_s" help="Minimum length of generated peptides." />
            <param name="n_max" type="integer" value="1" label="Maximum length" argument="--n_max_s" help="Maximum length of generated peptides."/>
        </when>

        <when value="AmphipathicArc">
            <param name="seq_num"  type="integer" value="5" label="Number of peptides" argument= "--seq_num" help="Number of peptides."/>
            <param name="lenmin_s" type="integer" value="7" label="Minimum length" argument="--lenmin_s" help="Minimum length of generated peptides."/>
            <param name="lenmax_s" type="integer" value="21" label="Maximum length" argument="--lenmax_s" help="Maximum length of generated peptides."/>
            <param name="arcsize" type="integer" value="180" label="Arc size" argument="--arcsize" help="Arc size to choose among 100, 140, 180, 220, 260, or choose mixed to generate a mixture."/>
            <param name="hydgra" type="boolean"  value="false" argument="--hyd_gra" label="Hydrophobic gradient" help="Method to mutate the generated sequences to have a hydrophobic gradient by substituting the last third of the sequence amino acids to hydrophobic."/>
        </when>

    </conditional>
  </inputs>

  <outputs>
        <data name='output1' format='fasta' label="${tool.name} on $on_string - ${SelLibGene.LibGene} (fasta)" />
  </outputs>

  <tests>
    <test>

        <param name="LibGene" value="Random"/>
        <param name="seq_num"  value="5"  />
        <param name="lenmin_s" value="7" />
        <param name="lenmax_s" value="21"  />
        <param name="S_proba"  value="1.0" />
        <output name='output1' file="Out1.fasta" lines_diff='20' /> 

    </test>

    <test>
   
        <param name="LibGene" value="Helices"/>
        <param name="seq_num" value="5" />
        <param name="lenmin_s" value="7" />
        <param name="lenmax_s" value="21" />
        <output name='output1' file="Out2.fasta" lines_diff='20' /> 

    </test>

    <test>

        <param name="LibGene" value="Kinked"/>
        <param name="seq_num"  value="5" />
        <param name="lenmin_s"  value="7" />
        <param name="lenmax_s"  value="21" />
        <output name='output1' file="Out3.fasta" lines_diff='20' /> 

    </test>

    <test>
        <param name="LibGene" value="Oblique"/>
        <param name="seq_num"  value="5" />
        <param name="lenmin_s" value="7"  />
        <param name="lenmax_s" value="21" />
        <output name='output1' file="Out4.fasta"  lines_diff='20' /> 

    </test>

    <test>  

        <param name="LibGene" value="Centrosymmetric"/>
        <param name="seq_num"  value="5"  />
        <param name="lenmin_s" value="7" />
        <param name="lenmax_s" value="21" />
        <param name="symmetry_s" value="asymmetric" />
        <output name='output1' file="Out5.fasta" lines_diff='20' /> 

    </test>

    <test>
        <param name="LibGene" value="HelicesACP"/>
        <param name="seq_num"   value="5" />
        <param name="lenmin_s"  value="7" />
        <param name="lenmax_s" value="21" />
        <output name='output1' file="Out6.fasta" lines_diff='20' /> 

    </test>

    <test>
        <param name="LibGene" value="Hepahelices"/>
        <param name="seq_num"   value="5" />
        <param name="lenmin_s"  value="7" />
        <param name="lenmax_s" value="21" />
        <output name='output1' file="Out7.fasta"  lines_diff='20' /> 

    </test>

    <test>
        <param name="LibGene" value="AMPngrams"/>
        <param name="seq_num"   value="5" />
        <param name="lenmin_s"  value="7" />
        <param name="lenmax_s"  value="21" />
        <output name='output1' file="Out8.fasta" lines_diff='20' /> 

    </test>

    <test>
        <param name="LibGene" value="AmphipathicArc"/>
        <param name="seq_num"   value="5" />
        <param name="lenmin_s"  value="7" />
        <param name="lenmax_s"  value="21" />
        <param name="arcsize"  value="180" />
        <param name="hydgra"  value="false" />
        <output name='output1' file="Out9.fasta" lines_diff='20' /> 

    </test>

  </tests>
    
    <help><![CDATA[
.. class:: infomark

**What it does**

This module incorporates different classes to generate peptide sequences with different characteristics from scratch. The following classes are available  Random, Helices, Kinked, Oblique, Centrosymmetric, AmphipathicArc, HelicesACP, MixedLibrary, Hepahelices, and AMPngrams. 

  * **Random**  Generates random sequences with a specified amino acid distribution.
  * **Helices** Generate presumed amphipathic helical sequences with a hydrophobic moment.
  * **Kinked**  Generates presumed amphipathic helices with a kink (Pro residue).
  * **Oblique** Generates presumed oblique oriented sequences in presence of lipid membranes.
  * **Centrosymmetric** Generates centrosymmetric sequences with a symmetry axis.
  * **AmphipathicArc**  Generates presumed amphipathic helices with controlled hydrophobic arc size.
  * **HelicesACP**  Generates sequences with the amino acid probability of helical ACPs.
  * **MixedLibrary**  Generates a mixed library of sequences of most other classes.
  * **Hepahelices** Generates presumed amphipathic helices with a heparin-binding-domain.
  * **AMPngrams** Generates sequences from most frequent ngrams in the APD3.

-----

**Inputs**
    **1**  Random    
       * **--seq_num**  Number of sequences to be generated.  
       * **--lenmin_s** Peptide minimum legnth. 
       * **--lenmax_s** Peptide maximum legnth. 
       * **--S_proba**  AA probability to be used to generate sequences. Available from str: AMP, AMPnoCM, rand, randnoCM. You can also provide your own list of porbabilities as a list (in AA order, length 20, sum to 1)
       
    **2** Helice
       * **--seq_num**  Number of sequence to be generated.  
       * **--lenmin_s** Peptide minimum length. 
       * **--lenmax_s** Peptide maximum length. 

    **3** Kinked
       * **--seq_num**  Number of sequences to be generated.  
       * **--lenmin_s** Peptide minimum length. 
       * **--lenmax_s** Peptide maximum length. 

    **4** Obliqu
       * **--seq_num**  Number of sequence to be generated.  
       * **--lenmin_s** Peptide minimum length. 
       * **--lenmax_s** Peptide maximum length. 

    **5** Centrosymmetric
       * **--seq_num**  Number of sequences to be generated.  
       * **--lenmin_s** Peptide minimum length. 
       * **--lenmax_s** Peptide maximum length. 
       * **--symmetry_s**   symmetry type of centrosymmetric sequences. symmetric: builds sequences out of only one block, asymmetric: builds sequences out of different blocks

    **6** HelicesACP
       * **--seq_num**  Number of sequences to be generated.  
       * **--lenmin_s** Peptide minimum length. 
       * **--lenmax_s** Peptide maximum length. 

    **7** Hepahelices
       * **--seq_num**  Number of sequences to be generated.  
       * **--lenmin_s** Peptide minimum length. 
       * **--lenmax_s** Peptide maximum length. 

    **7** AMPngrams
       * **--seq_num**  Number of sequence to be generated.  
       * **--lenmin_s** Peptide minimum length. 
       * **--lenmax_s** Peptide maximum length. 

    **9** AmphipathicArc
       * **--seq_num**  Number of sequence to be generated.  
       * **--lenmin_s** Peptide minimum length. 
       * **--lenmax_s** Peptide maximum lenngth. 
       * **--arcsize** Choose among 100, 140, 180, 220, 260, or choose mixed to generate a mixture

-----


**Outputs**
    * Returns fasta files with peptide sequences.]]></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>