• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

C# FourierOptions类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C#中FourierOptions的典型用法代码示例。如果您正苦于以下问题:C# FourierOptions类的具体用法?C# FourierOptions怎么用?C# FourierOptions使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



FourierOptions类属于命名空间,在下文中一共展示了FourierOptions类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: FourierRadix2MatchesNaive_RealSine

        public void FourierRadix2MatchesNaive_RealSine(FourierOptions options)
        {
            var samples = Generate.PeriodicMap(16, w => new Complex(Math.Sin(w), 0), 16, 1.0, Constants.Pi2);

            Verify(samples, 12, options, Fourier.NaiveForward, Fourier.Radix2Forward);
            Verify(samples, 12, options, Fourier.NaiveInverse, Fourier.Radix2Inverse);
        }
开发者ID:larzw,项目名称:mathnet-numerics,代码行数:7,代码来源:MatchingNaiveTransformTest.cs


示例2: FourierRadix2IsReversible

        public void FourierRadix2IsReversible(FourierOptions options)
        {
            var samples = Generate.RandomComplex(0x8000, GetUniform(1));
            var work = new Complex[samples.Length];
            samples.CopyTo(work, 0);

            Fourier.Radix2Forward(work, options);
            Assert.IsFalse(work.ListAlmostEqual(samples, 6));

            Fourier.Radix2Inverse(work, options);
            AssertHelpers.AlmostEqual(samples, work, 12);
        }
开发者ID:Jungwon,项目名称:mathnet-numerics,代码行数:12,代码来源:InverseTransformTest.cs


示例3: FourierBluesteinIsReversible

        public void FourierBluesteinIsReversible(FourierOptions options)
        {
            var dft = new DiscreteFourierTransform();

            var samples = Generate.RandomComplex(0x7FFF, GetUniform(1));
            var work = new Complex[samples.Length];
            samples.CopyTo(work, 0);

            dft.BluesteinForward(work, options);
            Assert.IsFalse(work.ListAlmostEqual(samples, 6));

            dft.BluesteinInverse(work, options);
            AssertHelpers.ListAlmostEqual(samples, work, 10);
        }
开发者ID:rookboom,项目名称:mathnet-numerics,代码行数:14,代码来源:InverseTransformTest.cs


示例4: ForwardScaleByOptions

        /// <summary>
        /// Rescale FFT-the resulting vector according to the provided convention options.
        /// </summary>
        /// <param name="options">Fourier Transform Convention Options.</param>
        /// <param name="samples">Sample Vector.</param>
        private static void ForwardScaleByOptions(FourierOptions options, Complex[] samples)
        {
            if ((options & FourierOptions.NoScaling) == FourierOptions.NoScaling ||
                (options & FourierOptions.AsymmetricScaling) == FourierOptions.AsymmetricScaling)
            {
                return;
            }

            var scalingFactor = Math.Sqrt(1.0 / samples.Length);
            for (int i = 0; i < samples.Length; i++)
            {
                samples[i] *= scalingFactor;
            }
        }
开发者ID:nakamoton,项目名称:mathnet-numerics,代码行数:19,代码来源:DiscreteFourierTransform.Options.cs


示例5: FourierRadix2IsReversible

        public void FourierRadix2IsReversible(FourierOptions options)
        {
            var dft = new DiscreteFourierTransform();

            var samples = SignalGenerator.Random((u, v) => new Complex(u, v), GetUniform(1), 0x8000);
            var work = new Complex[samples.Length];
            samples.CopyTo(work, 0);

            dft.Radix2Forward(work, options);
            Assert.IsFalse(work.ListAlmostEqual(samples, 6));

            dft.Radix2Inverse(work, options);
            AssertHelpers.ListAlmostEqual(samples, work, 12);
        }
开发者ID:EricGT,项目名称:mathnet-numerics,代码行数:14,代码来源:InverseTransformTest.cs


示例6: Verify

        static void Verify(
            Complex[] samples,
            int maximumErrorDecimalPlaces,
            FourierOptions options,
            Func<Complex[], FourierOptions, Complex[]> naive,
            Action<Complex[], FourierOptions> fast)
        {
            var spectrumNaive = naive(samples, options);

            var spectrumFast = new Complex[samples.Length];
            samples.CopyTo(spectrumFast, 0);
            fast(spectrumFast, options);

            AssertHelpers.AlmostEqual(spectrumNaive, spectrumFast, maximumErrorDecimalPlaces);
        }
开发者ID:larzw,项目名称:mathnet-numerics,代码行数:15,代码来源:MatchingNaiveTransformTest.cs


示例7: FourierBluesteinMatchesNaiveOnRandomNonPowerOfTwo

        public void FourierBluesteinMatchesNaiveOnRandomNonPowerOfTwo(FourierOptions options)
        {
            var dft = new DiscreteFourierTransform();
            var samples = Generate.RandomComplex(0x7F, GetUniform(1));

            VerifyMatchesNaiveComplex(
                samples,
                10,
                s => dft.NaiveForward(s, options),
                s => dft.BluesteinForward(s, options));
            VerifyMatchesNaiveComplex(
                samples,
                10,
                s => dft.NaiveInverse(s, options),
                s => dft.BluesteinInverse(s, options));
        }
