1 void compute_multivariate_num_differ_dim(int *number_differ_score_dim,
3 int differ_functnum, int *old_num_dim_differ,
4 int which_differentiator)
9 *number_differ_score_dim= number_differ_lib;
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;
16 if (which_differentiator == 2) {
17 (*number_differ_score_dim) *= 2;
18 (*old_num_dim_differ) *=2;
20 /** Each dimension gets a pair of scores... the max and min. **/
27 differ_gauss_param[0] = ',';
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])
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)
40 prior_freq_single[i]=0;
42 for (i=0; i< POSNUM; i++)
43 structural_pos[i] = i;
44 structural_pos[POSNUM] = -1;
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 **/
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])
60 if (mode & MULTI_TRIMER_PAIRS) {
62 for (the_table=0; the_table< number_tables; the_table++)
63 (*number_score_dim) += number_multi_lib[the_table];
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;
70 old_num_dim_table[0]= 1;
72 if ((number_multi_lib[1] > 1) || (multi_functnum[1]==1))
73 old_num_dim_table[1]=7;
75 old_num_dim_table[1]=1;
77 else { /** Only 1 score dimension for trimers, ignore lib */
78 (*number_score_dim) = number_multi_lib[0] + 1; /* 1 for trimer singles */
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;
86 old_num_dim_table[0]= 1;
93 int old_num_dim(int number_multi_lib, int number_of_distances) {
95 if ( (number_multi_lib > 1) || (number_of_distances == 1))
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. *