/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6)
- * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)
+ * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle
*
* This file is part of Jalview.
*
*
* You should have received a copy of the GNU General Public License along with Jalview. If not, see <http://www.gnu.org/licenses/>.
*/
+
package jalview.analysis;
import java.util.*;
}
else
{
+ bpEnd = findPair(rna, i);
+ if (bpEnd>-1)
+ {
for (j = 0; j < jSize; j++) // foreach row
{
if (sequences[j] == null)
.println("WARNING: Consensus skipping null sequence - possible race condition.");
continue;
}
- seq = sequences[j].getSequence();
-
- if (seq.length > i)
+ c = sequences[j].getCharAt(i);
{
- c = seq[i];
// standard representation for gaps in sequence and structure
if (c == '.' || c == ' ')
values['-']++;
continue;
}
- bpEnd = findPair(rna, i);
- cEnd = seq[bpEnd];
+ cEnd = sequences[j].getCharAt(bpEnd);
if (checkBpType(c, cEnd))
{
values['(']++; // H means it's a helix (structured)
maxResidue = "(";
}
}
+ }
// nonGap++;
}
// UPDATE this for new values
public static int[] extractProfile(Hashtable hconsensus,
boolean ignoreGapsInConsensusCalculation)
{
- int[] rtnval = new int[51]; // 2*(5*5)+1
+ int[] rtnval = new int[52]; // 2*(5*5)+2
int[][] profile = (int[][]) hconsensus.get(StructureFrequency.PROFILE);
int[][] pairs = (int[][]) hconsensus
.get(StructureFrequency.PAIRPROFILE);
}
jalview.util.QuickSort.sort(vl, ca);
- rtnval[0] = 1;
+ rtnval[0] = 2;
+ rtnval[1] = 0;
for (int c = 624; c > 0; c--)
{
if (vl[c] > 0)
{
rtnval[rtnval[0]++] = ((int[]) ca[c])[0];
rtnval[rtnval[0]++] = ((int[]) ca[c])[1];
- rtnval[rtnval[0]++] = (int) ((float) vl[c] * 100f / (float) profile[1][ignoreGapsInConsensusCalculation ? 1
+ rtnval[rtnval[0]] = (int) ((float) vl[c] * 100f / (float) profile[1][ignoreGapsInConsensusCalculation ? 1
: 0]);
+ rtnval[1]+=rtnval[rtnval[0]++];
}
}