Beispiel #1
0
        public static Complex[] Test1()
        {
            var frameSize = 512;
            var frame     = Generators.Sin(frameSize, 64, 1);
            var frame2    = Generators.Sin(frameSize, 4, 0.5d);
            var frame3    = Generators.InpulseSignal(frameSize, 128, 4);

            for (var i = 0; i < frame.Length; i++)
            {
                frame[i] += frame2[i];//+ frame3[i];
                //frame[i] *= WindowFilters.Rectangle(i, frameSize);
            }
            var spectrum = FastFourierTransform.DecimationInFrequency(frame.Select(x => { return(new Complex(x, 0)); }).ToArray(), false);

            for (var i = 0; i < frame.Length; i++)
            {
                spectrum[i] /= frameSize;
            }
            return(spectrum);
        }