PFSEARCH(1)

NAME
pfsearch - search a protein or DNA sequence library for sequence segments matching a profile

SYNOPSIS

pfsearch
    [ -abdfhlLmruksvxyz ] [ -C cut_off ] [ -M mode_nb ] [ -W width ] [ profile | - ] [ sequence_library | - ] [ parameters ]

DESCRIPTION
pfsearch compares a query profile against a DNA or protein sequence library. The result is an unsorted list of profile-sequence matches written to the standard output. A variety of output formats containing different information can be specified via the options -l, -L, -r, -k, -s, -x, -y and -z. The file 'profile' contains a profile in PROSITE format. The 'sequence_library' file contains a sequence library in EMBL/SWISS-PROT format (assumed by default) or in Pearson/Fasta format (indicated by option -f). If '-' is specified instead of one of the filenames, the corresponding data is read from the standard input.

OPTIONS

profile
    Input query profile.
    The PROSITE profile contained in this file will be used to search for profile to sequence matches in a biological sequence library. If the filename is replaced by a '-', pfsearch will read the profile from stdin.

sequence_library
    Library of DNA or protein sequences.
    This file should contain one or several EMBL/SWISS-PROT (default) or Pearson/Fasta (option -f) formatted DNA or protein sequences. The program pfsearch tries to identify matches between the input profile and all individual sequences of this library. If the filename is replaced by a '-', pfsearch will read the sequence library from stdin.

-a  Report optimal alignment scores for all sequences regardless of the cut-off value. This option simultaneously forces DISJOINT=UNIQUE.

-b  Search the complementary strands of DNA sequences as well.

-f  Input sequence library is in Pearson/Fasta format.

-h  Display usage help text.

-l  Indicate the value of the highest cut-off level exceeded by the match score in the output list.

-L  Indicate by character string the highest cut-off level exceeded by the match score in the output list.

    Note:
        The generalized profile format includes a text string field to specify a name for a cut-off level. The -L option causes the program to display the first two characters of this text string (usually something like '!', '?', '??', etc.) at the beginning of each match description.

-m  Report individual matches for circular profiles.
    If the profile is circular, each match between a sequence and a profile can be composed of a stretch of individual matches of the profile. By default, pfsearch reports only the total matched region. When this option is set, detailed information for each individual match will be output as well.

    Note:
        The scoring system for most circular profiles has been optimized to find total matches, therefore the normalized scores of individual matches of a circular profile to a sequence should be considered with caution.

-r  Use raw scores rather than normalized scores for match selection. The normalized score is not printed, this option is useful to create raw score lists to be used with pfscale(1).

-u  Forces DISJOINT=UNIQUE.

-C cut_off
    Cut-off value to be used for match selection.
    The value of 'cut_off' overwrites the level zero cut-off value specified in the profile.
    An integer argument is interpreted as a raw score value, a decimal argument as a normalized score value.
    Default: profile level 0 cut-off value (normalized score if present)

    Note:
        Compared to release 2.2, an integer value does not force option -r. Normalized scores will still be listed in output if an integer cut-off is specified on the command line but cut-off level computation will be based on raw score.

-M mode_nb
    Normalization mode to use for score computation.
    The 'mode_nb' specifies which normalization mode defined in the profile should be used to compute the normalized scores for profile to sequence matches. This option will override the profile's PRIORITY parameter.
    If the specified normalization mode does not exist in the profile, an error message will be output to standard error and the search is interrupted.
    Type: integer
    Default: lowest priority mode defined in the profile

  Output modifiers

-d  Limit sequence description length.
    If this option is set, the description of the sequence on the header line will be limited in length. If the match information is longer than the output width specified using option -W, the sequence description will not be printed. Else the description will be truncated to fit the -W value.
    By default, the sequence description is not truncated. This option can not be used when option -k is set.

-k  Use xpsa(5) headers for output.
    When this option is set, all output types (see below) will use an xpsa(5) style header line. This format uses keyword=value pairs to output alignment parameters. It is useful to transfer information between different sequence alignment tools.

-s  List the sequences of the matched regions as well. The output will be a Pearson/Fasta-formatted sequence library.

-v  Suppress sequence/profile parsing warnings. If this option is set no warning messages will be printed on stderr. Only fatal errors will be reported. This option should be used with caution.

-x  List profile-sequence alignments in psa(5) format. Please refer to the corresponding man page for more information.

-y  Display alignments between the profile and the matched sequence regions in a human-friendly pairwise alignment format.

-z  Indicate starting and ending position of the matched profile range. The latter position will be given as a negative offset from the end of the profile. Thus the range [ 1, -1] means entire profile.

-W width
    Set alignment output width.
    The value of 'width' specifies how many residues will be output on one line when any of the -s, -x or -y options is set.
    Type: integer
    Default: 60

PARAMETERS

Note:
    for backwards compatibility, release 2.3 of the pftools package will parse the version 2.2 style parameters, but these are deprecated and the corresponding option (refer to the options section) should be used instead.

C=# Cut-off value.
    Use option -C instead.

W=# Output width.
    Use option -W instead.

EXAMPLES

(1) pfsearch -f -C 6.0 sh3.prf sh3.seq

    Searches the Pearson/Fasta-formatted protein sequence library 'sh3.seq' for SH3 domains with a cut-off value of 6.0 normalized score units. The file 'sh3.seq' contains 20 SH3 domain-containing protein sequences from SWISS-PROT release 32. The file 'sh3.prf' contains the PROSITE entry SH3/PS50002.

(2) pfsearch -bx ecp.prf CVPBR322 | psa2msa -du | readseq -p -fMSF > ecp.msf

    Generates a multiple sequence alignment of potential E. coli promoters on both strands of plasmid pBR322. The file 'ecp.prf' contains a profile for E. coli promoters. The file 'CVPBR322'
     contains EMBL entry J01749|CVPBR322. The result file 'ecp.msf' can further be processed by GCG programs accepting MSF files as input.

EXIT CODE

On successful completion of its task, pfsearch will return an exit code of 0. If an error occurs, a diagnostic message will be output on standard error and the exit code will be different from 0. When conflicting options where passed to the program but the task could nevertheless be completed, warnings will be issued on standard error.

BUGS
The use of normalized scores as cut-off values can lead to a different behaviour when compared to raw scores. This is due to the inherent rounding inaccuracy of real numbers. The normalized scores used as cut-offs should be rounded down in order to circumvent this problem.

SEE ALSO
pfscan(1), pfmake(1), psa2msa(1), psa(5), xpsa(5)

AUTHOR
The pftools package was developed by Philipp Bucher.
Any comments or suggestions should be addressed to <pftools@sib.swiss>.