## Window Functions | Extreme Optimization Numerical Libraries for .NET Professional |

Window functions find many uses in signal processing, including spectral analysis and filter design. Window functions are usually applied to a signal before its Fourier transform is computed. The WindowFunction class represents window functions. The WindowFunctions class provides static methods that can be used to construct the most commonly used window functions.

Window functions are created by calling a method on the WindowFunctions. All methods take the length of the window as the first parameter. All window functions are normalized so the largest value is 1. (For windows with an even number of samples, this value may not appear.) Some methods have an overload that takes an additional parameter of type WindowSampling.

Method | Description |
---|---|

Symmetric | The window is symmetrical about its center point. |

Periodic | The window can be applied to a signal with implicit periodicity. |

The following window functions are available:

Method | Description |
---|---|

A Bartlett window. | |

A Blackman window with an optional parameter (default value is 0.16>). | |

A Blackman-Harris window. | |

A Chebyshev window with the specified sidelobe attenuation in dB. | |

A cosine window. | |

A flat top window. | |

A Gaussian window with the specified standard deviation (must be less than 0.5). | |

A Hamming window. | |

A Hann or Hanning window. | |

A modified Bartlett-Hann window. | |

A Blackman-Nuttal window. | |

A rectangular window. | |

A triangular window. | |

A Tukey window with specified ratio of the tapered section to the constant section. |

Window functions are applied by multiplying the components
of a signal with the corresponding weight in the window function.
The WindowFunction
type has a multiplication operator and corresponding static
Multiply
method that performs this operation on a real signal, represented by a
Vector

The resulting signal vector always has the same length as the original signal. If a window is shorter than the signal, then the trailing part of the result is padded with zeros.

Individual weights of the window can be accessed
using the
Item
indexer property. All weights can also be obtained in an array or a
Vector

Copyright Â© 2004-2021,
Extreme Optimization. All rights reserved.

*Extreme Optimization,* *Complexity made simple*, *M#*, and *M
Sharp* are trademarks of ExoAnalytics Inc.

*Microsoft*, *Visual C#, Visual Basic, Visual Studio*, *Visual
Studio.NET*, and the *Optimized for Visual Studio* logo

are
registered trademarks of Microsoft Corporation.