summaryrefslogtreecommitdiffstats
Side-by-side diff
-rw-r--r--test/entropy/Align2Ref.m24
-rw-r--r--test/entropy/CalculateEntropy.m15
-rw-r--r--test/entropy/CalculateProteinEntropy.m25
-rw-r--r--test/entropy/FastNWalign2.c94
-rw-r--r--test/entropy/GenomeAlignments.m31
-rw-r--r--test/entropy/GenomePairwiseDist.m98
-rw-r--r--test/entropy/RefineAlignments.m276
-rw-r--r--test/entropy/don_anal.m40
-rw-r--r--test/entropy/nwalign_mod.m637
9 files changed, 1240 insertions, 0 deletions
diff --git a/test/entropy/GenomeAlignments.m b/test/entropy/GenomeAlignments.m
new file mode 100644
index 0000000..be56570
--- a/dev/null
+++ b/test/entropy/GenomeAlignments.m
@@ -0,0 +1,31 @@
+function [ALIGN inds] = GenomeAlignments(IN_GENOMES, DIST_MAT)
+% GenomeAlignments
+% This will align all of the protein segments in the genome structure
+% and return a cell-array. Each cell is the alignment of one
+% protein. If the protein is missing then the distance is NaN.
+%
+
+[tree inds] = MakeTree(DIST_MAT);
+ALIGN = malign(tree, inds);
+
+ function align=malign(tree, inds)
+ seqs = arrayfun(@(x)(x.Sequence), IN_GENOMES(inds), 'uniformoutput', false);
+ align = multialign(seqs, tree);
+ end
+
+
+
+ function [tree_obj inds]=MakeTree(dist_mat)
+ % MakeTree
+ % Takes a distance matrix and returns a tree object and the indicies
+ % to the rows that are in the tree.
+ %
+
+ inds = find(~all(isnan(dist_mat)|isinf(dist_mat)|dist_mat==0));
+ dvec = squareform(dist_mat(inds, inds));
+ dvec(dvec <= 0) = rand(nnz(dvec <= 0),1)*min(dvec(dvec>0));
+ tree_obj = seqlinkage(dvec);
+
+ end
+
+end \ No newline at end of file

Valid XHTML 1.0 Strict

Copyright © 2009 Don Pellegrino All Rights Reserved.