org.biojava3.alignment
Class Alignments

java.lang.Object
  extended by org.biojava3.alignment.Alignments

public class Alignments
extends Object

Static utility to easily run alignment routines. To exit cleanly after running any parallel method that mentions use of the ConcurrencyTools utility, ConcurrencyTools.shutdown() or ConcurrencyTools.shutdownAndAwaitTermination() must be called.

Author:
Mark Chapman

Nested Class Summary
static class Alignments.PairInProfileScorerType
          List of implemented sequence pair in a profile scoring routines.
static class Alignments.PairwiseSequenceAlignerType
          List of implemented pairwise sequence alignment routines.
static class Alignments.PairwiseSequenceScorerType
          List of implemented pairwise sequence scoring routines.
static class Alignments.ProfileProfileAlignerType
          List of implemented profile-profile alignment routines.
static class Alignments.RefinerType
          List of implemented profile refinement routines.
 
Method Summary
static
<S extends Sequence<C>,C extends Compound>
List<SequencePair<S,C>>
getAllPairsAlignments(List<S> sequences, Alignments.PairwiseSequenceAlignerType type, GapPenalty gapPenalty, SubstitutionMatrix<C> subMatrix)
          Factory method which computes a sequence alignment for all Sequence pairs in the given List.
static
<S extends Sequence<C>,C extends Compound>
List<PairwiseSequenceScorer<S,C>>
getAllPairsScorers(List<S> sequences, Alignments.PairwiseSequenceScorerType type, GapPenalty gapPenalty, SubstitutionMatrix<C> subMatrix)
          Factory method which sets up a sequence pair scorer for all Sequence pairs in the given List.
static
<S extends Sequence<C>,C extends Compound>
int[]
getAllPairsScores(List<S> sequences, Alignments.PairwiseSequenceScorerType type, GapPenalty gapPenalty, SubstitutionMatrix<C> subMatrix)
          Factory method which computes a sequence pair score for all Sequence pairs in the given List.
static
<S extends Sequence<C>,C extends Compound>
Profile<S,C>
getMultipleSequenceAlignment(List<S> sequences, Object... settings)
          Factory method which computes a multiple sequence alignment for the given List of Sequences.
static
<S extends Sequence<C>,C extends Compound>
PairwiseSequenceAligner<S,C>
getPairwiseAligner(S query, S target, Alignments.PairwiseSequenceAlignerType type, GapPenalty gapPenalty, SubstitutionMatrix<C> subMatrix)
          Factory method which constructs a pairwise sequence aligner.
static
<S extends Sequence<C>,C extends Compound>
SequencePair<S,C>
getPairwiseAlignment(S query, S target, Alignments.PairwiseSequenceAlignerType type, GapPenalty gapPenalty, SubstitutionMatrix<C> subMatrix)
          Factory method which computes a sequence alignment for the given Sequence pair.
static
<S extends Sequence<C>,C extends Compound>
Profile<S,C>
getProgressiveAlignment(GuideTree<S,C> tree, Alignments.ProfileProfileAlignerType type, GapPenalty gapPenalty, SubstitutionMatrix<C> subMatrix)
          Factory method to run the profile-profile alignments of a progressive multiple sequence alignment concurrently.
static
<S extends Sequence<C>,C extends Compound>
int[]
runPairwiseScorers(List<PairwiseSequenceScorer<S,C>> scorers)
          Factory method to run a list of scorers concurrently.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getAllPairsAlignments

public static <S extends Sequence<C>,C extends Compound> List<SequencePair<S,C>> getAllPairsAlignments(List<S> sequences,
                                                                                                       Alignments.PairwiseSequenceAlignerType type,
                                                                                                       GapPenalty gapPenalty,
                                                                                                       SubstitutionMatrix<C> subMatrix)
Factory method which computes a sequence alignment for all Sequence pairs in the given List. This method runs the alignments in parallel by submitting all of the alignments to the shared thread pool of the ConcurrencyTools utility.

Type Parameters:
S - each Sequence of an alignment pair is of type S
C - each element of an AlignedSequence is a Compound of type C
Parameters:
sequences - the List of Sequences to align
type - chosen type from list of pairwise sequence alignment routines
gapPenalty - the gap penalties used during alignment
subMatrix - the set of substitution scores used during alignment
Returns:
list of sequence alignment pairs

getMultipleSequenceAlignment

public static <S extends Sequence<C>,C extends Compound> Profile<S,C> getMultipleSequenceAlignment(List<S> sequences,
                                                                                                   Object... settings)
Factory method which computes a multiple sequence alignment for the given List of Sequences.

Type Parameters:
S - each Sequence of the List is of type S
C - each element of a Sequence is a Compound of type C
Parameters:
sequences - the List of Sequences to align
settings - optional settings that adjust the alignment
Returns:
multiple sequence alignment Profile

