xenial (1) nhmmer.1.gz

Provided by: hmmer_3.1b2-2_amd64 bug

NAME

       nhmmer - search DNA/RNA queries against a DNA/RNA sequence database

SYNOPSIS

       nhmmer [options] <queryfile> <seqdb>

DESCRIPTION

       nhmmer is used to search one or more nucleotide queries against a nucleotide sequence database.  For each
       query in <queryfile>, use that query to search the target database of sequences in <seqdb>, and output  a
       ranked  list  of the hits with the most significant matches to the query. A query may be either a profile
       model built using hmmbuild, a sequence alignment, or a single sequence. Sequence based queries can be  in
       a  number  of formats (see --qformat), and can typically be autodetected. Note that only Stockholm format
       supports queries made up of more than one sequence alignment.

       Either the query <queryfile> or the target <seqdb> may be '-' (a dash character), in which case the query
       file  or  target  database  input will be read from a <stdin> pipe instead of from a file. Only one input
       source can come through <stdin>, not both.  If the query is sequence-based and passed  via  <stdin>,  the
       --qformat  flag  must be used.  If the <queryfile> contains more than one query, then <seqdb> cannot come
       from <stdin>, because we can't rewind the streaming target database to search it with another profile.

       If the query is sequence-based, and not from <stdin>, a new file containing the  HMM(s)  built  from  the
       input(s) in <queryfile> may optionally be produced, with the filename set using the --hmmout flag.

       The  output  format  is  designed  to  be  human-readable,  but is often so voluminous that reading it is
       impractical, and parsing it is a pain. The --tblout option saves output in a simple tabular  format  that
       is  concise and easier to parse.  The -o option allows redirecting the main output, including throwing it
       away in /dev/null.

OPTIONS

       -h     Help; print a brief reminder of command line usage and all available options.

OPTIONS FOR CONTROLLING OUTPUT

       -o <f> Direct the main human-readable output to a file <f> instead of the default stdout.

       -A <f> Save a multiple alignment of all significant hits (those satisfying inclusion thresholds)  to  the
              file <f>.

       --tblout <f>
              Save a simple tabular (space-delimited) file summarizing the per-target output, with one data line
              per homologous target sequence found.

       --dfamtblout <f>
              Save a tabular (space-delimited) file summarizing the per-hit output, similar to --tblout but more
              succinct.

       --aliscoresout <f>
              Save  to  file  a  list  of  per-position  scores  for  each hit.  This is useful, for example, in
              identifying regions of high score density for use in resolving  overlapping  hits  from  different
              models.

       --hmmout <f>
              If <queryfile> is sequence-based, write the internally-computed HMM(s) to <f>.

       --acc  Use accessions instead of names in the main output, where available for profiles and/or sequences.

       --noali
              Omit the alignment section from the main output. This can greatly reduce the output volume.

       --notextw
              Unlimit  the  length of each line in the main output. The default is a limit of 120 characters per
              line, which helps in displaying the output cleanly on terminals and in editors, but  can  truncate
              target profile description lines.

       --textw <n>
              Set the main output's line length limit to <n> characters per line. The default is 120.

OPTIONS CONTROLLING REPORTING THRESHOLDS

       Reporting  thresholds  control  which  hits  are reported in output files (the main output, --tblout, and
       --dfamtblout).  Hits are ranked by statistical significance (E-value).

       -E <x> Report target sequences with an E-value of <= <x>.  The default is 10.0, meaning that on  average,
              about  10  false  positives  will  be  reported per query, so you can see the top of the noise and
              decide for yourself if it's really noise.

       -T <x> Instead of thresholding output on E-value, instead report target sequences with a bit score of  >=
              <x>.

OPTIONS FOR INCLUSION THRESHOLDS

       Inclusion thresholds are stricter than reporting thresholds.  Inclusion thresholds control which hits are
       considered to be reliable enough to be included in an output alignment or a subsequent search  round,  or
       marked as significant ("!") as opposed to questionable ("?")  in hit output.

       --incE <x>
              Use  an  E-value  of  <=  <x>  as  the  inclusion threshold.  The default is 0.01, meaning that on
              average, about 1 false positive would be expected in  every  100  searches  with  different  query
              sequences.

       --incT <x>
              Instead  of  using  E-values for setting the inclusion threshold, use a bit score of >= <x> as the
              inclusion threshold.  By default this option is unset.

