edialign

 

Function

Local multiple alignment of sequences

Description

edialign is an EMBOSS version of the program DIALIGN2 by B. Morgenstern. It takes as input nucleic acid or protein sequences and produces as output a multiple sequence alignment. The sequences need not be similar over their complete length, since the program constructs alignments from gapfree pairs of similar segments of the sequences. Such segment pairs are referred to as "diagonals". If (possibly) coding nucleic acid sequences are to be aligned, edialign can optionally translate the compared "nucleic acid segments" to "peptide segments", or even perform comparisons at both nucleic acid and protein levels, so as to increase the sensitivity of the comparison.

Algorithm

For a complete explanation of the algorithm, see the references. In short :

As described in our papers, the program DIALIGN constructs alignments from gapfree pairs of similar segments of the sequences. Such segment pairs are referred to as "diagonals". Every possible diagonal is given a so-called weight reflecting the degree of similarity among the two segments involved. The overall score of an alignment is then defined as the sum of weights of the diagonals it consists of and the program tries to find an alignment with maximum score -- in other words : the program tries to find a consistent collection of diagonals with maximum sum of weights. This novel scoring scheme for alignments is the basic difference between DIALIGN and other global or local alignment methods. Note that DIALIGN does not employ any kind of gap penalty.

It is possible to use a threshold T for the quality of the diagonals. In this case, a diagonal is considered for alignment only if its "weight" exceeds this threshold. Regions of lower similarity are ignored. In the first version of the program (DIALIGN 1), this threshold was in many situations absolutely necessary to obtain meaningful alignments. By contrast, DIALIGN 2 should produce reasonable alignments without a threshold, i.e. with T = 0. This is the most important difference between DIALIGN 2 and the first version of the program. Nevertheless, it is still possible to use a positive threshold T to filter out regions of lower significance and to include only high scoring diagonals into the alignment.

The use of overlap weights improves the sensitivity of the program if multiple sequences are aligned but it also increases the running time, especially if large numbers of sequences are aligned. By default, "overlap weights" are used if up to 35 sequences are aligned but switched off for larger data sets.

If (possibly) coding nucleic acid sequences are to be aligned, DIALIGN optionally translates the compared "nucleic acid segments" to "peptide segments" according to the genetic code -- without presupposing any of the three possible reading frames, so all combinations of reading frames get checked for significant similarity. If this option is used, the similarity among segments will be assessed on the "peptide level" rather than on the "nucleic acid level".

For the levels of sequence similarity, release 2.2 of DIALIGN has two additional options:

The score that DIALIGN assigns to a fragment is based on the probability to find a fragment of the same respective length and number of matches (or BLOSUM values, if the translation option is used) in random sequences of the same length as the input sequences. If long genomic sequences are aligned, an iterative procedure can be applied where the program first looks for fragments with strong similarity. In subsequent steps, regions between these fragments are realigned. Here, the score of a fragment is based on random occurrence in these regions between the previously aligned segment pairs.

Usage

Here is a sample session with edialign


% edialign 
Local multiple alignment of sequences
Input sequence set: vtest.seq
Output file [vtest.edialign]: 
(gapped) output sequence(s) [vtest.fasta]: 

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

Command line arguments

   Standard (Mandatory) qualifiers:
  [-sequences]         seqset     Sequence set filename and optional format,
                                  or reference (input USA)
  [-outfile]           outfile    [*.edialign] Output file name
  [-outseq]            seqoutall  [.] (Aligned) sequence
                                  set(s) filename and optional format (output
                                  USA)

   Additional (Optional) qualifiers (* if not always prompted):
*  -nucmode            menu       [n] Nucleic acid sequence alignment mode
                                  (simple, translated or mixed) (Values: n
                                  (simple); nt (translation); ma (mixed
                                  alignments))
