diff meme_chip.xml @ 0:6095db402811 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/meme_chip commit 9068afc3812495aaf88c9a2f5a224c634d634742
author iuc
date Fri, 20 Apr 2018 09:03:44 -0400
parents
children 091a9d638d78
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/meme_chip.xml	Fri Apr 20 09:03:44 2018 -0400
@@ -0,0 +1,224 @@
+<tool id="meme_chip" name="MEME-ChIP" version="4.11.2">
+    <description>- motif discovery, enrichment analysis and clustering on large nucleotide datasets</description>
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="requirements" />
+    <code file="get_meme_motif_databases.py" />
+    <command detect_errors="exit_code"><![CDATA[
+#import os
+#set primary_output = $os.path.join($output.files_path, "index.html")
+meme-chip '$input'
+-noecho
+#if $control:
+    -neg '$control'
+#end if
+$sequence_alphabet
+-o '$output.files_path'
+#if str($options_type_cond.options_type)=='advanced':
+    ## FIXME: CentriMo cannot be run,  See the comments in the input section.
+    ## #set run_centrimo = $options_type_cond.run_centrimo_cond.run_centrimo
+    ## #if str($run_centrimo) == "yes":
+    ##     -db $options_type_cond.run_centrimo_cond.meme_motif_databases.fields.path
+    ##     #if $options_type_cond.run_centrimo_cond.centrimo_local:
+    ##         -centrimo-local
+    ##     #end if
+    ##     #if $options_type_cond.run_centrimo_cond.centrimo_score:
+    ##         -centrimo-score $options_type_cond.run_centrimo_cond.centrimo_score
+    ##     #end if
+    ##     #if $options_type_cond.run_centrimo_cond.centrimo_maxreg:
+    ##         -centrimo-maxreg $options_type_cond.run_centrimo_cond.centrimo_maxreg
+    ##     #end if
+    ##     #if $options_type_cond.run_centrimo_cond.centrimo_ethresh:
+    ##         -centrimo-ethresh $options_type_cond.run_centrimo_cond.centrimo_ethresh
+    ##     #end if
+    ##     #if $options_type_cond.run_centrimo_cond.centrimo_noseq:
+    ##         -centrimo-noseq
+    ##     #end if
+    ##     #if $options_type_cond.run_centrimo_cond.centrimo_flip:
+    ##         -centrimo-flip
+    ##     #end if
+    ## #end if
+    $options_type_cond.search_given_strand
+    -order $options_type_cond.background_model_order
+    #if str($options_type_cond.subsampling_cond.subsampling) == "no":
+        -norand
+        #if $options_type_cond.subsampling_cond.subsampling.seed:
+            -seed $options_type_cond.subsampling_cond.subsampling.seed
+        #end if
+    #end if
+    #if $options_type_cond.nmeme:
+        -nmeme $options_type_cond.nmeme
+    #end if
+    #if $options_type_cond.ccut:
+        -ccut $options_type_cond.ccut
+    #end if
+    -group-thresh $options_type_cond.group_threash
+    #if str($options_type_cond.group_weak):
+        -group-weak $options_type_cond.group_weak
+    #end if
+    -filter-thresh $options_type_cond.filter_thresh
+    $options_type_cond.old_clustering
+    -meme-mod $options_type_cond.meme_mod
+    #if $options_type_cond.meme_minw:
+        -meme-minw $options_type_cond.meme_minw
+    #end if
+    #if $options_type_cond.meme_maxw:
+        -meme-maxw $options_type_cond.meme_maxw
+    #end if
+    #if $options_type_cond.meme_nmotifs:
+        -meme-nmotifs $options_type_cond.meme_nmotifs
+    #end if
+    #if $options_type_cond.meme_minsites:
+        -meme-minsites $options_type_cond.meme_minsites
+    #end if
+    #if $options_type_cond.meme_maxsites:
+        -meme-maxsites $options_type_cond.meme_maxsites
+    #end if
+    $options_type_cond.meme_pal
+    -dreme-e $options_type_cond.dreme_e
+    -dreme-m $options_type_cond.dreme_m
+    -spamo-skip
+    -fimo-skip
+#end if
+&& rm '$output'
+&& ln -s $primary_output '$output'
+    ]]></command>
+    <inputs>
+        <param name="input" type="data" format="fasta" label="Primary sequences" help="Nucleotide sequences must have equal length"/>
+        <param name="control" type="data" format="fasta" optional="true" label="Control sequences" help="If no selection, positive sequences in the input are shuffled to create the negative set"/>
+        <param name="sequence_alphabet" type="select" label="Sequence alphabet">
+            <option value="-dna" selected="true">DNA</option>
+            <option value="-rna">RNA</option>
+        </param>
+        <conditional name="options_type_cond">
+            <param name="options_type" type="select" label="Options Configuration">
+                <option value="basic" selected="true">Basic</option>
+                <option value="advanced">Advanced</option>
+            </param>
+            <when value="basic"/>
+            <when value="advanced">
+                <!--
+                FIXME: CentriMo cannot be run since the tool form cannot populate the mem_motif_database select list below.
+                <conditional name="run_centrimo_cond">
+                    <param name="run_centrimo" type="select" label="Run TOMTOM and CentriMo?">
+                        <option value="yes" selected="true">Yes</option>
+                        <option value="no">No</option>
+                    </param>
+                    <when value="yes">
+
+                        We have 2 dynamic select lists here.  The first select list (meme_motif_database_dir) is populated from the meme_motif_databases
+                        data table.  The second select list (meme_motif_database) is dynamically re-rendered whenever the selection in the meme_motif_database_dir
+                        select list is changed.  This composition used to work (see Examples->Dynamic Options section of
+                        https://docs.galaxyproject.org/en/latest/dev/schema.html) but no longer does.  We'll have to figure out what is broken in
+                        the dynamic options code in ~/parameters/basic.py in order to uncomment this block.
+
+                        <param name="meme_motif_database_dir" type="select" label="Select the motifs (DNA)" refresh_on_change="True">
+                            <options from_data_table="meme_motif_databases">
+                                <filter type="sort_by" column="1"/>
+                                <validator type="no_options" message="No MEME motif databases are available for the selected input"/>
+                            </options>
+                        </param>
+                        <param name="meme_motif_database" type="select" label="MEME motif database" dynamic_options="get_meme_motif_database_options(file_path=meme_motif_database_dir)"/>
+                        <param name="centrimo_local" type="boolean" truevalue="true" falsevalue="" checked="False" label="Compute enrichment of all regions"/>
+                        <param name="centrimo_score" type="integer" optional="true" value="0" min="0" label="Minimum allowed CentriMo match score"/>
+                        <param name="centrimo_maxreg" type="integer" optional="true" value="0" min="0" label="Maximum CentriMo region size to be considered"/>
+                        <param name="centrimo_ethresh" type="integer" optional="true" value="0" min="0" label="CentriMo E-value threshold for reporting" />
+                        <param name="centrimo_noseq" type="boolean" truevalue="true" falsevalue="" checked="False" label="Store CentriMo sequence IDs in the output"/>
+                        <param name="centrimo_flip" type="boolean" truevalue="true" falsevalue="" checked="False" label="Reflect CentriMo matches on reverse strand around center"/>
+                    </when>
+                    <when value="no"/>
+                </conditional>
+                -->
+                <param name="background_model_order" type="select" label="Select the order of the Markov background model">
+                    <option value="0">0-order model of sequences</option>
+                    <option value="1" selected="True">1st order model of sequences</option>
+                    <option value="2">2nd order model of sequences</option>
+                    <option value="3">3rd order model of sequences</option>
+                    <option value="4">4th order model of sequences</option>
+                </param>
+                <param name="nmeme" type="integer" optional="true" value="" min="1" label="Limit of sequences to pass to MEME"/>
+                <conditional name="subsampling_cond">
+                    <param name="subsampling" type="select" label="Should subsampling be random?" help="Select 'No' if your input sequences are sorted in order of confidence (best to worst)">
+                        <option value="yes" selected="true">Yes</option>
+                        <option value="no">No</option>
+                    </param>
+                    <when value="yes">
+                        <param name="seed" type="integer" optional="true" value="" min="1" label="Seed for the randomized selection of sequences"/>
+                    </when>
+                    <when value="no"/>
+                </conditional>
+                <param name="ccut" type="integer" optional="true" value="100" min="0" label="maximum size of a sequence before it is cut down to a centered section" help="Zero value indicates the sequences should not be cut down"/>
+                <param name="group_threash" type="float" value="0.05" min="0" label="Primary threshold for clustering motifs" />
+                <param name="group_weak" type="float" optional="true" value="0" min="0" label="Secondary threshold for clustering motifs" help="Zero value results in 2*primary threshold"/>
+                <param name="filter_thresh" type="float" value="0.05" min="0" label="E-value threshold for including motifs"/>
+                <param name="search_given_strand" type="boolean" truevalue="-norc" falsevalue="" checked="False" label="Search given strand only"/>
+                <param argument="-old_clustering" type="boolean" truevalue="-old_clustering" falsevalue="" checked="False" label="Pick cluster seed motifs based only on significance"/>
+                <param name="meme_mod" type="select" label="What is the expected motif site distribution?">
+                    <option value="oops" selected="True">One occurance per sequence</option>
+                    <option value="zoops">Zero or one occurances per sequence</option>
+                    <option value="anr">Any number of repititions</option>
+                </param>
+                <param name="meme_minw" type="integer" optional="true" value="0" min="0" label="Minimum motif width"/>
+                <param name="meme_maxw" type="integer" optional="true" value="0" min="0" label="Maximum motif width"/>
+                <param name="meme_nmotifs" type="integer" optional="true" value="0" min="0" label="Maximum number of motifs to find"/>
+                <param name="meme_minsites" type="integer" optional="true" value="0" min="0" label="Minimum number of sites per motif"/>
+                <param name="meme_maxsites" type="integer" optional="true" value="0" label="Maximum number of sites per motif"/>
+                <param argument="-meme_pal" type="boolean" truevalue="-meme-pal" falsevalue="" checked="False" label="Look for palindromes only"/>
+                <param name="dreme_e" type="float" value="0.05" min="0" label="Stop DREME searching after reaching this E-value threshold"/>
+                <param name="dreme_m" type="integer" value="10" min="1" label="Stop DREME searching after finding this many motifs" />
+            </when>
+        </conditional>
+        <param name="non_commercial_use" label="I certify that I am not using this tool for commercial purposes." type="boolean" truevalue="NON_COMMERCIAL_USE" falsevalue="COMMERCIAL_USE" checked="False">
+            <validator type="expression" message="This tool is only available for non-commercial use.">value == True</validator>
+        </param>
+    </inputs>
+    <outputs>
+        <data name="output" format="html" label="${tool.name} (html) on ${on_string}"/>
+    </outputs>
+    <tests>
+        <test>
+            <param name="input" value="input1.fasta" ftype="fasta"/>
+            <param name="non_commercial_use" value="True"/>
+            <output name="output" file="output1.html" ftype="html" compare="contains"/>
+        </test>
+        <test>
+            <param name="input" value="input1.fasta" ftype="fasta"/>
+            <param name="sequence_alphabet" value="-rna"/>
+            <param name="options_type" value="advanced"/>
+            <param name="background_model_order" value="0"/>
+            <param name="non_commercial_use" value="True"/>
+            <output name="output" file="output1.html" ftype="html" compare="contains"/>
+        </test>
+    </tests>
+    <help>
+.. class:: warningmark
+
+**WARNING: This tool is only available for non-commercial use. Use for educational, research and non-profit purposes is permitted.
+Before using, be sure to review, agree, and comply with the license.**
+
+MWMW-ChIP perform motif discovery, motif enrichment analysis and clustering on large nucleotide datasets.
+
+If you want to specify sequence weights, you must include them at the top of your input FASTA file.
+
+MEME discovers novel, ungapped motifs (recurring, fixed-length patterns) in your sequences (sample output from sequences).
+MEME splits variable-length patterns into two or more separate motifs.  A motif is a sequence pattern that occurs repeatedly
+in a group of related sequences.  MEME represents motifs as position-dependent letter-probability matrices which describe the
+probability of each possible letter at each position in the pattern.  Individual MEME motifs do not contain gaps.  Patterns
+with variable-length gaps are split by MEME into two or more separate motifs.  MEME takes as input a group of sequences and
+outputs as many motifs as requested.  MEME uses statistical modeling techniques to automatically choose the best width, number
+of occurrences, and description for each motif.
+
+.. class:: infomark
+
+For detailed information on MEME, click here_, or view the license_.
+
+.. _here: http://meme-suite.org/doc/meme.html?man_type=web
+.. _license: http://meme-suite.org/doc/copyright.html?man_type=web
+
+    </help>
+    <citations>
+        <citation type="doi">10.1093/bioinformatics/btr189</citation>
+    </citations>
+</tool>
+