X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fschemes%2FScoreMatrix.java;fp=src%2Fjalview%2Fschemes%2FScoreMatrix.java;h=0000000000000000000000000000000000000000;hb=f063821ed0be9c1581af74643a1aa5798731af65;hp=5e5fa8d389e4ca7c16df6973f8886fc754c94481;hpb=fd18e2c73cd015d4e38ad91da0e5d7532ff0ef42;p=jalview.git diff --git a/src/jalview/schemes/ScoreMatrix.java b/src/jalview/schemes/ScoreMatrix.java deleted file mode 100644 index 5e5fa8d..0000000 --- a/src/jalview/schemes/ScoreMatrix.java +++ /dev/null @@ -1,173 +0,0 @@ -/* - * 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 . - * The Jalview Authors are detailed in the 'AUTHORS' file. - */ -package jalview.schemes; - -import jalview.analysis.scoremodels.PairwiseSeqScoreModel; -import jalview.api.analysis.ScoreModelI; - -public class ScoreMatrix extends PairwiseSeqScoreModel implements - ScoreModelI -{ - String name; - - @Override - public String getName() - { - return name; - } - - /** - * reference to integer score matrix - */ - int[][] matrix; - - /** - * 0 for Protein Score matrix. 1 for dna score matrix - */ - int type; - - /** - * - * @param name - * Unique, human readable name for the matrix - * @param matrix - * Pairwise scores indexed according to appropriate symbol alphabet - * @param type - * 0 for Protein, 1 for NA - */ - ScoreMatrix(String name, int[][] matrix, int type) - { - this.matrix = matrix; - this.type = type; - this.name = name; - } - - @Override - public boolean isDNA() - { - return type == 1; - } - - @Override - public boolean isProtein() - { - return type == 0; - } - - @Override - 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; - } - - /** - * pretty print the matrix - */ - public String toString() - { - return outputMatrix(false); - } - - public String outputMatrix(boolean html) - { - StringBuffer sb = new StringBuffer(); - int[] symbols = (type == 0) ? ResidueProperties.aaIndex - : ResidueProperties.nucleotideIndex; - int symMax = (type == 0) ? ResidueProperties.maxProteinIndex - : ResidueProperties.maxNucleotideIndex; - boolean header = true; - if (html) - { - sb.append(""); - } - for (char sym = 'A'; sym <= 'Z'; sym++) - { - if (symbols[sym] >= 0 && symbols[sym] < symMax) - { - if (header) - { - sb.append(html ? "" : ""); - for (char sym2 = 'A'; sym2 <= 'Z'; sym2++) - { - if (symbols[sym2] >= 0 && symbols[sym2] < symMax) - { - sb.append((html ? "" : "")); - } - } - header = false; - sb.append(html ? "\n" : "\n"); - } - if (html) - { - sb.append(""); - } - sb.append((html ? "" : "")); - for (char sym2 = 'A'; sym2 <= 'Z'; sym2++) - { - if (symbols[sym2] >= 0 && symbols[sym2] < symMax) - { - sb.append((html ? "" : "")); - } - } - sb.append(html ? "\n" : "\n"); - } - } - if (html) - { - sb.append("
 " : "\t") + sym2 - + (html ? " 
" : "") + sym + (html ? "" : "\t") - + matrix[symbols[sym]][symbols[sym2]] - + (html ? "
"); - } - return sb.toString(); - } -}