*  -revcomp            boolean    [N] Also consider the reverse complement
   -overlapw           selection  [default (when Nseq =< 35)] By default
                                  overlap weights are used when Nseq =<35 but
                                  you can set this to 'yes' or 'no'
   -linkage            menu       [UPGMA] Clustering method to construct
                                  sequence tree (UPGMA, minimum linkage or
                                  maximum linkage) (Values: UPGMA (UPGMA); max
                                  (maximum linkage); min (minimum linkage))
   -maxfragl           integer    [40] Maximum fragment length (Integer 0 or
                                  more)
*  -fragmat            boolean    [N] Consider only N-fragment pairs that
                                  start with two matches
*  -fragsim            integer    [4] Consider only P-fragment pairs if first
                                  amino acid or codon pair has similarity
                                  score of at least n (Integer 0 or more)
   -itscore            boolean    [N] Use iterative score
   -threshold          float      [0.0] Threshold for considering diagonal for
                                  alignment (Number 0.000 or more)

   Advanced (Unprompted) qualifiers:
   -mask               boolean    [N] Replace unaligned characters by stars
                                  '*' rather then putting them in lowercase
   -dostars            boolean    [N] Activate writing of stars instead of
                                  numbers
   -starnum            integer    [4] Put up to n stars '*' instead of digits
                                  0-9 to indicate level of conservation
                                  (Integer 0 or more)

   Associated qualifiers:

   "-sequences" associated qualifiers
   -sbegin1            integer    Start of each sequence to be used
   -send1              integer    End of each 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
   -sformat1           string     Input sequence format
   -sdbname1           string     Database name
   -sid1               string     Entryname
   -ufo1               string     UFO features
   -fformat1           string     Features format
   -fopenfile1         string     Features file name

   "-outfile" associated qualifiers
   -odirectory2        string     Output directory

   "-outseq" associated qualifiers
   -osformat3          string     Output seq format
   -osextension3       string     File name extension
   -osname3            string     Base file name
   -osdirectory3       string     Output directory
   -osdbname3          string     Database name to add
   -ossingle3          boolean    Separate file for each entry
   -oufo3              string     UFO features
   -offormat3          string     Features format
   -ofname3            string     Features file name
   -ofdirectory3       string     Output directory

   General qualifiers:
   -auto               boolean    Turn off prompts
   -stdout             boolean    Write standard output
   -filter             boolean    Read standard input, write 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. 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

Standard (Mandatory) qualifiers Allowed values Default
[-sequences]
(Parameter 1)
Sequence set filename and optional format, or reference (input USA) Readable set of sequences Required
[-outfile]
(Parameter 2)
Output file name Output file <*>.edialign
[-outseq]
(Parameter 3)
(Aligned) sequence set(s) filename and optional format (output USA) Writeable sequence(s) <*>.format
Additional (Optional) qualifiers Allowed values Default
-nucmode Nucleic acid sequence alignment mode (simple, translated or mixed)
n (simple)
nt (translation)
ma (mixed alignments)
n
-revcomp Also consider the reverse complement Boolean value Yes/No No
-overlapw By default overlap weights are used when Nseq =<35 but you can set this to 'yes' or 'no' Choose from selection list of values default (when Nseq =< 35)
-linkage Clustering method to construct sequence tree (UPGMA, minimum linkage or maximum linkage)
UPGMA (UPGMA)
max (maximum linkage)
min (minimum linkage)
UPGMA
-maxfragl Maximum fragment length Integer 0 or more 40
-fragmat Consider only N-fragment pairs that start with two matches Boolean value Yes/No No
-fragsim Consider only P-fragment pairs if first amino acid or codon pair has similarity score of at least n Integer 0 or more 4
-itscore Use iterative score Boolean value Yes/No No
-threshold Threshold for considering diagonal for alignment Number 0.000 or more 0.0
Advanced (Unprompted) qualifiers Allowed values Default
-mask Replace unaligned characters by stars '*' rather then putting them in lowercase Boolean value Yes/No No
-dostars Activate writing of stars instead of numbers Boolean value Yes/No No
-starnum Put up to n stars '*' instead of digits 0-9 to indicate level of conservation Integer 0 or more 4

Input file format

