| matcher

## Wiki

The master copies of EMBOSS documentation are available at http://emboss.open-bio.org/wiki/Appdocs on the EMBOSS Wiki.

Please help by correcting and extending the Wiki pages.

## Function

Waterman-Eggert local alignment of two sequences

## Description

matcher identifies local similarities in two input sequences using a rigorous algorithm based on Bill Pearson's lalign application, version 2.0u4 (Feb. 1996). The substitution matrix, gap insertion and extension penalty are specified. The specified number of top-scoring pair-wise local sequence alignments are written to file.

## Algorithm

matcher is based on Bill Pearson's lalign application, version 2.0u4 (Feb. 1996). lalign uses code developed by X. Huang and W. Miller (Adv. Appl. Math. (1991) 12:337-357) for the "sim" program, which is a linear-space version of an algorithm described by M. S. Waterman and M. Eggert (J. Mol. Biol. 197:723-728).

## Usage

Here is a sample session with matcher

    % matcher tsw:hba_human tsw:hbb_human
    Waterman-Eggert local alignment of two sequences
    Output alignment [hba_human.matcher]:

Go to the input files for this example
Go to the output files for this example

Example 2

To find the 10 best alignments:

    % matcher tsw:hba_human tsw:hbb_human -alt 10
    Waterman-Eggert local alignment of two sequences
    Output alignment [hba_human.matcher]:

Go to the output files for this example

## Command line arguments

    Waterman-Eggert local alignment of two sequences
    Version: EMBOSS:6.6.0.0

       Standard (Mandatory) qualifiers:
      [-asequence]         sequence   Sequence filename and optional format, or
                                      reference (input USA)
      [-bsequence]         sequence   Sequence filename and optional format, or
                                      reference (input USA)
      [-outfile]           align      [*.matcher] Output alignment file name
                                      (default -aformat markx0)

       Additional (Optional) qualifiers:
       -datafile           matrix     [EBLOSUM62 for protein, EDNAFULL for DNA]
                                      This is the scoring matrix file used when
                                      comparing sequences. By default it is the
                                      file 'EBLOSUM62' (for proteins) or the file
                                      'EDNAFULL' (for nucleic sequences). These
                                      files are found in the 'data' directory of
                                      the EMBOSS installation.
       -alternatives       integer    [1] This sets the number of alternative
                                      matches output. By default only the highest
                                      scoring alignment is shown. A value of 2
                                      gives you other reasonable alignments. In
                                      some cases, for example multidomain proteins
                                      of cDNA and genomic DNA comparisons, there
                                      may be other interesting and significant
                                      alignments. (Integer 1 or more)
       -gapopen            integer    [14 for protein, 16 for nucleic] The gap
                                      penalty is the score taken away when a gap
                                      is created. The best value depends on the
                                      choice of comparison matrix. The default
                                      value of 14 assumes you are using the
                                      EBLOSUM62 matrix for protein sequences, or a
                                      value of 16 and the EDNAFULL matrix for
                                      nucleotide sequences. (Positive integer)
       -gapextend          integer    [4 for any sequence] The gap length, or gap
                                      extension, penalty is added to the standard
                                      gap penalty for each base or residue in the
                                      gap. This is how long gaps are penalized.
                                      Usually you will expect a few long gaps
                                      rather than many short gaps, so the gap
                                      extension penalty should be lower than the
                                      gap penalty. An exception is where one or
                                      both sequences are single reads with
                                      possible sequencing errors in which case you
                                      would expect many single base gaps. You can
                                      get this result by setting the gap penalty
                                      to zero (or very low) and using the gap
                                      extension penalty to control gap scoring.
                                      (Positive integer)

       Advanced (Unprompted) qualifiers: (none)
       Associated qualifiers:

       "-asequence" associated qualifiers
       -sbegin1            integer    Start of the sequence to be used
       -send1              integer    End of the sequence to be used
       -sreverse1          boolean    Reverse (if DNA)
       -sask1              boolean    Ask for begin/end/reverse
       -snucleotide1       boolean    Sequence is nucleotide
       -sprotein1          boolean    Sequence is protein
       -slower1            boolean    Make lower case
       -supper1            boolean    Make upper case
       -scircular1         boolean    Sequence is circular
       -squick1            boolean    Read id and sequence only
       -sformat1           string     Input sequence format
       -iquery1            string     Input query fields or ID list
       -ioffset1           integer    Input start position offset
       -sdbname1           string     Database name
       -sid1               string     Entryname
       -ufo1               string     UFO features
       -fformat1           string     Features format
       -fopenfile1         string     Features file name

       "-bsequence" associated qualifiers
       -sbegin2            integer    Start of the sequence to be used
       -send2              integer    End of the sequence to be used
       -sreverse2          boolean    Reverse (if DNA)
       -sask2              boolean    Ask for begin/end/reverse
       -snucleotide2       boolean    Sequence is nucleotide
       -sprotein2          boolean    Sequence is protein
       -slower2            boolean    Make lower case
       -supper2            boolean    Make upper case
       -scircular2         boolean    Sequence is circular
       -squick2            boolean    Read id and sequence only
       -sformat2           string     Input sequence format
       -iquery2            string     Input query fields or ID list
       -ioffset2           integer    Input start position offset
       -sdbname2           string     Database name
       -sid2               string     Entryname
       -ufo2               string     UFO features
       -fformat2           string     Features format
       -fopenfile2         string     Features file name

       "-outfile" associated qualifiers
       -aformat3           string     Alignment format
       -aextension3        string     File name extension
       -adirectory3        string     Output directory
       -aname3             string     Base file name
       -awidth3            integer    Alignment width
       -aaccshow3          boolean    Show accession number in the header
       -adesshow3          boolean    Show description in the header
       -ausashow3          boolean    Show the full USA in the alignment
       -aglobal3           boolean    Show the full sequence in alignment

       General qualifiers:
       -auto               boolean    Turn off prompts
       -stdout             boolean    Write first file to standard output
       -filter             boolean    Read first file from standard input, write
                                      first file to standard output
       -options            boolean    Prompt for standard and additional values
       -debug              boolean    Write debug output to program.dbg
       -verbose            boolean    Report some/full command line options
       -help               boolean    Report command line options and exit. More
                                      information on associated and general
                                      qualifiers can be found with -help -verbose
       -warning            boolean    Report warnings
       -error              boolean    Report errors
       -fatal              boolean    Report fatal errors
       -die                boolean    Report dying program messages
       -version            boolean    Report version number and exit

