JPRED-2 Add sources of all binaries (except alscript) to Git
[jpred.git] / sources / multicoil / initialization_cuts.c
1 void compute_multivariate_num_differ_dim(int *number_differ_score_dim,
2             int number_differ_lib,
3             int differ_functnum, int *old_num_dim_differ,
4             int which_differentiator)
5 {
6
7
8   
9     *number_differ_score_dim= number_differ_lib;
10
11     if (( *number_differ_score_dim > 1) || (differ_functnum==1)) 
12       *old_num_dim_differ= 7;
13     else    /** Used heuristic method to combine distance scores.  **/
14       *old_num_dim_differ= 1;
15
16     if (which_differentiator == 2) {
17       (*number_differ_score_dim) *= 2;
18       (*old_num_dim_differ) *=2;
19     }
20            /** Each dimension gets a pair of scores... the max and min. **/
21 }
22
23
24
25
26 from initialize()
27   differ_gauss_param[0] = ',';
28
29
30 /*****************Round 2 of cuts. ****/
31 void initialize(int *number_classes, int *number_multi_lib0, int window_length[MAX_TABLE_NUMBER],  double scale0s[MAX_TABLE_NUMBER], double scale0p[MAX_TABLE_NUMBER], FILE *fpin0, char *likelihoods00, char *pir_name0, char *print,   char gauss_param[2][MAXLINE], int *mode,double prior_freq_single[MAX_TABLE_NUMBER], double prior_freq_pair[MAX_TABLE_NUMBER],   int structural_pos[POSNUM+1])
32
33 changed to
34
35 void initialize( int *number_multi_lib0, int window_length[MAX_TABLE_NUMBER],  double scale0s[MAX_TABLE_NUMBER], double scale0p[MAX_TABLE_NUMBER], FILE *fpin0, char *likelihoods00, char *pir_name0, char *print,   char gauss_param[2][MAXLINE], int *mode)
36
37
38 CUT
39   *number_classes=0; 
40     prior_freq_single[i]=0;
41     prior_freq_pair[i]=0;
42   for (i=0; i< POSNUM; i++)
43     structural_pos[i] = i;
44   structural_pos[POSNUM] = -1;
45
46
47 cut
48 /*** If number_multi_lib > 1 or there is only 1 functnum (singleton dist) **/
49 /*** then each distance is a dimension.  Otherwise, the distances are     **/
50 /*** combined heuristically in 1 library, so there is only one scoring dim **/
51
52
53 void compute_multivariate_num_dim(int mode, int *number_score_dim,
54             int number_multi_lib[MAX_TABLE_NUMBER],
55             int multi_functnum[MAX_TABLE_NUMBER], int number_tables,
56             int new_num_dim_table[2], int old_num_dim_table[2])
57 {
58   int the_table;
59
60   if (mode & MULTI_TRIMER_PAIRS) {  
61     *number_score_dim=0;
62     for (the_table=0; the_table< number_tables; the_table++)
63       (*number_score_dim) += number_multi_lib[the_table];
64
65     new_num_dim_table[0] = number_multi_lib[0];
66     new_num_dim_table[1] = number_multi_lib[1];
67     if ((number_multi_lib[0] > 1) || (multi_functnum[0]==1)) 
68       old_num_dim_table[0]= 7;
69     else 
70       old_num_dim_table[0]= 1;
71
72     if ((number_multi_lib[1] > 1) || (multi_functnum[1]==1)) 
73       old_num_dim_table[1]=7;
74     else
75       old_num_dim_table[1]=1;
76   }
77   else {       /** Only 1 score dimension for trimers, ignore lib */
78     (*number_score_dim) = number_multi_lib[0] + 1;  /* 1 for trimer singles */
79     
80     new_num_dim_table[0] = number_multi_lib[0];
81     new_num_dim_table[1] = 1;
82     old_num_dim_table[1]=1;
83     if ((number_multi_lib[0] > 1) || (multi_functnum[0]==1)) 
84       old_num_dim_table[0]= 7;
85     else 
86       old_num_dim_table[0]= 1;
87   }
88 }
89
90
91 Added
92
93 int old_num_dim(int number_multi_lib, int number_of_distances) {
94   
95   if ( (number_multi_lib > 1) || (number_of_distances == 1))
96     return(7);
97   else return(1);
98 }
99
100
101
102 in initialize()
103 added
104   init_class_prob[0] = .015;   /* Dimer probability*/
105   init_class_prob[1] = .009;   /* Trimer probablity*/
106   init_class_prob[2] = .976;   /*  Non-coiled prob. *