edialign reads any normal sequence USAs. You must give as input at least two sequences. You can use proteins as well as nucleic acids, but you can't mix them.

Input files for usage example

File: vtest.seq

>HTL2  
LDTAPCLFSDGSPQKAAYVLWDQTILQQDITPLPSHETHSAQKGELLALICGLRAAKPWP
SLNIFLDSKY
>MMLV   
GKKLNVYTDSRYAFATAHIHGEIYRRRGLLTSEGKEIKNKDEILALLKALFLPKRLSIIH
CPGHQKGHSAEARGNRMADQAARKAAITETPDTSTLL
>HEPB 
RPGLCQVFADATPTGWGLVMGHQRMRGTFSAPLPIHTAELLAACFARSRSGANIIGTDNS
GRTSLYADSPSVPSHLPDRVH

Output file format

edialign produces two output files with a multiple sequence alignment. The first one is a file in DIALIGN format and the second one is a sequence file in any format you choose (by default fastA). Capital letters denote aligned residues, i.e. residues involved in at least one of the "diagonals" in the alignment. Lower-case letters denote residues not belonging to any of these selected "diagonals". They are not considered to be aligned by DIALIGN. Thus, if a lower-case letter is standing in the same column with other letters, this is pure chance ; these residues are not considered to be homologous.

Numbers below the alignment reflect the degree of local similarity among sequences. More precisely, they represent the sum of weights of fragments connecting residues at the respective position. These numbers are normalized such that regions of maximum similarity always get a score of 9 - no matter how strong this maximum simliarity is. In previous verions of the program, '*' characters were used instead of numbers ; with the -stars=n option, '*' characters can be used as previously.

At the bottom of the file you can find the "guide tree" used to make the alignment, written in "nested parentheses" format.

Output files for usage example

File: vtest.fasta

>HTL2        
ldtapC-LFSDGSPQKAAYVLWDQTILQQDITPLPSHethsaqkgELLAliCglraAKPW
PSLNIFLDSKY-------------------------------------------------
-----------------------------------------
>MMLV        
gkk---------------------------------------------------------
--LNVYTDSRYafatahihgeiyrrrglltsegkeiknkdeilallkalflpkrlsiihc
pghqkghsaeargnrmADQAARKAAITETPDTSTLL-----
>HEPB        
rpgl-CqVFADATPTGWGLVMGHQRMRGTFSAPLPIHta------ELLAa-Cf---ARSR
SGANIIg-----------------------------------------------------
----------------TDNSGRTSLYADSPSVPSHLpdrvh

File: vtest.edialign

 
                           DIALIGN 2.2.1 
                           *************
 
          Program code written by Burkhard Morgenstern and Said Abdeddaim 
             e-mail contact: dialign (at) gobics (dot) de 
 
          Published research assisted by DIALIGN 2 should cite:  
 
             Burkhard Morgenstern (1999).
             DIALIGN 2: improvement of the segment-to-segment
             approach to multiple sequence alignment.
             Bioinformatics 15, 211 - 218. 

          For more information, please visit the DIALIGN home page at 

             http://bibiserv.techfak.uni-bielefeld.de/dialign/ 
 
         ************************************************************
 


   program call:  edialign  

 
   Aligned sequences:          length:
   ==================          =======
 
   1) HTL2                        70
   2) MMLV                        97
   3) HEPB                        81

   Average seq. length:           82.7 


   Please note that only upper-case letters are considered to be aligned. 


   Alignment (DIALIGN format):
   ===========================
 
HTL2               1   ldtapC-LFS DGSPQKAAYV LWDQTILQQD ITPLPSHeth saqkgELLAl 
MMLV               1   gkk------- ---------- ---------- ---------- ---------- 
HEPB               1   rpgl-CqVFA DATPTGWGLV MGHQRMRGTF SAPLPIHta- -----ELLAa 
                                                                 
                       0000000999 9999999999 9999999999 9999999000 0000000000 
 
