| Miscellaneous |
| Version lineage of this tool (guids ordered most recent to oldest) |
| toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_rpsblast_wrapper/2.16.0+galaxy0 (this tool) |
| toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_rpsblast_wrapper/0.0.3 |
| ncbi_rpsblast_wrapper |
| Requirements (dependencies defined in the <requirements> tag set) |
| name | version | type |
| blast | 2.16.0 | package |
| Additional information about this tool |
## The command is a Cheetah template which allows some Python based syntax.
## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
rpsblast
#if $query.is_of_type('fasta.gz') and $query.ext != "fasta":
-query <(gunzip -c '${query}')
#else:
-query '${query}'
#end if
#if $db_opts.db_opts_selector == "db":
-db '${db_opts.database.fields.path}'
#elif $db_opts.db_opts_selector == "histdb":
-db '${os.path.join($db_opts.histdb.files_path, "blastdb")}'
#end if
-evalue $evalue_cutoff
-out '$output1'
##Set the extended list here so when we add things, saved workflows are not affected
#if str($output.out_format)=="ext":
-outfmt '6 std sallseqid score nident positive gaps ppos qframe sframe qseq sseq qlen slen salltitles'
#elif str($output.out_format)=="cols"
##Pick your own columns. Galaxy gives us it comma separated, BLAST+ wants space separated:
##Can we catch the user picking no columns and raise an error here?
#set cols = (str($output.std_cols)+","+str($output.ext_cols)+","+str($output.ids_cols)+","+str($output.misc_cols)+","+str($output.tax_cols)).replace("None", "").replace(",,", ",").replace(",", " ").strip()
-outfmt '6 $cols'
#else:
## Note do not quote this as can be '0 -html' which is really two arguments
-outfmt ${output.out_format}
#end if
-num_threads "\${GALAXY_SLOTS:-8}"
#if $adv_opts.adv_opts_selector=="advanced":
$adv_opts.filter_query
## Need int(str(...)) because $adv_opts.max_hits is an InputValueWrapper object not a string
##
## Quoting BLAST 2.7.1+ output from "blastp --help" or "blastn --help":
##
## *** Formatting options
## -num_descriptions <Integer, >=0>
## Number of database sequences to show one-line descriptions for
## Not applicable for outfmt > 4
## Default = `500'
## * Incompatible with: max_target_seqs
## -num_alignments <Integer, >=0>
## Number of database sequences to show alignments for
## Default = `250'
## * Incompatible with: max_target_seqs
##
## *** Restrict search or results
##
## -max_target_seqs <Integer, >=1>
## Maximum number of aligned sequences to keep
## Not applicable for outfmt <= 4
## Default = `500'
## * Incompatible with: num_descriptions, num_alignments
##
## So, taken at face value we do still need to treat the Text and HTML output
## differently from the Tabular and XML, yet the treatment of these limits is
## different (during search or after the search when writing the output):
## https://blastedbio.blogspot.com/2015/12/blast-max-target-sequences-bug.html
##
## See also our user-facing help text.
#if (str($adv_opts.max_hits) and int(str($adv_opts.max_hits)) > 0):
#if str($output.out_format) in ["6", "ext", "cols", "5"]:
## Most output formats use this, including tabular and XML:
-max_target_seqs '${adv_opts.max_hits}'
#else
## Text and HTML output formats 0-4 currently need this instead:
-num_descriptions '${adv_opts.max_hits}' -num_alignments '${adv_opts.max_hits}'
#end if
#end if
#if str($adv_opts.max_hsps)
-max_hsps '${adv_opts.max_hsps}'
#end if
#if float(str($adv_opts.qcov_hsp_perc)) > 0:
-qcov_hsp_perc '${adv_opts.qcov_hsp_perc}'
#end if
#if str($adv_opts.window_size):
-window_size '${adv_opts.window_size}'
#end if
## End of advanced options:
#end if
| Functional tests |
| name | inputs | outputs | required files |
| Test-1 |
query: four_human_proteins.fasta db_opts|database: cd00003_and_cd00008 db_opts|db_opts_selector: db evalue_cutoff: 1e-8 output|out_format: 6 |
name: value |
four_human_proteins.fasta value |