- if (pwtype.equals("PID"))
- {
- for (int i = 0; i < (noseqs - 1); i++)
- {
- for (int j = i; j < noseqs; j++)
- {
- if (j == i)
- {
- distance[i][i] = 0;
- }
- else
- {
- distance[i][j] = 100 -
- Comparison.PID(sequenceString[i], sequenceString[j]);
-
- distance[j][i] = distance[i][j];
- }
- }
- }
- }
- else if (pwtype.equals("BL"))
- {
- int maxscore = 0;
- int end = sequenceString[0].length();
- for (int i = 0; i < (noseqs - 1); i++)
- {
- for (int j = i; j < noseqs; j++)
- {
- int score = 0;
-
- for (int k = 0; k < end; k++)
- {
- try
- {
- score += ResidueProperties.getBLOSUM62(
- sequenceString[i].charAt(k),
- sequenceString[j].charAt(k));
- }
- catch (Exception ex)
- {
- System.err.println("err creating BLOSUM62 tree");
- ex.printStackTrace();
- }
- }
-
- distance[i][j] = (float) score;
-
- if (score > maxscore)
- {
- maxscore = score;
- }
- }
- }
-
- for (int i = 0; i < (noseqs - 1); i++)
- {
- for (int j = i; j < noseqs; j++)
- {
- distance[i][j] = (float) maxscore - distance[i][j];
- distance[j][i] = distance[i][j];
- }
- }
- }
- /* else if (pwtype.equals("SW"))
- {
- float max = -1;
-
- for (int i = 0; i < (noseqs - 1); i++)
- {
- for (int j = i; j < noseqs; j++)
- {
- AlignSeq as = new AlignSeq(sequence[i], sequence[j], "pep");
- as.calcScoreMatrix();
- as.traceAlignment();
- as.printAlignment(System.out);
- distance[i][j] = (float) as.maxscore;
-
- if (max < distance[i][j])
- {
- max = distance[i][j];
- }
- }
- }
-
- for (int i = 0; i < (noseqs - 1); i++)
- {
- for (int j = i; j < noseqs; j++)
- {
- distance[i][j] = max - distance[i][j];
- distance[j][i] = distance[i][j];
- }
- }
- }/*/
-
- return distance;