public void TestFft()
        {
            var data = new double[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 };
            FourierTransform ft = new FourierTransform();
            ft.ComputeFft(data, 16);
            double energy;
            var result = ft.GetMagnitudeSquared(1, out energy);

            var dct = new DiscreteCosinusTransform(data.Length);
            var ret = dct.PerformDct(data);
        }