Skip to content

Commit 3e819b4

Browse files
committed
Replace naive deinterleave in R2C FFT
1 parent de59553 commit 3e819b4

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

src/fft.rs

+3-2
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ use crate::planner::{Planner32, Planner64};
55
use crate::{
66
fft_32_with_opts_and_plan, fft_64, fft_64_with_opts_and_plan,
77
twiddles::{generate_twiddles, Twiddles},
8+
utils::deinterleave,
89
Direction, Options,
910
};
1011

@@ -58,8 +59,8 @@ macro_rules! impl_r2c_fft {
5859
let big_n = input_re.len();
5960

6061
// Splitting odd and even
61-
let (mut z_even, mut z_odd): (Vec<_>, Vec<_>) =
62-
input_re.chunks_exact(2).map(|c| (c[0], c[1])).unzip();
62+
63+
let (mut z_even, mut z_odd): (Vec<_>, Vec<_>) = deinterleave(&input_re);
6364

6465
// let mut planner = <$planner>::new(big_n, Direction::Forward);
6566

0 commit comments

Comments
 (0)