/// <summary>
        /// Odwrotna transformata Fouriera
        /// </summary>
        /// <param name="frequencyBuffer"></param>
        /// <param name="ft"></param>
        /// <returns></returns>
        public AnalogSignal iDFT(Complex[] frequencyBuffer, FourierTransform ft)
        {
            int N = frequencyBuffer.Length;

            Complex[] resultCourse = ft.iDFT(frequencyBuffer, N);

            for (int i = 0; i < N; i++)
            {
                this.course[i] = resultCourse[i].Real + resultCourse[i].Imaginary;
            }
            return(this);
        }
        public double[] iDFT2(Complex[] frequencyBuffer, FourierTransform ft)
        {
            int N = frequencyBuffer.Length;

            double[]  resultArray  = new double[lengthOfBuffer];
            Complex[] resultCourse = ft.iDFT(frequencyBuffer, N);

            for (int i = 0; i < N; i++)
            {
                resultArray[i] = resultCourse[i].Real + resultCourse[i].Imaginary;
            }
            return(resultArray);
        }