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 class
AlignerHelper.Anchor
Compounds in query and target sequences that must alignstatic class
AlignerHelper.Cut
Defines a 'cut' row for divide-and-conquer alignment in which a new anchor is found.static class
AlignerHelper.Last
Define 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 class
AlignerHelper.Subproblem
Alignment subproblem.
-
Constructor Summary
Constructors Constructor Description AlignerHelper()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static int
addAnchors(AlignerHelper.Cut[] cuts, int[] scores, boolean addScore, int[] anchors)
static AlignerHelper.Cut[]
getCuts(int k, AlignerHelper.Subproblem subproblem, int[] dim, boolean anchor0)
static void
setCuts(int x, AlignerHelper.Subproblem subproblem, AlignerHelper.Last[][] pointers, AlignerHelper.Cut[] cuts)
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 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 String
tracebackToString(AlignerHelper.Last[][][] traceback)
-
-
-
Constructor Detail
-
AlignerHelper
public AlignerHelper()
-
-
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)
-
-