#include #include #include #include /***************************************************/ /*** Divide one spectrum file by another **/ /* FFT format data files only *****/ /***************************************************/ void main(int argc, char *argv[]) { FILE *files_in[16],*file_out; float *data[16], *output; float temp, mag, phase; float PI = 4.*atan( 1. ) ; long i, j, length, num_files; if (argc < 3) { printf("useage: average infile.fft outfile.fft\n"); exit(0); } files_in[0] = fopen(argv[1],"rb"); if (files_in[0]) { j = 0; while (fread(&temp,4,1,files_in[0])) j++; } length = j; fseek(files_in[0], 0, 0); data[0] = (float *) malloc(4 * length); fread(data[0],4,i,files_in[0]); for (i=2;i PI) phase -= PI; while (phase < -PI) phase += PI; output[i] = mag * cos(phase); output[i+1] = mag * sin(phase); } fwrite(output,4,length,file_out); for (i=0;i