public class SoftAffineAlignmentFullAlgorithm extends AbstractAffineAlignmentAlgorithm<SoftAffinePathModel>
AbstractAffineAlignmentAlgorithm.Recurrence
Modifier and Type | Field and Description |
---|---|
static double |
DEFAULTBETA |
Constructor and Description |
---|
SoftAffineAlignmentFullAlgorithm(AlignmentSpecification alignmentSpecification) |
Modifier and Type | Method and Description |
---|---|
double |
choice(double... choices)
This implements the strict maximum of the given input doubles.
|
double |
getApproxThreshold()
For more information on the ApproxThreshold have a look at the
Softmin class.
|
double |
getBeta()
Returns the parameter defining the "softness" of the alignment.
|
void |
setApproxThreshold(double approxThreshold)
For more information on the ApproxThreshold have a look at the
Softmin class.
|
void |
setBeta(double beta)
Sets the parameter defining the "softness" of the alignment.
|
SoftAffinePathModel |
transformToResult(EnumMap<AbstractAffineAlignmentAlgorithm.Recurrence,double[][]> dp_tables,
double[][] compareMatrix,
double[] deletionMatrix,
double[] insertionMatrix,
double[] skipDeletionMatrix,
double[] skipInsertionMatrix,
Sequence a,
Sequence b)
This method should not be called from outside!
The subclass uses this method to transform the alignment matrix and the
input sequences to the actual alignment result.
|
calculateAlignment, getMinMiddleSkips, getResultClass, getSpecification, getWeightThreshold, setMinMiddleSkips, setWeightThreshold
public static final double DEFAULTBETA
public SoftAffineAlignmentFullAlgorithm(AlignmentSpecification alignmentSpecification)
public void setBeta(double beta)
beta
- The parameter defining the "softness" of the alignment. For
beta towards infinity this alignment becomes closer to the strict
alignment. For beta = 0 all possible alignments are equally considered
and softmin returns the average. Please note that a low beta value might
lead to a very rough approximation and that for higher sequence lengths
beta has to be higher, too.public double getBeta()
public double getApproxThreshold()
public void setApproxThreshold(double approxThreshold)
approxThreshold
- the approximation threshold for the Softmin
function.public double choice(double... choices)
choice
in class AbstractAffineAlignmentAlgorithm<SoftAffinePathModel>
choices
- the costs of all choices.public SoftAffinePathModel transformToResult(EnumMap<AbstractAffineAlignmentAlgorithm.Recurrence,double[][]> dp_tables, double[][] compareMatrix, double[] deletionMatrix, double[] insertionMatrix, double[] skipDeletionMatrix, double[] skipInsertionMatrix, Sequence a, Sequence b)
transformToResult
in class AbstractAffineAlignmentAlgorithm<SoftAffinePathModel>
dp_tables
- the dynamic programming matrices used during
calculation.compareMatrix
- the local cost for replacing node i from the first
sequence with node j from the second sequence.deletionMatrix
- the local cost for deleting node i from the first
sequence.insertionMatrix
- the local cost for inserting node j from the
second sequence into the first sequence.skipDeletionMatrix
- the local cost for skipping node i in the
first sequence.skipInsertionMatrix
- the local cost for skipping node j in the
second sequence.a
- the first sequence.b
- th second sequence.Copyright (C) 2013-2015 Benjamin Paaßen, Georg Zentgraf, AG Theoretical Computer Science, Centre of Excellence Cognitive Interaction Technology (CITEC), University of Bielefeld, licensed under the AGPL v. 3: http://openresearch.cit-ec.de/projects/tcs . This documentation is licensed under the conditions of CC-BY-SA 4.0: https://creativecommons.org/licenses/by-sa/4.0/