OPTIONS FOR MODEL-SPECIFIC SCORE THRESHOLDING

       Curated profile databases may define specific bit score thresholds  for  each  profile,  superseding  any
       thresholding based on statistical significance alone.

       To  use  these  options,  the  profile  must  contain  the appropriate (GA, TC, and/or NC) optional score
       threshold annotation; this is picked up  by  hmmbuild  from  Stockholm  format  alignment  files.  For  a
       nucleotide  model,  each  thresholding  option  has  a single per-hit threshold <x> This acts as if -T<x>
       --incT<x> has been applied specifically using each model's curated thresholds.

       --cut_ga
              Use the GA (gathering) bit score threshold in the model to set  per-hit  reporting  and  inclusion
              thresholds.  GA thresholds are generally considered to be the reliable curated thresholds defining
              family membership; for example, in Dfam, these thresholds are applied  when  annotating  a  genome
              with  a  model of a family known to be found in that organism. They may allow for minimal expected
              false discovery rate.

       --cut_nc
              Use the NC (noise cutoff) bit score threshold in the model to set per-hit reporting and  inclusion
              thresholds.  NC  thresholds are less stringent than GA; in the context of Pfam, they are generally
              used to store the score of the highest-scoring known false positive.

       --cut_tc
              Use the NC (trusted cutoff) bit score  threshold  in  the  model  to  set  per-hit  reporting  and
              inclusion thresholds. TC thresholds are more stringent than GA, and are generally considered to be
              the score of the lowest-scoring known true positive that is above all known false  positives;  for
              example,  in  Dfam, these thresholds are applied when annotating a genome with a model of a family
              not known to be found in that organism.

OPTIONS CONTROLLING THE ACCELERATION PIPELINE

       HMMER3 searches are accelerated in a three-step filter pipeline: the  scanning-SSV  filter,  the  Viterbi
       filter,  and  the  Forward  filter. The first filter is the fastest and most approximate; the last is the
       full Forward scoring algorithm. There is also a bias filter step between SSV and  Viterbi.  Targets  that
       pass  all  the  steps  in  the  acceleration  pipeline  are  then  subjected  to postprocessing -- domain
       identification and scoring using the Forward/Backward algorithm.

       Changing filter  thresholds  only  removes  or  includes  targets  from  consideration;  changing  filter
       thresholds  does  not  alter  bit  scores, E-values, or alignments, all of which are determined solely in
       postprocessing.

       --max  Turn off  (nearly)  all  filters,  including  the  bias  filter,  and  run  full  Forward/Backward
              postprocessing  on  most  of the target sequence.  In contrast to phmmer and hmmsearch, where this
              flag really does turn off the filters entirely, the --max flag in  nhmmer  sets  the  scanning-SSV
              filter threshold to 0.4, not 1.0. Use of this flag increases sensitivity somewhat, at a large cost
              in speed.

       --F1 <x>
              Set the P-value threshold for the SSV filter step.  The default is 0.02, meaning that  roughly  2%
              of the highest scoring nonhomologous targets are expected to pass the filter.

       --F2 <x>
              Set the P-value threshold for the Viterbi filter step.  The default is 0.001.

       --F3 <x>
              Set the P-value threshold for the Forward filter step.  The default is 1e-5.

       --nobias
              Turn  off  the  bias  filter.  This increases sensitivity somewhat, but can come at a high cost in
              speed, especially if the query has biased residue  composition  (such  as  a  repetitive  sequence
              region,  or  if  it  is a membrane protein with large regions of hydrophobicity). Without the bias
              filter, too many sequences may pass the  filter  with  biased  queries,  leading  to  slower  than
              expected  performance  as  the  computationally  intensive Forward/Backward algorithms shoulder an
              abnormally heavy load.

OPTIONS FOR SPECIFYING THE ALPHABET

       The alphabet type of the target database (DNA or RNA) is autodetected  by  default,  by  looking  at  the
       composition of the <seqdb>.  Autodetection is normally quite reliable, but occasionally alphabet type may
       be ambiguous and autodetection can fail (for instance, when the first  sequence  starts  with  a  run  of
       ambiguous  characters). To avoid this, or to increase robustness in automated analysis pipelines, you may
       specify the alphabet type of <seqdb> with these options.

       --dna  Specify that all sequences in <seqdb> are DNAs.

       --rna  Specify that all sequences in <seqdb> are RNAs.

       When searching with nhmmer, one may optionally precompute a binary version of the target database,  using
       makehmmerdb,  then  search  against  that database. Using default settings, this yields a roughly 10-fold
       acceleration with small loss of sensitivity on benchmarks.  This is achieved  using  a  heuristic  method
       that searches for seeds (ungapped alignments) around which full processing is done. This is essentially a
       replacement to the SSV stage. (This method has been extensively tested, but should still  be  treated  as
       somewhat experimental.)  The following options only impact nhmmer if the value of --tformat is hmmerdb.

       Changing  parameters for this seed-finding step will impact both speed and sensitivity - typically faster
       search leads to lower sensitivity.

       --seed_max_depth <n>
              The seed step requires that a seed reach a specified bit score in length no longer than  <n>.   By
              default, this value is 15. Longer seeds allow a greater chance of meeting the bit score threshold,
              leading to diminished filtering (greater sensitivity, slower run time).

       --seed_sc_thresh <x>
              The seed must reach score <x> (in bits). The default is 15.0 bits. A  higher  threshold  increases
              filtering stringency, leading to faster run times and lower sensitivity.

       --seed_sc_density <x>
              Either all prefixes or all suffixes of a seed must have bit density (bits per aligned position) of
              at least <x>.  The default is 0.8 bits/position. An increase in the density requirement  leads  to
              increased filtering stringency, thus faster run times and lower sensitivity.

       --seed_drop_max_len <n>
              A  seed  may  not  have  a  run of length <n> in which the score drops by --seed_drop_lim or more.
              Basically, this prunes seeds that go through long slightly-negative seed extensions.  The  default
              is  4.   Increasing  the  limit causes (slightly) diminished filtering efficiency, thus slower run
              times and higher sensitivity. (minor tuning option)

       --seed_drop_lim <x>
              In a seed, there may be no  run  of  length  --seed_drop_max_len  in  which  the  score  drops  by
              --seed_drop_lim.   The  default  is  0.3  bits. Larger numbers mean less filtering.  (minor tuning
              option)

       --seed_req_pos <n>
              A seed must contain a run of at least <n> positive-scoring  matches.  The  default  is  5.  Larger
              values mean increased filtering.  (minor tuning option)

       --seed_ssv_length <n>
              After  finding a short seed, an ungapped alignment is extended in both directions in an attempt to
              meet the --F1 score threshold. The window through which this ungapped alignment extends is  length
              <n>.   The  default  is  70.   Decreasing this value slightly reduces run time, at a small risk of
              reduced sensitivity. (minor tuning option)