开发者ID:rookboom,项目名称:mathnet-numerics,代码行数:16,代码来源:MatchingNaiveTransformTest.cs


示例8: FourierBluesteinMatchesNaiveOnRandomNonPowerOfTwo

        public void FourierBluesteinMatchesNaiveOnRandomNonPowerOfTwo(FourierOptions options)
        {
            var dft = new DiscreteFourierTransform();
            var samples = SignalGenerator.Random((u, v) => new Complex(u, v), GetUniform(1), 0x7F);

            VerifyMatchesNaiveComplex(
                samples,
                1e-12,
                s => dft.NaiveForward(s, options),
                s => dft.BluesteinForward(s, options));
            VerifyMatchesNaiveComplex(
                samples,
                1e-12,
                s => dft.NaiveInverse(s, options),
                s => dft.BluesteinInverse(s, options));
        }
开发者ID:nakamoton,项目名称:mathnet-numerics,代码行数:16,代码来源:MatchingNaiveTransformTest.cs


示例9: NaiveMatchesDft

        public void NaiveMatchesDft(HartleyOptions hartleyOptions, FourierOptions fourierOptions)
        {
            var samples = Generate.Random(0x80, GetUniform(1));

            VerifyMatchesDft(
                samples,
                5,
                false,
                s => Fourier.Forward(s, fourierOptions),
                s => Hartley.NaiveForward(s, hartleyOptions));
            VerifyMatchesDft(
                samples,
                5,
                true,
                s => Fourier.Inverse(s, fourierOptions),
                s => Hartley.NaiveInverse(s, hartleyOptions));
        }
开发者ID:skair39,项目名称:mathnet-numerics,代码行数:17,代码来源:HartleyTest.cs


示例10: FourierBluesteinMatchesNaiveOnRandomPowerOfTwo

        public void FourierBluesteinMatchesNaiveOnRandomPowerOfTwo(FourierOptions options)
        {
            var dft = new DiscreteFourierTransform();
            var samples = Sample.Random((u, v) => new Complex(u, v), _uniform, 0x80);

            VerifyMatchesNaiveComplex(
                samples,
                1e-12,
                s => dft.NaiveForward(s, options),
                s => dft.BluesteinForward(s, options));

            VerifyMatchesNaiveComplex(
                samples,
                1e-12,
                s => dft.NaiveInverse(s, options),
                s => dft.BluesteinInverse(s, options));
        }
开发者ID:hany-abdelrahman,项目名称:mathnet-numerics,代码行数:17,代码来源:MatchingNaiveTransformTest.cs


示例11: FourierRadix2MatchesNaiveOnRealSine

        public void FourierRadix2MatchesNaiveOnRealSine(FourierOptions options)
        {
            var dft = new DiscreteFourierTransform();
            var samples = SignalGenerator.EquidistantPeriodic(w => new Complex(Math.Sin(w), 0), Constants.Pi2, 0, 16);

            VerifyMatchesNaiveComplex(
                samples,
                1e-12,
                s => dft.NaiveForward(s, options),
                s => dft.Radix2Forward(s, options));

            VerifyMatchesNaiveComplex(
                samples,
                1e-12,
                s => dft.NaiveInverse(s, options),
                s => dft.Radix2Inverse(s, options));
        }
开发者ID:hickford,项目名称:mathnet-numerics-native,代码行数:17,代码来源:MatchingNaiveTransformTest.cs


示例12: FourierBluesteinIsReversible

        public void FourierBluesteinIsReversible(FourierOptions options)
        {
            var dft = new DiscreteFourierTransform();

            VerifyIsReversibleComplex(
                0x7FFF,
                1e-12,
                s =>
                {
                    dft.BluesteinForward(s, options);
                    return s;
                },
                s =>
                {
                    dft.BluesteinInverse(s, options);
                    return s;
                });
        }
开发者ID:joeynelson,项目名称:mathnet-numerics,代码行数:18,代码来源:InverseTransformTest.cs


示例13: InverseScaleByOptions

        /// <summary>
        /// Rescale the iFFT-resulting vector according to the provided convention options.
        /// </summary>
        /// <param name="options">Fourier Transform Convention Options.</param>
        /// <param name="samples">Sample Vector.</param>
        private static void InverseScaleByOptions(FourierOptions options, Complex[] samples)
        {
            if ((options & FourierOptions.NoScaling) == FourierOptions.NoScaling)
            {
                return;
            }

            var scalingFactor = 1.0 / samples.Length;
            if ((options & FourierOptions.AsymmetricScaling) != FourierOptions.AsymmetricScaling)
            {
                scalingFactor = Math.Sqrt(scalingFactor);
            }

            for (int i = 0; i < samples.Length; i++)
            {
                samples[i] *= scalingFactor;
            }
        }
