view mothur/tools/mothur/screen.seqs.xml @ 2:e990ac8a0f58

Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
author jjohnson
date Tue, 07 Jun 2011 17:39:06 -0400
parents fcc0778f6987
children b849cd7e132a
line wrap: on
line source

<tool id="mothur_screen_seqs" name="Screen.seqs" version="1.19.0">
 <description>Screen sequences</description>
 <command interpreter="python">
  mothur_wrapper.py 
  #import re, os.path
  --cmd='screen.seqs'
  #set results = ["'^mothur.\S+\.logfile$:'" + $logfile.__str__]
  #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)$',r'\1.good.\2',$os.path.basename($input.__str__)) + ":'" + $out_file.__str__]
  #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)$',r'\1.bad.accnos',$os.path.basename($input.__str__)) + ":'" + $bad_accnos.__str__]
  --outputdir='$logfile.extra_files_path'
  --tmpdir='${logfile.extra_files_path}/input'
  --fasta=$input
  #if int($start) >= 0:
   --start=$start
  #end if
  #if int($end) >= 0:
   --end=$end
  #end if
  #if int($minlength) >= 0:
   --minlength=$minlength
  #end if
  #if int($maxlength) >= 0:
   --maxlength=$maxlength
  #end if
  #if int($maxambig) >= 0:
   --maxambig=$maxambig
  #end if
  #if int($maxhomop) >= 0:
   --maxhomop=$maxhomop
  #end if
  #if int($criteria) >= 0:
   --criteria=$criteria
  #end if
  #if $optimize != None and $optimize.__str__ != "None":
   --optimize=$optimize
  #end if
  #if $input_qfile != None and $input_qfile.__str__ != "None":
   --qfile=$input_qfile
   #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)$',r'\1.good.\2',$os.path.basename($input_qfile.__str__)) + ":'" + $output_qfile.__str__]
  #end if
  #if $input_names != None and $input_names.__str__ != "None":
   --name=$input_names
   #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)$',r'\1.good.\2',$os.path.basename($input_names.__str__)) + ":'" + $output_names.__str__]
  #end if
  #if $input_groups != None and $input_groups.__str__ != "None":
   --group=$input_groups
   #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)$',r'\1.good.\2',$os.path.basename($input_groups.__str__)) + ":'" + $output_groups.__str__]
  #end if
  #if $input_alignreport != None and $input_alignreport.__str__ != "None":
   --alignreport=$input_alignreport
   #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)$',r'\1.good.\2',$os.path.basename($input_alignreport.__str__)) + ":'" + $output_alignreport.__str__]
  #end if
  --result=#echo ','.join($results)
  --processors=2
 </command>
 <inputs>
  <param name="input" type="data" format="fasta,align" label="fasta - Fasta to screen"/>
  <param name="start" type="integer" value="-1" label="start - Remove sequences that start after position (ignored when negative)"/>
  <param name="end" type="integer" value="-1" label="end - Remove sequences that end before position (ignored when negative)"/>
  <param name="minlength" type="integer" value="-1" label="minlength - Remove sequences shorter than (ignored when negative)"/>
  <param name="maxlength" type="integer" value="-1" label="maxlength - Remove sequences longer than (ignored when negative)"/>
  <param name="maxambig" type="integer" value="-1" label="maxambig - Remove sequences with ambiguous bases greater than (ignored when negative)"/>
  <param name="maxhomop" type="integer" value="-1" label="maxhomop - Remove sequences with homopolymers greater than (ignored when negative)"/>
  <param name="criteria" type="integer" value="-1" label="criteria - Percent of sequences that an optimize value must match to be retained(ignored when negative)"/>
  <param name="optimize" type="select" multiple="true" display="checkboxes" label="optimize - Optimize selected paramenters">
   <option value="start">start</option>
   <option value="end">end</option>
   <option value="minlength">minlength</option>
   <option value="maxlength">maxlength</option>
   <option value="maxambig">maxambig</option>
   <option value="maxhomop">maxhomop</option>
  </param>
  <param name="input_qfile" type="data" format="qual" optional="true" label="qfile - Sequence Quality file  to screen"/>
  <param name="input_names" type="data" format="names" optional="true" label="name - Sequence Names to screen"/>
  <param name="input_groups" type="data" format="groups" optional="true" label="group - Groups to screen"/>
  <param name="input_alignreport" type="data" format="align.report" optional="true" label="alignreport - Align Report to screen"/>
 </inputs>
 <outputs>
  <data format="html" name="logfile" label="${tool.name} on ${on_string}: logfile" />
  <data format_source="input" name="out_file" label="${tool.name} on ${on_string}: good.${input.datatype.file_ext}" />
  <data format="accnos" name="bad_accnos" label="${tool.name} on ${on_string}: bad.accnos" />
  <data format_source="input_qfile" name="output_qfile" label="${tool.name} on ${on_string}: qfile" >
   <filter>input_qfile != None</filter>
  </data>
  <data format="names" name="output_names" label="${tool.name} on ${on_string}: names" >
   <filter>input_names != None</filter>
  </data>
  <data format="groups" name="output_groups" label="${tool.name} on ${on_string}: groups" >
   <filter>input_groups != None</filter>
  </data>
  <data format="align.report" name="output_alignreport" label="${tool.name} on ${on_string}: align.report" >
   <filter>input_alignreport != None</filter>
  </data>
 </outputs>
 <requirements>
  <requirement type="binary">mothur</requirement>
 </requirements>
 <tests>
 </tests>
 <help>
**Mothur Overview**

Mothur_, initiated by Dr. Patrick Schloss and his software development team
in the Department of Microbiology and Immunology at The University of Michigan,
provides bioinformatics for the microbial ecology community.

.. _Mothur: http://www.mothur.org/wiki/Main_Page

**Command Documenation**

The screen.seqs_ command enables you to keep sequences that fulfill certain user defined criteria. Furthermore, it enables you to cull those sequences not meeting the criteria from a name_, group_, or align.report_ file. 

.. _name: http://www.mothur.org/wiki/Name_file
.. _group: http://www.mothur.org/wiki/Group_file
.. _align.report: http://www.mothur.org/wiki/Align.seqs
.. _screen.seqs: http://www.mothur.org/wiki/Screen.seqs


 </help>
</tool>