OTHER OPTIONS

       --tformat <s>
              Assert that the target sequence database file is in format <s>.  Accepted formats  include  fasta,
              embl,  genbank,  ddbj,  uniprot,  stockholm,  pfam,  a2m,  afa,  and  hmmerfm.   The default is to
              autodetect the format of the file. The format hmmerfm indicates that the database file is a binary
              file produced using makehmmerdb (this format is not currently autodetected).

       --qformat <s>
              Declare  that  the  input  <queryfile> is in format <s>.  This is used when the query is sequence-
              based, rather than made up  of  profile  model(s).   Currently  the  accepted  multiple  alignment
              sequence  file  formats  include Stockholm, Aligned FASTA, Clustal, NCBI PSI-BLAST, PHYLIP, Selex,
              and UCSC SAM A2M. Default is to autodetect the format of the file.

       --nonull2
              Turn off the null2 score corrections for biased composition.

       -Z <x> For the purposes of per-hit E-value calculations,  Assert  that  the  total  size  of  the  target
              database is <x> million nucleotides, rather than the actual number of targets seen.

       --seed <n>
              Set  the  random number seed to <n>.  Some steps in postprocessing require Monte Carlo simulation.
              The default is to use a fixed seed (42), so that  results  are  exactly  reproducible.  Any  other
              positive  integer  will  give  different  (but  also  reproducible)  results. A choice of 0 uses a
              randomly chosen seed.

       --w_beta <x>
              Window length tail mass.  The upper bound, W, on the length at which nhmmer  expects  to  find  an
              instance  of  the model is set such that the fraction of all sequences generated by the model with
              length >= W is less than <x>.  The default is 1e-7.  This flag may be used to override  the  value
              of W established for the model by hmmbuild, or when the query is sequence-based.

       --w_length <n>
              Override  the model instance length upper bound, W, which is otherwise controlled by --w_beta.  It
              should be larger than the model length. The value of W is used deep in the acceleration  pipeline,
              and modest changes are not expected to impact results (though larger values of W do lead to longer
              run time).  This flag may be used to override  the  value  of  W  established  for  the  model  by
              hmmbuild, or when the query is sequence-based.

       --toponly
              Only  search  the  top  strand.  By default both the query sequence and its reverse-complement are
              searched.

       --bottomonly
              Only search the bottom (reverse-complement) strand. By default both the  query  sequence  and  its
              reverse-complement are searched.

       --cpu <n>
              Set  the  number  of parallel worker threads to <n>.  By default, HMMER sets this to the number of
              CPU cores it detects in your machine - that is, it tries to maximize the  use  of  your  available
              processor  cores. Setting <n> higher than the number of available cores is of little if any value,
              but you may want to set it to something less. You can also  control  this  number  by  setting  an
              environment variable, HMMER_NCPU.

              This  option  is  only  available  if  HMMER  was compiled with POSIX threads support. This is the
              default, but it may have been turned off at compile-time for your site or machine for some reason.

       --stall
              For debugging the MPI master/worker version: pause after start, to enable the developer to  attach
              debuggers to the running master and worker(s) processes. Send SIGCONT signal to release the pause.
              (Under gdb: (gdb) signal SIGCONT) (Only available if optional MPI support was enabled at  compile-
              time.)

       --mpi  Run  in MPI master/worker mode, using mpirun.  (Only available if optional MPI support was enabled
              at compile-time.)

SEE ALSO

       See hmmer(1) for a master man page with a list of all the individual man pages for programs in the  HMMER
       package.

       For complete documentation, see the user guide that came with your HMMER distribution (Userguide.pdf); or
       see the HMMER web page ().

       Copyright (C) 2015 Howard Hughes Medical Institute.
       Freely distributed under the GNU General Public License (GPLv3).

       For additional information on copyright and licensing, see the file called COPYRIGHT in your HMMER source
       distribution, or see the HMMER web page ().

AUTHOR

       Eddy/Rivas Laboratory
       Janelia Farm Research Campus
       19700 Helix Drive
       Ashburn VA 20147 USA
       http://eddylab.org