changed void get_gauss_param_all_classes2(char sc_filenames[MAX_CLASS_NUMBER][MAXLINE], int number_score_dim, double means[MAX_CLASS_NUMBER][MAX_NUM_SCORE_DIM], double covars[MAX_CLASS_NUMBER][MAX_NUM_SCORE_DIM][MAX_NUM_SCORE_DIM], int number_of_classifications, char gauss_param[MAXLINE]) to void get_gauss_param_all_classes2(char sc_filenames[MAX_CLASS_NUMBER][MAXLINE], int number_score_dim, double means[MAX_CLASS_NUMBER][MAX_NUM_SCORE_DIM], double covars[MAX_CLASS_NUMBER][MAX_NUM_SCORE_DIM][MAX_NUM_SCORE_DIM], char gauss_param[MAXLINE]) by changing for (class=0; class number_tables) number_tables_to_write = number_classes; else number_tables_to_write = number_tables; Changed if (Offset_to_Use == -1) /* Want reg 7 to have max of other reg */ for (tablenum =0; tablenum=number_classes-1 output sum of other classes prob. **/ /** (which is the positive prob (prob of being coiled)). **/ for (tablenum=0; tablenum < number_tables_to_write; tablenum++) { if (tablenum < last_class_for_scores) { all_raw_scores[tablenum][i][reg] = like_in_class[tablenum]; } else { all_raw_scores[tablenum][i][reg]= calc_total_coil_likelihood(like_in_class, number_classes,reg, Offset_to_Use, &max_class_like[tablenum], init_class_prob); } to for (tablenum=0; tablenum < number_classes; tablenum++) { all_raw_scores[tablenum][i][reg] = like_in_class[tablenum]; } /********************************************************************/ Cut int compute_num_multilib(int tablenum, int number_multi_lib[MAX_TABLE_NUMBER], int multi_trimer_pairs) { int use_pairs; if (tablenum <0) return 0; else if (tablenum ==0) use_pairs =1; /* Use pairs for cctb */ else if (tablenum ==1) use_pairs = multi_trimer_pairs; if (!use_pairs) return 1; else return number_multi_lib[tablenum]; } changed void get_gauss_param_all_classes2(char sc_filenames[MAX_CLASS_NUMBER][MAXLINE], int number_score_dim, double means[MAX_CLASS_NUMBER][MAX_NUM_SCORE_DIM], double covars[MAX_CLASS_NUMBER][MAX_NUM_SCORE_DIM][MAX_NUM_SCORE_DIM], char gauss_param[MAXLINE]) to void get_gauss_param_all_classes2(char sc_filenames[MAX_CLASS_NUMBER][MAXLINE], int number_score_dim, double means[MAX_CLASS_NUMBER][NUM_DIM_IN_ORIG_MATRIX], double covars[MAX_CLASS_NUMBER] [NUM_DIM_IN_ORIG_MATRIX][NUM_DIM_IN_ORIG_MATRIX], char gauss_param[MAXLINE]) Changed void compute_submatrices2( double means[MAX_CLASS_NUMBER][MAX_NUM_SCORE_DIM], double means_submatrix[MAX_CLASS_NUMBER][MAX_NUM_SCORE_DIM], double covars[MAX_CLASS_NUMBER][MAX_NUM_SCORE_DIM][MAX_NUM_SCORE_DIM], double inv[MAX_CLASS_NUMBER][MAX_NUM_SCORE_DIM][MAX_NUM_SCORE_DIM], double det[MAX_CLASS_NUMBER], char multi_lib[MAX_TABLE_NUMBER][MAXFUNCTNUM], int old_num_dim_table0, int old_num_dim_table1, int new_num_dim_table0, int new_num_dim_table1 ) to void compute_submatrices2( double means[MAX_CLASS_NUMBER][NUM_DIM_IN_ORIG_MATRIX], double means_submatrix[MAX_CLASS_NUMBER][MAX_NUM_SCORE_DIM], double covars[MAX_CLASS_NUMBER] [NUM_DIM_IN_ORIG_MATRIX][NUM_DIM_IN_ORIG_MATRIX], double inv[MAX_CLASS_NUMBER][MAX_NUM_SCORE_DIM][MAX_NUM_SCORE_DIM], double det[MAX_CLASS_NUMBER], char multi_lib[MAX_TABLE_NUMBER][MAXFUNCTNUM], int old_num_dim_table0, int old_num_dim_table1, int new_num_dim_table0, int new_num_dim_table1 ) Changed void multivariate_gauss_from_scfile2(char *sc_filename, int number_score_dim, double mean[MAX_NUM_SCORE_DIM], double covar[MAX_NUM_SCORE_DIM][MAX_NUM_SCORE_DIM]) to void multivariate_gauss_from_scfile2(char *sc_filename, int number_score_dim, double mean[NUM_DIM_IN_ORIG_MATRIX], double covar[NUM_DIM_IN_ORIG_MATRIX][NUM_DIM_IN_ORIG_MATRIX]) and in that function changed long n_below_mean[MAX_NUM_SCORE_DIM]; long _counts[MAX_NUM_SCORE_DIM][-4*MINSCORE +1]; long *counts[MAX_NUM_SCORE_DIM]; int table,table2; int all_places_good, place[MAX_NUM_SCORE_DIM]; int number_high=0, number_low=0; int maxplaces[MAX_NUM_SCORE_DIM], minplaces[MAX_NUM_SCORE_DIM]; double score[MAX_NUM_SCORE_DIM]; to long n_below_mean[NUM_DIM_IN_ORIG_MATRIX]; long _counts[NUM_DIM_IN_ORIG_MATRIX][-4*MINSCORE +1]; long *counts[NUM_DIM_IN_ORIG_MATRIX]; int table,table2; int all_places_good, place[NUM_DIM_IN_ORIG_MATRIX]; int number_high=0, number_low=0; int maxplaces[NUM_DIM_IN_ORIG_MATRIX], minplaces[NUM_DIM_IN_ORIG_MATRIX]; double score[NUM_DIM_IN_ORIG_MATRIX];