view extract_primers.xml @ 32:03c22b722882

remove BeautifulSoup dependency
author Richard Burhans <burhans@bx.psu.edu>
date Fri, 20 Sep 2013 13:54:23 -0400
parents d6b961721037
children
line wrap: on
line source

<tool id="gd_extract_primers" name="Pick Primers" version="1.0.0">
  <description>: Find suitable PCR primers for SNPs</description>

  <command interpreter="python">
    extract_primers.py "--input=$input" "--output=$output" "--primers_loc=${GALAXY_DATA_INDEX_DIR}/gd.primers.loc"
    #if $override_metadata.choice == "0":
      "--scaffold_col=${input.metadata.scaffold}" "--pos_col=${input.metadata.pos}" "--species=${input.metadata.species}"
    #else
      "--scaffold_col=$scaf_col" "--pos_col=$pos_col" "--species=$species"
    #end if
  </command>

  <inputs>
    <param format="tabular" name="input" type="data" label="SNP dataset"/>
    <conditional name="override_metadata">
      <param name="choice" type="select" format="integer" label="Choose columns" help="Datasets in gd_snp format have the columns in the metadata, all others need the columns chosen." >
        <option value="0" selected="true">No, get columns from metadata</option>
        <option value="1" >Yes, choose columns</option>
      </param>
      <when value="0" />
      <when value="1">
        <param name="scaf_col" type="data_column" data_ref="input" numerical="false" label="Column with scaffold"/>
        <param name="pos_col" type="data_column" data_ref="input" numerical="true" label="Column with position"/>
        <param name="species" type="select" label="Choose species">
          <options from_file="gd.species.txt">
            <column name="name" index="1"/>
            <column name="value" index="0"/>
          </options>
        </param>
      </when>
    </conditional>
  </inputs>

  <outputs>
    <data format="txt" name="output"/>
  </outputs>

  <tests>
    <test>
      <param name="input" value="test_out/select_snps/select_snps.gd_snp" ftype="gd_snp" />
      <param name="choice" value="0"/>
      <output name="output" file="test_out/extract_primers/extract_primers.txt" />
    </test>
  </tests>


  <help>

**Dataset formats**

The input dataset is in tabular_ format and must contain a scaffold or 
chromosome column and a position column.  The output dataset is in text_ 
format as described below.
(`Dataset missing?`_)

.. _tabular: ./static/formatHelp.html#tab
.. _text: ./static/formatHelp.html#text
.. _Dataset missing?: ./static/formatHelp.html

-----

**What it does**

This tool extracts primers for SNPs in the dataset using the Primer3 program
(Steve Rozen and Helen J. Skaletsky, 2000).
The first line of output for a given SNP reports the name of the assembled
contig, the SNP's position in the contig, the two variant nucleotides, and
Primer3's "pair penalty".  The next line, if not blank, names restriction
enzymes (from the user-adjustable list) that differentially cut at that
site, but do not cut at any other position between and including the
primer positions.  The next lines show the SNP's flanking regions, with
the SNP position indicated by "n", including the primer positions and an
additional 3 nucleotides.
<!-- is this precomputed?? how, where is the user-adjustable list? -->

-----

**Example**

- input (gd_snp format)::

    chr5_30800874_30802049    734   G  A  chr5   30801606   A  24  0  99   4  11  97   Y  496  0.502  0.033  0.215  6
    chr8_55117827_55119487    994   A  G  chr8   55118815   G  25  0  102  4  11  96   Y  22   0.502  0.025  2.365  1
    chr9_100484836_100485311  355   C  T  chr9   100485200  T  27  0  108  6  17  100  Y  190  0.512  0.880  2.733  4
    chr12_3635530_3637738     2101  T  C  chr12  3637630    T  25  0  102  4  13  93   Y  169  0.554  0.024  0.366  4
    etc.

- output::

    chr5_30800874_30802049 734 G A 0.352964
     BglII,MboI,Sau3AI,Tru9I,XhoII
      1 CTGAAGGTGAGCAGGATTCAGGAGACAGAAAACAAAGCCCAGGCCTGCCCAAGGTGGAAA
           >>>>>>>>>>>>>>>>>>>>
     
     61 AGTCTAACAACTCGCCCTCTGCTTAnATCTGAGACTCACAGGGATAATAACACACTTGGT
     
     
     21 CAAGGAATAAACTAGATATTATTCACTCCTCTAGAAGGCTGCCAGGAAAATTGCCTGACT
                                                             &lt;&lt;&lt;&lt;&lt;&lt;&lt;
     
    181 TGAACCTTGGCTCTGA
        &lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;
    etc.

  </help>
</tool>