Cree datos de muestra para el algoritmo de transformación rápida de Fourier de apache commons

Quería usar la implementación de apache math commons para FFT ( clase FastFourierTransformer ) para procesar algunos datos ficticios cuyas 8 muestras de datos contribuyen a una onda sinusoidal completa. La amplitud máxima es 230. El fragmento de código que probé está a continuación:

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));
        }

    } catch (IllegalArgumentException e) {
        System.out.println(e);
    }

    return tempConversion;
}

1) Ahora los datos devueltos por el método transform es una matriz de números complejos. ¿Esa matriz contiene la información del componente de frecuencia sobre los datos de entrada? o la matriz tempConversion que creé contendrá la información de frecuencia? Los valores en la matriz tempConversion son:

 2.5483305001488234E-16
 920.0
 4.0014578493024757E-14
 2.2914314707516465E-13
 5.658858581079313E-14
 2.2914314707516465E-13
 4.0014578493024757E-14
 920.0

2) Busqué mucho, pero en la mayoría de los lugares no hay documentación clara sobre qué formato de algoritmo de datos espera (en términos de código de muestra para comprender mejor) y cómo uso la matriz de resultados para calcular las frecuencias contenidas en el ¿señal?

Respuesta 1

Mientras jugaba con cargadores de clases, recibí la siguiente excepción: Excepción en el hilo "main" java.lang.ClassCastException: xxx.Singleton no se puede convertir a xxx.Singleton ¿Esto significa que una instancia ...

¿Puede alguien compartir enlaces de ejemplo de inicio de sesión de Spring Social en Facebook, excepto las aplicaciones de muestra en git hub proporcionadas por las personas de Spring Social? Especialmente si hay ...

OK, quiero obtener todos los datos de la primera columna de una JTable. Pensé que la mejor manera sería incluirlo en una ArrayList, así que hice uno. También hice una instancia de un TableModel: estático ...

Estoy tratando de colocar un -entre todos los números impares en una cadena. Entonces, si una cadena se pasa como Hel776o, debería generar Hel7-76o. Los guiones solo se deben colocar entre dos números impares consecutivos. Soy ...