Struct FftPlan32
pub struct FftPlan32 { /* private fields */ }Expand description
Prepared complex radix-two FFT, 1..=1,048,576 points. Fallible construction allocates native f32 twiddles after budget admission; phase/cos/sin use f64 on CONTROL followed by explicit f32 quantization. Transform butterflies, products, sums and inverse scaling execute in f32. Transforms allocate/deallocate nothing. Forward uses exp(-iw), inverse exp(+iw) normalized by 1/N. Nonfinite samples propagate; no real-only packing, windowing or SIMD policy.
Implementations§
§impl FftPlan32
impl FftPlan32
pub fn try_new(
size: usize,
maximum_twiddle_bytes: usize,
) -> Result<Self, FftPreparationError>
pub fn try_new( size: usize, maximum_twiddle_bytes: usize, ) -> Result<Self, FftPreparationError>
Fallible CONTROL preparation with an explicit twiddle-storage byte bound. Numeric Vec capacity is included; allocator overhead and caller transform buffers are excluded. Size 1 requires no twiddle bytes and admits budget 0. Invalid size/budget refuses before allocation or trigonometric preparation.
pub fn twiddle_storage_bytes(&self) -> usize
pub fn twiddle_storage_bytes(&self) -> usize
Numeric twiddle Vec capacity only, excluding allocator/control overhead.