Mercurial > repos > fubar > mashmap
view mashmap.xml @ 9:dc53eb4354a6 draft
planemo upload
author | fubar |
---|---|
date | Sat, 24 Feb 2024 08:20:07 +0000 |
parents | 9ba0184870ef |
children | 08a74c1a4562 |
line wrap: on
line source
<tool name="mashmap" id="mashmap" version="1.19.2" profile="22.05"> <!--Source in git at: https://github.com/fubar2/galaxy_tf_overlay--> <!--Created by toolfactory@galaxy.org at 24/02/2024 19:18:09 using the Galaxy Tool Factory.--> <description>Fast local alignment boundaries</description> <requirements> <requirement version="3.1.3" type="package">mashmap</requirement> <requirement version="1.19.2" type="package">samtools</requirement> </requirements> <version_command><![CDATA[echo "1.19.2"]]></version_command> <command><![CDATA[bash '$runme']]></command> <configfiles> <configfile name="runme"><![CDATA[ln -s '$query' 'query' && #if len($reflist) > 1: #for i, mash in enumerate($reflist): #if i == 0: echo '$mash' > 'reflist' && #else: echo '$mash' >> 'reflist' && #end if #end for #end if samtools faidx 'query' && mashmap --pi '$perc_identity' -s '$seqLength' -f '$filtermode' $dense \ #if int($sketchSize) > 0: -J '$sketchSize' \ #end if #if len($reflist) == 1: -r '$reflist' -q 'query' && #else --rl 'reflist' -q 'query' && #end if cp 'mashmap.out' '$mashout']]></configfile> </configfiles> <inputs> <param name="query" type="data" optional="false" label="Query sequences (as fasta) to mash against the references supplied below" help="" format="fasta" multiple="false"/> <param name="reflist" type="data" optional="false" label="Reference or references to mash the query sequences on" help="Choose one or more reference sequences to mash the query sequences against." format="fasta" multiple="true"/> <param name="perc_identity" type="float" value="85.0" label="Identity threshold" help="By default, it is set to 85, implying mappings with 85 or more identity should be reported. For example, it can be set to 80to account for more noisy long-read datasets or 95 for mapping human genome assembly to human reference."/> <param name="seqLength" type="integer" value="5000" label="Minimum segment length" help="Default is 5,000 bp. Sequences below this length are ignored. Mashmap provides guarantees on reporting local alignments of length twice this value."/> <param name="sketchSize" type="integer" value="0" label="Sketch size - leave 0 for automatic setting based" help="This parameter sets the seed density of the winnowing scheme, gauranteeing that the minhash will be calculated from a sample of sketchSize k-mers for each segment. It is set automatically based on --pi but can be manually set as well."/> <param name="dense" type="select" label="Dense sketching" help="This flag will increase the seed density substantially, resulting in a density of roughly 0.02 * (1 + (1 - pi) / .05) where pi is the perc_identity threshold. This leads to longer runtimes and higher RAM usage, but significantly more accurate estimates of ANI."> <option value="">No dense sketching</option> <option value="--dense">Dense sketching</option> </param> <param name="filtermode" type="select" label="Filter mode" help="Mashmap implements a plane-sweep based algorithm to perform the alignment filtering. Similar to delta-filter in nucmer, different filtering options are provided that are suitable for long read or assembly mapping. Option -f map is suitable for reporting the best mappings for long reads, whereas -f one-to-one is suitable for reporting orthologous mappings among all computed assembly to genome mappings."> <option value="map">map - best mapping for long reads</option> <option value="one-to-one">one-to-one - best for mapping orthologous reads</option> <option value="none">None</option> </param> </inputs> <outputs> <data name="mashout" format="paf" label="mashmap on $query.element_identifier" hidden="false"/> </outputs> <tests> <test> <output name="mashout" value="mashout_sample" compare="diff" lines_diff="0"/> <param name="query" value="query_sample"/> <param name="reflist" value="reflist_sample"/> <param name="perc_identity" value="85.0"/> <param name="seqLength" value="5000"/> <param name="sketchSize" value="0"/> <param name="dense" value=""/> <param name="filtermode" value="map"/> </test> </tests> <help><![CDATA[ *MashMap* implements a fast and approximate algorithm for computing local alignment boundaries between long DNA sequences. It can be useful for mapping genome assembly or long reads (PacBio/ONT) to reference genome(s). Given a minimum alignment length and an identity threshold for the desired local alignments, Mashmap computes alignment boundaries and identity estimates using k-mers. It does not compute the alignments explicitly, but rather estimates an unbiased k-mer based Jaccard similarity using a combination of minmers (a novel winnowing scheme) and MinHash. This is then converted to an estimate of sequence identity using the Mash distance. An appropriate k-mer sampling rate is automatically determined using the given minimum local alignment length and identity thresholds. Output is in *paf* format This is space-delimited, with each line consisting of query name, length, 0-based start, end, strand, target name, length, start, end and mapping nucleotide identity. Details at https://github.com/lh3/miniasm/blob/master/PAF.md More details at the Mashmap github repository https://github.com/marbl/MashMap ]]></help> <citations> <citation type="doi">10.1093/bioinformatics/btad512</citation> <citation type="doi">10.1093/bioinformatics/bts573</citation> </citations> </tool>