Changed the intensities array order from cycle,channel to channel,cycle. This, I'm told, is a far more efficient allocation strategy.
git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@1084 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
parent
3112302ec9
commit
7b5d8d7604
|
|
@ -98,7 +98,8 @@ public class BasecallingReadModel {
|
|||
|
||||
double[] fourIntensity = new double[4];
|
||||
for (int channel = 0; channel < 4; channel++) {
|
||||
fourIntensity[channel] = (double) ints[cycle][channel];
|
||||
//fourIntensity[channel] = (double) ints[cycle][channel];
|
||||
fourIntensity[channel] = (double) ints[channel][cycle];
|
||||
}
|
||||
|
||||
basemodels[cycle].addMeanPoint(probMatrix, fourIntensity);
|
||||
|
|
@ -135,7 +136,8 @@ public class BasecallingReadModel {
|
|||
|
||||
double[] fourIntensity = new double[4];
|
||||
for (int channel = 0; channel < 4; channel++) {
|
||||
fourIntensity[channel] = (double) ints[cycle][channel];
|
||||
//fourIntensity[channel] = (double) ints[cycle][channel];
|
||||
fourIntensity[channel] = (double) ints[channel][cycle];
|
||||
}
|
||||
|
||||
basemodels[cycle].addCovariancePoint(probMatrix, fourIntensity);
|
||||
|
|
@ -207,7 +209,8 @@ public class BasecallingReadModel {
|
|||
|
||||
double[] fourIntensity = new double[4];
|
||||
for (int channel = 0; channel < 4; channel++) {
|
||||
fourIntensity[channel] = (double) read.getIntensities()[cycle][channel];
|
||||
//fourIntensity[channel] = (double) read.getIntensities()[cycle][channel];
|
||||
fourIntensity[channel] = (double) read.getIntensities()[channel][cycle];
|
||||
}
|
||||
|
||||
fpr.add(cycle, computeProbabilities(cycle, basePrev, qualPrev, fourIntensity));
|
||||
|
|
|
|||
|
|
@ -58,7 +58,8 @@ public class RawRead implements Comparable<RawRead> {
|
|||
sequence = pastedReadString[1][4].substring(cycleBegin, cycleEnd + 1).getBytes();
|
||||
|
||||
quals = new byte[sequence.length];
|
||||
intensities = new short[sequence.length][4];
|
||||
//intensities = new short[sequence.length][4];
|
||||
intensities = new short[4][sequence.length];
|
||||
|
||||
for (int cycle = cycleBegin, offset = 0; cycle <= cycleEnd; cycle++, offset++) {
|
||||
byte maxQual = -50;
|
||||
|
|
@ -75,7 +76,8 @@ public class RawRead implements Comparable<RawRead> {
|
|||
double doubleChannelIntensity = Double.valueOf(pastedReadString[0][fullReadIndex]);
|
||||
short shortChannelIntensity = (short) doubleChannelIntensity;
|
||||
|
||||
intensities[offset][channel] = shortChannelIntensity;
|
||||
//intensities[offset][channel] = shortChannelIntensity;
|
||||
intensities[channel][offset] = shortChannelIntensity;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -181,14 +183,14 @@ public class RawRead implements Comparable<RawRead> {
|
|||
/**
|
||||
* Get the raw read intensities.
|
||||
*
|
||||
* @return the (readLength)x(numChannels) array of raw intensities
|
||||
* @return the (numChannels)x(readLength) array of raw intensities
|
||||
*/
|
||||
public short[][] getIntensities() { return intensities; }
|
||||
|
||||
/**
|
||||
* Set the raw intensities.
|
||||
*
|
||||
* @param intensities the (readLength)x(numChannels) array of raw intensities
|
||||
* @param intensities the (numChannels)x(readLength) array of raw intensities
|
||||
*/
|
||||
public void setIntensities(short[][] intensities) { this.intensities = intensities; }
|
||||
|
||||
|
|
@ -239,12 +241,17 @@ public class RawRead implements Comparable<RawRead> {
|
|||
|
||||
byte[] newSequence = new byte[cycleStop - cycleStart + 1];
|
||||
byte[] newQuals = new byte[cycleStop - cycleStart + 1];
|
||||
short[][] newIntensities = new short[cycleStop - cycleStart + 1][4];
|
||||
//short[][] newIntensities = new short[cycleStop - cycleStart + 1][4];
|
||||
short[][] newIntensities = new short[4][cycleStop - cycleStart + 1];
|
||||
|
||||
for (int cycle = cycleStart, offset = 0; cycle <= cycleStop; cycle++, offset++) {
|
||||
newSequence[offset] = sequence[cycle];
|
||||
newQuals[offset] = quals[cycle];
|
||||
newIntensities[offset] = intensities[cycle];
|
||||
//newIntensities[offset] = intensities[cycle];
|
||||
|
||||
for (int channel = 0; channel < 4; channel++) {
|
||||
newIntensities[channel][offset] = intensities[channel][cycle];
|
||||
}
|
||||
}
|
||||
|
||||
subRead.setSequence(newSequence);
|
||||
|
|
|
|||
Loading…
Reference in New Issue