/usr/share/hyphy/SubstitutionClasses/dinuc.bf is in hyphy-common 2.2.7+dfsg-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 | TemplateNames = {{
"One-step",
"Two-step",
"1-step Transitions",
"1-step Transversions"
}};
function CreateTemplates (classID)
{
MatrixTemplate = {240,1};
matchCount = 0;
if (classID < 2)
{
for (h=0; h<15; h=h+1)
{
for (v=h+1; v<16; v=v+1)
{
posCount = (h%4!=v%4)+(h$4!=v$4)-1;
if (posCount == classID)
{
MatrixTemplate[matchCount] = h*16 + v;
matchCount = matchCount+1;
MatrixTemplate[matchCount] = v*16 + h;
matchCount = matchCount+1;
}
}
}
}
else
{
if (classID < 4)
{
for (h=0; h<15; h=h+1)
{
for (v=h+1; v<16; v=v+1)
{
diff = v-h;
if ((h$4==v$4)||(h%4==v%4))
{
if (diff>=4)
{
diff = diff$4;
}
}
else
{
continue;
}
if ((diff%2)==classID-2)
{
MatrixTemplate[matchCount] = h*16 + v;
matchCount = matchCount+1;
MatrixTemplate[matchCount] = v*16 + h;
matchCount = matchCount+1;
}
}
}
}
}
return 0;
}
SubClassNames = {{
"Purines-1",
"Purines-2",
"Pyrimidines-1",
"Pyrimidines-2"
}};
function CreateSubClasses (classID)
{
if (classID==0)
{
MatrixTemplate = {{0,1,2,3,8,9,10,11}};
}
else
{
if (classID==2)
{
MatrixTemplate = {{4,5,6,7,12,13,14,15}};
}
else
{
if (classID==1)
{
MatrixTemplate = {{0,2,4,6,8,10,12,14}};
}
else
{
if (classID==3)
{
MatrixTemplate = {{1,3,5,7,9,11,13,15}};
}
}
}
}
return 0;
}
|