Class AlignerHelper
- java.lang.Object
-
- org.biojava.nbio.alignment.routines.AlignerHelper
-
public class AlignerHelper extends Object
Static utility to construct alignment routines from a common library of methods.- Author:
- Mark Chapman, Daniel Cameron
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classAlignerHelper.AnchorCompounds in query and target sequences that must alignstatic classAlignerHelper.CutDefines a 'cut' row for divide-and-conquer alignment in which a new anchor is found.static classAlignerHelper.LastDefine a traceback pointer for the three edit operations: substitution (match/replacement of a query compound with a target compound), deletion (removal of a query compound leaving a gap in the target sequence), and insertion (addition of a target compound opening a gap in the query sequence).static classAlignerHelper.SubproblemAlignment subproblem.
-
Constructor Summary
Constructors Constructor Description AlignerHelper()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static intaddAnchors(AlignerHelper.Cut[] cuts, int[] scores, boolean addScore, int[] anchors)static AlignerHelper.Cut[]getCuts(int k, AlignerHelper.Subproblem subproblem, int[] dim, boolean anchor0)static voidsetCuts(int x, AlignerHelper.Subproblem subproblem, AlignerHelper.Last[][] pointers, AlignerHelper.Cut[] cuts)static AlignerHelper.LastsetScorePoint(int x, int y, int gep, int sub, int[][][] scores)Calculates the optimal alignment score for the given sequence positions and a linear gap penaltystatic AlignerHelper.Last[]setScorePoint(int x, int y, int gop, int gep, int sub, int[][][] scores)Calculate the optimal alignment score for the given sequence positions with an affine or constant gap penaltystatic AlignerHelper.Last[][]setScoreVector(int x, int gep, int[] subs, boolean storing, int[][][] scores, int[] xyMax, int score)Score local alignment for a given position in the query sequence for a linear gap penaltystatic AlignerHelper.Last[][]setScoreVector(int x, int gop, int gep, int[] subs, boolean storing, int[][][] scores, int[] xyMax, int score)Score local alignment for a given position in the query sequencestatic AlignerHelper.Last[][]setScoreVector(int x, int xb, int yb, int ye, int gep, int[] subs, boolean storing, int[][][] scores, boolean startAnchored)Score global alignment for a given position in the query sequence for a linear gap penaltystatic AlignerHelper.Last[][]setScoreVector(int x, int xb, int yb, int ye, int gep, int[] subs, boolean storing, int[][][] scores, int[] xyMax, int score)Score local alignment for a given position in the query sequence for a linear gap penaltystatic AlignerHelper.Last[][]setScoreVector(int x, int xb, int yb, int ye, int gop, int gep, int[] subs, boolean storing, int[][][] scores, boolean startAnchored)Score global alignment for a given position in the query sequencestatic AlignerHelper.Last[][]setScoreVector(int x, int xb, int yb, int ye, int gop, int gep, int[] subs, boolean storing, int[][][] scores, int[] xyMax, int score)Score local alignment for a given position in the query sequencestatic AlignerHelper.Last[][]setScoreVector(int x, AlignerHelper.Subproblem subproblem, int gep, int[] subs, boolean storing, int[][][] scores)Score global alignment for a given position in the query sequence for a linear gap penaltystatic AlignerHelper.Last[][]setScoreVector(int x, AlignerHelper.Subproblem subproblem, int gop, int gep, int[] subs, boolean storing, int[][][] scores)Score global alignment for a given position in the query sequencestatic int[]setSteps(AlignerHelper.Last[][][] traceback, boolean local, int[] xyMax, AlignerHelper.Last last, List<AlignedSequence.Step> sx, List<AlignedSequence.Step> sy)Find alignment path through traceback matrixstatic int[]setSteps(AlignerHelper.Last[][][] traceback, int[][][] scores, List<AlignedSequence.Step> sx, List<AlignedSequence.Step> sy)Find global alignment path through traceback matrixstatic int[]setSteps(AlignerHelper.Last[][][] traceback, int[] xyMax, List<AlignedSequence.Step> sx, List<AlignedSequence.Step> sy)Find local alignment path through traceback matrixstatic StringtracebackToString(AlignerHelper.Last[][][] traceback)
-
-
-
Method Detail
-
addAnchors
public static int addAnchors(AlignerHelper.Cut[] cuts, int[] scores, boolean addScore, int[] anchors)
-
getCuts
public static AlignerHelper.Cut[] getCuts(int k, AlignerHelper.Subproblem subproblem, int[] dim, boolean anchor0)
-
setCuts
public static void setCuts(int x, AlignerHelper.Subproblem subproblem, AlignerHelper.Last[][] pointers, AlignerHelper.Cut[] cuts)
-
setScorePoint
public static AlignerHelper.Last[] setScorePoint(int x, int y, int gop, int gep, int sub, int[][][] scores)
Calculate the optimal alignment score for the given sequence positions with an affine or constant gap penalty- Parameters:
x- position in queryy- position in targetgop- gap opening penaltygep- gap extension penaltysub- compound match scorescores- dynamic programming score matrix to fill at the given position- Returns:
- traceback direction for substitution, deletion and insertion
-
setScorePoint
public static AlignerHelper.Last setScorePoint(int x, int y, int gep, int sub, int[][][] scores)
Calculates the optimal alignment score for the given sequence positions and a linear gap penalty- Parameters:
x- position in queryy- position in targetgep- gap extension penaltysub- compound match scorescores- dynamic programming score matrix to fill at the given position- Returns:
- traceback directions for substitution, deletion and insertion respectively
-
setScoreVector
public static AlignerHelper.Last[][] setScoreVector(int x, AlignerHelper.Subproblem subproblem, int gop, int gep, int[] subs, boolean storing, int[][][] scores)
Score global alignment for a given position in the query sequence- Parameters:
x-subproblem-gop-gep-subs-storing-scores-- Returns:
-
setScoreVector
public static AlignerHelper.Last[][] setScoreVector(int x, int xb, int yb, int ye, int gop, int gep, int[] subs, boolean storing, int[][][] scores, boolean startAnchored)
Score global alignment for a given position in the query sequence- Parameters:
x-xb-yb-ye-gop-gep-subs-storing-scores-startAnchored-- Returns:
-
setScoreVector
public static AlignerHelper.Last[][] setScoreVector(int x, AlignerHelper.Subproblem subproblem, int gep, int[] subs, boolean storing, int[][][] scores)
Score global alignment for a given position in the query sequence for a linear gap penalty- Parameters:
x-subproblem-gep-subs-storing-scores-- Returns:
-
setScoreVector
public static AlignerHelper.Last[][] setScoreVector(int x, int xb, int yb, int ye, int gep, int[] subs, boolean storing, int[][][] scores, boolean startAnchored)
Score global alignment for a given position in the query sequence for a linear gap penalty- Parameters:
x-xb-yb-ye-gep-subs-storing-scores-startAnchored-- Returns:
-
setScoreVector
public static AlignerHelper.Last[][] setScoreVector(int x, int gop, int gep, int[] subs, boolean storing, int[][][] scores, int[] xyMax, int score)
Score local alignment for a given position in the query sequence- Parameters:
x-gop-gep-subs-storing-scores-xyMax-score-- Returns:
-
setScoreVector
public static AlignerHelper.Last[][] setScoreVector(int x, int xb, int yb, int ye, int gop, int gep, int[] subs, boolean storing, int[][][] scores, int[] xyMax, int score)
Score local alignment for a given position in the query sequence- Parameters:
x-xb-yb-ye-gop-gep-subs-storing-scores-xyMax-score-- Returns:
-
setScoreVector
public static AlignerHelper.Last[][] setScoreVector(int x, int gep, int[] subs, boolean storing, int[][][] scores, int[] xyMax, int score)
Score local alignment for a given position in the query sequence for a linear gap penalty- Parameters:
x-gep-subs-storing-scores-xyMax-score-- Returns:
-
setScoreVector
public static AlignerHelper.Last[][] setScoreVector(int x, int xb, int yb, int ye, int gep, int[] subs, boolean storing, int[][][] scores, int[] xyMax, int score)
Score local alignment for a given position in the query sequence for a linear gap penalty- Parameters:
x-xb-yb-ye-gep-subs-storing-scores-xyMax-score-- Returns:
-
setSteps
public static int[] setSteps(AlignerHelper.Last[][][] traceback, boolean local, int[] xyMax, AlignerHelper.Last last, List<AlignedSequence.Step> sx, List<AlignedSequence.Step> sy)
Find alignment path through traceback matrix- Parameters:
traceback-local-xyMax-last-sx-sy-- Returns:
-
setSteps
public static int[] setSteps(AlignerHelper.Last[][][] traceback, int[][][] scores, List<AlignedSequence.Step> sx, List<AlignedSequence.Step> sy)
Find global alignment path through traceback matrix- Parameters:
traceback-scores-sx-sy-- Returns:
-
setSteps
public static int[] setSteps(AlignerHelper.Last[][][] traceback, int[] xyMax, List<AlignedSequence.Step> sx, List<AlignedSequence.Step> sy)
Find local alignment path through traceback matrix- Parameters:
traceback-xyMax-sx-sy-- Returns:
-
tracebackToString
public static String tracebackToString(AlignerHelper.Last[][][] traceback)
-
-