Discrete Fourier Transform Calculator
Direct DFT / IDFT and radix-2 FFT / IFFT of a length-N sequence, N≤64. FFT requires N=2^k. Numpy backward: unnormalized forward, 1/N inverse. Discovery /dft, /inverse-dft, /fft, /ifft. Not Laplace. Not CAS. Runs locally.
Enter values to calculate.
Trust summary CVP VERIFIED · CVP protocol 1.0.0-proposed · Core assurance · all published modes
- Input interpretation
- Enter values to calculate.
- Result
- —
- Verified scope
- all published modes
- Assurance
- Core
- Declared partition coverage
- PASS · 7/7 declared partitions (scaled-components, numerical-range, dft, idft, fft, ifft, invalid-domain) · Matrix
- Known limitations
- Core CVP does not include live graph, viewport, or pointer interaction.
- Model
- Direct DFT / IDFT and radix-2 FFT / IFFT of a length-N sequence, N≤64, with an engine-linked stem figure of |X[k]| or |x[n]|.
- Scope
- Direct O(N²) DFT/IDFT; radix-2 FFT/IFFT
- Verification
- Engine tested · Source checked · v1.2.1 · CVP VERIFIED · CVP protocol 1.0.0-proposed · Core assurance · all published modes· View Manifest · CVP overview · Specification
- Versions
- Calculation 1.2.1 · CVP protocol 1.0.0-proposed · Evidence 2026-10-09.dft-complete-json-mobile
- Verification revision
- 2026-10-09.dft-complete-json-mobile · 1/1 property · digest 803f88691f89
- Legacy regression
- 17/17 tests · Production surface contract 5/5
- Trust layers
- Verification VERIFIED · Production CURRENT · Overall CVP state: VERIFIED under CVP 1.0.0-proposed
- Reference
- O1 model · O2 expected_values · O2 numerical_behavior
- Interfaces
- PASS · UI (SSR) / REST / MCP
- Supplemental domain review
- Not performed
- Named expert review
- Not performed
- CVP suite
- 13/13 golden · 3/3 CVP boundary · 10/10 invalid · 1/1 property · 7/7 cross-interface · 5/5 CVP contract · Manifest
- Sources
- ISO 80000-2:2019 Quantities and units — Mathematics
- Oppenheim & Schafer, Discrete-Time Signal Processing — DFT / radix-2 FFT, Numpy backward normalization
- NumPy — Discrete Fourier Transform
- Evidence
- 6 legacy golden · 3 legacy boundary · legacy regression suite · 13/13 oracle-backed golden · 10/10 invalid · Artifact integrity PASS
- Semantic contract
- PASS
Full verification
Formulas
Core equations used by this calculator.
How to use
Choose DFT, IDFT, FFT, or IFFT
Enter a real list (optional im of the same length). N must be 1–64. FFT/IFFT also require N=2^k.
Read X[k] or x[n]
Impulse → all ones. DC → N at bin 0. Round-trip recovers the samples. The stem figure shows |X[k]| (forward) or |x[n]| (inverse), marker at index 0.
Example calculations
Common configurations with formula and result.
Impulse
samples = 1,0,0,0
DC
samples = 1,1,1,1
Inverse DC
mode=idft, samples = 4,0,0,0
Discrete Fourier Transform calculator specification
Version 1.2.1 · Engine tested
- Engine tested 17/17 tests · Production surface contract 5/5
- Named expert review Not performed
- Calculation version 1.2.1
- Definition
- The unnormalized DFT is X[k]=Σ_n x[n] e^{−2πi kn/N}. The inverse (Numpy backward) is x[n]=(1/N) Σ_k X[k] e^{2πi kn/N}. Direct O(N²) for any N≤64; radix-2 Cooley–Tukey when N=2^k. Discovery /dft, /inverse-dft, /fft, /ifft. Not Laplace. Not Z. Not CAS.
- What it calculates
- Direct DFT / IDFT and radix-2 FFT / IFFT of a length-N sequence, N≤64, with an engine-linked stem figure of |X[k]| or |x[n]|.
- Inputs
- mode
- samples
- im?
- Outputs
- n
- re
- im
- mag
- algorithm
- normalization
- Formula
X[k]=Σ x[n] e^{−2πi kn/N}; x[n]=(1/N) Σ X[k] e^{2πi kn/N}- Assumptions
- Direct O(N²) DFT/IDFT; radix-2 FFT/IFFT
- Numpy backward normalization
- N ≤ 64; FFT N = 2^k
- The Result Card includes an engine-linked stem figure of |X[k]| (forward) or |x[n]| (inverse); marker is index 0. Same mag as REST/MCP.
- Not Laplace / Z
- Not CAS
- Units
- dimensionless
- Boundary conditions
- empty samples → INVALID_INPUT
- N > 64 → INVALID_INPUT
- im length mismatch → INVALID_INPUT
- N not a power of 2 on FFT → INVALID_INPUT
- unknown mode (including laplace, cas) → INVALID_MODE
- Example
- mode=dft samples=1,0,0,0 → X=[1,1,1,1]
- Validation cases
3 published on this page · 17/17 tests · Production surface contract 5/5 · View evidence
- mode=dft samples=1,0,0,0 → re=[1,1,1,1]
- mode=dft samples=1,1,1,1 → re=[4,0,0,0]
- mode=fft samples=1,0,0,0 → re=[1,1,1,1]
- Sources
- ISO 80000-2:2019 Quantities and units — MathematicsSupports: Mathematical symbols and notation. This standard is not numerical verification or an endorsement of this implementation.
- Oppenheim & Schafer, Discrete-Time Signal Processing — DFT / radix-2 FFT, Numpy backward normalizationSupports: X[k]=Σ x[n] e^{−2πi kn/N}; inverse 1/N; radix-2 Cooley–Tukey when N=2^k
- NumPy — Discrete Fourier TransformSupports: DFT and inverse-DFT definitions, frequency ordering, and backward normalization; does not establish this implementation’s accuracy.
- ISO 80000-2:2019 Quantities and units — Mathematics
- Calculation version
- 1.2.1
Background
Interpretation and common distinctions.
What does this discrete fourier transform calculator compute?
The unnormalized DFT is X[k]=Σ_n x[n] e^{−2πi kn/N}. The inverse (Numpy backward) is x[n]=(1/N) Σ_k X[k] e^{2πi kn/N}. Direct O(N²) for any N≤64; radix-2 Cooley–Tukey when N=2^k.
The published formula or method is X[k]=Σ x[n] e^{−2πi kn/N}; x[n]=(1/N) Σ X[k] e^{2πi kn/N}. The following references support the stated mathematics or method:
- NumPy — Discrete Fourier Transform: DFT and inverse-DFT definitions, frequency ordering, and backward normalization; does not establish this implementation’s accuracy.
Which inputs and limits should you check?
Retain the full complex sequence and distinguish the unnormalized forward transform from the 1/N inverse normalization. FFT presets also impose the stated sequence-length restrictions.
The worked example uses samples = 1,0,0,0 with X = [1, 1, 1, 1]. Compare it with the Example calculations and the complete result for the same inputs.
How can you verify and cite this result?
CalculatorX is responsible for this page. The mathematical references above explain the model; implementation checks and their scope are documented separately in the math.transform.dft v1.2.1 Evidence and capability contract. Read the displayed verification and production state together with the specification's numerical limits.
Use the clean calculator URL to cite the tool. A shared input link identifies a particular calculation. Content updates, numerical verification, and domain reviews have separate dates and scopes.
Related tools
Other calculators in this family: DFT Calculator, FFT Calculator, Inverse DFT Calculator, Inverse FFT Calculator, Inverse Laplace Calculator, Inverse Z Calculator, Laplace Transform Calculator, Z Transform Calculator . Explore all Transforms.
Frequently asked questions
Key distinctions behind the calculation.
Is this an FFT?
FFT is a mode on this engine (radix-2 Cooley–Tukey, N=2^k). Direct DFT is still O(N²) for arbitrary N≤64. Discovery /fft and /ifft. Not a second engine. Not CAS.
Is this Laplace or Z?
No. Laplace and Z are later canonicals, not modes here. Not CAS.
Where does this run?
Locally in the browser by default. REST and MCP call the same discrete-fourier-transform engine.