From 7bc62f4c7c829890b787ae7541977a7b5f27d257 Mon Sep 17 00:00:00 2001 From: John Benediktsson Date: Mon, 23 Sep 2013 15:56:18 -0700 Subject: [PATCH] math.transforms.fft: small bit of speedup. --- extra/math/transforms/fft/fft.factor | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/extra/math/transforms/fft/fft.factor b/extra/math/transforms/fft/fft.factor index e527a5542a..5c6ba88f07 100644 --- a/extra/math/transforms/fft/fft.factor +++ b/extra/math/transforms/fft/fft.factor @@ -9,9 +9,9 @@ IN: math.transforms.fft ! Discrete Fourier Transform :: (slow-fft) ( seq inverse? -- seq' ) seq length :> N - inverse? 1 -1 ? 2pi * i* N / N iota n*v :> omega + inverse? 1 -1 ? 2pi * N / N iota n*v :> omega N iota [| k | - 0 seq omega [ k * e^ * + ] 2each + 0 seq omega [ k * cis * + ] 2each inverse? [ N / ] when ] map ; inline @@ -21,8 +21,8 @@ IN: math.transforms.fft N 1 = [ seq ] [ seq even-indices inverse? (fft) seq odd-indices inverse? (fft) - inverse? 1 -1 ? 2pi * i* N / - [ * e^ * ] curry map-index! + inverse? 1 -1 ? 2pi * N / + [ * cis * ] curry map-index! [ [ + inverse? [ 2 / ] when ] 2map ] [ [ - inverse? [ 2 / ] when ] 2map ] 2bi append