File: CheckTrailing.java

package info (click to toggle)
proalign 0.603-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 492 kB
  • sloc: java: 8,673; sh: 27; makefile: 4
file content (55 lines) | stat: -rw-r--r-- 1,205 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
/**
 * Title:        ProAlign<p>
 * Description:  <p>
 * Copyright:    Copyright (c) Ari Loytynoja<p>
 * License:      GNU GENERAL PUBLIC LICENSE<p>
 * @see          http://www.gnu.org/copyleft/gpl.html
 * Company:      ULB<p>
 * @author Ari Loytynoja
 * @version 1.0
 */
package proalign;

class CheckTrailing {

    PwAlignment pwa;

    CheckTrailing(ProAlign pa) { 

	ProAlign.log("CheckTrailing");

	PwSubstitutionMatrix psm = new PwSubstitutionMatrix();
	String pwAlphabet;
	int[][] pwSubst;
	int gOpen, gExt;
	
	if(ProAlign.isDna){
	    pwAlphabet = psm.dnaAlphabet;
	    pwSubst = psm.swdna;
	    gOpen = -1*pa.pwDnaOpen;
	    gExt = -1*pa.pwDnaExt;
	    
	} else {
	    
	    pwAlphabet = psm.protAlphabet;
	    if(pa.pwProtMatrix.equals("pam60")) {
		pwSubst = psm.pam60;
	    } else if(pa.pwProtMatrix.equals("pam160")) {
		pwSubst = psm.pam160;
	    } else if(pa.pwProtMatrix.equals("pam250")) {
		    pwSubst = psm.pam250;
	    } else {
		pwSubst = psm.pam120;
	    }
	    gOpen = -1*pa.pwProtOpen;
	    gExt = -1*pa.pwProtExt;
	}
	
	pwa = new PwAlignment(pwSubst,gOpen,gExt,pwAlphabet,ProAlign.isDna);
    }

    int[] trailing(String s1, String s2) {	
	return pwa.trailing(s1,s2);
    }

}