X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=inline;f=src%2Fjalview%2Fschemes%2FScoreMatrix.java;h=5e5fa8d389e4ca7c16df6973f8886fc754c94481;hb=f3da4113cd7d574966523982ed5145a918c63556;hp=a5a5ed374074c5f9b972e4193b78190001615555;hpb=506d60f0e188723ddc91c26824b41ac7034df3fe;p=jalview.git
diff --git a/src/jalview/schemes/ScoreMatrix.java b/src/jalview/schemes/ScoreMatrix.java
index a5a5ed3..5e5fa8d 100644
--- a/src/jalview/schemes/ScoreMatrix.java
+++ b/src/jalview/schemes/ScoreMatrix.java
@@ -1,87 +1,173 @@
-/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.4)
- * Copyright (C) 2008 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
- */
-package jalview.schemes;
-
-public class ScoreMatrix
-{
- String name;
-
- /**
- * reference to integer score matrix
- */
- int[][] matrix;
-
- /**
- * 0 for Protein Score matrix. 1 for dna score matrix
- */
- int type;
-
- ScoreMatrix(String name, int[][] matrix, int type)
- {
- this.matrix = matrix;
- this.type = type;
- }
-
- public boolean isDNA()
- {
- return type == 1;
- }
-
- public boolean isProtein()
- {
- return type == 0;
- }
-
- public int[][] getMatrix()
- {
- return matrix;
- }
-
- /**
- *
- * @param A1
- * @param A2
- * @return score for substituting first char in A1 with first char in A2
- */
- public int getPairwiseScore(String A1, String A2)
- {
- return getPairwiseScore(A1.charAt(0), A2.charAt(0));
- }
-
- public int getPairwiseScore(char c, char d)
- {
- int pog = 0;
-
- try
- {
- int a = (type == 0) ? ResidueProperties.aaIndex[c]
- : ResidueProperties.nucleotideIndex[c];
- int b = (type == 0) ? ResidueProperties.aaIndex[d]
- : ResidueProperties.nucleotideIndex[d];
-
- pog = matrix[a][b];
- } catch (Exception e)
- {
- // System.out.println("Unknown residue in " + A1 + " " + A2);
- }
-
- return pog;
- }
-
-}
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
+ *
+ * This file is part of Jalview.
+ *
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *
+ * Jalview is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE. See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview. If not, see
" : ""); + for (char sym2 = 'A'; sym2 <= 'Z'; sym2++) + { + if (symbols[sym2] >= 0 && symbols[sym2] < symMax) + { + sb.append((html ? " | " : "\t") + sym2 + + (html ? " | " : "")); + } + } + header = false; + sb.append(html ? "
" : "") + sym + (html ? " | " : "")); + for (char sym2 = 'A'; sym2 <= 'Z'; sym2++) + { + if (symbols[sym2] >= 0 && symbols[sym2] < symMax) + { + sb.append((html ? "" : "\t") + + matrix[symbols[sym]][symbols[sym2]] + + (html ? " | " : "")); + } + } + sb.append(html ? "