Qualifier | Type | Description | Allowed values | Default
--- | --- | --- | --- | ---
Standard (Mandatory) qualifiers
[-asequence] (Parameter 1) | sequence | Sequence filename and optional format, or reference (input USA) | Readable sequence | Required
[-bsequence] (Parameter 2) | sequence | Sequence filename and optional format, or reference (input USA) | Readable sequence | Required
[-outfile] (Parameter 3) | align | Output alignment file name | (default -aformat markx0) | <*>.matcher
Additional (Optional) qualifiers
-datafile | matrix | This is the scoring matrix file used when comparing sequences. By default it is the file 'EBLOSUM62' (for proteins) or the file 'EDNAFULL' (for nucleic sequences). These files are found in the 'data' directory of the EMBOSS installation. | Comparison matrix file in EMBOSS data path | EBLOSUM62 for protein EDNAFULL for DNA
-alternatives | integer | This sets the number of alternative matches output. By default only the highest scoring alignment is shown. A value of 2 gives you other reasonable alignments. In some cases, for example multidomain proteins of cDNA and genomic DNA comparisons, there may be other interesting and significant alignments. | Integer 1 or more | 1
-gapopen | integer | The gap penalty is the score taken away when a gap is created. The best value depends on the choice of comparison matrix. The default value of 14 assumes you are using the EBLOSUM62 matrix for protein sequences, or a value of 16 and the EDNAFULL matrix for nucleotide sequences. | Positive integer | 14 for protein, 16 for nucleic
-gapextend | integer | The gap length, or gap extension, penalty is added to the standard gap penalty for each base or residue in the gap. This is how long gaps are penalized. Usually you will expect a few long gaps rather than many short gaps, so the gap extension penalty should be lower than the gap penalty. An exception is where one or both sequences are single reads with possible sequencing errors in which case you would expect many single base gaps. You can get this result by setting the gap penalty to zero (or very low) and using the gap extension penalty to control gap scoring. | Positive integer | 4 for any sequence
Advanced (Unprompted) qualifiers
(none)
Associated qualifiers
"-asequence" associated sequence qualifiers
-sbegin1 -sbegin_asequence | integer | Start of the sequence to be used | Any integer value | 0
-send1 -send_asequence | integer | End of the sequence to be used | Any integer value | 0
-sreverse1 -sreverse_asequence | boolean | Reverse (if DNA) | Boolean value Yes/No | N
-sask1 -sask_asequence | boolean | Ask for begin/end/reverse | Boolean value Yes/No | N
-snucleotide1 -snucleotide_asequence | boolean | Sequence is nucleotide | Boolean value Yes/No | N
-sprotein1 -sprotein_asequence | boolean | Sequence is protein | Boolean value Yes/No | N
-slower1 -slower_asequence | boolean | Make lower case | Boolean value Yes/No | N
-supper1 -supper_asequence | boolean | Make upper case | Boolean value Yes/No | N
-scircular1 -scircular_asequence | boolean | Sequence is circular | Boolean value Yes/No | N
-squick1 -squick_asequence | boolean | Read id and sequence only | Boolean value Yes/No | N
-sformat1 -sformat_asequence | string | Input sequence format | Any string |
-iquery1 -iquery_asequence | string | Input query fields or ID list | Any string |
-ioffset1 -ioffset_asequence | integer | Input start position offset | Any integer value | 0
-sdbname1 -sdbname_asequence | string | Database name | Any string |
-sid1 -sid_asequence | string | Entryname | Any string |
-ufo1 -ufo_asequence | string | UFO features | Any string |
-fformat1 -fformat_asequence | string | Features format | Any string |
-fopenfile1 -fopenfile_asequence | string | Features file name | Any string |
"-bsequence" associated sequence qualifiers
-sbegin2 -sbegin_bsequence | integer | Start of the sequence to be used | Any integer value | 0
-send2 -send_bsequence | integer | End of the sequence to be used | Any integer value | 0
-sreverse2 -sreverse_bsequence | boolean | Reverse (if DNA) | Boolean value Yes/No | N
-sask2 -sask_bsequence | boolean | Ask for begin/end/reverse | Boolean value Yes/No | N
-snucleotide2 -snucleotide_bsequence | boolean | Sequence is nucleotide | Boolean value Yes/No | N
-sprotein2 -sprotein_bsequence | boolean | Sequence is protein | Boolean value Yes/No | N
-slower2 -slower_bsequence | boolean | Make lower case | Boolean value Yes/No | N
-supper2 -supper_bsequence | boolean | Make upper case | Boolean value Yes/No | N
-scircular2 -scircular_bsequence | boolean | Sequence is circular | Boolean value Yes/No | N
-squick2 -squick_bsequence | boolean | Read id and sequence only | Boolean value Yes/No | N
-sformat2 -sformat_bsequence | string | Input sequence format | Any string |
-iquery2 -iquery_bsequence | string | Input query fields or ID list | Any string |
-ioffset2 -ioffset_bsequence | integer | Input start position offset | Any integer value | 0
-sdbname2 -sdbname_bsequence | string | Database name | Any string |
-sid2 -sid_bsequence | string | Entryname | Any string |
-ufo2 -ufo_bsequence | string | UFO features | Any string |
-fformat2 -fformat_bsequence | string | Features format | Any string |
-fopenfile2 -fopenfile_bsequence | string | Features file name | Any string |
"-outfile" associated align qualifiers
-aformat3 -aformat_outfile | string | Alignment format | Any string | markx0
-aextension3 -aextension_outfile | string | File name extension | Any string |
-adirectory3 -adirectory_outfile | string | Output directory | Any string |
-aname3 -aname_outfile | string | Base file name | Any string |
-awidth3 -awidth_outfile | integer | Alignment width | Any integer value | 0
-aaccshow3 -aaccshow_outfile | boolean | Show accession number in the header | Boolean value Yes/No | N
-adesshow3 -adesshow_outfile | boolean | Show description in the header | Boolean value Yes/No | N
-ausashow3 -ausashow_outfile | boolean | Show the full USA in the alignment | Boolean value Yes/No | N
-aglobal3 -aglobal_outfile | boolean | Show the full sequence in alignment | Boolean value Yes/No | N
General qualifiers
-auto | boolean | Turn off prompts | Boolean value Yes/No | N
-stdout | boolean | Write first file to standard output | Boolean value Yes/No | N
-filter | boolean | Read first file from standard input, write first file to standard output | Boolean value Yes/No | N
-options | boolean | Prompt for standard and additional values | Boolean value Yes/No | N
-debug | boolean | Write debug output to program.dbg | Boolean value Yes/No | N
-verbose | boolean | Report some/full command line options | Boolean value Yes/No | Y
-help | boolean | Report command line options and exit. More information on associated and general qualifiers can be found with -help -verbose | Boolean value Yes/No | N
-warning | boolean | Report warnings | Boolean value Yes/No | Y
-error | boolean | Report errors | Boolean value Yes/No | Y
-fatal | boolean | Report fatal errors | Boolean value Yes/No | Y
-die | boolean | Report dying program messages | Boolean value Yes/No | Y
-version | boolean | Report version number and exit | Boolean value Yes/No | N

