|
NeoBio API | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--neobio.alignment.PairwiseAlignmentAlgorithm | +--neobio.alignment.CrochemoreLandauZivUkelson | +--neobio.alignment.CrochemoreLandauZivUkelsonGlobalAlignment
This class implements the global pairwise sequence alignment algorithm (with linear gap penalty function) due to Maxime Crochemore, Gad Landau and Michal Ziv-Ukelson (2002).
This implementation derives from the paper of M.Crochemore, G.Landau and M.Ziv-Ukelson, A Sub-quadratic Sequence Alignment Algorithm for Unrestricted Scoring Matrices (available here as PDF or Postscript).
For a general description of the algorithm, please refer to the specification of the abstract CrochemoreLandauZivUkelson superclass.
This class consist mainly of methods that:
createBlock
and its variants);
computeOutputBorder
;
locateScore
;
buildOptimalAlignment
.
CrochemoreLandauZivUkelson
,
CrochemoreLandauZivUkelsonLocalAlignment
Field Summary |
Fields inherited from class neobio.alignment.CrochemoreLandauZivUkelson |
block_table, DIAGONAL_DIRECTION, LEFT_DIRECTION, num_cols, num_rows, out_matrix, seq1, seq2, smawk, STOP_DIRECTION, TOP_DIRECTION |
Fields inherited from class neobio.alignment.PairwiseAlignmentAlgorithm |
alignment, APPROXIMATE_MATCH_TAG, GAP_CHARACTER, GAP_TAG, MATCH_TAG, MISMATCH_TAG, score, score_computed, scoring, sequences_loaded, use_match_tag |
Constructor Summary | |
CrochemoreLandauZivUkelsonGlobalAlignment()
|
Method Summary | |
protected PairwiseAlignment |
buildOptimalAlignment()
Builds an optimal global alignment between the loaded sequences after the block table has been computed. |
protected void |
computeOutputBorder(AlignmentBlock block,
int row,
int col,
int dim,
int lc,
int lr)
Computes the output border of a block. |
protected AlignmentBlock |
createBlock(Factor factor1,
Factor factor2,
int row,
int col)
Creates and computes all information of an alignment block. |
protected AlignmentBlock |
createFirstColumnBlock(Factor factor1,
Factor factor2,
int row)
Creates and computes all information of an alignment block of the first column of the block table. |
protected AlignmentBlock |
createFirstRowBlock(Factor factor1,
Factor factor2,
int col)
Creates and computes all information of an alignment block of the first row of the block table. |
protected AlignmentBlock |
createRootBlock(Factor factor1,
Factor factor2)
Creates the root block. |
protected int |
locateScore()
Locate the score of the highest scoring global alignment in the block table. |
Methods inherited from class neobio.alignment.CrochemoreLandauZivUkelson |
assembleDistMatrix, assembleInputBorder, computeBlockTable, computePairwiseAlignment, computeScore, getDiagonalPrefix, getLeftPrefix, getTopPrefix, loadSequencesInternal, traverseBlock, unloadSequencesInternal |
Methods inherited from class neobio.alignment.PairwiseAlignmentAlgorithm |
getPairwiseAlignment, getScore, loadSequences, max, max, max, scoreDeletion, scoreInsertion, scoreSubstitution, setScoringScheme, unloadSequences, useMatchTag |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public CrochemoreLandauZivUkelsonGlobalAlignment()
Method Detail |
protected AlignmentBlock createBlock(Factor factor1, Factor factor2, int row, int col) throws IncompatibleScoringSchemeException
computeOutputBorder
method to compute the block's output border.
createBlock
in class CrochemoreLandauZivUkelson
factor1
- factor of the first sequencefactor2
- factor of the second sequencerow
- row index of the block in the block tablecol
- column index of the block in the block table
IncompatibleScoringSchemeException
- if the scoring scheme is not compatible
with the sequences being alignedprotected AlignmentBlock createRootBlock(Factor factor1, Factor factor2)
createBlock
method. No information is actually computed.
createRootBlock
in class CrochemoreLandauZivUkelson
factor1
- factor of the first sequencefactor2
- factor of the second sequence
protected AlignmentBlock createFirstRowBlock(Factor factor1, Factor factor2, int col) throws IncompatibleScoringSchemeException
createBlock
method.
createFirstRowBlock
in class CrochemoreLandauZivUkelson
factor1
- factor of the first sequencefactor2
- factor of the second sequencecol
- column index of the block in the block table
IncompatibleScoringSchemeException
- if the scoring scheme is not compatible
with the sequences being alignedcreateBlock
protected AlignmentBlock createFirstColumnBlock(Factor factor1, Factor factor2, int row) throws IncompatibleScoringSchemeException
createBlock
method.
createFirstColumnBlock
in class CrochemoreLandauZivUkelson
factor1
- factor of the first sequencefactor2
- factor of the second sequencerow
- row index of the block in the block table
IncompatibleScoringSchemeException
- if the scoring scheme is not compatible
with the sequences being alignedcreateBlock
protected void computeOutputBorder(AlignmentBlock block, int row, int col, int dim, int lc, int lr)
block
- the block for which the output border is to be computedrow
- row index of the block in the block tablecol
- column index of the block in the block tabledim
- dimension of the output borderlc
- number of columns of the blocklr
- number of row of the blockprotected PairwiseAlignment buildOptimalAlignment() throws IncompatibleScoringSchemeException
buildOptimalAlignment
in class CrochemoreLandauZivUkelson
IncompatibleScoringSchemeException
- If the scoring scheme is not compatible
with the loaded sequences.CrochemoreLandauZivUkelson.traverseBlock(neobio.alignment.AlignmentBlock, int, java.lang.StringBuffer, java.lang.StringBuffer, java.lang.StringBuffer)
protected int locateScore()
locateScore
in class CrochemoreLandauZivUkelson
|
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |