Mercurial > repos > iuc > miniprot
diff miniprot.xml @ 2:d518cf04b55c draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/miniprot commit bda011acaca773960c85bfa1288fa8b74cfabb15
author | iuc |
---|---|
date | Thu, 06 Apr 2023 09:20:48 +0000 |
parents | ce04c239454b |
children | 52bdc302299b |
line wrap: on
line diff
--- a/miniprot.xml Fri Sep 23 22:35:23 2022 +0000 +++ b/miniprot.xml Thu Apr 06 09:20:48 2023 +0000 @@ -13,38 +13,50 @@ #if str($adv.options) == "yes" $adv.mapping.no_splicing -c $adv.mapping.max_kmer - -G $adv.mapping.max_intron -n $adv.mapping.min_syncmers -m $adv.mapping.min_chain_score -l $adv.mapping.second_round_kmer_size -e $adv.mapping.max_extension -p $adv.mapping.score_ratio -N $adv.mapping.max_secondary_alignments + -w $adv.mapping.log_gap_penalty_weight -O $adv.alignment.gap_open -E $adv.alignment.gap_extension -J $adv.alignment.intron_open -C $adv.alignment.non_canonical_splice -F $adv.alignment.frameshift -B $adv.alignment.end_bonus + -j $adv.alignment.splice_model + #if str($adv.mapping.intron_size.mode) == 'manual' + -G $adv.mapping.intron_size.max_intron + #elif str($adv.mapping.intron_size.mode) == 'auto' + -I + #end if + #if str($adv.output.prefix) != 'MP' -P '$adv.output.prefix' #end if $adv.output.print_unmapped_proteins --outn=$adv.output.outputs_per_query + --outc=$adv.output.output_fraction_query + --outs=$adv.output.output_score_least + $adv.output.output_residue_alignment #end if #if str($db.dbtype) == 'fasta' '$db.genomic_fasta' -k $db.kmer_size - -s $db.submer_size - -b $db.bits_per_block + -b $db.bits_per_block + -M $db.modimisers + -L $db.min_ORF #else '$db.genomic_db' #end if #if str($output_format) == "gff" --gff + #else if str($output_format) == "gtf" + --gtf #end if - '$protein_fasta' - >'$output_alignment' + '$protein_fasta' > '$output_alignment' ]]></command> <inputs> <conditional name="db"> @@ -54,9 +66,10 @@ </param> <when value="fasta"> <param name="genomic_fasta" type="data" format="fasta,fasta.gz" label="Genomic sequence (FASTA)" help="Genomic contigs / scaffolds to be aligned against in FASTA format" /> - <param argument="-k" name="kmer_size" type="integer" min="1" value="6" label="K-mer size" /> - <param argument="-s" name="submer_size" type="integer" min="1" value="4" label="Submer size" help="Submer size (density: 1/(2*(kmer_size-submer_size)+1))" /> - <param argument="-b" name="bits_per_block" type="integer" min="1" value="8" label="Bits per block" /> + <param argument="-k" name="kmer_size" type="integer" min="1" value="6" label="K-mer size for genome-wide indexing" /> + <param argument="-b" name="bits_per_block" type="integer" min="1" value="8" label="Number of bits per bin" help="Miniprot splits the genome into non-overlapping bins of 2^8 bp in size" /> + <param argument="-M" name="modimisers" type="integer" value="1" label="Sample k-mers at a rate 1/2**INT" help="Increasing this option reduces peak memory but decreases sensitivity" /> + <param argument="-L" name="min_ORF" type="integer" value="30" label="Minimum ORF length to index" /> </when> <when value="preindexed"> <!-- refine the datatype here once Miniprot index data type is in Galaxy --> @@ -67,6 +80,7 @@ <param name="output_format" type="select" label="Output format" > <option value="gff" selected="true">GFF3</option> <option value="paf">PAF</option> + <option value="gtf">GTF</option> </param> <conditional name="adv"> <param name="options" type="select" label="Advanced options"> @@ -76,24 +90,37 @@ <when value="yes"> <section name="mapping" title="Mapping"> <param argument="-S" name="no_splicing" type="boolean" truevalue="-S" falsevalue="" checked="false" label="No splicing" help="No splicing (apply -G1000 -J1000 -e1000)" /> - <param argument="-c" name="max_kmer" type="integer" min="1" value="50000" label="Max k-mer occurences" /> - <param argument="-G" name="max_intron" type="integer" min="0" value="200000" label="Max intron size" /> - <!-- the -w option is mentioned in the help text but apparently not implmented: https://github.com/lh3/miniprot/issues/12 --> - <!-- <param argument="-w" name="log_gap_penalty_weight" type="float" value="0.75" label="Log gap penalty weight" /> --> - <param argument="-n" name="min_syncmers" type="integer" min="1" value="5" label="Minimum number of syncmers in a chain" /> + <param argument="-c" name="max_kmer" type="integer" min="1" value="20000" label="Max k-mer occurences" /> + <param argument="-w" name="log_gap_penalty_weight" type="float" min="0" max="1" value="0.75" label="Log gap penalty weight" /> + <param argument="-n" name="min_syncmers" type="integer" min="1" value="3" label="Minimum number of syncmers in a chain" /> <param argument="-m" name="min_chain_score" type="integer" min="0" value="0" label="Minimum chaining score" /> <param argument="-l" name="second_round_kmer_size" type="integer" min="1" value="5" label="K-mer size for second round of chaining" /> <param argument="-e" name="max_extension" type="integer" min="0" value="10000" label="Max extension for second round of chaining" /> <param argument="-p" name="score_ratio" type="float" min="0" max="1" value="0.7" label="Minimum secondary-to-primary score ratio" /> - <param argument="-N" name="max_secondary_alignments" type="integer" min="0" value="50" label="Max secondary alignments to consider" /> + <param argument="-N" name="max_secondary_alignments" type="integer" min="0" value="30" label="Max secondary alignments to consider" /> + <conditional name="intron_size"> + <param name="mode" type="select" label="Maximum intron size"> + <option value="manual" selected="true">Manual</option> + <option value="auto">Auto (3.6*sqrt)</option> + </param> + <when value="manual"> + <param argument="-G" name="max_intron" type="integer" min="0" value="200000" label="Maximum intron size" /> + </when> + <when value="auto" /> + </conditional> </section> <section name="alignment" title="Alignment"> <param argument="-O" name="gap_open" type="integer" min="0" value="11" label="Gap open penalty" /> <param argument="-E" name="gap_extension" type="integer" min="0" value="1" label="Gap extension penalty" help="A k-long gap costs open_penalty+k*extension_penalty" /> - <param argument="-J" name="intron_open" type="integer" min="0" value="31" label="Intron open penalty" /> - <param argument="-C" name="non_canonical_splice" type="integer" min="0" value="11" label="Penalty for non-canonical splicing" /> - <param argument="-F" name="frameshift" type="integer" min="0" value="17" label="Frameshift penalty" /> - <param argument="-B" name="end_bonus" type="integer" min="0" value="5" label="End bonus" /> + <param argument="-J" name="intron_open" type="integer" min="0" value="29" label="Intron open penalty" /> + <param argument="-C" name="non_canonical_splice" type="float" value="1" label="Weight of splice penalty; 0 to ignore splice signals" /> + <param argument="-F" name="frameshift" type="integer" min="0" value="23" label="Frameshift penalty" /> + <param argument="-B" name="end_bonus" type="integer" min="0" value="5" label="Bonus score for alignment reaching query ends" /> + <param argument="-j" name="splice_model" type="select" label="Splicing model for the target genome" help="2=mammal, 1=general, 0=none" > + <option value="O" >None: No splicing model (0)</option> + <option value="1" selected="true">General: Optimal splicing sequence: '|GTR...YAG|' (1)</option> + <option value="2">Mammal: Optimal splicing sequence: 'G|GTR...YYYNYAG|' (2)</option> + </param> </section> <section name="output" title="Output"> <param argument="-P" name="prefix" type="text" label="Prefix for IDs in GFF3 output" value="MP"> @@ -106,6 +133,10 @@ </param> <param argument="-u" name="print_unmapped_proteins" type="boolean" truevalue="-u" falsevalue="" label="Print unmapped proteins" checked="false" /> <param argument="--outn" name="outputs_per_query" type="integer" min="0" value="100" label="Outputs per query" help="The number of outputs will be the minimum of this and the max secondary alignments option" /> + <param argument="--aln" name="output_residue_alignment" type="boolean" truevalue="--aln" falsevalue="" checked="false" label="Output residue alignment" help="Only for GFF output" /> + <param argument="--outs" name="output_score_least" type="float" min="0" max="1" value="0.99" + label="For each protein, only output alignments with a score higher than 'best_score' multiplied by this value"/> + <param argument="--outc" name="output_fraction_query" type="float" value="0.1" label="Output if at least this fraction of query is aligned" /> </section> <param argument="-K" name="query_batch_size" type="integer" min="1" value="2000000" label="Query batch size" /> </when> @@ -117,6 +148,7 @@ <data name="output_alignment" format="gff3" label="Miniprot on ${on_string}"> <change_format> <when input="output_format" value="paf" format="paf" /> + <when input="output_format" value="gtf" format="gtf"/> </change_format> </data> </outputs> @@ -129,8 +161,8 @@ <param name="protein_fasta" value="input_query.fasta.gz" ftype="fasta" /> <output name="output_alignment" ftype="gff3"> <assert_contents> - <has_text text="ID=MP000001;Identity=1.0000;Positive=1.0000;Target=tr|O06302|O06302_MYCTU 1 126" /> - <has_text text="ID=MP000359;Identity=0.9811;Positive=1.0000;Target=tr|V5QPR5|V5QPR5_MYCTU 1 53" /> + <has_text text="ID=MP000001;Rank=1;Identity=0.3420;Positive=0.5104;Target=tr|I6YGH7|I6YGH7_MYCTU 1 375" /> + <has_text text="ID=MP000066;Rank=1;Identity=0.3613;Positive=0.5178;Target=sp|P9WQE5|PPSB_MYCTU 1 1214" /> </assert_contents> </output> </test> @@ -147,7 +179,7 @@ <has_text text="cs:Z::29*agcG:3*gtgA:5*ccgA:9*accS:1*gccV:4*cagL:1*gtcS:3*gtcA*gtcI*accA*gccG:8*gccS:2*ggtA:5*gccI*agcG:1*ctgA:4*gccV:5*gggL:1*gtgS:2" /> </assert_contents> </output> - </test> + </test> <test expect_num_outputs="1"> <conditional name="db"> <param name="dbtype" value="fasta" /> @@ -165,6 +197,27 @@ </assert_contents> </output> </test> + + <test expect_num_outputs="1"> + <conditional name="db"> + <param name="dbtype" value="fasta"></param> + <param name="genomic_fasta" value="input_genome.fasta.gz" ftype="fasta"></param> + </conditional> + <param name="protein_fasta" value="input_query.fasta.gz" ftype="fasta"></param> + <param name="output_format" value="gtf"></param> + <conditional name="adv"> + <param name="options" value="yes"></param> + <param name="second_round_kmer_size" value="32"></param> + </conditional> + <output name="output_alignment" ftype="gtf"> + <assert_contents> + <has_text text="NC_000962.3" /> + <has_text text='transcript_id "MPT000004"; gene_id "MPG000004"' /> + </assert_contents> + </output> + </test> + + </tests> <help><![CDATA[ miniprot_ rapidly aligns a protein sequence against a genome with affine gap penalty, splicing and frameshift. @@ -177,18 +230,6 @@ .. _miniprot: https://github.com/lh3/miniprot .. _overview: https://github.com/lh3/miniprot#algorithm-overview - ]]></help> - <citations> - <citation type="bibtex"><![CDATA[ - @misc{Li2022, - author = {Li, Heng}, - title = {miniprot}, - year = {2022}, - publisher = {GitHub}, - journal = {GitHub repository}, - howpublished = {\url{https://github.com/lh3/miniprot}}, - commit = {b442b7a6b60dbd15f460ea9af75fa0b7293d4a8c} - } - ]]></citation> - </citations> + ]]></help> + <expand macro="citation"></expand> </tool>