## Input file format

matcher reads in two nucleotide or protein sequences.

The input is a standard EMBOSS sequence query (also known as a 'USA').

Major sequence database sources defined as standard in EMBOSS installations include srs:embl, srs:uniprot and ensembl

Data can also be read from sequence output in any supported format written by an EMBOSS or third-party application.

The input format can be specified by using the command-line qualifier `-sformat xxx`, where 'xxx' is replaced by the name of the required format. The available format names are: gff (gff3), gff2, embl (em), genbank (gb, refseq), ddbj, refseqp, pir (nbrf), swissprot (swiss, sw), dasgff and debug.

See: http://emboss.sf.net/docs/themes/SequenceFormats.html for further information on sequence formats.

### Input files for usage example

'tsw:hba_human' is a sequence entry in the example protein database 'tsw'

### Database entry: tsw:hba_human

    ID   HBA_HUMAN               Reviewed;         142 AA.
    AC   P69905; P01922; Q1HDT5; Q3MIF5; Q53F97; Q96KF1; Q9NYR7; Q9UCM0;
    DT   21-JUL-1986, integrated into UniProtKB/Swiss-Prot.
    DT   23-JAN-2007, sequence version 2.
    DT   13-JUN-2012, entry version 108.
    DE   RecName: Full=Hemoglobin subunit alpha;
    DE   AltName: Full=Alpha-globin;
    DE   AltName: Full=Hemoglobin alpha chain;
    GN   Name=HBA1;
    GN   and
    GN   Name=HBA2;
    OS   Homo sapiens (Human).
    OC   Eukaryota; Metazoa; Chordata; Craniata; Vertebrata; Euteleostomi;
    OC   Mammalia; Eutheria; Euarchontoglires; Primates; Haplorrhini;
    OC   Catarrhini; Hominidae; Homo.
    OX   NCBI_TaxID=9606;
    RN   [1]
    RP   NUCLEOTIDE SEQUENCE [GENOMIC DNA] (HBA1).
    RX   MEDLINE=81088339; PubMed=7448866; DOI=10.1016/0092-8674(80)90347-5;
    RA   Michelson A.M., Orkin S.H.;
    RT   "The 3' untranslated regions of the duplicated human alpha-globin
    RT   genes are unexpectedly divergent.";
    RL   Cell 22:371-377(1980).
    RN   [2]
    RP   NUCLEOTIDE SEQUENCE [MRNA] (HBA2).
    RX   MEDLINE=80137531; PubMed=6244294;
    RA   Wilson J.T., Wilson L.B., Reddy V.B., Cavallesco C., Ghosh P.K.,
    RA   Deriel J.K., Forget B.G., Weissman S.M.;
    RT   "Nucleotide sequence of the coding portion of human alpha globin
    RT   messenger RNA.";
    RL   J. Biol. Chem. 255:2807-2815(1980).
    RN   [3]
    RP   NUCLEOTIDE SEQUENCE [GENOMIC DNA] (HBA2).
    RX   MEDLINE=81175088; PubMed=6452630; DOI=10.1073/pnas.77.12.7054;
    RA   Liebhaber S.A., Goossens M.J., Kan Y.W.;
    RT   "Cloning and complete nucleotide sequence of human 5'-alpha-globin
    RT   gene.";
    RL   Proc. Natl. Acad. Sci. U.S.A. 77:7054-7058(1980).
    RN   [4]
    RP   NUCLEOTIDE SEQUENCE [GENOMIC DNA].
    RX   PubMed=6946451; DOI=10.1073/pnas.78.8.5041;
    RA   Orkin S.H., Goff S.C., Hechtman R.L.;
    RT   "Mutation in an intervening sequence splice junction in man.";
    RL   Proc. Natl. Acad. Sci. U.S.A. 78:5041-5045(1981).
    RN   [5]
    RP   NUCLEOTIDE SEQUENCE [GENOMIC DNA], AND VARIANT LYS-32.
    RX   MEDLINE=21303311; PubMed=11410421;
    RA   Zhao Y., Xu X.;
    RT   "Alpha2(CD31 AGG-->AAG, Arg-->Lys) causing non-deletional alpha-
    RT   thalassemia in a Chinese family with HbH disease.";

      [Part of this file has been deleted for brevity]

    FT                                /FTId=VAR_002841.
    FT   VARIANT     132    132       S -> P (in Questembert; highly unstable;
    FT                                causes alpha-thalassemia).
    FT                                /FTId=VAR_002843.
    FT   VARIANT     134    134       S -> R (in Val de Marne; O(2) affinity
    FT                                up).
    FT                                /FTId=VAR_002844.
    FT   VARIANT     136    136       V -> E (in Pavie).
    FT                                /FTId=VAR_002845.
    FT   VARIANT     137    137       L -> M (in Chicago).
    FT                                /FTId=VAR_002846.
    FT   VARIANT     137    137       L -> P (in Bibba; unstable; causes alpha-
    FT                                thalassemia).
    FT                                /FTId=VAR_002847.
    FT   VARIANT     137    137       L -> R (in Toyama).
    FT                                /FTId=VAR_035242.
    FT   VARIANT     139    139       S -> P (in Attleboro; O(2) affinity up).
    FT                                /FTId=VAR_002848.
    FT   VARIANT     140    140       K -> E (in Hanamaki; O(2) affinity up).
    FT                                /FTId=VAR_002849.
    FT   VARIANT     140    140       K -> T (in Tokoname; O(2) affinity up).
    FT                                /FTId=VAR_002850.
    FT   VARIANT     141    141       Y -> H (in Rouen/Ethiopia; O(2) affinity
    FT                                up).
    FT                                /FTId=VAR_002851.
    FT   VARIANT     142    142       R -> C (in Nunobiki; O(2) affinity up).
    FT                                /FTId=VAR_002852.
    FT   VARIANT     142    142       R -> H (in Suresnes; O(2) affinity up).
    FT                                /FTId=VAR_002854.
    FT   VARIANT     142    142       R -> L (in Legnano; O(2) affinity up).
    FT                                /FTId=VAR_002853.
    FT   VARIANT     142    142       R -> P (in Singapore).
    FT                                /FTId=VAR_002855.
    FT   CONFLICT     10     10       N -> H (in Ref. 13; BAD97112).
    FT   HELIX         5     16
    FT   HELIX        17     21
    FT   HELIX        22     36
    FT   HELIX        38     43
    FT   HELIX        54     72
    FT   HELIX        74     76
    FT   HELIX        77     80
    FT   HELIX        82     90
    FT   HELIX        97    113
    FT   TURN        115    117
    FT   HELIX       120    137
    FT   TURN        138    140
    SQ   SEQUENCE   142 AA;  15258 MW;  15E13666573BBBAE CRC64;
         MVLSPADKTN VKAAWGKVGA HAGEYGAEAL ERMFLSFPTT KTYFPHFDLS HGSAQVKGHG
         KKVADALTNA VAHVDDMPNA LSALSDLHAH KLRVDPVNFK LLSHCLLVTL AAHLPAEFTP
         AVHASLDKFL ASVSTVLTSK YR
    //