HTL2              50   iCglraAKPW PSLNIFLDSK Y--------- ---------- ---------- 
MMLV               4   ---------- --LNVYTDSR Yafatahihg eiyrrrgllt segkeiknkd 
HEPB              44   -Cf---ARSR SGANIIg--- ---------- ---------- ---------- 
                                                                 
                       0000000000 0077777777 7000000000 0000000000 0000000000 
 
HTL2              71   ---------- ---------- ---------- ---------- ---------- 
MMLV              42   eilallkalf lpkrlsiihc pghqkghsae argnrmADQA ARKAAITETP 
HEPB              57   ---------- ---------- ---------- ------TDNS GRTSLYADSP 
                                                                 
                       0000000000 0000000000 0000000000 0000001111 1111111111 
 
HTL2              71   ---------- - 
MMLV              92   DTSTLL---- - 
HEPB              71   SVPSHLpdrv h 
                       
                       1111110000 0 
 

 
 
   Sequence tree:
   ==============

Tree constructed using UPGMA based on DIALIGN fragment weight scores
 
((HTL2        :0.145587HEPB        :0.145587):0.108531MMLV        :0.254117);
 
 

Data files

The scoring schemes are hard coded in the program and cannot be changed. For proteins edialign always uses the BLOSUM62 table.

Notes

We strongly recommend to use the "translation" option if nucleic acid sequences are expected to contain protein coding regions, as it will significantly increase the sensitivity of the alignment procedure in such cases.

If you want to compare long genomic sequences it is recommended to speed up the algorithm by:

It is also recommended to increase the chance of finding coding exons by setting "Nucleic acid sequence alignment mode" to "mixed alignment" (-nucmode=ma) and setting "Also consider the reverse complement" (-revcomp).

References

  1. B. Morgenstern, A. Dress, T. Werner. Multiple DNA and protein sequence alignment based on segment-to-segment comparison. Proc. Natl. Acad. Sci. USA 93, 12098 - 12103 (1996)
  2. B. Morgenstern. DIALIGN 2: improvement of the segment-to-segment approach to multiple sequence alignment. Bioinformatics 15, 211 - 218 (1999).
  3. B. Morgenstern, O. Rinner, S. Abdeddaim, D. Haase, K. F. X. Mayer, A. W. M. Dress H.-W. Mewes. Exon discovery by genomic sequence alignment. Bioinformatics 18, 777 - 787 (2002)

Warnings

Remember that lowercase characters represent parts of the sequence that are not aligned. You should not use the dialign output as such for sequence family or phylogeny studies, but take only part of the alignment and/or remove the lowercase characters using a multiple sequence editor. The current version of the program has no provision for doing this automatically.

Diagnostic Error Messages

None.

Exit status

It always exits with status 0.

Known bugs

None.

See also

Program nameDescription
emma Multiple alignment program - interface to ClustalW program
infoalign Information on a multiple sequence alignment
plotcon Plot quality of conservation of a sequence alignment
prettyplot Displays aligned sequences, with colouring and boxing
showalign Displays a multiple sequence alignment
tranalign Align nucleic coding regions given the aligned proteins

Author(s)

The EMBOSS direct port was done by Alan Bleasby (ajb © ebi.ac.uk)
European Bioinformatics Institute, Wellcome Trust Genome Campus, Hinxton, Cambridge CB10 1SD, UK based on ACD written by Guy Bottu (gbottu@ben.vub.ac.be) for a wrapper written at BEN, ULB, Brussels, Belgium

The program DIALIGN itself was written by Burkhard Morgenstern, Said Abdeddaim, Klaus Hahn, Thomas Werner, Kornelie Frech and Andreas Dress. Universitaet Bielefeld (FSPM and International Graduate School in Bioinformatics and Genome Research) - GSF Research Center (ISG, IBB, MIPS/IBI) - North Carolina State University - Universite de Rouen - MPI fuer Biochemie (Martinsried) - University of Goettingen, Institute of Microbiology and Genetics - Rhone-Poulenc Rorer

For help on the original DIALIGN2, contact: dialign@gobics.de

History

First committed on 5th December 2006.

Target users

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

Comments

None