/* Alex Malins - alex.malins@gmail.com */ /* DynamicTCC: A topological cluster classification code with temporal tracking of clusters. */ /* Not for general consumption */ #include // #include #include "globals.h" #include "setup.h" #include "tools.h" #include "potentials.h" #include "bonds.h" #include "rings.h" #include "clusters.h" #include "tcc.h" void Update_bl_mom(int f) { int i; for (i=0; idyn_MaxLives) dyn_MaxLives=(*dyn_l)[i][0]; temptotal=0; for (j=0; j<(*dyn_l)[i][0]; j++) { f=(*dyn_l)[i][2*j+2]-(*dyn_l)[i][2*j+1]; (*dyn_hist)[f]++; (*dyn_e)=(*dyn_e)+1; temptotal+=f+1; } (*dyn_total_hist)[temptotal-1]++; f=(*dyn_l)[i][2*(*dyn_l)[i][0]]-(*dyn_l)[i][1]; (*dyn_max_hist)[f]++; (*dyn_a)++; } for (f=0; f=0; f--) { (*dyn_decay_norm_hist)[f]=(*dyn_norm_hist)[f]+(*dyn_decay_norm_hist)[f+1]; (*dyn_decay_norm_corrected_hist)[f]=(*dyn_norm_corrected_hist)[f]+(*dyn_decay_norm_corrected_hist)[f+1]; (*dyn_decay_norm_total_hist)[f]=(*dyn_norm_total_hist)[f]+(*dyn_decay_norm_total_hist)[f+1]; (*dyn_decay_norm_max_hist)[f]=(*dyn_norm_max_hist)[f]+(*dyn_decay_norm_max_hist)[f+1]; (*dyn_decay_norm_corrected_max_hist)[f]=(*dyn_norm_corrected_max_hist)[f]+(*dyn_decay_norm_corrected_max_hist)[f+1]; } dyn_TotClus+=(*dyn_n); dyn_TotEvents+=(*dyn_e); dyn_Tot_a_Events+=(*dyn_a); } void Dyn_Report(char *filename) { char errMsg[1000]; FILE *writeout; writeout=fopen(filename,"w"); if (writeout==NULL) { sprintf(errMsg,"Dyn_Report(): Error opening file %s",filename); // Always test file open Error(errMsg); } printf("d%d Clust Uniq_# Events_# Av_Events_#\n",rank); if (dyn_msp3!=-1) printf("d%d sp3 %d %d %d\n",rank,dyn_nsp3,dyn_esp3,dyn_asp3); if (dyn_msp3a!=-1) printf("d%d sp3a %d %d %d\n",rank,dyn_nsp3a,dyn_esp3a,dyn_asp3a); if (dyn_msp3b!=-1) printf("d%d sp3b %d %d %d\n",rank,dyn_nsp3b,dyn_esp3b,dyn_asp3b); if (dyn_msp3c!=-1) printf("d%d 5A_D3h %d %d %d\n",rank,dyn_nsp3c,dyn_esp3c,dyn_asp3c); if (dyn_msp4!=-1) printf("d%d sp4 %d %d %d\n",rank,dyn_nsp4,dyn_esp4,dyn_asp4); if (dyn_msp4a!=-1) printf("d%d sp4a %d %d %d\n",rank,dyn_nsp4a,dyn_esp4a,dyn_asp4a); if (dyn_msp4b!=-1) printf("d%d sp4b %d %d %d\n",rank,dyn_nsp4b,dyn_esp4b,dyn_asp4b); if (dyn_m6A!=-1) printf("d%d 6A_Oh %d %d %d\n",rank,dyn_n6A,dyn_e6A,dyn_a6A); if (dyn_m6Z!=-1) printf("d%d 6Z_C2v %d %d %d\n",rank,dyn_n6Z,dyn_e6Z,dyn_a6Z); if (dyn_msp5!=-1) printf("d%d sp5 %d %d %d\n",rank,dyn_nsp5,dyn_esp5,dyn_asp5); if (dyn_msp5a!=-1) printf("d%d sp5a %d %d %d\n",rank,dyn_nsp5a,dyn_esp5a,dyn_asp5a); if (dyn_msp5b!=-1) printf("d%d sp5b %d %d %d\n",rank,dyn_nsp5b,dyn_esp5b,dyn_asp5b); if (dyn_msp5c!=-1) printf("d%d 7A_D5h %d %d %d\n",rank,dyn_nsp5c,dyn_esp5c,dyn_asp5c); if (dyn_m7K!=-1) printf("d%d 7K %d %d %d\n",rank,dyn_n7K,dyn_e7K,dyn_a7K); if (dyn_m8A!=-1) printf("d%d 8A_D2d %d %d %d\n",rank,dyn_n8A,dyn_e8A,dyn_a8A); if (dyn_m8B!=-1) printf("d%d 8B_Cs %d %d %d\n",rank,dyn_n8B,dyn_e8B,dyn_a8B); if (dyn_m8K!=-1) printf("d%d 8K %d %d %d\n",rank,dyn_n8K,dyn_e8K,dyn_a8K); if (dyn_m9A!=-1) printf("d%d 9A_D3h %d %d %d\n",rank,dyn_n9A,dyn_e9A,dyn_a9A); if (dyn_m9B!=-1) printf("d%d 9B_C2v %d %d %d\n",rank,dyn_n9B,dyn_e9B,dyn_a9B); if (dyn_m9K!=-1) printf("d%d 9K %d %d %d\n",rank,dyn_n9K,dyn_e9K,dyn_a9K); if (dyn_m10A!=-1) printf("d%d 10A_D4d %d %d %d\n",rank,dyn_n10A,dyn_e10A,dyn_a10A); if (dyn_m10B!=-1) printf("d%d 10B_C3v %d %d %d\n",rank,dyn_n10B,dyn_e10B,dyn_a10B); if (dyn_m10K!=-1) printf("d%d 10K %d %d %d\n",rank,dyn_n10K,dyn_e10K,dyn_a10K); if (dyn_m10W!=-1) printf("d%d 10W %d %d %d\n",rank,dyn_n10W,dyn_e10W,dyn_a10W); if (dyn_m11A!=-1) printf("d%d 11A_D4d %d %d %d\n",rank,dyn_n11A,dyn_e11A,dyn_a11A); if (dyn_m11B!=-1) printf("d%d 11B_C2v %d %d %d\n",rank,dyn_n11B,dyn_e11B,dyn_a11B); if (dyn_m11C!=-1) printf("d%d 11CD %d %d %d\n",rank,dyn_n11C,dyn_e11C,dyn_a11C); if (dyn_m11E!=-1) printf("d%d 11E_C2 %d %d %d\n",rank,dyn_n11E,dyn_e11E,dyn_a11E); if (dyn_m11F!=-1) printf("d%d 11F_C2v %d %d %d\n",rank,dyn_n11F,dyn_e11F,dyn_a11F); if (dyn_m11W!=-1) printf("d%d 11W_Cs %d %d %d\n",rank,dyn_n11W,dyn_e11W,dyn_a11W); if (dyn_m12A!=-1) printf("d%d 12A_C2v %d %d %d\n",rank,dyn_n12A,dyn_e12A,dyn_a12A); if (dyn_m12B!=-1) printf("d%d 12BC %d %d %d\n",rank,dyn_n12B,dyn_e12B,dyn_a12B); if (dyn_m12D!=-1) printf("d%d 12D_D2d %d %d %d\n",rank,dyn_n12D,dyn_e12D,dyn_a12D); if (dyn_m12E!=-1) printf("d%d 12E_D3h %d %d %d\n",rank,dyn_n12E,dyn_e12E,dyn_a12E); if (dyn_m12K!=-1) printf("d%d 12K %d %d %d\n",rank,dyn_n12K,dyn_e12K,dyn_a12K); if (dyn_m13A!=-1) printf("d%d 13A_Ih %d %d %d\n",rank,dyn_n13A,dyn_e13A,dyn_a13A); if (dyn_m13B!=-1) printf("d%d 13B_D5h %d %d %d\n",rank,dyn_n13B,dyn_e13B,dyn_a13B); if (dyn_m13K!=-1) printf("d%d 13K %d %d %d\n",rank,dyn_n13K,dyn_e13K,dyn_a13K); if (dyn_mFCC!=-1) printf("d%d FCC_m13 %d %d %d\n",rank,dyn_nFCC,dyn_eFCC,dyn_aFCC); if (dyn_mHCP!=-1) printf("d%d HCP_m13 %d %d %d\n",rank,dyn_nHCP,dyn_eHCP,dyn_aHCP); if (dyn_mBCC_9!=-1) printf("d%d BCC_m9 %d %d %d\n",rank,dyn_nBCC_9,dyn_eBCC_9,dyn_aBCC_9); if (dyn_mBCC_15!=-1) printf("d%d BCC_m15 %d %d %d\n",rank,dyn_nBCC_15,dyn_eBCC_15,dyn_aBCC_15); printf("d%d totals %d %d %d\n",rank,dyn_TotClus,dyn_TotEvents,dyn_Tot_a_Events); printf("d%d Maximum number of dynamic events for any unique cluster %d\n",rank,dyn_MaxLives); fprintf(writeout,"%s\n",filename); fprintf(writeout,"Clust Uniq_# Events_# Av_Events_#\n"); if (dyn_msp3!=-1) fprintf(writeout,"sp3 %d %d %d\n",dyn_nsp3,dyn_esp3,dyn_asp3); if (dyn_msp3a!=-1) fprintf(writeout,"sp3a %d %d %d\n",dyn_nsp3a,dyn_esp3a,dyn_asp3a); if (dyn_msp3b!=-1) fprintf(writeout,"sp3b %d %d %d\n",dyn_nsp3b,dyn_esp3b,dyn_asp3b); if (dyn_msp3c!=-1) fprintf(writeout,"5A_D3h %d %d %d\n",dyn_nsp3c,dyn_esp3c,dyn_asp3c); if (dyn_msp4!=-1) fprintf(writeout,"sp4 %d %d %d\n",dyn_nsp4,dyn_esp4,dyn_asp4); if (dyn_msp4a!=-1) fprintf(writeout,"sp4a %d %d %d\n",dyn_nsp4a,dyn_esp4a,dyn_asp4a); if (dyn_msp4b!=-1) fprintf(writeout,"sp4b %d %d %d\n",dyn_nsp4b,dyn_esp4b,dyn_asp4b); if (dyn_m6A!=-1) fprintf(writeout,"6A_Oh %d %d %d\n",dyn_n6A,dyn_e6A,dyn_a6A); if (dyn_m6Z!=-1) fprintf(writeout,"6Z_C2v %d %d %d\n",dyn_n6Z,dyn_e6Z,dyn_a6Z); if (dyn_msp5!=-1) fprintf(writeout,"sp5 %d %d %d\n",dyn_nsp5,dyn_esp5,dyn_asp5); if (dyn_msp5a!=-1) fprintf(writeout,"sp5a %d %d %d\n",dyn_nsp5a,dyn_esp5a,dyn_asp5a); if (dyn_msp5b!=-1) fprintf(writeout,"sp5b %d %d %d\n",dyn_nsp5b,dyn_esp5b,dyn_asp5b); if (dyn_msp5c!=-1) fprintf(writeout,"7A_D5h %d %d %d\n",dyn_nsp5c,dyn_esp5c,dyn_asp5c); if (dyn_m7K!=-1) fprintf(writeout,"7K %d %d %d\n",dyn_n7K,dyn_e7K,dyn_a7K); if (dyn_m8A!=-1) fprintf(writeout,"8A_D2d %d %d %d\n",dyn_n8A,dyn_e8A,dyn_a8A); if (dyn_m8B!=-1) fprintf(writeout,"8B_Cs %d %d %d\n",dyn_n8B,dyn_e8B,dyn_a8B); if (dyn_m8K!=-1) fprintf(writeout,"8K %d %d %d\n",dyn_n8K,dyn_e8K,dyn_a8K); if (dyn_m9A!=-1) fprintf(writeout,"9A_D3h %d %d %d\n",dyn_n9A,dyn_e9A,dyn_a9A); if (dyn_m9B!=-1) fprintf(writeout,"9B_C2v %d %d %d\n",dyn_n9B,dyn_e9B,dyn_a9B); if (dyn_m9K!=-1) fprintf(writeout,"9K %d %d %d\n",dyn_n9K,dyn_e9K,dyn_a9K); if (dyn_m10A!=-1) fprintf(writeout,"10A_D4d %d %d %d\n",dyn_n10A,dyn_e10A,dyn_a10A); if (dyn_m10B!=-1) fprintf(writeout,"10B_C3v %d %d %d\n",dyn_n10B,dyn_e10B,dyn_a10B); if (dyn_m10K!=-1) fprintf(writeout,"10K %d %d %d\n",dyn_n10K,dyn_e10K,dyn_a10K); if (dyn_m10W!=-1) fprintf(writeout,"10W %d %d %d\n",dyn_n10W,dyn_e10W,dyn_a10W); if (dyn_m11A!=-1) fprintf(writeout,"11A_D4d %d %d %d\n",dyn_n11A,dyn_e11A,dyn_a11A); if (dyn_m11B!=-1) fprintf(writeout,"11B_C2v %d %d %d\n",dyn_n11B,dyn_e11B,dyn_a11B); if (dyn_m11C!=-1) fprintf(writeout,"11CD %d %d %d\n",dyn_n11C,dyn_e11C,dyn_a11C); if (dyn_m11E!=-1) fprintf(writeout,"11E_C2 %d %d %d\n",dyn_n11E,dyn_e11E,dyn_a11E); if (dyn_m11F!=-1) fprintf(writeout,"11F_C2v %d %d %d\n",dyn_n11F,dyn_e11F,dyn_a11F); if (dyn_m11W!=-1) fprintf(writeout,"11W_Cs %d %d %d\n",dyn_n11W,dyn_e11W,dyn_a11W); if (dyn_m12A!=-1) fprintf(writeout,"12A_C2v %d %d %d\n",dyn_n12A,dyn_e12A,dyn_a12A); if (dyn_m12B!=-1) fprintf(writeout,"12BC %d %d %d\n",dyn_n12B,dyn_e12B,dyn_a12B); if (dyn_m12D!=-1) fprintf(writeout,"12D_D2d %d %d %d\n",dyn_n12D,dyn_e12D,dyn_a12D); if (dyn_m12E!=-1) fprintf(writeout,"12E_D3h %d %d %d\n",dyn_n12E,dyn_e12E,dyn_a12E); if (dyn_m12K!=-1) fprintf(writeout,"12K %d %d %d\n",dyn_n12K,dyn_e12K,dyn_a12K); if (dyn_m13A!=-1) fprintf(writeout,"13A_Ih %d %d %d\n",dyn_n13A,dyn_e13A,dyn_a13A); if (dyn_m13B!=-1) fprintf(writeout,"13B_D5h %d %d %d\n",dyn_n13B,dyn_e13B,dyn_a13B); if (dyn_m13K!=-1) fprintf(writeout,"13K %d %d %d\n",dyn_n13K,dyn_e13K,dyn_a13K); if (dyn_mFCC!=-1) fprintf(writeout,"FCC_m13 %d %d %d\n",dyn_nFCC,dyn_eFCC,dyn_aFCC); if (dyn_mHCP!=-1) fprintf(writeout,"HCP_m13 %d %d %d\n",dyn_nHCP,dyn_eHCP,dyn_aHCP); if (dyn_mBCC_9!=-1) fprintf(writeout,"BCC_m9 %d %d %d\n",dyn_nBCC_9,dyn_eBCC_9,dyn_aBCC_9); if (dyn_mBCC_15!=-1) fprintf(writeout,"BCC_m15 %d %d %d\n",dyn_nBCC_15,dyn_eBCC_15,dyn_aBCC_15); fprintf(writeout,"totals %d %d %d\n",dyn_TotClus,dyn_TotEvents,dyn_Tot_a_Events); fprintf(writeout,"Maximum number of dynamic events for any unique cluster %d\n",dyn_MaxLives); fclose(writeout); } //// START: Dynamics routines //// START: Stats routines void Stats_Init() { int i; char errMsg[1000]; a5=malloc(N*sizeof(int)); if (a5==NULL) { sprintf(errMsg,"Stats_Init(): a5[] malloc out of memory\n"); Error(errMsg); } a6=malloc(N*sizeof(int)); if (a6==NULL) { sprintf(errMsg,"Stats_Init(): a6[] malloc out of memory\n"); Error(errMsg); } a7=malloc(N*sizeof(int)); if (a7==NULL) { sprintf(errMsg,"Stats_Init(): a7[] malloc out of memory\n"); Error(errMsg); } a8=malloc(N*sizeof(int)); if (a8==NULL) { sprintf(errMsg,"Stats_Init(): a8[] malloc out of memory\n"); Error(errMsg); } a9=malloc(N*sizeof(int)); if (a9==NULL) { sprintf(errMsg,"Stats_Init(): a9[] malloc out of memory\n"); Error(errMsg); } a10=malloc(N*sizeof(int)); if (a10==NULL) { sprintf(errMsg,"Stats_Init(): a10[] malloc out of memory\n"); Error(errMsg); } a11=malloc(N*sizeof(int)); if (a11==NULL) { sprintf(errMsg,"Stats_Init(): a11[] malloc out of memory\n"); Error(errMsg); } a12=malloc(N*sizeof(int)); if (a12==NULL) { sprintf(errMsg,"Stats_Init(): a12[] malloc out of memory\n"); Error(errMsg); } a13=malloc(N*sizeof(int)); if (a13==NULL) { sprintf(errMsg,"Stats_Init(): a13[] malloc out of memory\n"); Error(errMsg); } a15=malloc(N*sizeof(int)); if (a15==NULL) { sprintf(errMsg,"Stats_Init(): a15[] malloc out of memory\n"); Error(errMsg); } for(i=0;iA nB %.15lg\n",rank,meannbAA); printf("d%d mean A->B nB %.15lg\n",rank,meannbAB); printf("d%d mean B->A nB %.15lg\n",rank,meannbBA); printf("d%d mean B->B nB %.15lg\n",rank,meannbBB); } } temp=(double)ncsp3c_spindlebonds/(double)nc5A; printf("d%d 5A spindle bonds %d %.15lg\n",rank,ncsp3c_spindlebonds,temp); temp=(double)ncsp4c_spindlebonds/(double)ncsp4c; printf("d%d sp4c spindle bonds %d %.15lg\n",rank,ncsp4c_spindlebonds,temp); temp=(double)nc6A_spindlebonds/(double)nc6A; printf("d%d 6A spindle bonds %d %.15lg\n",rank,nc6A_spindlebonds,temp); temp=(double)ncsp5c_spindlebonds/(double)nc7A; printf("d%d 7A spindle bonds %d %.15lg\n",rank,ncsp5c_spindlebonds,temp); printf("d%d correctedBonds %d per frame %.5lg per part per frame %.5lg\n",rank,correctedBonds,(double)correctedBonds/FRAMES,(double)correctedBonds/(FRAMES*N)); if (doDynamics==0) { writeout=fopen(filename,"w"); if (writeout==NULL) { sprintf(errMsg,"Stats_Report(): Error opening file %s",filename); // Always test file open Error(errMsg); } fprintf(writeout,"%s\n",filename); fprintf(writeout,"Clust Number Gross Net Mean Pop Per Frame\n"); fprintf(writeout,"sp3 %d %d %d %.5lg\n",ncsp3,ngsp3,0,mean_pop_per_frame_sp3); fprintf(writeout,"sp3a %d %d %d %.5lg\n",ncsp3a,ngsp3a,0,mean_pop_per_frame_sp3a); fprintf(writeout,"sp3b %d %d %d %.5lg\n",ncsp3b,ngsp3b,0,mean_pop_per_frame_sp3b); fprintf(writeout,"5A_D3h %d %d %d %.5lg\n",nc5A,ng5A,nn5A,mean_pop_per_frame_sp3c); fprintf(writeout,"sp4 %d %d %d %.5lg\n",ncsp4,ngsp4,0,mean_pop_per_frame_sp4); fprintf(writeout,"sp4a %d %d %d %.5lg\n",ncsp4a,ngsp4a,0,mean_pop_per_frame_sp4a); fprintf(writeout,"sp4b %d %d %d %.5lg\n",ncsp4b,ngsp4b,0,mean_pop_per_frame_sp4b); fprintf(writeout,"sp4c %d %d %d %.5lg\n",ncsp4c,ng6A,0,mean_pop_per_frame_6A); fprintf(writeout,"6A_Oh %d %d %d %.5lg\n",nc6A,ng6A,nn6A,mean_pop_per_frame_6A); fprintf(writeout,"6Z_C2v %d %d %d %.5lg\n",nc6Z,ng6Z,nn6Z,mean_pop_per_frame_6Z); fprintf(writeout,"sp5 %d %d %d %.5lg\n",ncsp5,ngsp5,0,mean_pop_per_frame_sp5); fprintf(writeout,"sp5a %d %d %d %.5lg\n",ncsp5a,ngsp5a,0,mean_pop_per_frame_sp5a); fprintf(writeout,"sp5b %d %d %d %.5lg\n",ncsp5b,ngsp5b,0,mean_pop_per_frame_sp5b); fprintf(writeout,"7A_D5h %d %d %d %.5lg\n",nc7A,ng7A,nn7A,mean_pop_per_frame_sp5c); fprintf(writeout,"7K %d %d %d %.5lg\n",nc7K,ng7K,nn7K,mean_pop_per_frame_7K); fprintf(writeout,"8A_D2d %d %d %d %.5lg\n",nc8A,ng8A,nn8A,mean_pop_per_frame_8A); fprintf(writeout,"8B_Cs %d %d %d %.5lg\n",nc8B,ng8B,nn8B,mean_pop_per_frame_8B); fprintf(writeout,"8K %d %d %d %.5lg\n",nc8K,ng8K,nn8K,mean_pop_per_frame_8K); fprintf(writeout,"9A_D3h %d %d %d %.5lg\n",nc9A,ng9A,nn9A,mean_pop_per_frame_9A); fprintf(writeout,"9B_C2v %d %d %d %.5lg\n",nc9B,ng9B,nn9B,mean_pop_per_frame_9B); fprintf(writeout,"9K %d %d %d %.5lg\n",nc9K,ng9K,nn9K,mean_pop_per_frame_9K); fprintf(writeout,"10A_D4d %d %d %d %.5lg\n",nc10A,ng10A,nn10A,mean_pop_per_frame_10A); fprintf(writeout,"10B_C3v %d %d %d %.5lg\n",nc10B,ng10B,nn10B,mean_pop_per_frame_10B); fprintf(writeout,"10K %d %d %d %.5lg\n",nc10K,ng10K,nn10K,mean_pop_per_frame_10K); fprintf(writeout,"10W %d %d %d %.5lg\n",nc10W,ng10W,nn10W,mean_pop_per_frame_10W); fprintf(writeout,"11A_D4d %d %d %d %.5lg\n",nc11A,ng11A,nn11A,mean_pop_per_frame_11A); fprintf(writeout,"11B_C2v %d %d %d %.5lg\n",nc11B,ng11B,nn11B,mean_pop_per_frame_11B); fprintf(writeout,"11CD %d %d %d %.5lg\n",nc11C,ng11C,nn11C,mean_pop_per_frame_11C); fprintf(writeout,"11E_C2 %d %d %d %.5lg\n",nc11E,ng11E,nn11E,mean_pop_per_frame_11E); fprintf(writeout,"11F_C2v %d %d %d %.5lg\n",nc11F,ng11F,nn11F,mean_pop_per_frame_11F); fprintf(writeout,"11W_Cs %d %d %d %.5lg\n",nc11W,ng11W,nn11W,mean_pop_per_frame_11W); fprintf(writeout,"12A_C2v %d %d %d %.5lg\n",nc12A,ng12A,nn12A,mean_pop_per_frame_12A); fprintf(writeout,"12BC %d %d %d %.5lg\n",nc12B,ng12B,nn12B,mean_pop_per_frame_12B); fprintf(writeout,"12D_D2d %d %d %d %.5lg\n",nc12D,ng12D,nn12D,mean_pop_per_frame_12D); fprintf(writeout,"12E_D3h %d %d %d %.5lg\n",nc12E,ng12E,nn12E,mean_pop_per_frame_12E); fprintf(writeout,"12K %d %d %d %.5lg\n",nc12K,ng12K,nn12K,mean_pop_per_frame_12K); fprintf(writeout,"13A_Ih %d %d %d %.5lg\n",nc13A,ng13A,nn13A,mean_pop_per_frame_13A); fprintf(writeout,"13B_D5h %d %d %d %.5lg\n",nc13B,ng13B,nn13B,mean_pop_per_frame_13B); fprintf(writeout,"13K %d %d %d %.5lg\n",nc13K,ng13K,nn13K,mean_pop_per_frame_13K); fprintf(writeout,"FCC_m13 %d %d %d %.5lg\n",ncFCC,ngFCC,nnFCC,mean_pop_per_frame_FCC); fprintf(writeout,"HCP_m13 %d %d %d %.5lg\n",ncHCP,ngHCP,nnHCP,mean_pop_per_frame_HCP); fprintf(writeout,"BCC_m9 %d %d %d %.5lg\n",ncBCC_9,ngBCC_9,nnBCC_9,mean_pop_per_frame_BCC_9); fprintf(writeout,"BCC_m15 %d %d %d %.5lg\n",ncBCC_15,ngBCC_15,nnBCC_15,mean_pop_per_frame_BCC_15); fprintf(writeout,"totals %d %d %d\n",clusTot,totNclus,N*FRAMES); fprintf(writeout,"maxnB %d\n",maxnb); fprintf(writeout,"max to sp3 %d\n",maxto3); fprintf(writeout,"max to sp4 %d\n",maxto4); fprintf(writeout,"max to sp5 %d\n",maxto5); fprintf(writeout,"excess spindles sp3 %d\n",ncsp3_excess_spindles); fprintf(writeout,"excess spindles sp4 %d\n",ncsp4_excess_spindles); fprintf(writeout,"excess spindles sp5 %d\n",ncsp5_excess_spindles); if (doBLDistros==1) fprintf(writeout,"mean bl samples %.15lg %d\n",meanBL,BLDistroNoSamples); if (doBinary==1 && doBLDistros==1) { fprintf(writeout,"mean AA bl samples %.15lg %d\n",meanBLAA,BLDistroNoSamplesAA); fprintf(writeout,"mean AB bl samples %.15lg %d\n",meanBLAB,BLDistroNoSamplesAB); fprintf(writeout,"mean BB bl samples %.15lg %d\n",meanBLBB,BLDistroNoSamplesBB); } if (donbDistros==1) { fprintf(writeout,"mean nB %.15lg\n",meannb); if (doBinary==1) { fprintf(writeout,"mean A->A nB %.15lg\n",meannbAA); fprintf(writeout,"mean A->B nB %.15lg\n",meannbAB); fprintf(writeout,"mean B->A nB %.15lg\n",meannbBA); fprintf(writeout,"mean B->B nB %.15lg\n",meannbBB); } } temp=(double)ncsp3c_spindlebonds/(double)nc5A; fprintf(writeout,"5A spindle bonds %d %.15lg\n",ncsp3c_spindlebonds,temp); temp=(double)ncsp4c_spindlebonds/(double)ncsp4c; fprintf(writeout,"sp4c spindle bonds %d %.15lg\n",ncsp4c_spindlebonds,temp); temp=(double)nc6A_spindlebonds/(double)nc6A; fprintf(writeout,"6A spindle bonds %d %.15lg\n",nc6A_spindlebonds,temp); temp=(double)ncsp5c_spindlebonds/(double)nc7A; fprintf(writeout,"7A spindle bonds %d %.15lg\n",ncsp5c_spindlebonds,temp); fprintf(writeout,"correctedBonds %d per frame %.15lg per part per frame %.15lg\n",correctedBonds,(double)correctedBonds/FRAMES,(double)correctedBonds/(FRAMES*N)); fclose(writeout); } } //// END: Stats routines //// START: Write routines void Write_Raw_Init() { char errMsg[1000]; char output[1000]; sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_sp3",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_sp3=fopen(output,"w"); if (file_raw_sp3==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_sp3,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_sp3a",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_sp3a=fopen(output,"w"); if (file_raw_sp3a==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_sp3a,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_sp3b",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_sp3b=fopen(output,"w"); if (file_raw_sp3b==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_sp3b,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_5A",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_5A=fopen(output,"w"); if (file_raw_5A==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_5A,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_sp4",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_sp4=fopen(output,"w"); if (file_raw_sp4==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_sp4,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_sp4a",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_sp4a=fopen(output,"w"); if (file_raw_sp4a==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_sp4a,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_sp4b",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_sp4b=fopen(output,"w"); if (file_raw_sp4b==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_sp4b,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_6A",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_6A=fopen(output,"w"); if (file_raw_6A==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_6A,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_6Z",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_6Z=fopen(output,"w"); if (file_raw_6Z==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_6Z,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_sp5",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_sp5=fopen(output,"w"); if (file_raw_sp5==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_sp5,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_sp5a",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_sp5a=fopen(output,"w"); if (file_raw_sp5a==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_sp5a,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_sp5b",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_sp5b=fopen(output,"w"); if (file_raw_sp5b==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_sp5b,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_7A",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_7A=fopen(output,"w"); if (file_raw_7A==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_7A,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_7K",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_7K=fopen(output,"w"); if (file_raw_7K==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_7K,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_8A",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_8A=fopen(output,"w"); if (file_raw_8A==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_8A,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_8B",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_8B=fopen(output,"w"); if (file_raw_8B==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_8B,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_8K",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_8K=fopen(output,"w"); if (file_raw_8K==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_8K,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_9A",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_9A=fopen(output,"w"); if (file_raw_9A==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_9A,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_9B",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_9B=fopen(output,"w"); if (file_raw_9B==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_9B,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_9K",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_9K=fopen(output,"w"); if (file_raw_9K==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_9K,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_10A",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_10A=fopen(output,"w"); if (file_raw_10A==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_10A,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_10B",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_10B=fopen(output,"w"); if (file_raw_10B==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_10B,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_10K",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_10K=fopen(output,"w"); if (file_raw_10K==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_10K,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_10W",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_10W=fopen(output,"w"); if (file_raw_10W==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_10W,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_11A",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_11A=fopen(output,"w"); if (file_raw_11A==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_11A,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_11B",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_11B=fopen(output,"w"); if (file_raw_11B==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_11B,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_11C",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_11C=fopen(output,"w"); if (file_raw_11C==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_11C,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_11E",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_11E=fopen(output,"w"); if (file_raw_11E==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_11E,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_11F",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_11F=fopen(output,"w"); if (file_raw_11F==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_11F,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_11W",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_11W=fopen(output,"w"); if (file_raw_11W==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_11W,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_12A",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_12A=fopen(output,"w"); if (file_raw_12A==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_12A,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_12B",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_12B=fopen(output,"w"); if (file_raw_12B==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_12B,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_12D",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_12D=fopen(output,"w"); if (file_raw_12D==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_12D,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_12E",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_12E=fopen(output,"w"); if (file_raw_12E==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_12E,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_12K",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_12K=fopen(output,"w"); if (file_raw_12K==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_12K,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_13A",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_13A=fopen(output,"w"); if (file_raw_13A==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_13A,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_13B",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_13B=fopen(output,"w"); if (file_raw_13B==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_13B,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_13K",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_13K=fopen(output,"w"); if (file_raw_13K==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_13K,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_FCC",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_FCC=fopen(output,"w"); if (file_raw_FCC==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_FCC,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_HCP",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_HCP=fopen(output,"w"); if (file_raw_HCP==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_HCP,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_BCC_9",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_BCC_9=fopen(output,"w"); if (file_raw_BCC_9==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_BCC_9,"%s\n",output); sprintf(output,"%s.rcAA%lg.rcAB%lg.rcBB%lg.Vor%d.fc%lg.PBCs%d.raw_BCC_15",fXmolName,rcutAA,rcutAB,rcutBB,Vor,fc,PBCs); file_raw_BCC_15=fopen(output,"w"); if (file_raw_BCC_15==NULL) { sprintf(errMsg,"Write_Cluster_Init(): Error opening file %s",output); Error(errMsg); } fprintf(file_raw_BCC_15,"%s\n",output); } void Write_Raw_Xmol(int f, FILE *thefile, char *sarr) { int i; fprintf(thefile,"%d\nframe %d of %d\n",N,f,TOTALFRAMES); for(i=0; i=STARTFROM) { write=1; } else write=0; if (write==1) Setup_ResetStaticVars(f); if (ISNOTCUBIC==2) Setup_ReadBox(rSizes); Setup_Readxyz(e,write,f,rXmol); if (write==1) { if (doPotential==1) { if (USELIST==0) { if (WHICHPOTENTIAL==0) BLJ(); else if (WHICHPOTENTIAL==1) BLJSF(); else if (WHICHPOTENTIAL==2) MorYuk(); else if (WHICHPOTENTIAL==4) BIPL(); else if (WHICHPOTENTIAL==5) BLJ_WCA_s(); else if (WHICHPOTENTIAL==6) SFBIPL(); else if (WHICHPOTENTIAL==7) CRVT(); } else { links_pot(); if (WHICHPOTENTIAL==0) listBLJ(); else if (WHICHPOTENTIAL==1) listBLJSF(); else if (WHICHPOTENTIAL==2) listMorYuk(); else if (WHICHPOTENTIAL==4) listBIPL(); else if (WHICHPOTENTIAL==5) listBLJ_WCA_s(); else if (WHICHPOTENTIAL==6) listSFBIPL(); } av_potential+=potential; for (i=0; imaxnb) maxnb=cnb[i]; if (dosp3==1) Rings_gSP3(f,i); } if (dosp3==1) Rings_setSP3c(f); if (dosp4==1) Rings_setSP4c(f); if (dosp5==1) Rings_setSP5c(f); if (do6Z==1) Clusters_Get6Z_C2v(f); if (do7K==1) Clusters_Get7K(f); if (do8A==1) Clusters_Get8A_D2d(f); if (do8B==1) Clusters_Get8B_Cs(f); if (do8K==1) Clusters_Get8K(f); if (do9A==1) Clusters_Get9A_D3h(f); if (do9B==1) Clusters_Get9B_10B_11B_11E_12D(f); if (do9K==1) Clusters_Get9K_10K(f); if (do10A==1) Clusters_Get10A_C3v(f); if (do10W==1) Clusters_Get10W(f); if (do11A==1) Clusters_Get11A_12K(f); if (do11C==1) Clusters_Get11C_12A(f); if (do11F==1) Clusters_Get11F_12E_13K(f); if (do12B==1) Clusters_Get12B_13A(f); if (do13B==1) Clusters_Get13B_D5h(f); if (doFCC==1) Clusters_GetFCC(f); if (doHCP==1) Clusters_GetHCP(f); if (doBCC9==1) Clusters_GetBCC_9(f); if (doBCC15==1) Clusters_GetBCC_15(f); if (doCoslovich==1) { Coslovich(f); fprintf(file_s_0_0_12,"%d\nframe %d of %d\n",N,f,TOTALFRAMES); for(i=0; i