### Database entry: tsw:hbb_human

    ID   HBB_HUMAN               Reviewed;         147 AA.
    AC   P68871; A4GX73; B2ZUE0; P02023; Q13852; Q14481; Q14510; Q45KT0;
    AC   Q549N7; Q6FI08; Q6R7N2; Q8IZI1; Q9BX96; Q9UCD6; Q9UCP8; Q9UCP9;
    DT   21-JUL-1986, integrated into UniProtKB/Swiss-Prot.
    DT   23-JAN-2007, sequence version 2.
    DT   13-JUN-2012, entry version 108.
    DE   RecName: Full=Hemoglobin subunit beta;
    DE   AltName: Full=Beta-globin;
    DE   AltName: Full=Hemoglobin beta chain;
    DE   Contains:
    DE     RecName: Full=LVV-hemorphin-7;
    GN   Name=HBB;
    OS   Homo sapiens (Human).
    OC   Eukaryota; Metazoa; Chordata; Craniata; Vertebrata; Euteleostomi;
    OC   Mammalia; Eutheria; Euarchontoglires; Primates; Haplorrhini;
    OC   Catarrhini; Hominidae; Homo.
    OX   NCBI_TaxID=9606;
    RN   [1]
    RP   NUCLEOTIDE SEQUENCE [GENOMIC DNA].
    RX   MEDLINE=77126403; PubMed=1019344;
    RA   Marotta C., Forget B., Cohen-Solal M., Weissman S.M.;
    RT   "Nucleotide sequence analysis of coding and noncoding regions of human
    RT   beta-globin mRNA.";
    RL   Prog. Nucleic Acid Res. Mol. Biol. 19:165-175(1976).
    RN   [2]
    RP   NUCLEOTIDE SEQUENCE [GENOMIC DNA].
    RX   MEDLINE=81064667; PubMed=6254664; DOI=10.1016/0092-8674(80)90428-6;
    RA   Lawn R.M., Efstratiadis A., O'Connell C., Maniatis T.;
    RT   "The nucleotide sequence of the human beta-globin gene.";
    RL   Cell 21:647-651(1980).
    RN   [3]
    RP   NUCLEOTIDE SEQUENCE [GENOMIC DNA], AND VARIANT LYS-7.
    RX   PubMed=16175509; DOI=10.1086/491748;
    RA   Wood E.T., Stover D.A., Slatkin M., Nachman M.W., Hammer M.F.;
    RT   "The beta-globin recombinational hotspot reduces the effects of strong
    RT   selection around HbC, a recently arisen mutation providing resistance
    RT   to malaria.";
    RL   Am. J. Hum. Genet. 77:637-642(2005).
    RN   [4]
    RP   NUCLEOTIDE SEQUENCE [GENOMIC DNA].
    RA   Lu L., Hu Z.H., Du C.S., Fu Y.S.;
    RT   "DNA sequence of the human beta-globin gene isolated from a healthy
    RT   Chinese.";
    RL   Submitted (JUN-1997) to the EMBL/GenBank/DDBJ databases.
    RN   [5]
    RP   NUCLEOTIDE SEQUENCE [GENOMIC DNA], AND VARIANT ARG-113.
    RA   Cabeda J.M., Correia C., Estevinho A., Cardoso C., Amorim M.L.,
    RA   Cleto E., Vale L., Coimbra E., Pinho L., Justica B.;
    RT   "Unexpected patterns of globin mutations in thalassemia patients from
    RT   north of Portugal.";

      [Part of this file has been deleted for brevity]

    FT   VARIANT     141    141       A -> V (in Puttelange; polycythemia; O(2)
    FT                                affinity up).
    FT                                /FTId=VAR_003082.
    FT   VARIANT     142    142       L -> R (in Olmsted; unstable).
    FT                                /FTId=VAR_003083.
    FT   VARIANT     143    143       A -> D (in Ohio; O(2) affinity up).
    FT                                /FTId=VAR_003084.
    FT   VARIANT     144    144       H -> D (in Rancho Mirage).
    FT                                /FTId=VAR_003085.
    FT   VARIANT     144    144       H -> P (in Syracuse; O(2) affinity up).
    FT                                /FTId=VAR_003087.
    FT   VARIANT     144    144       H -> Q (in Little Rock; O(2) affinity
    FT                                up).
    FT                                /FTId=VAR_003086.
    FT   VARIANT     144    144       H -> R (in Abruzzo; O(2) affinity up).
    FT                                /FTId=VAR_003088.
    FT   VARIANT     145    145       K -> E (in Mito; O(2) affinity up).
    FT                                /FTId=VAR_003089.
    FT   VARIANT     146    146       Y -> C (in Rainier; O(2) affinity up).
    FT                                /FTId=VAR_003090.
    FT   VARIANT     146    146       Y -> H (in Bethesda; O(2) affinity up).
    FT                                /FTId=VAR_003091.
    FT   VARIANT     147    147       H -> D (in Hiroshima; O(2) affinity up).
    FT                                /FTId=VAR_003092.
    FT   VARIANT     147    147       H -> L (in Cowtown; O(2) affinity up).
    FT                                /FTId=VAR_003093.
    FT   VARIANT     147    147       H -> P (in York; O(2) affinity up).
    FT                                /FTId=VAR_003094.
    FT   VARIANT     147    147       H -> Q (in Kodaira; O(2) affinity up).
    FT                                /FTId=VAR_003095.
    FT   CONFLICT     26     26       Missing (in Ref. 15; ACD39349).
    FT   CONFLICT     42     42       F -> L (in Ref. 13; AAR96398).
    FT   HELIX         6     16
    FT   TURN         21     23
    FT   HELIX        24     35
    FT   HELIX        37     42
    FT   HELIX        44     46
    FT   HELIX        52     57
    FT   HELIX        59     77
    FT   TURN         78     80
    FT   HELIX        82     94
    FT   TURN         95     97
    FT   HELIX       102    119
    FT   HELIX       120    122
    FT   HELIX       125    142
    FT   HELIX       144    146
    SQ   SEQUENCE   147 AA;  15998 MW;  A31F6D621C6556A1 CRC64;
         MVHLTPEEKS AVTALWGKVN VDEVGGEALG RLLVVYPWTQ RFFESFGDLS TPDAVMGNPK
         VKAHGKKVLG AFSDGLAHLD NLKGTFATLS ELHCDKLHVD PENFRLLGNV LVCVLAHHFG
         KEFTPPVQAA YQKVVAGVAN ALAHKYH
    //

