#include <ProgressiveAligner.h>
Inheritance diagram for mems::ProgressiveAligner:


Public Types | |
| enum | LcbScoringScheme { AncestralScoring, AncestralSumOfPairsScoring, ExtantSumOfPairsScoring } |
Public Member Functions | |
| void | align (std::vector< genome::gnSequence * > &seq_table, mems::IntervalList &interval_list) |
| void | alignNodes (node_id_t node1, node_id_t node2, node_id_t ancestor) |
| align the sequences at the designated pair of alignment tree nodes | |
| void | alignPP (mems::IntervalList &prof1, mems::IntervalList &prof2, mems::IntervalList &interval_list) |
| void | alignProfileToProfile (node_id_t node1, node_id_t node2, node_id_t ancestor) |
| constructs an alignment of node1 and node2 at their ancestor | |
| void | computeAvgAncestralMatchScores (std::vector< TrackingMatch > &tracking_matches, std::vector< node_id_t > &node1_descendants, std::vector< node_id_t > &node2_descendants, boost::multi_array< double, 3 > &tm_score_array) |
| void | computeInternalNodeDistances (boost::multi_array< double, 2 > &bp_dist_mat, boost::multi_array< double, 2 > &cons_dist_mat, std::vector< node_id_t > &node1_descendants, std::vector< node_id_t > &node2_descendants) |
| void | constructLcbTrackingMatches (node_id_t ancestral_node, std::vector< mems::AbstractMatch * > &ancestral_matches, std::vector< mems::LcbTrackingMatch< mems::AbstractMatch * > > &tracking_matches) |
| void | ConstructSuperIntervalFromMSA (node_id_t ancestor, size_t ans_siv, mems::GappedAlignment &gal) |
| void | createAncestralOrdering (std::vector< mems::Interval * > &interval_list, std::vector< SuperInterval > &ancestral_sequence) |
| void | CreatePairwiseBPDistance (boost::multi_array< double, 2 > &bp_distmat) |
| void | doGappedAlignment (node_id_t ancestor, bool profile_aln) |
| void | extractAlignment (node_id_t ancestor, size_t super_iv, mems::CompactGappedAlignment<> &cga) |
| void | extractAlignment (node_id_t ancestor, size_t super_iv, mems::GappedAlignment &gal) |
| void | FixLeftEnds (node_id_t ancestor) |
| void | getAlignedChildren (node_id_t node, std::vector< node_id_t > &descendants) |
| determine which extant sequences have been aligned at a given node | |
| void | getAncestralMatches (const std::vector< node_id_t > node1_seqs, const std::vector< node_id_t > node2_seqs, node_id_t node1, node_id_t node2, node_id_t ancestor, std::vector< mems::AbstractMatch * > &ancestral_matches) |
| double | getBpDistEstimateMinScore (void) |
| double | getBreakpointDistanceScale (void) |
| double | getConservationDistanceScale (void) |
| LcbScoringScheme | getLcbScoringScheme (void) |
| void | getPairwiseMatches (const std::vector< node_id_t > &node1_seqs, const std::vector< node_id_t > &node2_seqs, Matrix< mems::MatchList > &pairwise_matches) |
| void | getPath (node_id_t first_n, node_id_t last_n, std::vector< node_id_t > &path) |
| determine which extant sequences have been aligned at a given node | |
| void | getRepresentativeAncestralMatches (const std::vector< node_id_t > node1_seqs, const std::vector< node_id_t > node2_seqs, node_id_t node1, node_id_t node2, node_id_t ancestor, std::vector< mems::AbstractMatch * > &ancestral_matches) |
| bool | getUseLcbWeightScaling (void) |
| bool | getUseSeedFamilies (void) |
| void | linkSuperIntervals (node_id_t node1, uint seqI, node_id_t ancestor) |
| ProgressiveAligner & | operator= (const ProgressiveAligner &al) |
| void | pairwiseAnchorSearch (mems::MatchList &r_list, mems::Match *r_begin, mems::Match *r_end, const mems::AbstractMatch *iv, uint oseqI, uint oseqJ) |
| void | pairwiseScoreTrackingMatches (std::vector< mems::TrackingMatch > &tracking_matches, std::vector< node_id_t > &node1_descendants, std::vector< node_id_t > &node2_descendants, boost::multi_array< double, 3 > &tm_score_array) |
| ProgressiveAligner (const ProgressiveAligner &al) | |
| ProgressiveAligner (uint seq_count) | |
| Constructs an aligner for the specified number of sequences. | |
| template<class MatchType> void | propagateDescendantBreakpoints (node_id_t node1, uint seqI, std::vector< MatchType * > &iv_list) |
| template<class GappedAlignmentType> void | recurseOnPairs (const std::vector< node_id_t > &node1_seqs, const std::vector< node_id_t > &node2_seqs, const GappedAlignmentType &iv, Matrix< mems::MatchList > &matches, Matrix< std::vector< mems::search_cache_t > > &search_cache_db, Matrix< std::vector< mems::search_cache_t > > &new_cache_db, boost::multi_array< std::vector< std::vector< int64 > >, 2 > &iv_regions) |
| void | recursiveApplyAncestralBreakpoints (node_id_t ancestor) |
| void | refineAlignment (mems::GappedAlignment &gal, node_id_t ancestor, bool profile_aln, AlnProgressTracker &apt) |
| void | setBpDistEstimateMinScore (double min_score) |
| void | setBreakpointDistanceScale (double bp_dist_scale) |
| void | setBreakpointPenalty (double bp_penalty) |
| sets the breakpoint penalty | |
| void | setCollinear (boolean collinear) |
| assume all genomes are collinear when set to true | |
| void | setConservationDistanceScale (double conservation_dist_scale) |
| void | setGappedAlignment (bool do_gapped_alignment) |
| Set whether iterative refinement using MUSCLE should be performed (true/false). | |
| void | setInputGuideTreeFileName (std::string &fname) |
| use a precomputed guide tree stored in the given file | |
| void | setLcbScoringScheme (LcbScoringScheme scheme) |
| set LCB the scoring scheme | |
| void | SetMaxGappedAlignmentLength (size_t len) |
| set the max length (in columns) of alignments passed to MUSCLE | |
| void | setMinimumBreakpointPenalty (double min_bp_penalty) |
| sets the the minimum breakpoint penalty after scaling | |
| void | setOutputGuideTreeFileName (std::string &fname) |
| write the guide tree stored to the given file | |
| void | setPairwiseMatches (mems::MatchList &pair_ml) |
| use a list of precomputed matches instead of computing them | |
| void | setPairwiseScoringScheme (const mems::PairwiseScoringScheme &pss) |
| void | setRefinement (bool refine) |
| Set whether iterative refinement using MUSCLE should be performed (true/false). | |
| void | SetUseCacheDb (bool cbd) |
| set whether a cache database should be used to speed up recursive anchor search | |
| void | setUseLcbWeightScaling (bool use_weight_scaling) |
| void | setUseSeedFamilies (bool use_seed_families) |
| void | translateGappedCoordinates (std::vector< mems::AbstractMatch * > &ml, uint seqI, node_id_t extant, node_id_t ancestor) |
| bool | validatePairwiseIntervals (node_id_t node1, node_id_t node2, std::vector< mems::Interval * > &pair_iv) |
| bool | validateSuperIntervals (node_id_t node1, node_id_t node2, node_id_t ancestor) |
| ~ProgressiveAligner () | |
Protected Member Functions | |
| void | getAlignment (mems::IntervalList &interval_list) |
Protected Attributes | |
| PhyloTree< AlignmentTreeNode > | alignment_tree |
| double | bp_dist_estimate_score |
| the minimum LCB score to use when estimating BP distance | |
| double | bp_dist_scale |
| boost::multi_array< double, 2 > | bp_distance |
| pairwise breakpoint distances | |
| double | breakpoint_penalty |
| double | conservation_dist_scale |
| boost::multi_array< double, 2 > | conservation_distance |
| pairwise genome conservation distances | |
| boolean | debug |
| Flag for debugging output. | |
| std::string | input_guide_tree_fname |
| size_t | max_gapped_alignment_length |
| double | min_breakpoint_penalty |
| std::vector< uint > | node_sequence_map |
| mems::MatchList | original_ml |
| The list of matches calculated among all sequences. | |
| std::string | output_guide_tree_fname |
| boolean | refine |
| LcbScoringScheme | scoring_scheme |
| std::vector< SeedOccurrenceList > | sol_list |
| mems::PairwiseScoringScheme | subst_scoring |
| bool | use_seed_families |
| bool | use_weight_scaling |
| bool | using_cache_db |
Definition at line 53 of file ProgressiveAligner.h.
|
|
Definition at line 90 of file ProgressiveAligner.h. Referenced by getLcbScoringScheme(). |
|
|
Constructs an aligner for the specified number of sequences.
Definition at line 134 of file ProgressiveAligner.cpp. References max_gapped_alignment_length, mems::max_window_size, and uint. |
|
|
|
|
|
Definition at line 243 of file ProgressiveAligner.h. References original_ml. |
|
||||||||||||
|
Definition at line 3741 of file ProgressiveAligner.cpp. References mems::debug_aligner. |
|
||||||||||||||||
|
align the sequences at the designated pair of alignment tree nodes
Definition at line 2905 of file ProgressiveAligner.cpp. References alignment_tree, alignProfileToProfile(), and mems::markAligned(). Referenced by getAlignment(). |
|
||||||||||||||||
|
||||||||||||||||
|
||||||||||||||||||||
|
Definition at line 1796 of file ProgressiveAligner.cpp. References getAlignedChildren(), node_id_t, and uint. Referenced by pairwiseScoreTrackingMatches(). |
|
||||||||||||||||||||
|
Definition at line 1856 of file ProgressiveAligner.cpp. References bp_distance, conservation_distance, getAlignedChildren(), node_id_t, node_sequence_map, and uint. |
|
||||||||||||||||
|
||||||||||||||||
|
||||||||||||
|
Definition at line 2703 of file ProgressiveAligner.cpp. References mems::debug_aligner, and uint. |
|
|
||||||||||||
|
||||||||||||||||
|
||||||||||||||||
|
Definition at line 3188 of file ProgressiveAligner.cpp. References mems::GetAlignment(). Referenced by doGappedAlignment(), and getAlignment(). |
|
|
Definition at line 1257 of file ProgressiveAligner.cpp. References alignment_tree, mems::SuperInterval::LeftEnd(), mems::SuperInterval::Length(), node_id_t, PhyloTree< AlignmentTreeNode >::size(), uint, and mems::CompactGappedAlignment< BaseType >::validate(). Referenced by doGappedAlignment(). |
|
||||||||||||
|
determine which extant sequences have been aligned at a given node
Definition at line 160 of file ProgressiveAligner.cpp. References alignment_tree, node_id_t, mems::progress_msgs, PhyloTree< AlignmentTreeNode >::size(), and uint. Referenced by computeAvgAncestralMatchScores(), computeInternalNodeDistances(), ConstructSuperIntervalFromMSA(), and refineAlignment(). |
|
|
Definition at line 3689 of file ProgressiveAligner.cpp. References alignment_tree, alignNodes(), mems::chooseNextAlignmentPair(), doGappedAlignment(), extractAlignment(), mems::Interval, node_id_t, refine, PhyloTree< AlignmentTreeNode >::root, and PhyloTree< AlignmentTreeNode >::size(). |
|
||||||||||||||||||||||||||||
|
|
Definition at line 114 of file ProgressiveAligner.h. References bp_dist_estimate_score. |
|
|
Definition at line 108 of file ProgressiveAligner.h. References bp_dist_scale. |
|
|
Definition at line 111 of file ProgressiveAligner.h. References conservation_dist_scale. |
|
|
Definition at line 99 of file ProgressiveAligner.h. References LcbScoringScheme, and scoring_scheme. |
|
||||||||||||||||
|
||||||||||||||||
|
determine which extant sequences have been aligned at a given node
Definition at line 186 of file ProgressiveAligner.cpp. References alignment_tree, node_id_t, PhyloTree< AlignmentTreeNode >::size(), and uint. Referenced by translateGappedCoordinates(). |
|
||||||||||||||||||||||||||||
|
Definition at line 1945 of file ProgressiveAligner.cpp. References mems::UngappedLocalAlignment< AbstractMatchImpl >::Copy(), mems::EliminateOverlaps_v2(), mems::Match, mems::UngappedLocalAlignment< AbstractMatchImpl >::SetLength(), and uint. |
|
|
Definition at line 105 of file ProgressiveAligner.h. References use_weight_scaling. |
|
|
Definition at line 102 of file ProgressiveAligner.h. References use_seed_families. |
|
||||||||||||||||
|
Definition at line 272 of file ProgressiveAligner.cpp. References alignment_tree, node_id_t, and uint. Referenced by recursiveApplyAncestralBreakpoints(). |
|
|
|
|
||||||||||||||||||||||||||||
|
||||||||||||||||||||
|
||||||||||||||||||||
|
Definition at line 235 of file ProgressiveAligner.cpp. References alignment_tree, mems::applyBreakpoints(), node_id_t, and uint. Referenced by constructLcbTrackingMatches(). |
|
||||||||||||||||||||||||||||||||||||
|
|
Definition at line 527 of file ProgressiveAligner.cpp. References alignment_tree, mems::applyAncestralBreakpoints(), TreeNode::children, mems::debug_aligner, linkSuperIntervals(), node_id_t, mems::AlignmentTreeNode::ordering, mems::progress_msgs, PhyloTree< AlignmentTreeNode >::size(), and validateSuperIntervals(). |
|
||||||||||||||||||||
|
|
Definition at line 113 of file ProgressiveAligner.h. References bp_dist_estimate_score. |
|
|
Definition at line 107 of file ProgressiveAligner.h. |
|
|
sets the breakpoint penalty
Definition at line 66 of file ProgressiveAligner.h. References breakpoint_penalty. |
|
|
assume all genomes are collinear when set to true
Definition at line 70 of file ProgressiveAligner.h. |
|
|
Definition at line 110 of file ProgressiveAligner.h. |
|
|
Set whether iterative refinement using MUSCLE should be performed (true/false).
Definition at line 86 of file ProgressiveAligner.h. |
|
|
use a precomputed guide tree stored in the given file
Definition at line 74 of file ProgressiveAligner.h. References input_guide_tree_fname. |
|
|
set LCB the scoring scheme
Definition at line 98 of file ProgressiveAligner.h. References scoring_scheme. |
|
|
set the max length (in columns) of alignments passed to MUSCLE
Definition at line 153 of file ProgressiveAligner.cpp. References max_gapped_alignment_length, and mems::max_window_size. |
|
|
sets the the minimum breakpoint penalty after scaling
Definition at line 68 of file ProgressiveAligner.h. |
|
|
write the guide tree stored to the given file
Definition at line 76 of file ProgressiveAligner.h. References output_guide_tree_fname. |
|
|
use a list of precomputed matches instead of computing them
Definition at line 3141 of file ProgressiveAligner.cpp. |
|
|
Definition at line 88 of file ProgressiveAligner.h. References subst_scoring. |
|
|
Set whether iterative refinement using MUSCLE should be performed (true/false).
Definition at line 84 of file ProgressiveAligner.h. |
|
|
set whether a cache database should be used to speed up recursive anchor search
Definition at line 81 of file ProgressiveAligner.h. References using_cache_db. |
|
|
Definition at line 104 of file ProgressiveAligner.h. |
|
|
Definition at line 101 of file ProgressiveAligner.h. |
|
||||||||||||||||||||
|
Definition at line 324 of file ProgressiveAligner.cpp. References mems::AbstractMatchSeqManipulator, alignment_tree, mems::applyAncestralBreakpoints(), mems::CompactGappedAlignment< BaseType >::Copy(), mems::debug_aligner, mems::CompactGappedAlignment< BaseType >::Free(), getPath(), node_id_t, mems::CompactGappedAlignment< BaseType >::translate(), and uint. Referenced by extractAlignment(), and getAncestralMatches(). |
|
||||||||||||||||
|
Definition at line 2806 of file ProgressiveAligner.cpp. References alignment_tree, and uint. |
|
||||||||||||||||
|
Definition at line 2734 of file ProgressiveAligner.cpp. Referenced by doGappedAlignment(), and recursiveApplyAncestralBreakpoints(). |
|
|
|
the minimum LCB score to use when estimating BP distance should be conservative (high) Definition at line 218 of file ProgressiveAligner.h. Referenced by getBpDistEstimateMinScore(), and setBpDistEstimateMinScore(). |
|
|
Definition at line 215 of file ProgressiveAligner.h. Referenced by getBreakpointDistanceScale(). |
|
|
pairwise breakpoint distances dims will be [seq_count][seq_count] Definition at line 208 of file ProgressiveAligner.h. Referenced by computeInternalNodeDistances(). |
|
|
Definition at line 199 of file ProgressiveAligner.h. Referenced by setBreakpointPenalty(). |
|
|
Definition at line 216 of file ProgressiveAligner.h. Referenced by getConservationDistanceScale(). |
|
|
pairwise genome conservation distances dims will be [seq_count][seq_count] Definition at line 209 of file ProgressiveAligner.h. Referenced by computeInternalNodeDistances(). |
|
|
Flag for debugging output.
Reimplemented from mems::Aligner. Definition at line 203 of file ProgressiveAligner.h. |
|
|
Definition at line 201 of file ProgressiveAligner.h. Referenced by setInputGuideTreeFileName(). |
|
|
Definition at line 220 of file ProgressiveAligner.h. Referenced by ProgressiveAligner(), and SetMaxGappedAlignmentLength(). |
|
|
Definition at line 200 of file ProgressiveAligner.h. |
|
|
Definition at line 198 of file ProgressiveAligner.h. Referenced by computeInternalNodeDistances(), constructLcbTrackingMatches(), ConstructSuperIntervalFromMSA(), extractAlignment(), getAncestralMatches(), getPairwiseMatches(), pairwiseScoreTrackingMatches(), recurseOnPairs(), and refineAlignment(). |
|
|
The list of matches calculated among all sequences. Also contains the full sequences and sorted mer lists Definition at line 196 of file ProgressiveAligner.h. Referenced by getAncestralMatches(), getPairwiseMatches(), and ~ProgressiveAligner(). |
|
|
Definition at line 202 of file ProgressiveAligner.h. Referenced by setOutputGuideTreeFileName(). |
|
|
Definition at line 204 of file ProgressiveAligner.h. Referenced by getAlignment(). |
|
|
Definition at line 211 of file ProgressiveAligner.h. Referenced by getLcbScoringScheme(), and setLcbScoringScheme(). |
|
|
Definition at line 207 of file ProgressiveAligner.h. Referenced by pairwiseScoreTrackingMatches(). |
|
|
Definition at line 222 of file ProgressiveAligner.h. Referenced by pairwiseScoreTrackingMatches(), and setPairwiseScoringScheme(). |
|
|
Definition at line 213 of file ProgressiveAligner.h. Referenced by getUseSeedFamilies(), and pairwiseAnchorSearch(). |
|
|
Definition at line 212 of file ProgressiveAligner.h. Referenced by getUseLcbWeightScaling(). |
|
|
Definition at line 205 of file ProgressiveAligner.h. Referenced by recurseOnPairs(), and SetUseCacheDb(). |
1.3.6