Exemplo n.º 1
0
        /// <summary>Initializes a new instance of the <see cref="OneDimFractionalFourierTransformation"/> class.
        /// </summary>
        /// <param name="alpha">The parameter \alpha of the Fractional Fast Fourier Transformation.</param>
        /// <param name="oneDimFourierTransformationFactory">The one-dimensional Fourier transformation factory.</param>
        /// <param name="length">The length, i.e. the number of (complex) Fourier coefficients.</param>
        internal OneDimFractionalFourierTransformation(int length, Complex alpha, IOneDimFourierTransformationFactory oneDimFourierTransformationFactory)
        {
            if (length <= 0)
            {
                throw new ArgumentException(String.Format(ExceptionMessages.ArgumentOutOfRangeGreater, "Length <" + length + ">", 0));
            }
            m_Length            = length;
            m_ForwardPreFactor  = new Complex[length];
            m_BackwardPreFactor = new Complex[length];

            int n = 2 * length;

            m_FourierTransformation      = oneDimFourierTransformationFactory.Create(n);
            m_ForwardTransformedVectorZ  = new Complex[n];
            m_BackwardTransformedVectorZ = new Complex[n];

            SetParameterAlpha(alpha);
        }
Exemplo n.º 2
0
 /// <summary>Initializes a new instance of the <see cref="OneDimFourierTransformationFactory"/> class.
 /// </summary>
 /// <param name="fourierTransformationFactory">The (Fast) Fourier Transformation factory.</param>
 internal OneDimFourierTransformationFactory(IOneDimFourierTransformationFactory fourierTransformationFactory)
 {
     Real      = new RealFactory(fourierTransformationFactory);
     m_Factory = fourierTransformationFactory;
 }
Exemplo n.º 3
0
 /// <summary>Initializes a new instance of the <see cref="RealFactory"/> class.
 /// </summary>
 /// <param name="fourierTransformationFactory">The (Fast) Fourier Transformation factory.</param>
 internal RealFactory(IOneDimFourierTransformationFactory fourierTransformationFactory)
 {
     m_Factory = fourierTransformationFactory;
 }
Exemplo n.º 4
0
 /// <summary>Initializes a new instance of the <see cref="MklFFTNativeWrapper" /> class.
 /// </summary>
 public MklFFTNativeWrapper()
 {
     m_Name = new IdentifierString("MKL");
     m_OneDimensionalFactory = new MklOneDimFourierTransformationFactory();
 }
Exemplo n.º 5
0
 /// <summary>Initializes a new instance of the <see cref="FftwNativeWrapper" /> class.
 /// </summary>
 public FftwNativeWrapper()
 {
     m_Name = new IdentifierString("FFTW 3.3.x");
     m_OneDimensionalFactory = new FftwOneDimFourierTransformationFactory();
 }