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

This manual is preliminary and incomplete.
While our Core implementation implements all functions given in the standard we are still working on completing this documentation.

Please refer to the VSIPL standard for a complete function reference of the Core profile until we have completed work on this documentation.

5.3.3 vsip_vcreate_cheby_p - Create a Chebyshev Window Vector

vsip_vview_f* vsip_vcreate_cheby_f(vsip_length n, vsip_scalar_f ripple, vsip_memory_hint hint);
Description

This function creates and initializes a vector with coefficients of a Chebyshev (Dolph-Chebyshev) window of length n. The Chebyshev window is designed to have equal ripple in the passband and is optimal in the sense that it minimizes the main lobe width for a given side lobe level.

The ripple parameter specifies the side lobe level in decibels (dB), with typical values ranging from 40 to 120 dB. Higher ripple values result in better side lobe suppression but wider main lobes.

Parameters
Return Value
Example

vsip_vview_f *cheby_win; 
vsip_length n = 64; 
vsip_scalar_f ripple = 60.0f;  // 60 dB side lobe attenuation 
 
// Create a Chebyshev window 
cheby_win = vsip_vcreate_cheby_f(n, ripple, VSIP_MEM_NONE); 
 
if (cheby_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, cheby_win, windowed_signal); 
 
// Clean up 
vsip_vdestroy_f(cheby_win); 
vsip_vdestroy_f(signal); 
vsip_vdestroy_f(windowed_signal);
Notes