public class PairwiseAlignment
This class is the product of a pairwise alignment, generated by one subclasses of class PairwiseAlignmentAlgorithm. It contains the two sequences strings with gaps, a score tag line, and a score value. It is typically displayed in three rows as in the following example of an alignment between parts of two protein sequences:
MDEIHQLEDMFTVDSETLRKVVKHFILPHD-----MRTTKHQEELWSFIAELDSLKDFMVEQE // sequence 1
M +I E +FTV +ETL+ V KHFILP D MRTT++ +ELW FIA DSLK F+ EQ // score tag line
MQQIENFEKIFTVPTETLQAVTKHFILP-DATETLMRTTQNPDELWEFIA--DSLKAFIDEQF // sequence 2
Each column has one character of each sequence and a score tag. The same character is displayed in all three rows when a column has an exact match (character of sequences 1 and 2 are equal). When a mismatch occurs (substitution of different characters), the score tag is left blank. A '+' in the score line signals a partial match (a substitution of similar characters). The difference between a partial match and a mismatch is that the score of a partial match is positive whereas the score of a mismatch is zero or negative (each case is determined by the scoring scheme).
Gaps are usually represented by dashes ('-') and have a blank score tag. Insertions have dashes in sequence 1 and the inserted character in sequence 2. Deletions, by contrast, have the deleted character in sequence 1 and dashes in sequence 2.
Each column carries a score value for the corresponding operation (as defined by the scoring scheme). The overall score of a pairwise alignment is the sum of all columns scores values.
When the scoring schemes does not support partial matches, a match is usually signaled by a '|' character.
Note that these special characters are defined by the PairwiseAlignmentAlgorithm class. Consult that class specification for the actual configuration. For instance, an alignment between two DNA fragmens may look like this:
A--C--TAAAAAGCA--TT-AATAATAAA-A
| | |||| ||| || ||||| ||| |
AAGCCCTAAACCGCAAGTTTAATAA-AAATA
This class is serializable, so it can be saved to a file (or any other output). It overrides the default equals method of the Object class to allow a proper comparsion of alignments produced by different algorithms or even different runs of the same algorithm. However, it does not override the hashCode method as it is generally the case to maintain the contract for the hashCode method (which states that equal objects must have equal hash codes). Hence, as it is, its use in a hash table is not supported.
protected java.lang.String gapped_seq1
First gapped sequence.
protected java.lang.String score_tag_line
The score tag line.
protected java.lang.String gapped_seq2
Second gapped sequence.
protected int score
The overall score value for this alignment.
protected int rowStart
Basically, the longer sequence is stored in rows, the shorter on is stored in the columns. The beginning ROW of matrix that was aligned. If seq1 is the same length or shorter then seq2, this correlates to the position on seq2 where alignment started. If seq2 is shorter than seq1, this correlates to the position on seq1 where alignment started.
protected int colStart
The beginning COLUMN of the matrix that was aligned. If seq1 is the same length or shorter then seq1, this correlates to the position on seq1 where alignment started. If seq2 is shorter than seq1, this correlates to the position on seq2 where alignment started.
public PairwiseAlignment(java.lang.String gapped_seq1,
java.lang.String score_tag_line,
java.lang.String gapped_seq2,
int score)
Creates a PairwiseAlignment instance with the specified gapped sequences, score tag line and score value.
gapped_seq1 - the first gapped sequencescore_tag_line - the score tag linegapped_seq2 - the second gapped sequencescore - the overall score value for this alignmentpublic PairwiseAlignment(java.lang.String gapped_seq1,
java.lang.String score_tag_line,
java.lang.String gapped_seq2,
int score,
int row,
int col)
Creates a PairwiseAlignment instance with the specified gapped sequences, score tag line and score value.
gapped_seq1 - the first gapped sequencescore_tag_line - the score tag linegapped_seq2 - the second gapped sequencescore - the overall score value for this alignmentpublic java.lang.String getGappedSequence1()
Returns the first gapped sequence.
public java.lang.String getScoreTagLine()
Returns the score tag line.
public java.lang.String getGappedSequence2()
Returns the second gapped sequence.
public int getScore()
Returns the score for this alignment.
public int getRowStart()
Returns the matrix row position where the paried alignement starts
public int getColStart()
Returns the matrix column position where the paired alignment starts
public java.lang.String toString()
Returns a four-line String representation of this alignment in the following order: first gapped sequence, score tag line, second gapped sequence and the score value.
public boolean equals(java.lang.Object obj)
Compares this object to the specified object. The result is true if and only if the argument is not null and is an PairwiseAlignment object that contains the same values as this object, i.e. the same gapped sequences, the same score tag line and the same score.
obj - the object to compare withtrue if objects are the same, false otherwise