## Output file format

The output is a standard EMBOSS alignment file.

The results can be output in one of several styles by using the command-line qualifier `-aformat xxx`, where 'xxx' is replaced by the name of the required format. Some of the alignment formats can cope with an unlimited number of sequences, while others are only for pairs of sequences.

The available multiple alignment format names are: multiple, simple, fasta, msf, clustal, mega, meganon, nexus,, nexusnon, phylip, phylipnon, selex, treecon, tcoffee, debug, srs.

The available pairwise alignment format names are: pair, markx0, markx1, markx2, markx3, markx10, match, sam, bam, score, srspair

See: http://emboss.sf.net/docs/themes/AlignFormats.html for further information on alignment formats.

### Output files for usage example

### File: hba_human.matcher

    ########################################
    # Program: matcher
    # Rundate: Mon 15 Jul 2013 12:00:00
    # Commandline: matcher
    #    [-asequence] tsw:hba_human
    #    [-bsequence] tsw:hbb_human
    # Align_format: markx0
    # Report_file: hba_human.matcher
    ########################################

    #=======================================
    #
    # Aligned_sequences: 2
    # 1: HBA_HUMAN
    # 2: HBB_HUMAN
    # Matrix: EBLOSUM62
    # Gap_penalty: 14
    # Extend_penalty: 4
    #
    # Length: 145
    # Identity:      63/145 (43.4%)
    # Similarity:    88/145 (60.7%)
    # Gaps:           8/145 ( 5.5%)
    # Score: 264
    #
    #
    #=======================================

                 10        20        30        40         50
    HBA_HU LSPADKTNVKAAWGKVGAHAGEYGAEALERMFLSFPTTKTYFPHF-DLSH
           :.: .:. : : ::::  .  : : ::: :. . .: :. .:  : :::
    HBB_HU LTPEEKSAVTALWGKV--NVDEVGGEALGRLLVVYPWTQRFFESFGDLST
                10          20        30        40        50

                       60        70        80        90
    HBA_HU -----GSAQVKGHGKKVADALTNAVAHVDDMPNALSALSDLHAHKLRVDP
                :. .:: :::::  : .. .::.:..    . ::.::  :: :::
    HBB_HU PDAVMGNPKVKAHGKKVLGAFSDGLAHLDNLKGTFATLSELHCDKLHVDP
                  60        70        80        90       100

            100       110       120       130       140
    HBA_HU VNFKLLSHCLLVTLAAHLPAEFTPAVHASLDKFLASVSTVLTSKY
            ::.:: . :.  :: :   :::: : :.  : .: :.  :  ::
    HBB_HU ENFRLLGNVLVCVLAHHFGKEFTPPVQAAYQKVVAGVANALAHKY
                 110       120       130       140

    #---------------------------------------
    #---------------------------------------

