Program Options for seedtop
Tao Tao, Ph.D.
User Service
NCBI, NLM, NIH
 
Table of Content

 
1. Introduction
seedtop is a little-known program found in the NCBI standalone blast package, whose main function is to search for patterns in an input sequence or database. It has four modes of usage, which are referred to as "subprograms": two for pattern searches from a input query or database only and two for pattern initiated sequence alignment. The following table lists these subprograms, their functions, and required inputs.

Table 1.1 Subprogram Fucntion of seedtop
Program Call ¹FunctionsRequired Inputs
-p patmatchSearch for patterns in an input sequence Pattern (-k) and sequence (-i)
-p patternSearch for patterns in an input database Same as above
-p patseedSearch for patterns in the query and align the query against a database Pattern (-k), input sequence (-i), and target database (-d)
-p seedSearch for specific pattern in the query and align the query against a database Same as above ²
NOTE:
¹ The program strings listed are for nucleotide searches. For protein searches, add lowercase p to the program name.
² The pattern file needs to have an extra HI initialed line to specify the position in the input sequence at which the pattern occurrence of interest starts.
 
2. Setup
Installation of the standalone blast archive is fairly easy. Once the archive is placed in a desired directory and extracted, the whole package will be installed in a newly created subdirectory called blast-2.2.13 (assuming 2.2.13 release here). All the programs, including seedtop, will be in the blast-2.2.13/bin/ subdirectory (blast-2.2.13\bin\ for PC).

Appropriate setup requires the creation of .ncbirc configuration file, which blast programs (including seedtop) read upon startup to locate the appropriate files needed. In this .ncbirc, we can specify the location of the DATA directory and the BLASTDB directory using the following lines:

[NCBI]
DATA=/path/data

[BLAST]
BLASTDB=/path/db

The [NCBI] section is used by most of the NCBI programs to locate the data directory and retrieve specific files needed (MATRIX file for example). The [BLAST] section specifies the path to the directory where databases are stored.

The db directory does not come with the NCBI setup, so one needs to create it after installation. If we place the directory anywhere, we need to change the path correspondingly. For simplicity, we suggest that it be created under the blast-2.2.13 (version # will vary for future releases) at the same level as data directory.

3. Program Options
Once the standalone BLAST package is setup, we can "cd" to the directory and issue the "seedtp -" command to display the program options for this program. Here we list each option in a table and describe its functions, argument value, and example usage.

Table 3.1
Option-d
FunctionSpecifies the target database to search
Defaultnr
Input formatTakes database formatted by formatdb, use name without extension
ExampleTo search against est_human, use: -d est_human
NoteThis is not a mandatory option, search for patterns in a single input sequence does not require this option.

Table 3.2
Option-i
FunctionSpecifies the input query file
Defaultstdin
Input format[File In], file name with extension
ExampleTo take my_pept.txt as input query, use: -i my_pept.txt
NoteTo using stdin as input, either redirect or pipe the input:
seedtop -k pat -p patmatchp <input_file
more input_file| seedtop -k pat -p patmatchp

Table 3.3
Option-k
FunctionSpecifies the input pattern (Hit File)
Defaulthit_file
Input formatComplete file name with extension
ExampleIf the pattern file is named my_pat.txt, use: -k my_pat.txt
NoteSee section 4.1 below for details.

Table 3.4
Option-o
FunctionSpecifies the output file name
Defaultstdout
Input formatfile name with or without extension
ExampleTo save result in my_output, use: -o my_output
NoteRedirection or piping can be used instead.

Table 3.5
Option-G
FunctionSpecifies the cost to open a gap
Default11
Input format[Integer]
ExampleTo change this to 12, use: -G 12
NoteThe choice of -M option determines the available input value for this option as well as that for -E option. Only a selected set is supported. Detailed list is in the blastall document.

Table 3.6
Option-E
FunctionSpecifies the cost to extend a gap
Default1
Input format[Integer]
ExampleTo change this to 2, use: -E 2
NoteSee Table 3.5 for more information

Table 3.6
Option-D
FunctionSpecifies the cost to decline alignment
Default99999
Input format[Integer]
ExampleN/A
NoteFunctions similar to the -L option in blastpgp. If enabled, it would implement Dr. Altschul's 3-parameter gap model for scoring.

Table 3.7
Option-X
FunctionSpecifies X dropoff value for gapped alignment (in bits)
Default15
Input format[Integer]
ExampleTo increase this dropoff value to 20, use: -X 20
NoteIncreasing this value may enable one to see a longer alignment

Table 3.8
Option-S
FunctionSpecifies cutoff cost
Default30
Input format[Integer]
ExampleN/A
NoteCurrently it is overridden in pseed3.c. It could allow the user to control the score threshold applied to the part of the alignment that does not include the pattern in deciding which alignment(s) to report.

Table 3.9
Option-C
FunctionScore only or not
Default1
Input format[Integer]
ExampleN/A
NoteThis is relevant only to searches with -p seed(p) or -p patseed(p). NOT implemented yet.

Table 3.10
Option-I
FunctionWhether to Show GI's in deflines
DefaultF
Input format[T/F]
ExampleTo display GI in the deflines, use: -I T
NoteRelevant only to searches with -p seed(p) or -p patseed(p)

Table 3.11
Option-e
FunctionSpecifies the expectation value (E) cutoff
Default10.0
Input format[Real]
ExampleTo set this to 0.001, use: -e 0.001 or -e 1e-3
NoteRelevant only to searches with -p seed(p) or -p patseed(p)

Table 3.12
Option-J
FunctionWhether to believe the query defline or not
DefaultF
Input format[T/F]
ExampleTo set this to true, use: -J T
NoteTo save SeqAlign object requires -J T

Table 3.13
Option-O
FunctionSpecifies the output file for SeqAlign object
DefaultOptional
Input format[File Out]
ExampleN/A
NoteRelevant only to searches with -p seed(p) or -p patseed(p). NOT implement yet.

Table 3.14
Option-M
FunctionSpecifies which matrix file to use
DefaultBLOSUM62
Input format[String]
ExampleTo set matrix to PAM30, use: -M PAM30
NoteRelevant to seedp/patseedp searches, only a limited set is supported

Table 3.15
Option-p
FunctionSpecifies which subprogram to run
Defaultpatmatchp
Input format[String]
ExampleTo find protein patterns in a database, use: -p patternp
NoteChoices for nucleotide searches: patmatch, pattern, seed, and patseed
Choices for protein searches: patmatchp, patternp, seedp, and patseedp

Table 3.16
Option-r
FunctionSpecifies the reward for a match
Default10
Input format[Integer]
ExampleTo increase the reward to 20, use: -r 20
NoteRelevant only to searches with -p seed(p) or -p patseed
For nucleotide searches only.

Table 3.17
Option-q
FunctionSpecifies the cost for a mismatch
Default-10
Input format[Integer]
ExampleTo increase the penalty to -15, use: -q -15
NoteFor nucleotide search with seed/patseed only.

Table 3.18
Option-F
FunctionWhether to filter query sequence with SEG
DefaultF
Input format[T/F]
ExampleTo activate filter, use: -F T
NoteRelevant to seedp/patseedp searches only.

4. Execution and Practical Usage
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only provide a couple simple examples.

      4.1 Pattern specification
The most useful functionalities of seedtop are patmatchp and patternp. Since patseedp does not generate the actual alignment and its function is already incorporated in blastpgp, we will not cover it here. The functionality for searching with nucleotide entries are similar to protein searches, we will only