/** * Sets the centering of frequency samplings for all dimensions. * If centered, the number of frequency samples is always odd, * and zero frequency corresponds to the middle sample. The * default center is false, so that zero frequency corresponds to * the sample with index zero in the output transformed array. * @param center true, for centering; false, otherwise. */ public void setCenter(boolean center) { setCenter1(center); setCenter2(center); setCenter3(center); }
private void test2( boolean complex, boolean overwrite, boolean center1, boolean center2, int padding1, int padding2, int n1, double d1, double f1, int n2, double d2, double f2) { if (n1<=0 || n2<=0) return; Sampling s1 = new Sampling(n1,d1,f1); Sampling s2 = new Sampling(n2,d2,f2); Fft fft = new Fft(s1,s2); fft.setComplex(complex); fft.setOverwrite(overwrite); fft.setCenter1(center1); fft.setCenter2(center2); fft.setPadding1(padding1); fft.setPadding2(padding2); float[][] f = (complex)?crandfloat(n1,n2):randfloat(n1,n2); float[][] g = fft.applyForward(f); float[][] h = fft.applyInverse(g); if (complex) assertComplexEqual(n1,n2,f,h); else assertRealEqual(n1,n2,f,h); } private void test3(
private void test3( boolean complex, boolean overwrite, boolean center1, boolean center2, boolean center3, int padding1, int padding2, int padding3, int n1, double d1, double f1, int n2, double d2, double f2, int n3, double d3, double f3) { if (n1<=0 || n2<=0 || n3<=0) return; Sampling s1 = new Sampling(n1,d1,f1); Sampling s2 = new Sampling(n2,d2,f2); Sampling s3 = new Sampling(n3,d3,f3); Fft fft = new Fft(s1,s2,s3); fft.setComplex(complex); fft.setOverwrite(overwrite); fft.setCenter1(center1); fft.setCenter2(center2); fft.setCenter3(center3); fft.setPadding1(padding1); fft.setPadding2(padding2); fft.setPadding3(padding3); float[][][] f = (complex)?crandfloat(n1,n2,n3):randfloat(n1,n2,n3); float[][][] g = fft.applyForward(f); float[][][] h = fft.applyInverse(g); if (complex) assertComplexEqual(n1,n2,n3,f,h); else assertRealEqual(n1,n2,n3,f,h); }