### Output files for usage example 2

### File: hba_human.matcher

    ########################################
    # Program: matcher
    # Rundate: Mon 15 Jul 2013 12:00:00
    # Commandline: matcher
    #    [-asequence] tsw:hba_human
    #    [-bsequence] tsw:hbb_human
    #    -alternatives 10
    # Align_format: markx0
    # Report_file: hba_human.matcher
    ########################################

    #=======================================
    #
    # Aligned_sequences: 2
    # 1: HBA_HUMAN
    # 2: HBB_HUMAN
    # Matrix: EBLOSUM62
    # Gap_penalty: 14
    # Extend_penalty: 4
    #
    # Length: 145
    # Identity:      63/145 (43.4%)
    # Similarity:    88/145 (60.7%)
    # Gaps:           8/145 ( 5.5%)
    # Score: 264
    #
    #
    #=======================================

                 10        20        30        40         50
    HBA_HU LSPADKTNVKAAWGKVGAHAGEYGAEALERMFLSFPTTKTYFPHF-DLSH
           :.: .:. : : ::::  .  : : ::: :. . .: :. .:  : :::
    HBB_HU LTPEEKSAVTALWGKV--NVDEVGGEALGRLLVVYPWTQRFFESFGDLST
                10          20        30        40        50

                       60        70        80        90
    HBA_HU -----GSAQVKGHGKKVADALTNAVAHVDDMPNALSALSDLHAHKLRVDP
                :. .:: :::::  : .. .::.:..    . ::.::  :: :::
    HBB_HU PDAVMGNPKVKAHGKKVLGAFSDGLAHLDNLKGTFATLSELHCDKLHVDP
                  60        70        80        90       100

            100       110       120       130       140
    HBA_HU VNFKLLSHCLLVTLAAHLPAEFTPAVHASLDKFLASVSTVLTSKY
            ::.:: . :.  :: :   :::: : :.  : .: :.  :  ::
    HBB_HU ENFRLLGNVLVCVLAHHFGKEFTPPVQAAYQKVVAGVANALAHKY
                 110       120       130       140

    #=======================================
    #

      [Part of this file has been deleted for brevity]

    #
    # Aligned_sequences: 2
    # 1: HBA_HUMAN
    # 2: HBB_HUMAN
    # Matrix: EBLOSUM62
    # Gap_penalty: 14
    # Extend_penalty: 4
    #
    # Length: 12
    # Identity:       6/12 (50.0%)
    # Similarity:     6/12 (50.0%)
    # Gaps:           0/12 ( 0.0%)
    # Score: 20
    #
    #
    #=======================================

                120
    HBA_HU HLPAEFTPAVHA
           ::  :   :: :
    HBB_HU HLTPEEKSAVTA
                 10

    #=======================================
    #
    # Aligned_sequences: 2
    # 1: HBA_HUMAN
    # 2: HBB_HUMAN
    # Matrix: EBLOSUM62
    # Gap_penalty: 14
    # Extend_penalty: 4
    #
    # Length: 21
    # Identity:       6/21 (28.6%)
    # Similarity:     7/21 (33.3%)
    # Gaps:           0/21 ( 0.0%)
    # Score: 19
    #
    #
    #=======================================

               10        20
    HBA_HU PADKTNVKAAWGKVGAHAGEY
           :      :   :   : : .:
    HBB_HU PVQAAYQKVVAGVANALAHKY
             130       140

    #---------------------------------------
    #---------------------------------------

