public ISignal GetFiltered(ISignal signal, int center, int winSize) { var alpha = winSize / 3.8286; return(new FilteredSignal(window.GetFiltered(signal, center, winSize), (time) => Math.Exp(-Math.PI * (center - time) * (center - time) / (alpha * alpha)))); }
public ISignal GetFiltered(ISignal signal, int center, int winSize) { return(new FilteredSignal(window.GetFiltered(signal, center, winSize), (time) => 0.54 + 0.46 * Math.Cos(2 * Math.PI * (center - time) / winSize))); }
public ISignal GetFiltered(ISignal signal, int center, int winSize) { return(new FilteredSignal(window.GetFiltered(signal, center, winSize), (time) => 1 - 2 * ((double)Math.Abs(center - time)) / winSize)); }