math.transforms.fft: using 2map-index to simplify.

db4
John Benediktsson 2012-08-09 08:36:26 -07:00
parent 13ceaa069e
commit 034b5a255d
1 changed files with 3 additions and 5 deletions

View File

@ -18,14 +18,12 @@ IN: math.transforms.fft
seq length :> N
N 1 = [ seq ] [
inverse? 1 -1 ? 2pi * i* N / :> O
N 0 <array> :> X
N 2/ :> M
seq even-indices inverse? (fft)
seq odd-indices inverse? (fft)
[ [ [ O * e^ * + inverse? [ 2 / ] when ] [ X set-nth-unsafe ] bi ] 2each-index ]
[ [ [ O * e^ * - inverse? [ 2 / ] when ] [ M + X set-nth-unsafe ] bi ] 2each-index ]
2bi
X
[ [ O * e^ * + inverse? [ 2 / ] when ] 2map-index ]
[ [ O * e^ * - inverse? [ 2 / ] when ] 2map-index ]
2bi append
] if ; inline recursive
PRIVATE>