## Data files

For protein sequences EBLOSUM62 is used for the substitution matrix. For nucleotide sequence, EDNAFULL is used.

EMBOSS data files are distributed with the application and stored in the standard EMBOSS data directory, which is defined by EMBOSS environment variable EMBOSS_DATA.

Users can provide their own data files in their own directories. Project specific files can be put in the current directory, or for tidier directory listings in a subdirectory called ".embossdata". Files for all EMBOSS runs can be put in the user's home directory, or again in a subdirectory called ".embossdata".

The directories are searched in the following order:

- . (your current directory)
- .embossdata (under your current directory)
- ~/ (your home directory)
- ~/.embossdata

## Notes

matcher is rigorous but also very slow. The advantage of matcher over water (which is also rigorous) is that it uses far less memory, so you are much less likely to run out of memory when aligning large sequences.

matcher reports a specified number of alignments between the two sequences. water in contrast will only report only the single (optimal) match. The default number of alignments output is 1, but can be increased to (for example) the 10 best alignments by using the `-alternatives 10` command-line qualifier. In some cases, for example multidomain proteins or cDNA and genomic DNA comparisons, there may be many interesting and significant alignments.

matcher will not produce an alignment that is guaranteed to be optimal in the same way that water does, which implements the Needleman & Wunsch algorith. water will generate the single, optimal local alignment and uses memory in the order of the product of the lengths of the sequences to be aligned. If you require an optimal alignment you should use water. If you run out of memory or want several possible good alignments, use matcher.

