Mercurial > repos > iuc > bioext_bealign
view bealign.xml @ 1:f9b72a376ec9 draft
"planemo upload for repository https://github.com/davebx/bioext-gx/ commit 9a163dd8880c14f371e2603389f4951881a74b25"
author | iuc |
---|---|
date | Thu, 13 May 2021 16:57:26 +0000 |
parents | 6ef10b28e967 |
children | d8b6f0adaa79 |
line wrap: on
line source
<?xml version="1.0"?> <tool id="bioext_bealign" name="Align sequences" version="@VERSION@.0"> <description>to a reference using a codon alignment algorithm</description> <macros> <import>macros.xml</import> </macros> <expand macro="requirements" /> <version_command>bealign --version</version_command> <command detect_errors="exit_code"> <![CDATA[ ## Some downstream tools, such as the TN-93 clustering tool and RAxML, might ## break if there are non-standard characters in the sequences or text other ## than alphanumerics in the sequence names, so we run the input dataset ## through a simple awk script to remove any non-IUPAC-standard nucleotides ## and replace any unwanted characters in the sequence names with underscores. ## This should not affect the actual alignment, since any non-standard character ## in the sequences is already ignored, but the possibility remains. cat '$input' | awk '{ if (\$0 ~ "^[^>]") {a = gensub(/[^ACGTURYKMSWBDHVNacgturykmswbdhvn?-]/, "", "g"); } else {a=gensub(/[^>A-Za-z0-9_]/, "_", "g"); }; print a } ' | sed 's,_\\+,_,g' > reads.fa && bealign --reference '$select_reference.reference' --alphabet $advanced.alphabet #if $advanced.expected_identity: --expected-identity $advanced.expected_identity #end if --score-matrix $advanced.score_matrix $advanced.reverse_complement $advanced.keep_reference #if $advanced.discard: $advanced.discard '$advanced.discarded_reads' #end if reads.fa alignment.bam ]]> </command> <inputs> <param name="input" type="data" format="fasta" label="Input reads" help="For the benefit of certain tools that depend on this aligner, such as the TN-93 clustering tool, this dataset's sequence names will have non-alphanumeric characters replaced with underscores, and the sequences will be restricted to the set of IUPAC nucleotide characters." /> <conditional name="select_reference"> <param name="reference_type" type="select"> <option value="preset">Select preset</option> <option value="dataset">Use a history dataset</option> </param> <when value="preset"> <param argument="--reference" type="select"> <option value="HXB2_tat">HXB2 tat</option> <option value="HXB2_gag">HXB2 gag</option> <option value="HXB2_pol">HXB2 polymerase</option> <option value="HXB2_int">HXB2 integrase</option> <option value="HXB2_vif">HXB2 vif</option> <option value="HXB2_pr">HXB2 protease</option> <option value="HXB2_vpr">HXB2 vpr</option> <option value="NL4-3_prrt">NL4-3 protease and reverse transcriptase</option> <option value="HXB2_nef">HXB2 nef</option> <option value="HXB2_env">HXB2 envelope</option> <option value="HXB2_rt">HXB2 reverse transcriptase</option> <option value="HXB2_prrt">HXB2 protease and reverse transcriptase</option> <option value="HXB2_rev">HXB2 rev</option> <option value="HXB2_vpu">HXB2 vpu</option> </param> </when> <when value="dataset"> <param argument="--reference" type="data" format="fasta" label="Reference sequences" /> </when> </conditional> <section name="advanced" title="Advanced options" expanded="False"> <param name="expected_identity" argument="--expected-identity" type="float" min="0" max="1" optional="True" label="Discard sequences that are insufficiently identical to the reference" /> <param argument="--alphabet" type="select" label="Alphabet to use for alignment"> <option value="codon" selected="True">Codon</option> <option value="dna">DNA</option> <option value="amino">Amino acids</option> </param> <param name="score_matrix" argument="--score-matrix" type="select" label="Parametrize using score matrix"> <option value="BLOSUM62" selected="True">Blocks substitution</option> <option value="DNA65">DNA, 65% expected identity</option> <option value="DNA70">DNA, 70% expected identity</option> <option value="DNA88">DNA, 88% expected identity</option> <option value="DNA80">DNA, 80% expected identity</option> <option value="DNA95">DNA, 95% expected identity</option> <option value="PAM200">PAM 200 substitution</option> <option value="PAM250">PAM 250 substitution</option> <option value="HIV_BETWEEN_F">HIV between+F</option> </param> <param argument="--discard" type="boolean" checked="False" truevalue="--discard" falsevalue="" label="Output discarded sequences to a separate dataset" /> <param name="reverse_complement" argument="--reverse-complement" type="boolean" checked="False" truevalue="--reverse-complement" falsevalue="" label="Also try to align against reverse complement of reference" /> <param name="keep_reference" argument="--keep-reference" type="boolean" checked="False" truevalue="--keep-reference" falsevalue="" label="Include reference as first sequence in aligned BAM" /> </section> </inputs> <outputs> <data name="output" format="bam" from_work_dir="alignment.bam" /> <data name="discarded_reads" format="fasta"> <filter>advanced['discard']</filter> </data> </outputs> <tests> <test> <param name="input" ftype="fasta" value="bealign-in1.fa" /> <param name="reference_type" value="dataset" /> <param name="score_matrix" value="HIV_BETWEEN_F" /> <param name="reference" ftype="fasta" value="bealign-in-ref-1.fa" /> <output name="output" file="bealign-out1.bam" ftype="bam" /> </test> <test> <param name="input" ftype="fasta" value="bealign-in2.fa" /> <param name="reference_type" value="dataset" /> <param name="score_matrix" value="BLOSUM62" /> <param name="reference" ftype="fasta" value="bealign-in-ref-2.fa" /> <output name="output" file="bealign-out2.bam" ftype="bam" /> </test> <test> <param name="input" ftype="fasta" value="bealign-in2.fa" /> <param name="reference_type" value="dataset" /> <param name="expected_identity" value="0.9" /> <param name="score_matrix" value="BLOSUM62" /> <param name="reference" ftype="fasta" value="bealign-in-ref-2.fa" /> <output name="output" file="bealign-out3.bam" ftype="bam" /> </test> </tests> <help> <![CDATA[ bealign ------- Align sequences to a reference using a codon alignment algorithm. NOTES ----- Reference can be one of the presets or a custom history reference. ]]></help> <expand macro="citations"/> </tool>