getPairwiseAlignment

public static <S extends Sequence<C>,C extends Compound> SequencePair<S,C> getPairwiseAlignment(S query,
                                                                                                S target,
                                                                                                Alignments.PairwiseSequenceAlignerType type,
                                                                                                GapPenalty gapPenalty,
                                                                                                SubstitutionMatrix<C> subMatrix)
Factory method which computes a sequence alignment for the given Sequence pair.

Type Parameters:
S - each Sequence of the pair is of type S
C - each element of an AlignedSequence is a Compound of type C
Parameters:
query - the first Sequences to align
target - the second Sequences to align
type - chosen type from list of pairwise sequence alignment routines
gapPenalty - the gap penalties used during alignment
subMatrix - the set of substitution scores used during alignment
Returns:
sequence alignment pair

getAllPairsScorers

public static <S extends Sequence<C>,C extends Compound> List<PairwiseSequenceScorer<S,C>> getAllPairsScorers(List<S> sequences,
                                                                                                              Alignments.PairwiseSequenceScorerType type,
                                                                                                              GapPenalty gapPenalty,
                                                                                                              SubstitutionMatrix<C> subMatrix)
Factory method which sets up a sequence pair scorer for all Sequence pairs in the given List.

Type Parameters:
S - each Sequence of a pair is of type S
C - each element of a Sequence is a Compound of type C
Parameters:
sequences - the List of Sequences to align
type - chosen type from list of pairwise sequence scoring routines
gapPenalty - the gap penalties used during alignment
subMatrix - the set of substitution scores used during alignment
Returns:
list of sequence pair scorers

getAllPairsScores

public static <S extends Sequence<C>,C extends Compound> int[] getAllPairsScores(List<S> sequences,
                                                                                 Alignments.PairwiseSequenceScorerType type,
                                                                                 GapPenalty gapPenalty,
                                                                                 SubstitutionMatrix<C> subMatrix)
Factory method which computes a sequence pair score for all Sequence pairs in the given List. This method runs the scorings in parallel by submitting all of the scorings to the shared thread pool of the ConcurrencyTools utility.

Type Parameters:
S - each Sequence of a pair is of type S
C - each element of a Sequence is a Compound of type C
Parameters:
sequences - the List of Sequences to align
type - chosen type from list of pairwise sequence scoring routines
gapPenalty - the gap penalties used during alignment
subMatrix - the set of substitution scores used during alignment
Returns:
list of sequence pair scores

getPairwiseAligner

public static <S extends Sequence<C>,C extends Compound> PairwiseSequenceAligner<S,C> getPairwiseAligner(S query,
                                                                                                         S target,
                                                                                                         Alignments.PairwiseSequenceAlignerType type,
                                                                                                         GapPenalty gapPenalty,
                                                                                                         SubstitutionMatrix<C> subMatrix)
Factory method which constructs a pairwise sequence aligner.

Type Parameters:
S - each Sequence of an alignment pair is of type S
C - each element of an AlignedSequence is a Compound of type C
Parameters:
query - the first Sequence to align
target - the second Sequence to align
type - chosen type from list of pairwise sequence alignment routines
gapPenalty - the gap penalties used during alignment
subMatrix - the set of substitution scores used during alignment
Returns:
pairwise sequence aligner

getProgressiveAlignment

public static <S extends Sequence<C>,C extends Compound> Profile<S,C> getProgressiveAlignment(GuideTree<S,C> tree,
                                                                                              Alignments.ProfileProfileAlignerType type,
                                                                                              GapPenalty gapPenalty,
                                                                                              SubstitutionMatrix<C> subMatrix)
Factory method to run the profile-profile alignments of a progressive multiple sequence alignment concurrently. This method runs the alignments in parallel by submitting all of the alignment tasks to the shared thread pool of the ConcurrencyTools utility.

Type Parameters:
S - each Sequence of the Profile pair is of type S
C - each element of an AlignedSequence is a Compound of type C
Parameters:
tree - guide tree to follow aligning profiles from leaves to root
type - chosen type from list of profile-profile alignment routines
gapPenalty - the gap penalties used during alignment
subMatrix - the set of substitution scores used during alignment
Returns:
multiple sequence alignment

runPairwiseScorers

public static <S extends Sequence<C>,C extends Compound> int[] runPairwiseScorers(List<PairwiseSequenceScorer<S,C>> scorers)
Factory method to run a list of scorers concurrently. This method runs the scorers in parallel by submitting all of the scoring tasks to the shared thread pool of the ConcurrencyTools utility.

Type Parameters:
S - each Sequence of an alignment pair is of type S
C - each element of an AlignedSequence is a Compound of type C
Parameters:
scorers - list of scorers to run
Returns:
list of score results from running scorers