RNAlib-2.5.1
edit_cost.h
Go to the documentation of this file.
1
6#define PRIVATE static
7
8PRIVATE char sep = ':';
9PRIVATE char *coding = "Null:U:P:H:B:I:M:S:E:R";
10
11#define DIST_INF 10000 /* infinity */
12
13typedef int CostMatrix[10][10];
14
15PRIVATE CostMatrix *EditCost; /* will point to UsualCost or ShapiroCost */
16
17PRIVATE CostMatrix UsualCost =
18{
19
20/* Null, U, P, H, B, I, M, S, E, R */
21
22 { 0, 1, 2, 2, 2, 2, 2, 1, 1, DIST_INF}, /* Null replaced */
23 { 1, 0, 1, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF}, /* U replaced */
24 { 2, 1, 0, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF}, /* P replaced */
25 { 2, DIST_INF, DIST_INF, 0, 2, 2, 2, DIST_INF, DIST_INF, DIST_INF}, /* H replaced */
26 { 2, DIST_INF, DIST_INF, 2, 0, 1, 2, DIST_INF, DIST_INF, DIST_INF}, /* B replaced */
27 { 2, DIST_INF, DIST_INF, 2, 1, 0, 2, DIST_INF, DIST_INF, DIST_INF}, /* I replaced */
28 { 2, DIST_INF, DIST_INF, 2, 2, 2, 0, DIST_INF, DIST_INF, DIST_INF}, /* M replaced */
29 { 1, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, 0, DIST_INF, DIST_INF}, /* S replaced */
30 { 1, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, 0, DIST_INF}, /* E replaced */
31 { DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, 0}, /* R replaced */
32
33};
34
35
36PRIVATE CostMatrix ShapiroCost =
37{
38
39/* Null, U, P, H, B, I, M, S, E, R */
40
41 { 0, 1, 2, 100, 5, 5, 75, 5, 5, DIST_INF}, /* Null replaced */
42 { 1, 0, 1, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF}, /* U replaced */
43 { 2, 1, 0, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF}, /* P replaced */
44 { 100, DIST_INF, DIST_INF, 0, 8, 8, 8, DIST_INF, DIST_INF, DIST_INF}, /* H replaced */
45 { 5, DIST_INF, DIST_INF, 8, 0, 3, 8, DIST_INF, DIST_INF, DIST_INF}, /* B replaced */
46 { 5, DIST_INF, DIST_INF, 8, 3, 0, 8, DIST_INF, DIST_INF, DIST_INF}, /* I replaced */
47 { 75, DIST_INF, DIST_INF, 8, 8, 8, 0, DIST_INF, DIST_INF, DIST_INF}, /* M replaced */
48 { 5, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, 0, DIST_INF, DIST_INF}, /* S replaced */
49 { 5, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, 0, DIST_INF}, /* E replaced */
50 { DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, DIST_INF, 0}, /* R replaced */
51
52};
53