相关疑难解决方法(0)

为apache commons快速傅立叶变换算法构建样本数据

我想使用用于FFT(FastFourierTransformer类)的Apache数学公共实现来处理一些虚拟数据,其中8个数据样本对一个完整的正弦波有贡献.最大振幅230.我尝试过的代码片段如下:

private double[] transform() 
{   
    double [] input = new double[8];
    input[0] = 0.0;
    input[1] = 162.6345596729059;
    input[2] = 230.0;
    input[3] = 162.63455967290594;
    input[4] = 2.8166876380389125E-14;
    input[5] = -162.6345596729059;
    input[6] = -230.0;
    input[7] = -162.63455967290597;

    double[] tempConversion = new double[input.length];

    FastFourierTransformer transformer = new FastFourierTransformer();
    try {           
        Complex[] complx = transformer.transform(input);

        for (int i = 0; i < complx.length; i++) {               
            double rr = (complx[i].getReal());
            double ri = (complx[i].getImaginary());

            tempConversion[i] = Math.sqrt((rr * rr) + (ri * ri)); …
Run Code Online (Sandbox Code Playgroud)

java signal-processing fft apache-commons

9
推荐指数
1
解决办法
6094
查看次数

标签 统计

apache-commons ×1

fft ×1

java ×1

signal-processing ×1