#include "sc.h" #include #include "sc2seq.h" /* This also includes scconst.h, sc.h, interface.h */ #include "options.h" #include "scconst.h" #include "switches.h" extern int WINDOW; extern double SCALE0; void initialize( int *num_dist0, int window_length[MAX_TABLE_NUMBER], double scale0s[MAX_TABLE_NUMBER], double scale0p[MAX_TABLE_NUMBER], FILE *fpin0, char likelihoods[MAX_TABLE_NUMBER][MAXLINE], char *pir_name0, char *print, char gauss_param[2][MAXLINE], int *mode,double init_class_prob[MAX_CLASS_NUMBER]) { int i; *mode |= PROLINE_FREE_MODE; /* Default mode is Proline Free. */ *mode |= PAIRCOIL_PAIRS; /* Always default to pairs for PairCoil */ *mode |= USE_LIKE_LINE; *mode |= WEB_OUT_MODE; /* Make the out file by default be the */ /* list of the seq and registers and probs */ /* instead of the raw list of tuples of */ /* scores needed for plotting and making */ /* gaussians. */ *num_dist0=0; for (i=0; i< MAX_TABLE_NUMBER; i++) { window_length[i]=WINDOW; scale0s[i] = SCALE0; /** Set to default **/ scale0p[i] = SCALE0; likelihoods[i][0]=','; /** A hack to check if get it in get_defaults */ } fpin0=NULL; *pir_name0=','; /** A hack to check if get it in get_defaults */ strcpy(print,"/dev/null"); gauss_param[0][0]= ','; /* Used as flag in multivariate_like.c. */ gauss_param[1][0]= ','; init_class_prob[0] = .015; /* Dimer probability*/ init_class_prob[1] = .009; /* Trimer probablity*/ init_class_prob[2] = .976; /* Non-coiled prob. */ } void read_command_line(int argc, char *argv[], char **command_line_pointer, int combine_dist[MAX_TABLE_NUMBER], int *mode, int num_dist[MAX_TABLE_NUMBER], char multi_lib[MAX_TABLE_NUMBER][MAXFUNCTNUM], char **command_line_config) { int number=0; int max_libnum; if (argc>2) if (!strcmp(argv[argc-2],CONFIG_SWITCH)) { *command_line_config = argv[argc-1]; printf("got command config %s\n", argv[argc-1]); argc = argc-2; } if ((argc >= 3) && (argc <=5)) { /* Ignore pos options and removal options in config file */ *command_line_pointer = argv[2]; /** This could point to the table to remove from. **/ if (argc >= 4) { combine_dist[0]=1; combine_dist[1]=1; *mode |= LIB_AT_COMMAND_LINE; num_dist[0]=strlen(argv[3]); max_libnum = num_dist[0]; if (argc ==5) { num_dist[1]=strlen(argv[4]); if (num_dist[1] > max_libnum) max_libnum = num_dist[1]; } else num_dist[1]=num_dist[0]; while (number < max_libnum) { if (num_dist[0] > number) { multi_lib[0][number]= argv[3][number] - '0'; } if (argc == 4) multi_lib[1][number] =multi_lib[0][number]; else if (num_dist[1] > number) multi_lib[1][number]= argv[4][number]- '0'; number++; } } } else if (argc != 2){ /* fprintf(stderr,"Usage: xcoil \n"); */ usage(argv[0]); exit(-1); } } int old_num_dim(int number_multi_lib, int number_of_distances) { if ( (number_multi_lib > 1) || (number_of_distances == 1)) return(7); else return(1); }