window_process

Signal Processing Library

Program name: window_process

Language: C

In file: window_lib.c

Objective: Calculate window values.

Usage: void window_process(double *d_window_i, int window_type, int window_size, double **d_window_o);

Parameters:

  • d_window_i - The input double window
  • window_type - Type of window: rectangular, Hamming, Hann
  • window_size - The size of the window
  • d_window_o - The output double window
Return
  • void

Mathematical Description:

Comments: Routine to calculate window shape

User Comments

Code:

void window_process(double *d_window_i, int window_type, int window_size, double **d_window_o)
{
int i;

/* calculate d_window_o */
switch(window_type) {
case 1:
/* rectangular window */
for(i = 0 ;i < window_size; i++) (*d_window_o)[i] = d_window_i[i];
break;
case 2:
/* hamming window */
for(i = 0; i %lt; window_size; i++) {
(*d_window_o)[i] = d_window_i[i]*(0.54 - 0.46*cos(2.0*PI*(i)/(window_size-1.0)));
}
break;
case 3:
/* Hann window */
for(i = 0 ;i %lt; window_size; i++) \
(*d_window_o)[i] = d_window_i[i]*(0.5 - 0.5*cos(2.0*PI*(i)/(window_size-1.0)));
break;
}
return;
}