## References

1. X. Huang and W. Miller (1991) Adv. Appl. Math. 12:373-381
2. M. S. Waterman and M. Eggert (J. Mol. Biol. 197:723-728).

## Warnings

None.

## Diagnostic Error Messages

None.

## Exit status

0 upon successful completion.

## Known bugs

None.

## See also

Program name | Description
--- | ---
seqmatchall | All-against-all word comparison of a sequence set
supermatcher | Calculate approximate local pair-wise alignments of larger sequences
water | Smith-Waterman local alignment of sequences
wordfinder | Match large sequences against one or more other sequences
wordmatch | Find regions of identity (exact matches) of two sequences

water will give a single best rigorous local alignment. It will use memory of the order of the product of the lengths of the sequences to be aligned. If you wish the 'best' local alignment you should use water. If you run out of memory or want several possible good alignments, use matcher.

## Author(s)

This program was originally written by Bill Pearson as part of the FASTA package under the name 'lalign'.

This application was modified for inclusion in EMBOSS by Ian Longden formerly at:
Sanger Institute, Wellcome Trust Genome Campus, Hinxton, Cambridge, CB10 1SA, UK.

Please report all bugs to the EMBOSS bug team (emboss-bug © emboss.open-bio.org) not to the original author.

## History

Completed 11th May 1999.

## Target users

This program is intended to be used by everyone and everything, from naive users to embedded scripts.

## Comments

None