Adelsbach/VSIPL
Core Programming Reference Guide
DD-00016-015
Core

5.3.2 vsip_vcreate_kaiser_p - Create a Kaiser Window Vector

vsip_vview_f* vsip_vcreate_kaiser_f(vsip_length n, vsip_scalar_f beta, vsip_memory_hint hint);
Description

This function creates and initializes a vector with coefficients of a Kaiser window of length n. The Kaiser window is defined by:

        (             )
          √︂ --(2k----)2
      I0 β  1- n-1-1
w[k]= -----------------,  0≤ k< n
             I0(β)

where I0 is the zeroth-order modified Bessel function of the first kind.

Parameters
Return Value
Example

vsip_vview_f *kaiser_win; 
vsip_length n = 64; 
vsip_scalar_f beta = 6.0f;  // Moderate side lobe suppression 
 
// Create a Kaiser window 
kaiser_win = vsip_vcreate_kaiser_f(n, beta, VSIP_MEM_NONE); 
 
if (kaiser_win == NULL) { 
    // Handle error 
} 
 
// Use the window in an application 
// For example, apply it to a signal 
vsip_vview_f *signal = vsip_vcreate_f(n, VSIP_MEM_NONE); 
vsip_vview_f *windowed_signal = vsip_vcreate_f(n, VSIP_MEM_NONE); 
 
// Initialize signal... 
// vsip_vramp_f(0.0f, 1.0f, signal); 
 
// Apply the window 
vsip_vmul_f(signal, kaiser_win, windowed_signal); 
 
// Clean up 
vsip_valldestroy_f(kaiser_win); 
vsip_valldestroy_f(signal); 
vsip_valldestroy_f(windowed_signal);
Notes