开发者ID:nakamoton,项目名称:mathnet-numerics,代码行数:23,代码来源:DiscreteFourierTransform.Options.cs


示例14: NaiveMatchesDft

        public void NaiveMatchesDft(HartleyOptions hartleyOptions, FourierOptions fourierOptions)
        {
            var dht = new DiscreteHartleyTransform();
            var samples = SignalGenerator.Random(x => x, GetUniform(1), 0x80);

            VerifyMatchesDft(
                samples,
                1e-5,
                false,
                s => Transform.FourierForward(s, fourierOptions),
                s => dht.NaiveForward(s, hartleyOptions));
            VerifyMatchesDft(
                samples,
                1e-5,
                true,
                s => Transform.FourierInverse(s, fourierOptions),
                s => dht.NaiveInverse(s, hartleyOptions));
        }
开发者ID:hickford,项目名称:mathnet-numerics-native,代码行数:18,代码来源:HartleyTest.cs


示例15: NaiveMatchesDFT

        public void NaiveMatchesDFT(HartleyOptions hartleyOptions, FourierOptions fourierOptions)
        {
            var dht = new DiscreteHartleyTransform();
            var samples = Sample.Random(x => x, _uniform, 0x80);

            VerifyMatchesDFT(
                samples,
                1e-10,
                false,
                s => Transform.FourierForward(s, fourierOptions),
                s => dht.NaiveForward(s, hartleyOptions));

            VerifyMatchesDFT(
                samples,
                1e-10,
                true,
                s => Transform.FourierInverse(s, fourierOptions),
                s => dht.NaiveInverse(s, hartleyOptions));
        }
开发者ID:hany-abdelrahman,项目名称:mathnet-numerics,代码行数:19,代码来源:HartleyTest.cs


示例16: NaiveInverse

 /// <summary>
 /// Naive inverse DFT, useful e.g. to verify faster algorithms.
 /// </summary>
 /// <param name="frequencySpace">Frequency-space sample vector.</param>
 /// <param name="options">Fourier Transform Convention Options.</param>
 /// <returns>Corresponding time-space vector.</returns>
 public Complex[] NaiveInverse(Complex[] frequencySpace, FourierOptions options)
 {
     var timeSpace = Naive(frequencySpace, -SignByOptions(options));
     InverseScaleByOptions(options, timeSpace);
     return timeSpace;
 }
开发者ID:hickford,项目名称:mathnet-numerics-native,代码行数:12,代码来源:DiscreteFourierTransform.Naive.cs


示例17: NaiveForward

 /// <summary>
 /// Naive forward DFT, useful e.g. to verify faster algorithms.
 /// </summary>
 /// <param name="timeSpace">Time-space sample vector.</param>
 /// <param name="options">Fourier Transform Convention Options.</param>
 /// <returns>Corresponding frequency-space vector.</returns>
 public Complex[] NaiveForward(Complex[] timeSpace, FourierOptions options)
 {
     var frequencySpace = Naive(timeSpace, SignByOptions(options));
     ForwardScaleByOptions(options, frequencySpace);
     return frequencySpace;
 }
开发者ID:hickford,项目名称:mathnet-numerics-native,代码行数:12,代码来源:DiscreteFourierTransform.Naive.cs


示例18: Inverse

 /// <summary>
 /// Applies the inverse Fast Fourier Transform (iFFT) to arbitrary-length sample vectors.
 /// </summary>
 /// <param name="samples">Sample vector, where the FFT is evaluated in place.</param>
 /// <param name="options">Fourier Transform Convention Options.</param>
 public static void Inverse(Complex[] samples, FourierOptions options)
 {
     BluesteinInverse(samples, options);
 }
开发者ID:jafffy,项目名称:mathnet-numerics,代码行数:9,代码来源:Fourier.cs


示例19: Forward

 /// <summary>
 /// Applies the forward Fast Fourier Transform (FFT) to arbitrary-length sample vectors.
 /// </summary>
 /// <param name="samples">Sample vector, where the FFT is evaluated in place.</param>
 /// <param name="options">Fourier Transform Convention Options.</param>
 public static void Forward(Complex[] samples, FourierOptions options)
 {
     BluesteinForward(samples, options);
 }
开发者ID:jafffy,项目名称:mathnet-numerics,代码行数:9,代码来源:Fourier.cs


示例20: SignByOptions

 /// <summary>
 /// Extract the exponent sign to be used in forward transforms according to the
 /// provided convention options.
 /// </summary>
 /// <param name="options">Fourier Transform Convention Options.</param>
 /// <returns>Fourier series exponent sign.</returns>
 static int SignByOptions(FourierOptions options)
 {
     return (options & FourierOptions.InverseExponent) == FourierOptions.InverseExponent ? 1 : -1;
 }
开发者ID:jafffy,项目名称:mathnet-numerics,代码行数:10,代码来源:Fourier.cs



注:本文中的FourierOptions类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# FpmlSerializedCSharp类代码示例发布时间:2022-05-24
下一篇:
C# FourierDirection类代码示例发布时间:2022-05-24
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap