MCPcopy Create free account

hub / github.com/cool-japan/oxifft / functions

Functions4,171 in github.com/cool-japan/oxifft

↓ 3 callersFunctiongaussian_weights_1d
Compute 1-D Gaussian kernel weights for a single non-uniform coordinate. The coordinate `x` must already be shifted to `[0, 2π)`.
oxifft/src/nufft/nufft3d.rs:36
↓ 3 callersFunctiongen_dispatcher
Generate the public dispatcher function for sizes 2, 4, 8 (all ISAs). Priority on `x86_64` (f64): AVX-512F > AVX2+FMA > AVX > SSE2 > scalar. Priority
oxifft-codegen-impl/src/gen_simd/mod.rs:212
↓ 3 callersFunctiongenerate_from_macro
Parse `gen_rader_codelet!(N)` input and dispatch. # Errors Returns `syn::Error` if the input is not a valid integer literal or the prime is not in {1
oxifft-codegen-impl/src/gen_rader.rs:212
↓ 3 callersFunctiongenerate_window
Generate window coefficients for the given window type and length. For `n == 1` the function always returns `[1.0]` regardless of window type. All tr
oxifft/src/signal/spectral.rs:42
↓ 3 callersFunctiongeomean
Compute the geometric mean of a non-empty slice of positive values.
oxifft-bench/src/bin/fftw_ratio_report.rs:192
↓ 3 callersFunctionget_twiddles
()
oxifft/src/dft/solvers/simd_butterfly.rs:639
↓ 3 callersFunctiongrad_fft
Compute gradient of a scalar loss with respect to FFT input. Given ∂L/∂(FFT(x)), computes ∂L/∂x.
oxifft/src/autodiff/mod.rs:331
↓ 3 callersFunctionhann
Generate Hann (raised cosine) window. `w[n] = 0.5 * (1 - cos(2πn/(N-1)))`
oxifft/src/streaming/window.rs:79
↓ 3 callersFunctioninstantaneous_phase
Compute the instantaneous phase of a real signal. Returns `atan2(im, re)` for each sample of the analytic signal, yielding values in the range `[-π,
oxifft/src/signal/hilbert.rs:157
↓ 3 callersFunctionirfft
Convenience function for 1D Complex-to-Real FFT with normalization. Takes N/2+1 complex values (conjugate symmetric) and produces N real values. This
oxifft/src/api/plan/functions.rs:117
↓ 3 callersFunctionirfft_batch
Convenience function for batched 1D Complex-to-Real FFT with normalization. Performs `howmany` independent C2R FFTs, each producing `n` real values.
oxifft/src/api/plan/functions.rs:229
↓ 3 callersMethodis_patient
(self)
oxifft/src/kernel/flags.rs:42
↓ 3 callersFunctionis_smooth
Check if n only has prime factors <= max_factor.
oxifft/src/kernel/planner.rs:932
↓ 3 callersMethodln
(self)
oxifft/src/kernel/f16.rs:405
↓ 3 callersMethodmagnitude_spectrum
Magnitude spectrum: |X\[k\]| for each bin.
oxifft/src/streaming/sdft.rs:143
↓ 3 callersFunctionmake_input_f32
Generate a synthetic input signal of length `n`.
oxifft/benches/gpu_vs_cpu.rs:28
↓ 3 callersFunctionmake_test_input_f64
(n0: usize, n1: usize, n2: usize)
oxifft/src/mpi/plans/plan_3d_pencil.rs:668
↓ 3 callersFunctionmake_wisdom_string
Build a minimal valid wisdom string with `n` entries starting at `base_hash`.
oxifft/tests/wisdom_stress.rs:39
↓ 3 callersFunctionmax_abs_error
(a: &[Complex<T>], b: &[Complex<T>])
oxifft/src/mpi/plans/plan_3d_pencil.rs:651
↓ 3 callersFunctionmax_err_f64
Maximum absolute error across all bins (f64).
oxifft/src/chirp_z/tests.rs:51
↓ 3 callersFunctionmax_rel_err_f32
(dst: &[Complex<f32>], ref_: &[Complex<f32>])
oxifft/src/kernel/complex_mul.rs:529
↓ 3 callersFunctionmax_rel_err_f64
(dst: &[Complex<f64>], ref_: &[Complex<f64>])
oxifft/src/kernel/complex_mul.rs:517
↓ 3 callersFunctionmel_spectrogram
Compute log-mel spectrogram of a signal. Applies STFT with a Hann window, computes the power spectrogram, applies the mel filterbank matrix, and take
oxifft/src/streaming/mel.rs:198
↓ 3 callersFunctionmod_inv
Modular inverse of `a` modulo `m` via the extended Euclidean algorithm. Returns `None` if `gcd(a, m) != 1` (i.e., the inverse does not exist).
oxifft/src/ntt/arith.rs:35
↓ 3 callersFunctionmod_pow
(mut base: u64, mut exp: u64, m: u64)
oxifft/src/ntt/arith.rs:16
↓ 3 callersFunctionnaive_dft_f32
Naive O(n²) DFT reference for f32.
oxifft/src/dft/codelets/hand_avx512_tests.rs:57
↓ 3 callersFunctionnaive_dft_f32
(x: &[Complex<f32>], sign: i32)
oxifft/src/dft/codelets/simd_codelet_tests.rs:29
↓ 3 callersFunctionnaive_dft_fwd
(x_re: &[f64], x_im: &[f64])
oxifft-codegen-impl/src/gen_odd.rs:416
↓ 3 callersFunctionnaive_dft_inv
(x_re: &[f64], x_im: &[f64])
oxifft-codegen-impl/src/gen_odd.rs:435
↓ 3 callersFunctionnaive_idft_unnorm
(y: &[Complex<f64>], n: usize)
oxifft/src/rdft/codelets/mod.rs:273
↓ 3 callersFunctionnaive_r2c
Naive DFT of real input — reference for verification.
oxifft/src/rdft/codelets/real_twiddle.rs:423
↓ 3 callersFunctionnaive_r2hc_f32
(x: &[f32])
oxifft-codegen/tests/rdft_codelets.rs:268
↓ 3 callersFunctionnaive_r2hc_f64
(x: &[f64])
oxifft-codegen/tests/rdft_codelets.rs:253
↓ 3 callersFunctionnormalize_coord
(p: f64)
oxifft/src/nufft/nufft3d.rs:71
↓ 3 callersFunctionnotw_2
(x: &mut [Complex<T>])
oxifft/src/dft/codelets/notw.rs:9
↓ 3 callersFunctionnufft3d_type1
3D NUFFT Type 1: Non-uniform to uniform. Given `M` non-uniform sample points `(xj, yj, zj) ∈ [-π, π)³` with complex strengths `cj`, computes the 3-D
oxifft/src/nufft/nufft3d.rs:200
↓ 3 callersFunctionnufft_type1
Compute Type 1 NUFFT (non-uniform → uniform). # Arguments `points` - Non-uniform sample locations in [-π, π] `values` - Complex values at the sample
oxifft/src/nufft/mod.rs:729
↓ 3 callersFunctionnufft_type2
Compute Type 2 NUFFT (uniform → non-uniform). # Arguments `coeffs` - Uniform Fourier coefficients `points` - Non-uniform evaluation points in [-π, π
oxifft/src/nufft/mod.rs:754
↓ 3 callersMethodnum_buckets
Get number of buckets.
oxifft/src/sparse/plan.rs:243
↓ 3 callersMethodoptimal_buckets
Calculate optimal number of buckets. The number of buckets B should be O(k) for optimal complexity.
oxifft/src/sparse/problem.rs:66
↓ 3 callersFunctionopts
()
oxifft/src/nufft/nufft3d.rs:351
↓ 3 callersFunctionparse_arg
Parse a `--key value` pair from the argument list, returning the value parsed as `usize`. Returns `None` if the key is absent or unparseable.
oxifft/src/bin/oxifft_tune.rs:75
↓ 3 callersFunctionpfa_test
( n1: usize, n2: usize, k1: impl Fn(&mut [Complex<f64>], i32), k2: impl Fn(&mu
oxifft/src/dft/codelets/winograd_pfa.rs:161
↓ 3 callersMethodplan_kind
(&self)
oxifft/src/api/plan/types_nd.rs:419
↓ 3 callersFunctionpolynomial_power
Compute polynomial power using repeated squaring. Computes p(x)^n efficiently.
oxifft/src/conv/mod.rs:335
↓ 3 callersFunctionpower_spectrogram
Compute power spectrogram. # Arguments `spectrogram` - Complex spectrogram # Returns Power of each bin `(|X[k]|²)`.
oxifft/src/streaming/stft.rs:561
↓ 3 callersMethodpush_slice
Push multiple samples.
oxifft/src/streaming/mod.rs:87
↓ 3 callersFunctionrader_dft11_fwd
(x_re: &[f64], x_im: &[f64])
oxifft-codegen-impl/src/gen_rader.rs:520
↓ 3 callersFunctionrader_dft13_fwd
(x_re: &[f64], x_im: &[f64])
oxifft-codegen-impl/src/gen_rader.rs:548
↓ 3 callersMethodread_last
Read the last `n` samples into a slice (in order). Returns the number of samples actually read.
oxifft/src/streaming/mod.rs:116
↓ 3 callersFunctionreal_twiddle_pre
Real-valued twiddle pre-processing for C2R. Inverse of [`real_twiddle_post`]. Given the R2C half-spectrum `X[0..=N/2]`, produces packed-complex data
oxifft/src/rdft/codelets/real_twiddle.rs:116
↓ 3 callersFunctionrepack_bin
(a: Complex<T>, b: Complex<T>, k: usize, n: usize, inv2: T)
oxifft/src/rdft/codelets/real_twiddle.rs:153
↓ 3 callersMethodreset
Reset to initial (empty) state, keeping the same window size.
oxifft/src/streaming/sdft.rs:165
↓ 3 callersMethodrewrite
Rewrite an expression, replacing shared subexpressions with `Temp` refs.
oxifft-codegen-impl/src/gen_rdft.rs:380
↓ 3 callersMethodrows
(&self)
oxifft/src/api/plan/types.rs:782
↓ 3 callersFunctionrun_chunked_identity
(batch_size: usize)
oxifft/src/gpu/batch.rs:453
↓ 3 callersFunctionrun_r2c_roundtrip
(n: usize)
oxifft/src/gpu/metal.rs:385
↓ 3 callersFunctionrun_r2c_roundtrip_s2
(n: usize)
oxifft/src/gpu/batch.rs:382
↓ 3 callersMethodselect_solver
(&self, n: usize)
oxifft/src/kernel/planner.rs:160
↓ 3 callersMethodsize
(&self)
oxifft/src/rdft/solvers/r2c.rs:63
↓ 3 callersFunctionsparse_fft_auto
Compute sparse FFT with automatic sparsity detection (adaptive k). Instead of requiring the caller to specify `k` (expected number of non-zero freque
oxifft/src/sparse/mod.rs:338
↓ 3 callersFunctionsparse_fft_auto_with_ratio
Compute sparse FFT with automatic sparsity detection and custom energy ratio. This is the configurable version of [`sparse_fft_auto`]. The `energy_ra
oxifft/src/sparse/mod.rs:353
↓ 3 callersFunctionsplitmix64
(state: &mut u64)
oxifft/tests/nufft_tolerance_sweep.rs:37
↓ 3 callersMethodsqrt
(self)
oxifft-bench/benches/codelet_perf.rs:95
↓ 3 callersFunctionstockham_size4
(input: &[Complex<f64>], output: &mut [Complex<f64>], sign: Sign)
oxifft/src/dft/solvers/stockham/generic.rs:357
↓ 3 callersFunctionstockham_size8
(input: &[Complex<f64>], output: &mut [Complex<f64>], sign: Sign)
oxifft/src/dft/solvers/stockham/generic.rs:388
↓ 3 callersMethodstore_unaligned
(self, ptr: *mut f64)
oxifft/src/simd/neon.rs:67
↓ 3 callersMethodsuggest_k
Analyze bucket occupancy across all FFAST stages and suggest an adjusted sparsity estimate. Computes the fraction of non-zero buckets (those whose en
oxifft/src/sparse/plan.rs:286
↓ 3 callersFunctiontest_specialized_post
(n: usize, specialized_fn: fn(&mut [Complex<f64>]))
oxifft/src/rdft/codelets/real_twiddle.rs:598
↓ 3 callersFunctiontest_specialized_pre
(n: usize, specialized_fn: fn(&mut [Complex<f64>]))
oxifft/src/rdft/codelets/real_twiddle.rs:637
↓ 3 callersFunctiontest_specialized_roundtrip
( n: usize, post_fn: fn(&mut [Complex<f64>]), pre_fn: fn(&mut [Complex<f64>]), )
oxifft/src/rdft/codelets/real_twiddle.rs:674
↓ 3 callersFunctiontest_vec_11
()
oxifft-codegen-impl/src/gen_rader.rs:650
↓ 3 callersFunctiontest_vec_13
()
oxifft-codegen-impl/src/gen_rader.rs:662
↓ 3 callersMethodthreshold
Get the detection threshold.
oxifft/src/sparse/plan.rs:263
↓ 3 callersMethodto_binary
(&self)
oxifft/src/api/wisdom.rs:918
↓ 3 callersFunctiontw2_dit_fwd
Radix-2 DIT twiddle butterfly, forward. Layout: twiddles[(j-1)*stride + s] for j=1, i.e., twiddles[s].
oxifft/src/dft/codelets/twiddle_odd.rs:483
↓ 3 callersFunctiontwiddle
(n: usize, k: usize)
oxifft/src/kernel/twiddle/mod.rs:87
↓ 3 callersFunctiontwiddle_factor
(k: usize, n: usize)
oxifft/src/const_fft/twiddle.rs:92
↓ 3 callersFunctiontwiddle_mul_scalar_f32
Scalar fallback: `data[i] *= twiddles[i]` with no SIMD.
oxifft/src/kernel/twiddle/mod.rs:1079
↓ 3 callersFunctiontwiddle_mul_simd_f64
Apply twiddle factors to `data` in-place: `data[i] *= twiddles[i]`. Dispatches to the best available SIMD backend at runtime: AVX2+FMA → SSE2 → NEON
oxifft/src/kernel/twiddle/mod.rs:390
↓ 3 callersFunctionu64_to_f64_bipolar
Map a `u64` PRNG output to `f64` in `[-1.0, 1.0]` without precision-loss casts. Constructs an IEEE 754 f64 in `[1.0, 2.0)` from the top 52 mantissa b
oxifft/tests/nufft_tolerance_sweep.rs:49
↓ 3 callersFunctionunpack_bin
(a: Complex<T>, b: Complex<T>, k: usize, n: usize, inv2: T)
oxifft/src/rdft/codelets/real_twiddle.rs:95
↓ 3 callersFunctionwinograd_dft3_fwd
(x_re: &[f64], x_im: &[f64])
oxifft-codegen-impl/src/gen_odd.rs:456
↓ 3 callersFunctionwinograd_dft5_fwd
(x_re: &[f64], x_im: &[f64])
oxifft-codegen-impl/src/gen_odd.rs:511
↓ 3 callersFunctionwinograd_dft7_fwd
(x_re: &[f64], x_im: &[f64])
oxifft-codegen-impl/src/gen_odd.rs:607
↓ 3 callersMethodwisdom_export
(&self)
oxifft/src/kernel/planner.rs:831
↓ 3 callersMethodwisdom_import
Import wisdom from string. Accepts both the legacy `(oxifft-wisdom-1.0 …)` header (format version 0) and the current `(oxifft-wisdom …)` header with
oxifft/src/kernel/planner.rs:852
↓ 3 callersMethodwith_min_batch_chunk
(mut self, chunk: usize)
oxifft/src/threading/parallel_config.rs:82
↓ 3 callersMethodwith_min_rows_per_thread
(mut self, rows: usize)
oxifft/src/threading/parallel_config.rs:89
↓ 3 callersFunctionwith_wisdom
Get access to the global wisdom cache for reading.
oxifft/src/api/wisdom.rs:439
↓ 2 callersMethodabs
(self)
oxifft-codegen/tests/simd_f32_parity.rs:90
↓ 2 callersMethodadd
(self, other: Self)
oxifft/src/simd/sse2.rs:68
↓ 2 callersMethodadvance
Advance the buffer by `n` samples (discarding oldest).
oxifft/src/streaming/mod.rs:145
↓ 2 callersMethodapply
Apply filter to signal in frequency domain. # Arguments `signal_fft` - Signal in frequency domain # Returns Filtered signal in frequency domain.
oxifft/src/sparse/filter.rs:176
↓ 2 callersMethodapply_1d_along_dimension
Apply 1D FFT along a specific dimension.
oxifft/src/api/plan/types_guru.rs:315
↓ 2 callersFunctionapply_twiddle_factors
Apply twiddle factors to the matrix after column FFTs. For element (i, j) in the N1×N2 matrix, multiply by W_N^(i*j) where W_N = e^(sign * 2πi / N).
oxifft/src/dft/solvers/cache_oblivious.rs:214
↓ 2 callersFunctionapprox_eq
(a: f64, b: f64, eps: f64)
oxifft/src/dft/solvers/indirect.rs:316
↓ 2 callersFunctionapprox_eq
(a: f64, b: f64, eps: f64)
oxifft/src/dft/solvers/rader.rs:319
↓ 2 callersFunctionapprox_eq
(a: f64, b: f64, eps: f64)
oxifft/src/dft/solvers/ct.rs:1100
↓ 2 callersFunctionapprox_eq
(a: f64, b: f64, eps: f64)
oxifft/src/dft/solvers/buffered.rs:186
← previousnext →501–600 of 4,171, ranked by callers