X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fdatamodel%2FBinarySequence.java;h=af10e1d180a37114726ace7c78888867c4f25d5c;hb=d587f1aa61946dc14f6f089cf1dc2a3116cfb773;hp=a351b04f18bbd219eb7e08a0ec65929c53548b13;hpb=588042b69abf8e60bcc950b24c283933c7dd422f;p=jalview.git diff --git a/src/jalview/datamodel/BinarySequence.java b/src/jalview/datamodel/BinarySequence.java index a351b04..af10e1d 100755 --- a/src/jalview/datamodel/BinarySequence.java +++ b/src/jalview/datamodel/BinarySequence.java @@ -1,6 +1,6 @@ /* * Jalview - A Sequence Alignment Editor and Viewer -* Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle +* Copyright (C) 2006 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 @@ -18,51 +18,61 @@ */ package jalview.datamodel; -import jalview.analysis.PCA; - -import jalview.io.*; - -import jalview.jbgui.*; - import jalview.schemes.*; -import java.awt.*; -public class BinarySequence extends Sequence { +/** + * DOCUMENT ME! + * + * @author $author$ + * @version $Revision$ + */ +public class BinarySequence extends Sequence +{ int[] binary; double[] dbinary; - public BinarySequence(SequenceI s) { - super(s.getName(), s.getSequence(), s.getStart(), s.getEnd()); - } - - public BinarySequence(String name, String sequence, int start, int end) { - super(name, sequence, start, end); + /** + * Creates a new BinarySequence object. + * + * @param s DOCUMENT ME! + */ + public BinarySequence(String s) + { + super("", s, 0, s.length()); } - public void encode() { + /** + * DOCUMENT ME! + */ + public void encode() + { // Set all matrix to 0 dbinary = new double[getSequence().length() * 21]; int nores = 21; - for (int i = 0; i < dbinary.length; i++) { + for (int i = 0; i < dbinary.length; i++) + { dbinary[i] = 0.0; } - for (int i = 0; i < getSequence().length(); i++) { + for (int i = 0; i < getSequence().length(); i++) + { int aanum = 20; - try { - aanum = ((Integer) ResidueProperties.getAAHash().get(getSequence() - .substring(i, - i + 1))).intValue(); - } catch (NullPointerException e) { + try + { + aanum = ResidueProperties.aaIndex[getSequence().charAt(i)]; + } + catch (NullPointerException e) + { aanum = 20; } - if (aanum > 20) { + if (aanum > 20) + { aanum = 20; } @@ -70,7 +80,11 @@ public class BinarySequence extends Sequence { } } - public void blosumEncode() { + /** + * DOCUMENT ME! + */ + public void blosumEncode() + { // Set all matrix to 0 dbinary = new double[getSequence().length() * 21]; @@ -79,35 +93,47 @@ public class BinarySequence extends Sequence { //for (int i = 0; i < dbinary.length; i++) { // dbinary[i] = 0.0; //} - for (int i = 0; i < getSequence().length(); i++) { + for (int i = 0; i < getSequence().length(); i++) + { int aanum = 20; - try { - aanum = ((Integer) ResidueProperties.getAAHash().get(getSequence() - .substring(i, - i + 1))).intValue(); - } catch (NullPointerException e) { + try + { + aanum = ResidueProperties.aaIndex[getSequence().charAt(i)]; + } + catch (NullPointerException e) + { aanum = 20; } - if (aanum > 20) { + if (aanum > 20) + { aanum = 20; } // Do the blosum thing - for (int j = 0; j < 20; j++) { + for (int j = 0; j < 20; j++) + { dbinary[(i * nores) + j] = ResidueProperties.getBLOSUM62()[aanum][j]; } } } - public String toBinaryString() { + /** + * DOCUMENT ME! + * + * @return DOCUMENT ME! + */ + public String toBinaryString() + { String out = ""; - for (int i = 0; i < binary.length; i++) { + for (int i = 0; i < binary.length; i++) + { out += (new Integer(binary[i])).toString(); - if (i < (binary.length - 1)) { + if (i < (binary.length - 1)) + { out += " "; } } @@ -115,11 +141,14 @@ public class BinarySequence extends Sequence { return out; } - public double[] getDBinary() { + /** + * DOCUMENT ME! + * + * @return DOCUMENT ME! + */ + public double[] getDBinary() + { return dbinary; } - public static void printMemory(Runtime rt) { - System.out.println("DEBUG: Free memory = " + rt.freeMemory()); // log. - } }